Android开发者指南(12) —— Android Supported Media Formats
前言
本章内容为开发者指南(Dev Guide)/Appendix/Android Supported Media Formats,版本为Android3.1 r1,翻译来自:"jackeylu",欢迎大家访问他的博客:"http://jackeylu.wordpress.com/",再次感谢"jackeylu" !期待你一起参与翻译Android的相关资料,联系我over140@gmail.com。
声明
欢迎转载,但请保留文章原始出处:)
农民伯伯:http://over140.blog.51cto.com/
Android中文翻译组:http://goo.gl/6vJQl
原文
http://developer.android.com/guide/appendix/media-formats.html
本文档描述了Android平台支持的媒体播放×××、网络协议。
作为一名应用软件开发者,你可以自由使用平台上的媒体×××,这些编解码可以是平台提供,或者是特定设备支持。然而,最好习惯于使用媒体编码配置信息使得应用软件代码编写能够与具体硬件无关。
网络协议(Network Protocols)
可以支持下述网络协议音视频的播放:
* 实时流传输协议RTSP (实时传输协议RTP, 会话描述协议SDP)
* Http流式传输(译者注:串流传输分两种:progressive streaming和real time streaming。progressive好处是透过HTTP来传输,品质较好,只能单点播送(Unitcast),参见文章这里。)
* HTTP Live Streaming协议(Android 3.0及以上) (译者注:HTTP Live Streaming最初是由苹果公司针对其iPhone、iPod、iTouch和iPad等移动设备而开发的流媒体协议,点这里下载。)
注意:暂时不支持HTTPS
媒体格式(Core Media Formats)
下表列出了Android平台内置支持的媒体格式。请注意,任何一种移动设备都有可能提供更多的不在表中的格式支持。
注意:具体的媒体编解码不一定在所有的Android平台版本上都支持,相应的会通过括号标注出来,例如”(Android 3.0+)”
类型 |
格式 /编码 |
编码器 |
××× |
详细说明 |
支持文件类型 / 容器格式 |
Audio |
AAC LC/LTP |
• |
• |
单声道/立体声 满足各种标准比特率组合,最高可达160kbsp,采样率从8到48kHz |
3GPP (.3gp) and MPEG-4 (.mp4, .m4a). No support for raw AAC (.aac) |
HE-AACv1 (AAC+) |
• |
||||
HE-AACv2 (enhanced AAC+) |
• |
||||
AMR-NB |
• |
• |
4.75 to 12.2 kbps sampled @ 8kHz |
3GPP (.3gp) |
|
AMR-WB |
• |
• |
9 rates from 6.60 kbit/s to 23.85 kbit/s sampled @ 16kHz |
3GPP (.3gp) |
|
MP3 |
• |
单声道/立体声 8-320kbps常数(CBR)或可变比特率(VBR) |
MP3 (.mp3) |
||
MIDI |
• |
0和1的MIDI类型。DLS版本1和2。XMF和移动XMF。支持铃声格式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和16位线性PCM(速率受硬件限制) |
WAVE (.wav) |
||
Image |
JPEG |
• |
• |
Base+progressive |
JPEG (.jpg) |
GIF |
• |
GIF (.gif) |
|||
PNG |
• |
• |
PNG (.png) |
||
BMP |
• |
BMP (.bmp) |
|||
Video |
H.263 |
• |
• |
3GPP (.3gp) and MPEG-4 (.mp4) |
|
H.264 AVC |
• |
• |
Baseline Profile (BP)(译者注:H.264 Baseline Profile压缩算法,参见这里) |
3GPP (.3gp) and MPEG-4 (.mp4) |
|
MPEG-4 SP |
• |
3GPP (.3gp) |
视频编码建议(Video Encoding Recommendations)
表二列出了Android媒体播放框架支持的视频编码配置和参数的例子。除了这些推荐的编码参数,设备支持的视频录像配置信息可以通过代理获得媒体回放功能参数。这些配置信息可以通过API级别8开始加入的CamcorderProfile
类来得到。
表二:支持视频编码配置和参数的例子
低质量 |
高质量 |
|
Video codec |
H.264 Baseline Profile |
H.264 Baseline Profile |
视频分辨率 |
176 x 144 px |
480 x 360 px |
视频帧速率 |
12 fps |
30 fps |
视频比特率 |
56 Kbps |
500 Kbps |
音频编码 |
AAC-LC |
AAC-LC |
音频通道(声道) |
1 (单声道) |
2(立体声) |
音频比特率 |
24 Kbps |
128 Kbps |
对于通过HTTP或RTSP传输视频数据还有额外要求:
* 对于3GPP和MPEG-4,moov单元必须先于任何mdat原子。
* 对于3GPP、MPEG-4和WebM,音频和视频对应在同一时间偏差可能不到500KB就分开。为了尽量减少这种音频/视频偏差,可以考虑较小的在较小的块中交叉音频和视频。
转载于:https://blog.51cto.com/over140/582276
Android开发者指南(12) —— Android Supported Media Formats相关推荐
- Android开发者指南(1) —— Android Debug Bridge(adb)
Android Debug Bridge Android调试桥接器,简称adb,是用于管理模拟器或真机状态的万能工具,采用了客户端-服务器模型,包括三个部分: * 客户端部分,运行在开发用的电脑上,可 ...
- Android开发者指南24难点各个击破—来自androi中文翻译组
声明 欢迎转载,但请保留文章原始出处 安卓航班开发:http://www.apkway.com/forum.php 博客园:http://www.cnblogs.com/ ...
- Android开发者指南(29) —— USB Host and Accessory
前言 本章内容为Android开发者指南的 USB章节,译为"USB主从设备",版本为Android 4.0 r1,翻译来自:"太阳火神的美丽人生",欢迎访问他 ...
- Android开发者指南(22) —— Accessing Resources
前言 本章内容为Android开发者指南的Framework Topics/Application Resources/Accessing Resources章节,译为"资源调用" ...
- Android开发者指南(25) —— Resource Types - Style
样式资源 样式资源定义了用户界面(UI)的格式和外观.样式能被应用到单独的View (通过置入layout 文件),或者整个Activity及应用程序(通过置入manifest文件). 关于创建及应用 ...
- Android开发者指南
SDK Android开发者指南-- With AVD Manager 前言 本章内容为开发者指南(Dev Guide)/Developing/Managing Virtual Devices/Wit ...
- Android开发者指南(18) —— Web Apps Overview
前言 本章内容为开发者指南(Dev Guide)/Web Applications/Web Apps Overview,版本为Android 3.2 r1,翻译来自:"happyjiahan ...
- Android开发者指南(4) —— Application Fundamentals
前言 本章内容为开发者指南(Dev Guide)/Framework Topics/Application Fundamentals,版本为Android2.3 r1,翻译转载并整理自译言:" ...
- Android开发者指南(5) —— monkeyrunner
前言 本章内容为开发者指南(Dev Guide)/Developing/Tools/monkeyrunner,版本为Android2.3 r1,翻译转载并整理自译言:"biAji" ...
最新文章
- Scikit-learn 发布 0.20版本!新增处理缺失值、合并Pandas等亮点功能
- 又一款4800像素手机曝光:vivo V15 Pro
- 深入V8引擎-Time模块介绍
- mybatis $和#源代码分析
- 02_入门程序(非注解方式,了解)
- vuejs中的回车事件
- 千万IOPS背后,宏杉科技“MS7000G2-Mach”为金融核心业务赋能
- 手机序列号和IMEI号的区别
- java微信开发教程,Java微信公众平台开发(1) 接入微信公众平台
- PLC实验:LED 数码显示控制
- 夜神模拟器——最好用的安卓模拟器
- 「群体遗传学实战」第三课: 如何对SNP位点进行过滤
- (转发)线性代数的本质
- NTP-Chrony 服务器和客户端配置
- Ubuntu20.04 配置阿里云源
- 浅谈社交电商产品设计的10个深刻的知识
- “疫情”防控时期大势所趋,智慧社区尽显“智慧”迎来新的发展热潮
- 前端项目总结干货 + 渡一、coderwhy、黑马、尚硅谷实操笔记(第二版,持续更新中~~~)
- 制度罚则--测试报告模板
- 使用Unity3D制作真实地形的两种方法
热门文章
- linux下yum安装最新稳定版nginx
- 搜索专题: HDU1428漫步校园
- 使用MySql保存session
- python 钩子函数的使用
- c# WINFORM SOCKET编程-简单聊天程序(服务端)
- DHCP中继以及DHCP数据库的备份和还原
- SQLDBCompare_Rel2.0破解手记
- C语言 获取数组的元素个数
- Master PDF Editor中文版
- 解决incorrect 'only available in ES6' warning (W119) with options `moz: true, esversion: 6` 报错问题...