as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
Ring
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持
跳转到主要内容
以下是将媒体源扩展 (MSE) 播放器移植到Vega的一般准则:
  • 使用Fetch API代替XMLHttpRequest (XHR) 对象。
  • 不要在Fetch API中使用ReadableStream接口,而应使用异步完全读取。
  • 解决有关文档对象模型 (DOM) 依赖项的问题。
  • 必要时实现polyfill。

Shaka播放器

对您的Shaka播放器进行以下修改,以便使用Vega来运行。
  1. 对W3CMedia的媒体源API使用polyfill。 示例:
  2. 使用XMLDOM npm程序包代替DOMParser,并指定用于提取的窗口。 已修改的navigator.userAgent示例:
  3. 使用polyfill修改文档对象。创建和销毁Video RN组件时,设置或清除global.gvideo。 示例:
  4. 在xml_util.js中禁用Node接口。 示例:

Dash.js播放器

对您的dash.js播放器进行以下修改,以便使用Vega来运行。
  1. 在导入任何dash.js模块之前,必须初始化:
  2. 对HTTPLoader.js进行检查时,更改为使用提取而不是XMLHTTPRequest。代码中的一些检查会导致使用XMLHTTPRequest,后者无法下载片段(会下载0字节的片段)。 示例:

HLS.js播放器

对您的HLS.js播放器进行以下修改,以便使用Vega来运行。
  1. 将适用于分叉的Shaka播放器的相同polyfill类应用于HLS.js播放器。
  2. 对location.href、DOMException和HTMLVideoElement类使用polyfill。
  3. 启用hls.js的提取加载器插件。
  4. 在提取加载器插件中,禁用onProgress回调(不支持fetch.ReadableStream)。
  5. 禁用渐进式配置(不支持fetch.ReadableStream)。
  6. 禁用所有字幕配置(不支持CUE API)。
  7. 修补SourceBuffer.appendBuffer方法以接受Uint8Array。
  8. 禁用worker(不支持工作线程 [后台进程])。

最后修改于 2026年10月26日