iOS 视频播放不了-AVPlayer、IJKPlayer等对比

最近做iOS开发的时候,用的一个ZFPlayer(基于AVPlayer)突然有的视频不能播放,但是Android可以播放。

后端开发也不能解决,就开始了换播放器的思路。

接下来就开始讲述我的踩坑之旅:

1.首先尝试用B站的ijkplayer(Android用的就是这个),在各种踩坑(主要是动态库的集成)后,集成后(其实让视频能播放),发现那些播放暂停UI和横竖屏貌似不好使。

2.看到ZFPlayer里面有 Test Version 可以用,结果他也是集成的IJK,完美解决。

完成线上bug后,开始研究竟什么原因:

写的有些天马行空,有时间慢慢整理,不懂请自行Google并且脑补

渐进式下载和实时流媒体

常见的流媒体协议: HLS(苹果基于HTTP开发的流媒体协议),RTMP(Adobe的私有协议),MMS(微软).


1 HLS的流媒体通过AVPlayer(h265不支持)/AVPlayerViewController和MPMviePlayerController/MPMoviePlayerViewController来实现.

2 RTMP的流媒体要用第三方框架实现如FFMpeg,IJKPlayer和VLC等

3常用的流媒体框架:百度/阿里/腾讯/网易/斗鱼直播伴侣/七牛云等

参考链接

http://blog.csdn.net/zhonggaorong/article/details/52174981

https://tieba.baidu.com/p/5171120382

阿里云视频存储使用时可以根据不同的推流端或播放端能,使用如下组合:

l推流进行H.265编码,并使用扩展的RTMP协议,上传H.265直播流,云端转成不同码率的H.265和H.264,并输出HLS,标准RTMP,扩展RTMP,标准HTTPFLV,扩展HTTPFLV,供不同解码能能力和网络带宽的终端观看。

l推流使用H.264编码,云端将H.264转码成不同码率的H.264和H.265码流,输出HLS,标准RTMP,扩展RTMP,标准HTTPFLV,扩展HTTPFLV,供不同解码能力和网络带宽的终端观看。

1同样的画质和同样的码率,H.265比H2.64占用的存储空间要少理论50%。

2如果存储空间一样大,那么意味着,在一样的码率下H.265会比H2.64画质要高一些理论值是30%~40%

据说H.265能节省一半带宽,但需要机器更强的运算能力。有兴趣看一下erightsoft公司的super Media Converter Encoder软件,可以转换视频文件到H.265


1、PCM形成原理以及过程

2、AAC编码原理

3、iOS音频硬编码

4、FFmpeg将H264以及AAC合成MP4文件过程

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在保证视频图像质量的前提下,HEVC通过增加一定的计算复杂度,可以实现码流在H.264/AVC的基础上降低50%。...
    加刘景长阅读 12,464评论 0 6
  • 直播云解决方案整理 [TOC] 1.又拍云直播 又拍直播云(UPLive),基于又拍云内容分发网络为直播应用提供超...
    MaxWellPro阅读 12,447评论 0 21
  • [TOC] 音视频&流媒体 是什么促使我要写这一篇音视频入门文章?那是因为和一妹子打赌码率的概念,结果输了;对一个...
    AllenWu阅读 10,429评论 1 24
  • 像吗?不像吧。如果世界上真有能明白你在说什么,你的感受是什么,只有一位。 或许,有些人在于能很快的从失败中找到经验...
    苏岚阅读 1,621评论 0 1
  • 最近开了公众号,写的东西大部分都是心中挂碍,或者念想很久了。有些生涩,有点像初恋,既想见面又怕见面。老手写东西完全...
    清风明月照牡丹阅读 2,656评论 0 2

友情链接更多精彩内容