as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持

适用于Vega的React Native W3C媒体API

适用于Vega的React Native W3C媒体API

Vega媒体播放器为Fire TV设备上的React Native应用带来了W3C(万维网联盟)媒体API的强大功能。您可以沿用网页开发中那些您已熟悉的标准,例如<video>元素和HTMLMediaElement

Vega媒体播放器支持HTMLMediaElement,可实现基本媒体播放功能;支持媒体源扩展 (MSE),可用于自适应流媒体;还支持加密媒体扩展 (EME),以保护受DRM保护的内容。在Vega设备中,媒体播放器堆栈基于GStreamer框架运行,以实现硬件加速的解码和画面渲染功能。

以下是一些您可能已经熟悉的、我们额外支持的HTML5属性:

  • 标准属性:currentTimedurationpausedvolume
  • 标准方法:play()pause()load()
  • 标准事件:timeupdateendederrorloadedmetadata

网页开发到Vega开发的过渡

为了帮助您更好地理解,以下代码示例显示了一个在组件上播放视频的简单场景。

// HTML5网页
const video = document.querySelector("video");
video.src = "video.mp4";
video.play();

// Vega
const video = new VideoPlayer();
await video.initialize();
video.src = "video.mp4";
video.play();

格式兼容性

Vega媒体播放器支持以下媒体格式和编解码器。电视硬件可能存在某些依赖关系(例如,Dolby音频或4K播放),因此,在开始播放之前,应用需要检查输出设备的媒体功能,这样才能选择正确的编解码器进行播放

支持的格式:

  • URL模式: MP4、MP3、MKV、FLV、OGG、FLAC
  • MSE模式: HLS (.m3u8)、DASH (.mpd)、SmoothStreaming

支持的编解码器:

  • 视频: H.264、H.265、VP8、VP9、AV1
  • 音频: AAC、MP3、Dolby(AC3、eAC3、AC4)、Opus、FLAC

DRM支持:

  • Widevine: L1(硬件)用于HD/4K,L3(软件)用于SD
  • PlayReady: SL2000/3000(硬件)、SL150(软件)

选择您的播放器类型

您需要做出一个重要决策:根据您的内容和具体需求,挑选最合适的播放方案。

根据内容类型决定

┌─────────────────────────────────────────────────────────────────┐
│                        什么类型的内容?                           │
└───────────────────────────────┬─────────────────────────────────┘
                                │
                  ┌─────────────▼─────────────┐
                  │   简单文件 (MP4、MP3) ?   │
                  │   没有自适应流媒体?         │
                  └─────────────┬─────────────┘
                                │ 是
                          ┌─────▼─────┐
                          │   使用URL  │
                          │   模式     │
                          │  (简单)  │
                          └───────────┘
                                │ 否
                    ┌───────────▼───────────┐
                    │      自适应流媒体?     │
                    │   (HLS、DASH、直播TV)  │
                    └───────────┬───────────┘
                                │ 是
                                ▼
                        查看MSE播放器选择 

MSE播放器选择(如有必要)

对于自适应流媒体内容,您需要选择一个合适的JavaScript播放器。需要考虑的因素包括:流媒体类型(HLS、DASH或两者兼而有之)、DRM、直播内容、分析、开源软件与商业软件等等。本指南使用Shaka播放器,这是因为这种播放器能处理各种内容类型和场景。但是,您可以根据自己的特定要求选择其他兼容MSE的播放器(例如HLS.js、Dash.js或商业播放器)。

有关支持的播放器清单,请参阅“支持的库和服务”中的兼容Vega的媒体播放器

基础内容:

高级主题:

参考资料:


Last updated: 2025年10月1日