Android 2.3 Dev Guide (55)-- Android Supported Media Formats

来源:互联网 发布:银河证券海王星软件 编辑:程序博客网 时间:2024/06/06 07:11

Android支持的媒体格式

本文档描述Android平台支持的媒体编解码器,容器和网络协议。

作为一名应用程序开发者,你可以在任何基于Android的设备上(包括那些由Android平台提供的和指定的设备)随意使用任何可用的媒体编解码器。不管怎样,最好去练习与设备无关的媒体编码规范。

网络协议

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

  • RTSP (RTP, SDP)
  • HTTP progressive streaming
  • HTTP live streaming draft protocol (Android 3.0 及以上)

注意:  HTTPS 协议目前还不支持。

主要媒体格式

下表描述了Android平台内建的媒体支持格式。请注意任何提供的移动设备可能对没有列在表格中的额外的格式或者文件类型提供支持。

注意: 不能保证在所有Android平台上可用的媒体编解码器已经相应地在括号内进行标注。例如:"(Android 3.0+)".

表格 1. 主要媒体格式和编解码器支持

类型格式/编解码器编码器解码器详细支持文件格式/封装格式音频AAC LC/LTPMono/Stereo content in any combination of standard bit rates up to 160 kbps and sampling rates from 8 to 48kHz3GPP (.3gp), and MPEG-4 (.mp4, .m4a). ADTS raw AAC (.aac, decode only, ADIF not supported, Android 3.1+).HE-AACv1 (AAC+) HE-AACv2 (enhanced AAC+) AMR-NB4.75 to 12.2 kbps sampled @ 8kHz3GPP (.3gp)AMR-WB9 rates from 6.60 kbit/s to 23.85 kbit/s sampled @ 16kHz3GPP (.3gp)FLAC 
(Android 3.1+)Mono/Stereo (no multichannel). Sample rates up to 48 kHz (but up to 44.1 kHz is recommended on devices with 44.1 kHz output, as the 48 to 44.1 kHz downsampler does not include a low-pass filter). 16-bit recommended; no dither applied for 24-bit.FLAC (.flac) onlyMP3 Mono/Stereo 8-320Kbps constant (CBR) or variable bit-rate (VBR)MP3 (.mp3)MIDI MIDI Type 0 and 1. DLS Version 1 and 2. XMF and Mobile XMF. Support for ringtone formats RTTTL/RTX, OTA, and iMelody Type 0 and 1 (.mid, .xmf, .mxmf). Also RTTTL/RTX (.rtttl, .rtx), OTA (.ota), and iMelody (.imy)Ogg Vorbis  Ogg (.ogg)PCM/WAVE 8- and 16-bit linear PCM (rates up to limit of hardware)WAVE (.wav)图像JPEGBase+progressiveJPEG (.jpg)GIF  GIF (.gif)PNG PNG (.png)BMP  BMP (.bmp)视频H.263 3GPP (.3gp) and MPEG-4 (.mp4)H.264 AVC
(Android 3.0+)Baseline Profile (BP)3GPP (.3gp) and MPEG-4 (.mp4). MPEG-TS (.ts, AAC audio only, not seekable, Android 3.0+)MPEG-4 SP  3GPP (.3gp)VP8 
(Android 2.3.3+) WebM (.webm)

视频编码建议

下面的表格2,列出了Android媒体框架支持回放的视频编码资料和参数。另外,除了这些推荐的编码参数, 一个支持视频录制的设备可以被用作一个具有媒体回放能力的代理。这些配置可以使用 CamcorderProfile 类(API level 8及以上可用)来检查。

表格 2.  被支持的视频编解码参数示例

 低品质高品质视频编解码器H.264 Baseline ProfileH.264 Baseline Profile视频分辨率176 x 144 px480 x 360 px视频帧率12 fps30 fps视频比特率56 Kbps500 Kbps音频编解码器AAC-LCAAC-LC音频通道1 (mono)2 (stereo)音频比特率24 Kbps128 Kbps

对于通过HTTP或者RTSP协议传递的视频流,还有一些额外的要求:

  • 对于3GPP 和 MPEG-4 封装格式,  moov 原子必须在任何 mdat 原子之前。
  • 对于3GPP,MPEG-4, 和 WebM 封装格式,对应同一时间偏移量的音频和视频采样数据不能超过500KB每块。考虑到在更小块数据中的交叉音频和视频,请尽量缩小音频/视频偏差。