常见媒体类型中的编解码器

从根本上讲,您可以使用简单的 MIME 类型(例如 video/mp4audio/mpeg)来指定媒体文件的类型。但是,许多媒体类型(尤其是那些支持视频轨道的媒体类型)可以从更精确地描述其内部数据格式的能力中受益。例如,仅使用 MIME 类型 video/mp4 描述 MPEG-4 文件中的视频,并没有说明实际媒体的格式。

因此,可以将 codecs 参数添加到描述媒体内容的 MIME 类型中。使用它,可以提供特定于容器的信息。这些信息可能包括视频编解码器的配置文件、用于音频轨道的类型等等。

本指南简要介绍了媒体类型 codecs 参数的语法以及它如何与 MIME 类型字符串一起使用,以提供有关音频或视频媒体内容的详细信息,而不仅仅是指示容器类型。

容器格式 MIME 类型

容器格式的 MIME 类型通过说明媒体类型(audiovideo 等)、然后是一个斜杠字符(/)、然后是用于包含媒体的格式来表示

audio/mpeg

使用 MPEG 文件类型的音频文件,例如 MP3。

video/ogg

使用 Ogg 文件类型的视频文件。

video/mp4

使用 MPEG-4 文件类型的视频文件。

video/quicktime

Apple 的 QuickTime 格式的视频文件。如其他地方所述,此格式曾经在 Web 上广泛使用,但现在已不再使用,因为它需要插件才能使用。

但是,所有这些 MIME 类型都比较模糊。所有这些文件类型都支持各种编解码器,而这些编解码器可能具有任意数量的配置文件、级别和其他配置因素。因此,您可能希望将 codecs 参数与媒体类型一起包含。

基本语法

您可以将 codecs 参数添加到媒体类型中。为此,请附加一个分号(;),后跟 codecs=,然后是描述文件内容格式的字符串。某些媒体类型仅允许您指定要使用的编解码器的名称,而其他媒体类型则允许您指定这些编解码器的各种约束。您可以通过逗号分隔多个编解码器来指定它们。

audio/ogg; codecs=vorbis

包含 Vorbis 音频轨道的 Ogg 文件。

video/webm; codecs="vp8, vorbis"

包含 VP8 视频和/或 Vorbis 音频的 WebM 文件。

video/mp4; codecs="avc1.4d002a"

包含 AVC(H.264)视频(主要配置文件,级别 4.2)的 MPEG-4 文件。

与任何 MIME 类型参数一样,如果编解码器的任何属性使用必须根据 RFC 2231,第 4 节:MIME 参数值和编码词扩展进行百分比编码的特殊字符,则必须将 codecs 更改为 codecs*(注意星号字符 *)。您可以使用 JavaScript encodeURI() 函数对参数列表进行编码;类似地,您可以使用 decodeURI() 解码先前编码的参数列表。

注意:当使用 codecs 参数时,指定的编解码器列表必须包含文件中使用的每个编解码器。该列表还可以包含文件中不存在的编解码器。

按容器划分的编解码器选项

以下容器在其 codecs 参数中支持扩展的编解码器选项

上面的一些链接指向同一部分;这是因为这些媒体类型都基于 ISO 基本媒体文件格式 (ISO BMFF),因此它们共享相同的语法。

AV1

AV1 的 codecs 参数的语法在 AV1 编解码器 ISO 媒体文件格式绑定规范的第 5 节:编解码器参数字符串中定义。

av01.P.LLT.DD[.M.CCC.cp.tc.mc.F]

注意:基于 Chromium 的浏览器将接受可选参数的任何子集(而不是像规范要求的那样全部或无)。

此编解码器参数字符串的组件在下面的表格中进行了更详细的描述。每个组件都是固定数量的字符;如果值小于该长度,则必须用前导零填充。

AV1 编解码器参数字符串组件
组件 详细信息
P

一位配置文件编号

AV1 配置文件编号
配置文件编号 描述
0 "主要" 配置文件;支持 YUV 4:2:0 或单色比特流,每个组件的比特深度为 8 或 10 位。
1 "高级" 配置文件增加了对 4:4:4 色度子采样的支持。
2 "专业" 配置文件增加了对 4:2:2 色度子采样和每个组件 12 位颜色的支持。
LL 两位级别编号,转换为 X.Y 格式级别格式,其中 X = 2 + (LL >> 2)Y = LL & 3。有关详细信息,请参阅 AV1 规范中的 附录 A,第 3 节
T 一位层指示符。对于主要层(seq_tier 等于 0),此字符为字母 M。对于高级层(seq_tier 为 1),此字符为字母 H。高级层仅适用于 4.0 及以上级别。
DD 两位组件比特深度。此值必须为 8、10 或 12 之一;哪些值有效取决于配置文件和其他属性。
M 一位单色标志;如果此值为 0,则视频除 Y 平面外还包括 U 和 V 平面。否则,视频数据完全位于 Y 平面中,因此是单色的。有关 YUV 颜色系统的工作原理的详细信息,请参阅 YUV。默认值为 0(非单色)。
CCC

CCC 表示色度子采样,为三位数字。第一位是 subsampling_x,第二位是 subsampling_y。如果这两者都是 1,则第三位是 chroma_sample_position 的值;否则,第三位始终为 0。这与 M 组件结合使用,可以用来构建色度子采样格式

确定色度子采样格式
subsampling_x subsampling_y 单色标志 色度子采样格式
0 0 0 YUV 4:4:4
1 0 0 YUV 4:2:2
1 1 0 YUV 4:2:0
1 1 1 YUV 4:0:0(单色)

CCC 中的第三位表示色度样本位置,值为 0 表示位置未知,必须在解码期间单独提供;值为 1 表示样本位置与 (0, 0) 亮度样本水平对齐;值为 2 表示样本位置与 (0, 0) 亮度样本对齐。

默认值为 110(4:2:0 色度子采样)。

cp 两位 color_primaries 值表示媒体使用的颜色系统。例如,用于 HDR 视频的 BT.2020/BT.2100 颜色为 09。此信息(以及每个剩余组件的信息)位于 AV1 规范的 颜色配置语义部分。默认值为 01(ITU-R BT.709)。
tc 两位 transfer_characteristics 值。此值定义用于将伽马(在技术术语中称为“光电传递函数”)从源映射到显示器的函数。例如,10 位 BT.2020 为 14。默认值为 01(ITU-R BT.709)。
mc 两位 matrix_coefficients 常量选择用于将红、蓝和绿通道转换为亮度和色度信号的矩阵系数。例如,用于 BT.709 的标准系数使用值 01 表示。默认值为 01(ITU-R BT.709)。
F 一个一位数的标志,指示颜色是否应该允许使用全部可能的取值范围 (1),或者应该限制在被认为对指定颜色配置有效的取值范围内(即,**工作室摆动表示**)。默认为 0(使用工作室摆动表示)。

M(单色标志)开始的所有字段都是可选的;您可以在任何时候停止包含字段(但不能任意省略字段)。默认值包含在上表中。一些 AV1 编解码器字符串示例

av01.2.15M.10.0.100.09.16.09.0

AV1 专业配置文件,级别 5.3,主层级,每个颜色分量 10 位,使用 ITU-R BT.2100 颜色原色、传输特性和 YCbCr 颜色矩阵的 4:2:2 色度子采样。指示工作室摆动表示。

av01.0.15M.10

AV1 主配置文件,级别 5.3,主层级,每个颜色分量 10 位。其余属性取自默认值:4:2:0 色度子采样、BT.709 颜色原色、传输特性和矩阵系数。工作室摆动表示。

VP9

ISO 基本媒体文件格式语法

VP9 的 codecs 参数的语法在 VP 编解码器 ISO 媒体文件格式绑定 规范的 编解码器参数字符串 部分中定义。

在此格式中,codecs 参数的值以一个四字符代码开头,用于识别容器中使用的编解码器,然后是一系列用句点 (.) 分隔的两位数值。

cccc.PP.LL.DD
cccc.PP.LL.DD.CC.cp.tc.mc.FF

前四个组件是必需的;从 CC(色度子采样)开始的所有内容都是可选的,但必须全部或不选。这些组件中的每一个都在下表中进行了描述。表格后面是一些示例。

WebM 编解码器参数组件
组件 详细信息
cccc

一个四字符代码,指示哪个可能的编解码器正在被描述。潜在值是

WebM 支持的编解码器的四字符代码
四字符代码 编解码器
vp08 VP8
vp09 VP9
vp10 VP10
PP

两位数的配置文件编号,如果需要,用前导零填充以确保正好两位数。

WebM 配置文件编号
配置文件 描述
00 仅 4:2:0(色度水平和垂直子采样)。仅允许每个颜色分量 8 位。
01 允许所有色度子采样格式。仅允许每个颜色分量 8 位。
02 仅 4:2:0(色度水平和垂直子采样)。支持每个颜色样本分量 8、10 或 12 位。
03 允许所有色度子采样格式。支持每个颜色样本分量 8、10 或 12 位。
LL 两位数的级别编号。级别编号采用定点表示法,其中第一位是各位数字,第二位表示十分位。例如,级别 3 是 30,级别 6.1 是 61
DD 亮度和颜色分量值的位深度;允许的值为 8、10 和 12。
CC

一个两位数的值,指示要使用的色度子采样格式。下表列出了允许的值;有关此主题和其他主题的更多信息,请参阅我们“数字视频概念”指南中的 色度子采样

WebM 色度子采样标识符
色度子采样格式
00 4:2:0,色度样本位于像素之间的间隙处
01 4:2:0 色度子采样,样本与亮度 (0, 0) 重合
02 4:2:2 色度子采样(使用每 4 个水平像素的亮度中的 4 个)
03 4:4:4 色度子采样(保留每个像素的亮度和色度)
04 保留
cp

一个两位数的整数,指定 ISO/IEC 23001-8:2016 标准第 8.1 节中的颜色原色中的哪一个。此组件以及之后的每个组件都是可选的。

颜色原色组件的可能值为

ISO/IEC 颜色原色标识符
详细信息
00 保留供 ITU 或 ISO/IEC 未来使用
01 BT.709、sRGB、sYCC。BT.709 是高清 (HD) 电视的标准;sRGB 是计算机显示器最常用的色彩空间。广播 BT.709 使用 8 位颜色深度,合法范围为 16(黑色)到 235(白色)。
02 图像特性未知,或由应用程序确定
03 保留供 ITU 或 ISO/IEC 未来使用
04 BT.470 系统 M,NTSC(美国的标准清晰度电视)
05 BT.470 系统 B,G;BT.601;BT.1358 625;BT.1700 625 PAL 和 625 SECAM
06 BT.601 525;BT.1358 525 或 625;BT.1700 NTSC;SMPTE 170M。在功能上与 7 相同。
70 SMPTE 240M(历史)。在功能上与 6 相同。
08 通用胶片
09 BT.2020;BT.2100。用于超高清 (4K) 高动态范围 (HDR) 视频,它们具有非常宽广的颜色 色域 并支持 10 位和 12 位颜色分量深度。
10 SMPTE ST 428(D-Cinema 分发母版:图像特性)。定义 DCDM 的未压缩图像特性。
11 SMPTE RP 431(D-Cinema 质量:参考投影仪和环境)。描述提供一致电影放映体验的参考投影仪和环境条件。
12 SMPTE EG 432(数字源处理:D-Cinema 的颜色处理)。工程指南,为数字电影提供颜色信号解码建议。
1321 保留供 ITU-T 或 ISO/IEC 未来使用
22 EBU Tech 3213-E
23255 保留供 ITU-T 或 ISO/IEC 未来使用
tc 一个两位数的整数,指示视频的 transferCharacteristics。此值来自 ISO/IEC 23001-8:2016 的第 8.2 节,并指示在将解码后的颜色适配到渲染目标时要使用的传输特性。
mc matrixCoefficients 属性的两位数的值。此值来自 ISO/IEC 23001-8:2016 规范第 8.3 节中的表格。此值指示在从本机红、蓝和绿原色映射到亮度和色度信号时要使用哪组系数。这些系数反过来与该部分中找到的方程一起使用。
FF 指示是否将每个颜色分量的黑电平和颜色范围限制在合法范围内。对于 8 位颜色样本,合法范围是 16-235。值为 00 表示应强制执行这些限制,而值为 01 则允许每个分量的全部可能的取值范围,即使结果颜色超出颜色系统的范围。

示例

video/webm;codecs="vp09.02.10.10.01.09.16.09.01,opus"

VP9 视频,配置文件 2 级别 1.0,具有使用 4:2:0 色度子采样、BT.2020 原色、ST 2084 EOTF(HDR SMPTE)、BT.2020 非恒定亮度颜色矩阵和全范围色度和亮度编码的 10 位 YUV 内容。音频采用 Opus 格式。

ISO 基本媒体文件格式:MP4、QuickTime 和 3GP

基于 ISO 基本媒体文件格式 (ISO BMFF) 的所有媒体类型都共享相同的 codecs 参数语法。这些媒体类型包括 MPEG-4(实际上,MPEG-4 所基于的 QuickTime 文件格式)以及 3GP。可以使用以下 MIME 类型使用 codecs 参数描述视频和音频轨道

MIME 类型 描述
audio/3gpp 3GP 音频 (RFC 3839:第 3 代合作伙伴计划 (3GP) 多媒体文件的 MIME 类型注册)
video/3gpp 3GP 视频 (RFC 3839:第 3 代合作伙伴计划 (3GP) 多媒体文件的 MIME 类型注册)
audio/3gp2 3GP2 音频 (RFC 4393:3GPP2 多媒体文件的 MIME 类型注册)
video/3gp2 3GP2 视频 (RFC 4393:3GPP2 多媒体文件的 MIME 类型注册)
audio/mp4 MP4 音频 (RFC 4337:MPEG-4 的 MIME 类型注册)
video/mp4 MP4 视频 (RFC 4337:MPEG-4 的 MIME 类型注册)
application/mp4 封装在 MPEG-4 中的非视听媒体

codecs 参数描述的每个编解码器都可以指定为容器的名称(3gpmp4quicktime 等)或容器名称加上其他参数以指定编解码器及其配置。编解码器列表中的每个条目可以包含一些组件,用句点 (.) 分隔。

codecs 值的语法因编解码器而异;但是,它始终以编解码器的四字符标识符、句点分隔符 (.) 开头,后跟特定数据格式的对象类型指示 (OTI) 值。对于大多数编解码器,OTI 是一个两位数的十六进制数;但是,对于 AVC (H.264),它是六位十六进制数字。

因此,每个支持的编解码器的语法如下所示

cccc[.pp]*(通用 ISO BMFF)

其中 cccc 是编解码器的四字符 ID,pp 是零个或多个两位数编码的属性值所在的位置。

mp4a.oo[.A](MPEG-4 音频)

其中 oo 是更精确地描述媒体内容的对象类型指示值,A 是一位数的音频 OTI。OTI 的可能值可以在 MP4 注册机构网站的 对象类型页面 上找到。例如,MP4 文件中的 Opus 音频为 mp4a.ad。有关更多详细信息,请参阅 MPEG-4 音频

mp4v.oo[.V](MPEG-4 视频)

在这里,oo 再次是更精确地描述内容的 OTI,而 V 是一位数的视频 OTI。

avc1[.PPCCLL](AVC 视频)

PPCCLL 是六位十六进制数字,指定配置文件编号 (PP)、约束集标志 (CC) 和级别 (LL)。有关 PP 的可能值,请参阅 AVC 配置文件

约束集标志字节由一位布尔标志组成,最高有效位称为标志 0(或某些资源中的 constraint_set0_flag),每个后续位编号都高一位。目前,仅使用标志 0 到 2;其他五位必须为零。标志的含义取决于使用的配置文件。

级别是一个定点数,因此值为 14(十进制 20)表示级别 2.0,而值为 3D(十进制 61)表示级别 6.1。一般来说,级别编号越高,流使用的带宽就越多,支持的最大视频尺寸也越高。

AVC 配置文件

以下是 AVC 配置文件及其在 codecs 参数中使用的配置文件编号,以及约束组件 CC 的指定值。

配置文件 编号(十六进制) 约束字节
**受约束的基线配置文件 (CBP)** CBP 主要是针对资源受限或需要控制资源使用以最大程度降低媒体性能不佳的可能性的场景的解决方案。 42 40
**基线配置文件 (BP)** 与 CBP 类似,但具有更多数据丢失保护和恢复功能。这不像 CBP 引入之前那样广泛使用。所有 CBP 流也被视为 BP 流。 42 00
**扩展配置文件 (XP)** 旨在通过网络流式传输视频,具有高压缩能力以及对数据鲁棒性和流切换的进一步改进。 58 00
**主配置文件 (MP)** 用于以 MPEG-4 格式广播的标准清晰度数字电视的配置文件。不用于高清电视广播。自 2004 年为 HDTV 使用添加了高级配置文件以来,该配置文件的重要性已经下降。 4D 00
**高级配置文件 (HiP)** 目前,HiP 是广播和基于磁盘的 HD 视频的主要配置文件;它用于 HD 电视广播和蓝光视频。

64 00
高级渐进编码(PHiP) 本质上是高级编码,但不支持字段编码。 64 08
受限高级编码 PHiP,但不支持双向预测切片(“B 切片”)。 64 0C
高级 10 编码(Hi10P) 高级编码,但支持每个颜色分量最多 10 位。 6E 00
高级 4:2:2 编码(Hi422P) 在 Hi10P 的基础上扩展,增加了对 4:2:2 色度下采样的支持,以及每个颜色分量最多 10 位。 7A 00
高级 4:4:4 预测编码(Hi444PP) 除了 Hi422P 中包含的功能外,Hi444PP 还增加了对 4:4:4 色度下采样的支持(其中不丢弃任何颜色信息)。还包括对每个颜色样本最多 14 位的支持以及高效的无损区域编码。可以选择将每个帧编码为三个独立的颜色平面(也就是说,每个颜色的数据都存储为单色帧)。 F4 00
高级 10 内部编码 高级编码,限制为全帧内使用。主要用于专业应用。 6E 10
高级 4:2:2 内部编码 Hi422 编码,限制为全帧内使用。 7A 10
高级 4:4:4 内部编码 高级 4:4:4 编码,限制为仅使用帧内帧。 F4 10
CAVLC 4:4:4 内部编码 高级 4:4:4 编码,限制为全帧内使用,并且仅使用 CAVLC 熵编码。 44 00
可扩展基线编码 旨在用于视频会议以及监控和移动用途,SVC 基线编码基于 AVC 的受限基线编码。流中的基层以高质量提供,还有一些次级子流提供了相同视频的替代形式,可在各种受限环境中使用。这些可能包括任何组合的降低分辨率、降低帧率或提高压缩级别。 53 00
可扩展受限基线编码 主要用于实时通信应用。WebRTC 尚未支持,但 WebRTC API 的扩展 以允许 SVC 正在开发中。 53 04
可扩展高级编码 主要用于广播和流媒体应用。基层(或最高质量层)必须符合 AVC 高级编码。 56 00
可扩展受限高级编码 可扩展高级编码的一个子集,主要设计用于实时通信。 56 04
可扩展高级内部编码 主要仅对生产应用有用,此编码仅支持全帧内使用。 56 20
立体高级编码 立体高级编码使用场景的两个渲染(左眼和右眼)提供立体视频。否则,提供与高级编码相同的功能。 80 00
多视图高级编码 支持使用时间和 MVC 视图间预测的两个或多个视图。不支持字段图像或宏块自适应帧场编码。 76 00
多视图深度高级编码 基于高级编码,主子流必须遵守该编码。其余子流必须与立体高级编码匹配。 8A 00

MPEG-4 音频

codecs 列表中条目的值以 mp4a 开头时,该值的语法应为

mp4a.oo[.A]

此处,oo 是两位十六进制对象类型指示,它指定用于媒体的编解码器类。OTI 由 MP4 注册机构 分配,该机构维护着 可能的 OTI 值列表。一个特殊的值是 40;这表示媒体为 MPEG-4 音频(ISO/IEC 14496 第 3 部分)。为了更具体,对于 OTI 40,添加了第三个组件——音频对象类型,以将类型缩小到 MPEG-4 的特定子类型。

音频对象类型指定为一位或两位十进制值(与 codecs 参数中的大多数其他值不同,后者使用十六进制)。例如,MPEG-4 的 AAC-LC 的音频对象类型号为 2,因此表示 AAC-LC 的完整 codecs 值为 mp4a.40.2

因此,ER AAC LC(其音频对象类型为 17)可以使用完整 codecsmp4a.40.17 表示。一位值可以作为一位给出(这是最佳选择,因为兼容性最广),也可以用前导零将其填充到两位,例如 mp4a.40.02

注意:规范最初规定第三个组件中的音频对象类型号只能是一位十进制数字。但是,随着时间的推移,规范的修订将这些值的范围扩展到远远超过一位十进制数字,因此现在第三个参数可以是一位或两位数字。用前导 0 填充小于 10 的值是可选的。但是,旧版本的 MPEG-4 编解码器可能不支持两位值,因此在可能的情况下使用一位数字将最大程度地提高兼容性。

音频对象类型在 ISO/IEC 14496-3 第 1 部分第 1.5.1 节中定义。下表提供了音频对象类型的基本列表,并且在更常见对象类型的情况下,提供了支持它的配置文件列表,但如果您需要了解任何给定 MPEG-4 音频类型的内部工作原理的更多信息,则应参考规范。

MPEG-4 音频对象类型
ID 音频对象类型 配置文件支持
0 NULL
1 AAC 主
2 AAC LC(低复杂度) 主、可扩展、HQ、LD v2、AAC、HE-AAC、HE-AAC v2
3 AAC SSR(可扩展采样率)
4 AAC LTP(长期预测) 主、可扩展、HQ
5 SBR(频谱带复制) HE-AAC、HE-AAC v2
6 AAC 可扩展 主、可扩展、HQ
7 TwinVQ(超低比特率编码) 主、可扩展
8 CELP(码激励线性预测) 主、可扩展、语音、HQ、LD
9 HVXC(谐波矢量激励编码) 主、可扩展、语音、LD
1011 保留
12 TTSI(文本到语音接口) 主、可扩展、语音、合成、LD
13 主合成 主、合成
14 波表合成
15 通用 MIDI
16 算法合成和音频效果
17 ER AAC LC(抗误差 AAC 低复杂度) HQ、移动互联
18 保留
19 ER AAC LTP(抗误差 AAC 长期预测) HQ
20 ER AAC 可扩展(抗误差 AAC 可扩展) 移动互联
21 ER TwinVQ(抗误差 TwinVQ) 移动互联
22 ER BSAC(抗误差位切片算术编码) 移动互联
23 ER AAC LD(抗误差 AAC 低延迟;用于双向通信) LD、移动互联
24 ER CELP(抗误差码激励线性预测) HQ、LD
25 ER HVXC(抗误差谐波矢量激励编码) LD
26 ER HILN(抗误差谐波和单个线加噪声)
27 ER 参数化(抗误差参数化)
28 SSC(正弦编码)
29 PS(参数立体声) HE-AAC v2
30 MPEG 环绕声
31 转义
32 MPEG-1 第 1 层
33 MPEG-1 第 2 层(MP2)
34 MPEG-1 第 3 层(MP3)
35 DST(直接流传输)
36 ALS(音频无损)
37 SLS(可扩展无损)
38 SLS 非核心(可扩展无损非核心)
39 ER AAC ELD(抗误差 AAC 增强低延迟)
40 SMR 简单(符号音乐表示简单)
41 SMR 主(符号音乐表示主)
42 保留
43

SAOC(空间音频对象编码)

ISO/IEC 14496-3:2009/Amd.2:2010(E) 中定义。

44

LD MPEG 环绕声(低延迟 MPEG 环绕声)

ISO/IEC 14496-3:2009/Amd.2:2010(E) 中定义。

45 及以上 保留

WebM

WebM codecs 参数的基本形式是列出四个 WebM 编解码器中的一个或多个,并用逗号分隔。下表显示了一些示例

MIME 类型 描述
video/webm;codecs="vp8" 包含 VP8 视频的 WebM 视频;未指定音频。
video/webm;codecs="vp9" 包含 VP9 视频的 WebM 视频。
audio/webm;codecs="vorbis" WebM 容器中的 Vorbis 音频。
audio/webm;codecs="opus" WebM 容器中的 Opus 音频。
video/webm;codecs="vp8,vorbis" 包含 VP8 视频和 Vorbis 音频的 WebM 容器。
video/webm;codecs="vp9,opus" 包含 VP9 视频和 Opus 音频的 WebM 容器。

字符串 vp8.0vp9.0 也有效,但不建议使用。

使用 codecs 参数

您可以在几种情况下使用 codecs 参数。首先,您可以在创建 <audio><video> 元素时,将其与 <source> 元素一起使用,以便为浏览器建立一组选项,以便在选择要呈现给元素中用户的媒体格式时进行选择。

您还可以在将 MIME 媒体类型指定给 MediaSource.isTypeSupported() 方法时使用 codecs 参数;此方法返回一个布尔值,指示媒体是否可能在当前设备上工作。

另请参阅