SourceBuffer: changeType() 方法
注意:此功能在 专用 Web Workers 中可用。
SourceBuffer 接口的 changeType() 方法用于设置未来调用 appendBuffer() 时,新媒体数据应符合的 MIME 类型。这使得在流媒体播放过程中更改编解码器或容器类型成为可能。
在某些场景下,通过根据资源限制的变化从一个编解码器切换到另一个编解码器,可以帮助使媒体源适应不断变化的带宽可用性。
语法
js
changeType(type)
参数
type-
一个字符串,指定未来缓冲区将符合的 MIME 类型。
返回值
无(undefined)。
异常
TypeError-
如果指定的字符串为空,而不是表示有效的 MIME 类型,则会抛出此错误。
InvalidStateErrorDOMException-
如果
SourceBuffer不是父级媒体源的sourceBuffers列表中的成员,或者缓冲区的updating属性指示之前排队的appendBuffer()或remove()仍在处理中,则会抛出此错误。 NotSupportedErrorDOMException-
如果指定的 MIME 类型不受支持,或者在
MediaSource.sourceBuffers列表中存在的SourceBuffer对象类型不支持该 MIME 类型,则会抛出此错误。
用法说明
如果父级 MediaSource 的 readyState 属性设置为 "ended",调用 changeType() 会将 readyState 属性设置为 "open",并在父级媒体源上触发一个名为 sourceopen 的事件。
规范
| 规范 |
|---|
| Media Source Extensions™ # dom-sourcebuffer-changetype |
浏览器兼容性
加载中…