---

title: MediaCapabilities encodingInfo:摄像与录制管线能力评估

keywords:

  • MediaCapabilities
  • encodingInfo
  • 录制
  • 视频编码
  • 硬件加速

description: 使用 MediaCapabilities 的 encodingInfo 评估端侧编码能力,选择合适分辨率、码率与帧率以达成平滑与节能录制。

categories:

  • 应用软件
  • 图形图像

---

概述

navigator.mediaCapabilities.encodingInfo 返回编码配置的支持性(supported)、流畅度(smooth)与能效(powerEfficient),帮助在拍摄与录制场景中做参数选型与降级策略。

用法/示例

const enc = await navigator.mediaCapabilities.encodingInfo({
  type: 'record',
  video: {
    contentType: 'video/webm;codecs=vp8',
    width: 1920,
    height: 1080,
    bitrate: 4000000,
    framerate: 30
  }
})

if (enc.supported && enc.smooth && enc.powerEfficient) {
  const stream = await navigator.mediaDevices.getUserMedia({ video: { width: 1920, height: 1080, frameRate: 30 } })
  const rec = new MediaRecorder(stream, { mimeType: 'video/webm;codecs=vp8', videoBitsPerSecond: 4000000 })
}
const audioEnc = await navigator.mediaCapabilities.encodingInfo({
  type: 'record',
  audio: {
    contentType: 'audio/webm;codecs=opus',
    channels: 2,
    bitrate: 128000,
    samplerate: 48000
  }
})

工程建议

  • 按设备能力选择分辨率与码率,优先平滑与能效。
  • 对不支持的配置回退至更低规格,并记录能力探测结果用于后续会话。
  • MediaRecordergetUserMedia 的约束协同,避免动态切换导致的中断。

参考与验证

  • MDN:MediaCapabilities — https://developer.mozilla.org/docs/Web/API/Media_Capabilities_API
  • MDN:encodingInfo — https://developer.mozilla.org/docs/Web/API/MediaCapabilities/encodingInfo
  • web.dev:Media Capabilities — https://web.dev/articles/media-capabilities

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部