Android 平台支持的媒体格式

作为应用开发者,您可以使用任何 Android 设备上提供的任何媒体编解码器(包括 Android 平台提供的媒体编解码器和特定于设备的媒体编解码器)。不过,最佳做法是使用与设备无关的媒体编码配置文件。

下表介绍了 Android 平台中内置的媒体格式支持。括号中注明了不能保证在所有 Android 平台版本上均可用的编解码器,例如:(Android 3.0 及更高版本)。请注意,任何给定的移动设备均可能支持该表中未列出的其他格式或文件类型。

Android 兼容性定义的第 5 部分指定了要与 Android 8.1 兼容,设备必须支持的媒体格式。

音频支持

音频格式和编解码器

格式/编解码器

编码器

解码器

详细信息

支持的文件类型/容器格式

AAC LC

支持单声道/立体声/5.0/5.1 内容,标准采样率为 8-48 kHz。

• 3GPP (.3gp)

• MPEG-4(.mp4、.m4a)

• ADTS 原始 AAC(.aac、在 Android 3.1 及更高版本中解码、在 Android 4.0 及更高版本中编码、不支持 ADIF) • MPEG-TS(.ts、不可查找、Android 3.0 及更高版本)

HE-AACv1 (AAC+)

(Android 4.1 及更高版本)

HE-AACv2(增强型 AAC+)

支持立体声/5.0/5.1 内容,标准采样率为 8-48 kHz。

AAC ELD(增强型低延迟 AAC)

(Android 4.1 及更高版本)

(Android 4.1 及更高版本)

支持单声道/立体声内容,标准采样率为 16-48 kHz

AMR-NB

4.75-12.2 kbps,采样率为 8 kHz

3GPP (.3gp)

AMR-WB

有 9 个比特率(介于 6.60-23.85 kbit/s 之间)可供选择,采样率为 16 kHz

3GPP (.3gp)

FLAC

(Android 4.1 及更高版本)

(Android 3.1 及更高版本)

单声道/立体声(非多声道)。采样率最高可达 48 kHz(但对于输出为 44.1 kHz 的设备,则建议最高不超过 44.1 kHz,因为 48-44.1 kHz 的降采样器不包含低通滤波器)。建议使用 16 位;对于 24 位,不会应用任何抖动。

仅支持 FLAC (.flac)

GSM

Android 支持在电话设备上进行 GSM 解码

GSM (.gsm)

MIDI

MIDI 类型 0 和 1。DLS 版本 1 和 2。XMF 和 Mobile XMF。支持铃声格式 RTTTL/RTX、OTA 和 iMelody

• 类型 0 和 1(.mid、.xmf、.mxmf)

• RTTTL/RTX(.rtttl、.rtx) • OTA (.ota) • iMelody (.imy)

MP3

单声道/立体声 8-320 Kbps 恒定 (CBR) 或可变比特率 (VBR)

MP3 (.mp3)

Opus

(Android 5.0 及更高版本)

Matroska (.mkv)

PCM/WAVE

(Android 4.1 及更高版本)

8 位和 16 位线性 PCM(比特率最高可达到硬件上限)。以 8000、16000 和 44100 Hz 录制原始 PCM 所需的采样率。

WAVE (.wav)

Vorbis

• Ogg (.ogg)

• Matroska(.mkv、Android 4.0 及更高版本)

视频支持

视频格式和编解码器

格式/编解码器

编码器

解码器

详细信息

支持的文件类型/容器格式

H.263

对 H.263 的支持在 Android 7.0 及更高版本中并非必需

• 3GPP (.3gp)

• MPEG-4 (.mp4)

H.264 AVC

Baseline Profile (BP)

(Android 3.0 及更高版本)

• 3GPP (.3gp)

• MPEG-4 (.mp4) • MPEG-TS(.ts、仅限 AAC 音频、不可查找、Android 3.0 及更高版本)

H.264 AVC

Main Profile (MP)

(Android 6.0 及更高版本)

解码器为必需项,编码器为推荐项。

H.265 HEVC

(Android 5.0 及更高版本)

适用于移动设备的 Main Profile Level 3 和适用于 Android TV 的 Main Profile Level 4.1

• MPEG-4 (.mp4)

MPEG-4 SP

3GPP (.3gp)

VP8

(Android 4.3 及更高版本)

(Android 2.3.3 及更高版本)

只能在 Android 4.0 及更高版本中流式传输

WebM

(.webm)

• Matroska(.mkv、Android 4.0 及更高版本)

VP9

(Android 4.4 及更高版本)

WebM

(.webm)

• Matroska(.mkv、Android 4.0 及更高版本)

视频编码建议

下表列出了建议使用 H.264 Baseline Profile 编解码器进行播放的 Android 媒体框架视频编码配置文件和参数。同样的建议也适用于 Main Profile 编解码器,该编解码器仅在 Android 6.0 及更高版本中可用。

标清

(低画质)

标清

(高画质)

高清 720p

(在所有设备上均不适用)

视频分辨率

176 x 144 像素

480 x 360 像素

1280 x 720 像素

视频帧速率

12 fps

30 fps

30 fps

视频比特率

56 Kbps

500 Kbps

2 Mbps

音频编解码器

AAC-LC

AAC-LC

AAC-LC

声道

1(单声道)

2(立体声)

2(立体声)

音频比特率

24 Kbps

128 Kbps

192 Kbps

下表列出了建议使用 VP8 媒体编解码器进行播放的 Android 媒体框架视频编码配置文件和参数。

标清

(低画质)

标清

(高画质)

高清 720p

(在所有设备上均不适用)

高清 1080p

(在所有设备上均不适用)

视频分辨率

320 x 180 像素

640 x 360 像素

1280 x 720 像素

1920 x 1080 像素

视频帧速率

30 fps

30 fps

30 fps

30 fps

视频比特率

800 Kbps

2 Mbps

4 Mbps

10 Mbps

视频解码建议

对于所有 VP8、VP9、H.264 和 H.265 编解码器,设备实现都必须支持通过标准 Android API 在同一视频流内实时进行动态视频分辨率和帧速率切换,并且能够支持设备上每个编解码器所支持的最大分辨率。

支持杜比视界解码器的实现必须遵循以下准则:

  • 提供具有杜比视界功能的提取器。
  • 在设备屏幕或标准视频输出端口(如 HDMI)上正确显示杜比视界内容。
  • 将向后兼容的基本层(如果存在)的轨道索引设为与组合式杜比视界层的轨道索引相同。

视频流式传输要求

对于通过 HTTP 或 RTSP 流式传输的视频内容,还有一些其他要求:

  • 对于 3GPP 和 MPEG-4 容器,

moov Atom 必须位于任何 

mdat Atom 之前,但必须位于 

ftyp Atom 之后。

  • 对于 3GPP、MPEG-4 和 WebM 容器,对应于相同时间偏移量的音频和视频样本的偏差不能超过 500 KB。要最大限度地减少这种音频/视频偏差,请考虑以较小的区块大小交错插入音频和视频。

图片支持

格式/编解码器

编码器

解码器

详细信息

支持的文件类型/容器格式

BMP

BMP (.bmp)

GIF

GIF (.gif)

JPEG

基准式 + 渐进式

JPEG (.jpg)

PNG

PNG (.png)

WebP

(Android 4.0 及更高版本)

(无损、透明度、Android 4.2.1 及更高版本)

(Android 4.0 及更高版本)

(无损、透明度、Android 4.2.1 及更高版本)

WebP (.webp)

HEIF

(Android 8.0 及更高版本)

HEIF(.heic;.heif)

网络协议

音频和视频播放支持以下网络协议:

  • RTSP(RTP、SDP)
  • HTTP/HTTPS 渐进式流式传输
  • HTTP/HTTPS 实时流式传输草案协议
    • 仅限 MPEG-2 TS 媒体文件
    • 协议版本 3(Android 4.0 及更高版本)
    • 协议版本 2 (Android 3.x)
    • 在 Android 3.0 之前的版本中不支持

注意:Android 3.1 之前的版本不支持 HTTPS。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值