首页 > 代码库 > Android关于流媒体播放

Android关于流媒体播放

很少写博客这种形式,不太清楚怎么写才能清楚的把我想表达的意思通过文字表达出来。能力有限就写写在看流媒体方面遇到的问题和当时我的想法还有处理的方式。目的一方面是写下来也是加深了一次理解,另一方面也是大家看了之后,发现哪里不对或是新的解决方案的话,可以留下评论和意见。t_0003.gif

   流媒体,个人理解简单来说就是多媒体文件(音频和视频)通过流式传输在网络上的形式。那么Android支持流媒体这种形式?下面为大家列举下Android系统下支持的一些网络协议和媒体格式:目前支持的网络协议:RTSP(RTP、SDP),HTTP/HTTPS实时流(在Android3.1之前不支持HTTPS),HTTP/HTTPS Live Streaming(有些版本不支持)。那么Android对多媒体格式和编码的支持情况怎么样,给大家个表:点击查看密码是1494。项目当中如果服务器恰好能提供Android所支持的的协议和格式。那么不需要再进行单独解码处理,直接可以播放。

   那么对于系统不支持的协议流传输,Anroid要怎么处理呢?对于这个问题我尝试了基本上两个方面。一方面是使用第三方的播放器框架,进行解码处理。推荐使用VLC播放器,(因为几乎支持网络上主流的媒体传输协议,因此叫中文名字万能播放器)网上可以下载对应Android系统的源码地址下载对应的源码。

  如果你已经下载了Vlc源码,并且已经导入到你的工程当中去了(Eclipse),项目目录如图:

wKioL1PCKhCg5V8RAACvKf4svvc426.jpg你刚导入的时候可能没有这个目录,你需要重新对项目进行编译,编译成功之后,工程当中就会生成此目录,lib是中主要是编码的依赖cpu进行的编码处理。所以针对不同cpu架构(cpu指令集不同,主要是arm系列和x86系列)。所以如果想支持所有手机,必须至少生成两种cpu指令集的编码库。目前市面上x86机型了解到 联想的k800系列之后的手机和华硕的ZenFone 5,机型不多,用户量没有统计出具体数字。主流依然是arm架构的手机。

   对于VLC的编译,我也不懂,正在研究。因为其中涉及到很多参数,不知道是做什么的,有什么用,不过还好VLC的Demo例子已经给你编译好了两套libs库 arm-v7和x86。今天就先写这么多。大家如果对编译VLC有兴趣可以的话,可以先把配好NDK。最新版本r9d,不用再配置Cygwin,去官网上下载配置好路径就可以了(前提是你IDE里已经配好了CDT)。

Project Server 2013新手入门 (九))添加文档和可交付结果