通用 - 媒体
- ABR
- 自适应比特率。ABR 算法是一种在播放期间在多个轨道之间进行选择的算法,其中每个轨道呈现相同的媒体,但比特率不同。
- 自适应流式传输
- 在自适应流式传输中,有多个轨道可用,它们以不同的比特率呈现相同的媒体。在播放期间,使用 ABR 算法动态选择所选轨道。
- 访问单元
- 媒体容器中的数据项。通常指压缩媒体比特流的一小部分,可以解码并呈现给用户(视频画面或可播放音频片段)。
- AV1
AOMedia Video 1 编解码器。
如需了解更多信息,请参阅维基百科页面。
- AVC
高级视频编码,也称为 H.264 视频编解码器。
如需了解更多信息,请参阅维基百科页面。
- 编解码器
此术语被滥用,根据上下文有多种含义。以下两种定义最常用:
- 用于编码或解码访问单元的硬件或软件组件。
- 音频或视频样本格式规范。
- 容器
一种媒体容器格式,例如 MP4 和 Matroska。此类格式称为容器格式,因为它们包含一个或多个媒体轨道,其中每个轨道使用特定的编解码器(例如,MP4 文件中的 AAC 音频和 H.264 视频)。请注意,某些媒体格式既是容器格式又是编解码器(例如,MP3)。
- DASH
HTTP 上的动态自适应流式传输。一种行业驱动的自适应流式传输协议。它由 ISO/IEC 23009 定义,可在 ISO 公开标准页面上找到。
- DRM
数字版权管理。
如需了解更多信息,请参阅维基百科页面。
- 无缝播放
跳过轨道的结尾和/或下一个轨道的开头以避免轨道之间出现静音间隙的过程。
如需了解更多信息,请参阅维基百科页面。
- HEVC
高效视频编码,也称为 H.265 视频编解码器。
- HLS
HTTP Live Streaming。Apple 的自适应流式传输协议。
如需了解更多信息,请参阅 Apple 文档。
- 清单
一个定义自适应流式传输协议中媒体结构和位置的文件。示例包括 DASH MPD 文件、HLS 多变体播放列表文件和 Smooth Streaming 清单文件。请勿与 AndroidManifest XML 文件混淆。
- MPD
- PCM
脉冲编码调制。
如需了解更多信息,请参阅维基百科页面。
- Smooth Streaming
Microsoft 的自适应流式传输协议。
如需了解更多信息,请参阅 Microsoft 文档。
- 轨道
媒体中单个音频、视频、文本或元数据流。媒体文件通常包含多个轨道。例如,视频文件中的视频轨道和音频轨道,或不同语言的多个音频轨道。在自适应流式传输中,还有多个轨道以不同的比特率包含相同的内容。
通用 - Android
- AudioTrack
一个用于播放音频的 Android API。
如需了解更多信息,请参阅 Javadoc。
- CDM
内容解密模块。Android 平台中负责解密受 DRM 保护内容的组件。CDM 通过 Android 的
MediaDrm
API 访问。如需了解更多信息,请参阅 Javadoc。
- IMA
交互式媒体广告。IMA 是一个 SDK,可轻松将多媒体广告集成到应用中。
如需了解更多信息,请参阅 IMA 文档。
- MediaCodec
一个用于访问平台中媒体编解码器(即编码器和解码器组件)的 Android API。
如需了解更多信息,请参阅 Javadoc。
- MediaDrm
一个用于访问平台中CDM的 Android API。
如需了解更多信息,请参阅 Javadoc。
- 音频卸载
将压缩音频直接发送到设备提供的数字信号处理器 (DSP) 的能力。音频卸载功能对于低功耗音频播放很有用。
如需了解更多信息,请参阅 Android 交互文档。
- 直通
无需先解码即可通过 HDMI 直接发送压缩音频的功能。例如,这用于在 Android TV 上播放 5.1 环绕声。
如需了解更多信息,请参阅 Android 交互文档。
- Surface
请参阅 Javadoc 和 Android 图形文档。
- 隧道
Android 框架接收压缩视频和压缩或 PCM 音频数据,并承担解码、同步和渲染责任的过程,接管了通常由应用程序处理的一些任务。隧道可以改善音频到视频 (AV) 同步,可以平滑视频播放,并可以减少应用程序处理器的负载。它主要用于 Android TV。
如需了解更多信息,请参阅 Android 交互文档和 ExoPlayer 文章。
ExoPlayer
- BandwidthMeter
估算网络带宽的组件,例如通过侦听数据传输。在自适应流式传输中,带宽估算可用于在播放期间选择不同的比特率轨道。
如需了解更多信息,请参阅组件 Javadoc。
- DataSource
请求数据(可能通过 HTTP、从本地文件等)的组件。
如需了解更多信息,请参阅组件 Javadoc。
- Extractor
解析媒体容器格式的组件,输出轨道信息和每个轨道所属的独立访问单元,适合解码器使用。
如需了解更多信息,请参阅组件 Javadoc。
- LoadControl
决定何时开始和停止加载以及何时开始播放的组件。
如需了解更多信息,请参阅组件 Javadoc。
- MediaSource
提供有关媒体结构的高级信息(作为
Timeline
),并为播放创建MediaPeriod
实例(对应于Timeline
的时段)。如需了解更多信息,请参阅组件 Javadoc。
- MediaPeriod
加载单个媒体片段(例如音频文件、广告、两个广告之间交错的内容等),并允许读取加载的媒体(通常由
Renderers
)。关于加载媒体中的哪些轨道以及何时开始和停止加载的决定分别由TrackSelector
和LoadControl
做出。如需了解更多信息,请参阅组件 Javadoc。
- Renderer
读取、解码和渲染媒体样本的组件。
Surface
和AudioTrack
是用于渲染视频和音频数据的标准 Android 平台组件。如需了解更多信息,请参阅组件 Javadoc。
- Timeline
表示媒体的结构,从单个媒体文件的简单情况到播放列表和插入广告的流等复杂的媒体组合。
如需了解更多信息,请参阅组件 Javadoc。
- TrackGroup
包含一个或多个相同视频、音频或文本内容的表示形式的组,通常以不同的比特率用于自适应流式传输。
如需了解更多信息,请参阅组件 Javadoc。
- TrackSelection
一个选择,由
TrackGroup
中轨道的静态子集和该子集中可能变化的选定轨道组成。对于自适应流式传输,TrackSelection
负责在新媒体块开始加载时选择适当的轨道。如需了解更多信息,请参阅组件 Javadoc。
- TrackSelector
选择用于播放的轨道。给定要播放的
MediaPeriod
的轨道信息以及播放器Renderers
的功能,TrackSelector
将为每个Renderer
生成一个TrackSelection
。如需了解更多信息,请参阅组件 Javadoc。