作为一个应用开发者,你可以免费使用Android设备支持的任何多媒体编解码器,包括Android系统提供的和设备特有的。但是,使用设备无关的多媒体编码配置是最佳的。

网络协议

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

  • RTSP (RTP, SDP)
  • HTTP/HTTPS progressive streaming
  • HTTP/HTTPS live streaming draft protocol
    • MPEG-2 TS media files only
    • Protocol version 3 (Android 4.0 and above)
    • Protocol version 2 (Android 3.x)
    • Not supported before Android 3.0
注意:HTTPS在Android3.1之前是不支持的

核心多媒体格式

下表展示了Android系统内置支持的多媒体格式,任何移动设备都可能支持该表格以外的其他格式或者文件类型。

注意: 不保证在所有的Android平台上都支持的那些多媒体编解码器都用括号将支持的平台标注出来了。例如:(Android 3.0+)

表1 核心格式和编解码器支持
(吐槽:用MarkDown画这个大表格太痛苦了,截图之)

视频编码推荐

下面的表格2列出了Android Media框架原生支持的视频编码配置和参数。除了这些编码参数推荐,通过一个设备的可用的视频录制(格式)配置,可以一窥该设备的多媒体播放能力,这些配置能够使用 CamcorderProfile类来得到。(API level8以上)。
表2:

- SD (低质量) SD (高质量) HD (不一定都支持)
视频编解码 H.264 Baseline Profile H.264 Baseline Profile H.264 Baseline Profile
视频分辨率 176 x 144 px 480 x 360 px 1280 x 720 px
视频帧率 12 fps 30 fps 30 fps
视频比特率 56 Kbps 500 Kbps 2 Mbps
音频编解码 AAC-LC AAC-LC AAC-LC
音频声道 1 (mono) 2 (stereo) 2 (stereo)
音频比特率 24 Kbps 128 Kbps 192 Kbps

对于通过HTTP或者RTSP传输的视频流,有如下额外的要求:

  • For 3GPP and MPEG-4 containers, the moov atom must precede any mdat atoms, but must succeed the ftyp atom.
  • For 3GPP, MPEG-4, and WebM containers, audio and video samples corresponding to the same time offset may be no more than 500 KB apart. To minimize this audio/video drift, consider interleaving audio and video in smaller chunk sizes.

更多相关文章

  1. Android非Kotlin支持项目添加Kotlin代码时的注意点
  2. 推送sdk (类似百度 推送 ) android mina (待优化... )
  3. Android(安卓)音视频开发总结
  4. Android(安卓)studio配置Opencv开发环境
  5. android XUtils框架
  6. android使用webview加载flash文件
  7. 推荐一款视频转换软件免费无插件ipad/iphone/Android/YouTube适
  8. android 播放视频 Android(安卓)播放音频
  9. Android(安卓)Lambda

随机推荐

  1. android 静音与振动
  2. android 和 lucene
  3. Android类加载器源码分析
  4. Android与unity交互
  5. android视图继承关系
  6. 在Android中查看和管理sqlite数据库
  7. Android高斯模糊、高斯平滑(Gaussian Blur
  8. Android大牛博客集
  9. Android显示调用App内部组件/第三方App内
  10. 深入理解 Android(安卓)Activity的生命周