流媒体

1.流媒体:实时流媒体 顺序流媒体

格式、协议参见百度百科 流媒体

2.android多媒体框架:基于openCore,只能解码mp4、3gp

http://developer.android.com/guide/appendix/media-formats.html

3.开源多媒体框架:

VLC FFMPEG

4.Google开源项目:dolphin player 基于ffmpeg

编译:按照教程(http://blog.csdn.net/u012481275/article/details/12851695) 使用android-ndk-r5b 成功编译,android-ndk-r9反而不行,会出现make: *** [obj/local/armeabi/**.so] Error 1的错误。这是因为dolphin player最后更新在2012年左右,属于比较早期。如果编译最近的VLC项目,则需要r8以上。

编译时注意:jni文件夹下Application.mk文件中设置编译版本 部分老版android手机,不能使用armv7 需要armeabi。

编译完成后将.\p\native\ffmpeg\ffmpeg-0.11.1\android文件夹下对应的版本拷入到android工程的libs\armeabi或armeabi-v7a文件夹下,包括include文件夹等

下载地址:git clone https://code.google.com/p/dolphin-player/
Supports subtitles from various subtitle file formats(srt, sub, utf, utf8..)
Supports player on screen controls (play, pause, forward, rewind, aspect ratio buttons)
Supports unicode subtitles(Languages like Chinese, Japanese, French are supported)
Supports Http live streaming (m3u8) 
Supports web mp3 links


5.http://blog.appdevp.com/archives/336

HTTP Live Streaming(缩写是 HLS)是一个由苹果公司提出的基于HTTP的流媒体 网络传输协议。是苹果公司QuickTime X和iPhone软件系统的一部分。它的工作原理是把整个流分成一个个小的基于HTTP的文件来下载,每次只下载一些。当媒体流正在播放时,客户端可以选择从许多不同的备用源中以不同的速率下载同样的资源,允许流媒体会话适应不同的数据速率。在开始一个流媒体会话时,客户端会下载一个包含元数据的extended M3U (m3u8) playlist文件,用于寻找可用的媒体流。
HLS只请求基本的HTTP报文,与实时传输协议(RTP)不同,HLS可以穿过任何允许HTTP数据通过的防火墙或者代理服务器。它也很容易使用内容分发网络来传输媒体流。苹果公司把HLS协议作为一个互联网草案(逐步提交),在第一阶段中已作为一个非正式的标准提交到IETF。但是,即使苹果偶尔地提交一些小的更新,IETF却没有关于制定此标准的有关进一步的动作。

6.m3u8
现在所有视频网站基本都是通过m3u8的方式来播放视频的

http://www.the5fire.com/m3u8-web-player.html

7.待补充

你可能感兴趣的:(多媒体)