Android MP4边下边播

本文介绍了Android环境下实现MP4边下边播的原理与方法,包括视频播放形式、MP4文件组成、FFmpeg在处理中的作用,以及如何处理moov atom以实现流畅播放。同时,针对不同Android版本的编解码问题,提出了转换视频编解码的解决方案。
摘要由CSDN通过智能技术生成

视频:

视频播放形式

  1. 使用网络url播放视频
    使用网络url播放视频分为两种情况:
    A:流视频:对流形式的视频而言,Android原生的Mediaplayer等播放控件可以实现在线播放功能。
    B:非流视频:需要把视频下载到本地,再进行播放,但是这里有个缺陷,不能实现边播边下。
  2. 使用本地url播放视频:直接在MediaPlayer或者VideoView放置一个url即可。

参考链接

视频格式的组成

简要地说,MP4文件主要由ftyp,mdat,moov这三部分组成。

  • ftyp 记录了mp4格式,编码格式之类的一些基本信息

  • mdat记录了视频媒体信息(mdat的体积往往非常的大,几乎等于MP4总大小)

  • moov是如同检索表一样的存在,里面记录了每一帧对应的数据在哪里等等

    如果moov比较大,播放器需要较多的时间去解析,所以在播放之前可能会出现较长的缓冲时间,特别是视频文件较大的情况下,所以现在有些点播网站会采用每段mdat都有自己独立的metadata的封装方式,这样就可实现渐进式下载和快速缓冲的效果。

视频工作过程

  • 读取ftype部分决定解码方式。
  • 寻找并读取moov部分,获取视频总时长等信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值