一句話實(shí)現(xiàn)AVPlayer視頻播放


title: 一句話實(shí)現(xiàn)AVPlayer視頻播放
date: 2017-05-01 15:28:57
categories: "iOS"
tags:

  • Objective-C
    description: 由于近期項(xiàng)目和視頻相關(guān)的比較多,而項(xiàng)目中別人封裝的不甚滿意,所以自己進(jìn)行了封裝,希望有更好的擴(kuò)展性,同時(shí)希望大家多多提取意見,以便于更好的封裝。

基于AVPlaye封裝的視頻播放器 、一句話即可實(shí)現(xiàn)視頻的播放 支持橫屏、豎屏,監(jiān)聽屏幕旋轉(zhuǎn),上下滑動(dòng)調(diào)節(jié)音量、屏幕亮度,左右滑動(dòng)調(diào)節(jié)播放進(jìn)度,快進(jìn)畫面預(yù)覽等

源碼地址:Github https://github.com/enamor/NIPlayer
原文地址: http://oxy.pub
使用說明:

播放器需要傳入一view 自動(dòng)適應(yīng)view的尺寸 為了簡(jiǎn)化全屏模式統(tǒng)一使用屏幕旋轉(zhuǎn)的方式進(jìn)行適配全屏、目前控制層UI未做詳細(xì)拆分,后期將逐步優(yōu)化、只為做最簡(jiǎn)單的視頻播放器

//此次一句話即可實(shí)現(xiàn)播放 同時(shí)適配橫豎屏、豎立的視頻
[[NIPlayer sharedPlayer] playWithUrl:_url onView:playView];

狀態(tài)欄旋轉(zhuǎn)需要控制器中重寫方法 且需要在info.Plist 添加 View controller-based status bar appearance 設(shè)置成No,默認(rèn)為Yes


- (BOOL)shouldAutorotate {
    return NO;
}
//對(duì)播放器內(nèi)部對(duì)以下狀態(tài)做了監(jiān)聽,可以更好的自己處理各種情況
typedef NS_ENUM(NSInteger, NIAVPlayerStatus) {
    NIAVPlayerStatusLoading = 0,     // 加載視頻
    NIAVPlayerStatusReadyToPlay,     // 準(zhǔn)備好播放
    NIAVPlayerStatusIsPlaying,       // 正在播放
    NIAVPlayerStatusIsPaused,        // 已經(jīng)暫停
    NIAVPlayerStatusPlayEnd,         // 播放結(jié)束
    NIAVPlayerStatusCacheData,       // 緩沖視頻
    NIAVPlayerStatusCacheEnd,        // 緩沖結(jié)束
    NIAVPlayerStatusPlayStop,        // 播放中斷 (多是沒網(wǎng))
    NIAVPlayerStatusItemFailed,      // 視頻資源問題
    NIAVPlayerStatusEnterBack,       // 進(jìn)入后臺(tái)
    NIAVPlayerStatusBecomeActive,    // 從后臺(tái)返回
};

預(yù)覽:



最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容