android 播放MP4文件
思路是没有错的,需要设置一个缓冲区,一边下载,一边播放!关键是缓冲和播放要同步,不能错位。
还有就是所播放的视频格式必须是流媒体格式的,也就是必须支持一边下载一边播放,有些视频格式不支持,那也没有办法了,必须下载完成到本地,才能播放。
所以一般情况下,必须自己提供流媒体服务器,这样,才能确保你的视频是支持流放的。
多媒体架构:
基于第三方PacketVideo 公司的OpenCORE platform来实现
支持所有通用的音频,视频,静态图像格式
CODEC(编解码器)使用OpenMAX 1L interface 接口进行扩展,可以方便得支持hardware / software codec plug-ins
支持的格式包括:MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF等。
l Open Core多媒体框架有一套通用可扩展的接口针对第三方的多媒体遍解码器,输入,输出设备等等 。
l 多媒体文件的播放,下载,包括3GPP, MPEG-4,AAC and MP3 containers
l 流媒体文件的下载,实时播放,包括:3GPP, HTTP and RTSP/RTP
l 动态视频和静态图像的编码,解码,例如:MPEG-4, H.263 and AVC (H.264), JPEG
l 语音编码格式: AMR-NB and AMR-WB
l 音乐编码格式: MP3, AAC, AAC+
l 视频和图像格式: 3GPP, MPEG-4 and JPEG
l 视频会议:基于H324-M standard
用Mp4box把视频加上hint, 然后放到服务器上,再用android使用http直接读就可以了。保证可行。
PS:视频格式用H.263-3gp或者mp4。3gp的保证可以用,mp4不确定,因为我都是用的3gp.
tostart = new Intent(Intent.ACTION_VIEW);
tostart.setDataAndType(Uri.parse(movieurl), "video/*");
startActivity(tostart);
里面那些我早就看过了。自己也写了些。看见我上面提供的链接没有?那个就是可以直接利用的。但是换其他的就不行了。
android流媒体有相当严格的格式的。资料很少。只知道叫做progressive streamable模式转出来的视频是可以播放的
http不是视频流协议,一般的视频在线播放器是播放不了的,你要自己写程序,程序中下载,可以下完调用播放器,也可边下边播(这要自己实现)
VideoView仅能播放progressive streamable(渐进式流)的影片,一般的mp4或3gp若不采用·模式转文件的影片,是无法通过网络播放的。
不知道有没有转渐进式流影片的工具?我百度和goole都查了,没查到。
本文出自 “技术人生” 博客,请务必保留此出处http://zhaohaiyang.blog.51cto.com/2056753/671253
相关新闻>>
- 发表评论
-
- 最新评论 更多>>