shaka-player HTML5播放器

Posted by eye on 03-29,2023

shaka-player

JavaScript 播放器/DASH 和 HLS 客户端/MSE-EME 播放器

Shaka Player 是一个用于自适应媒体的开源 JavaScript 库。它在浏览器中播放自适应媒体格式(例如DASH、HLS和MSS ),无需使用插件或 Flash。相反,Shaka Player 使用开放网络标准MediaSource Extensions和Encrypted Media Extensions。

Shaka Player 还支持使用IndexedDB离线存储和播放媒体 。内容可以存储在任何浏览器上。

我们的主要目标是尽可能轻松地使用现代浏览器技术流式传输自适应比特率视频和音频。我们尽量使库轻便、简单,并且不受第三方依赖。构建和部署所需的一切都在源代码中。

功能

支持的 DASH 功能:

  • VOD、直播和正在进行的录制(动态 VOD 内容)
  • MPD@timeShiftBufferDepth 用于在直播流中向后搜索
  • 多时段内容(静态和动态)
  • Xlink 元素(仅限 actuate=onLoad、解析为零、回退内容)
  • 所有形式的分段索引信息:SegmentBase@indexRange、SegmentTimeline、SegmentTemplate@duration、SegmentTemplate@index、SegmentList
  • 多编解码器/多容器清单(我们将与浏览器协商支持并选择最佳的)
  • 加密内容(包括自定义 ContentProtection 架构、清单中的 PSSH)
  • 密钥轮换
  • 特技模式曲目
  • WebVTT 和 TTML
  • CEA-608/708 字幕

不支持的DASH 功能:

  • Xlink with actuate=onRequest
  • 没有任何段信息的清单: #1088
  • 在演示期间更改编解码器(MSE 不支持)
  • 不同帧率或比特率下相同分辨率的多个特技模式轨道
  • 时间尺度太大以至于时间戳无法在 JavaScript 中表示为整数 (2^53)