美文网首页
视频学习之二:MPMoviePlayerController /

视频学习之二:MPMoviePlayerController /

作者: IOS_Wek | 来源:发表于2018-06-28 14:55 被阅读8次

    对于MPMoviePlayerController:

    1,支持H264编码的视频格式 和 流媒体编码HLS(H264为编码格式的MP4、MOV、M4V、M2V、3GP等。)
    2,支持大部分的音频编码格式
    3,使用的是硬解码,GPU
    4,如果要播放rmvb格式可以考虑用第三方框架ffmpeg,不过它用的是软解码,比较耗CPU,会有发热情况发生。
    5,可定制化比较差

    对于AVPlayer:

    1,视频加载状态
    通过KVO监听AVPlayerItem的status属性来获得。当AVPlayerItem的status属性为AVPlayerStatusReadyToPlay时,表明视频加载完成。
    2,视频缓冲状态
    同样,通过KVO监听AVPlayerItem的loadedTimeRanges属性来获得。视频每缓冲一部分这个属性数据就会被更新,当loadedTimeRanges的值改变时可以获得本次缓冲加载的视频范围,包含起始时间、本次加载时长),这样一来就可以实时获得缓冲情况。
    3,播放进度状态
    通过AVPlayer的- (id)addPeriodicTimeObserverForInterval:(CMTime)interval queue:(dispatch_queue_t)queue usingBlock:(void (^)(CMTime time))block方法获得播放进度,这个方法会在设定的时间间隔内定时更新播放进度。

    对于AVQueuePlayer

    AVQueuePlayer用于列表播放,虽然AVPlayer通过监听播放状态也可以做到视频结束后的自动切换,但是使用AVQueuePlayer加载会快很多。应该是AVFoundation框架对AVQueuePlayer进行了优化,排队的视频会进行预加载。

    相关文章

      网友评论

          本文标题:视频学习之二:MPMoviePlayerController /

          本文链接:https://www.haomeiwen.com/subject/gmvgyftx.html