FFmpeg開發(fā)筆記(七十一)使用國產(chǎn)的QPlayer2實(shí)現(xiàn)雙播放器觀看視頻

QPlayer2是七牛云基于FFmpeg6.1研發(fā)并開源的國產(chǎn)播放器,它可運(yùn)行于Android和iOS系統(tǒng),既支持播放本地視頻文件,也支持播放網(wǎng)絡(luò)上的流媒體鏈接。有關(guān)FFmpeg在Android平臺的集成說明參見《FFmpeg開發(fā)實(shí)戰(zhàn):從零基礎(chǔ)到短視頻上線》一書的“第12章 FFmpeg的移動開發(fā)”。

之前的文章《使用國產(chǎn)的RedPlayer播放器觀看網(wǎng)絡(luò)視頻》介紹了另一款由小紅書研發(fā)的國產(chǎn)播放器RedPlayer,本來RedPlayer已經(jīng)很好用了,誰知QPlayer2又橫空出世,不僅基于FFmpeg6.1,還新增了畫面旋轉(zhuǎn)/鏡像/縮放能力,其Demo工程甚至適配到了Android 15(即API 35)。

這里以Android Studio Dolphin(小海豚版本)為例,介紹如何在App工程中運(yùn)行QPlayer2,詳細(xì)的操作步驟如下。

QPlayer2適配不同系統(tǒng)的源碼分開托管,其中Android版本的源碼托管地址為https://github.com/pili-engineering/QPlayer2-Android。因?yàn)镼Player2的最新源碼基于Gradle8.7,與Android Studio Dolphin(小海豚版本),所以為了讓小海豚版本能夠打開QPlayer2源碼,需要對Qplayer2Demo目錄下的工程配置做如下改動:

1、打開gradle\wrapper\gradle-wrapper.properties,把下面這行

distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip

改成下面這行,也就是把Gradle8.7降級到Gradle7.2。

distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip

2、打開項(xiàng)目級別的build.gradle,把下面這行

classpath 'com.android.tools.build:gradle:8.6.1'

改成下面這行,也就是把gradle8.6.1降級到gradle7.1.2。

classpath 'com.android.tools.build:gradle:7.1.2'

3、依次選擇菜單:File→Settings→Build,Execution,Deployment→Build Tools→Gradle,把Gradle JDK欄的版本調(diào)整為JDK17。

4、打開模塊級別的build.gradle,把a(bǔ)ndroid節(jié)點(diǎn)內(nèi)部的下面這行

compileSdk 35

改成下面這行,也就是把編譯SDK版本從API35降級到API34。

compileSdk 34

5、打開模塊級別的build.gradle,把dependencies節(jié)點(diǎn)內(nèi)部的下面四行

implementation "org.jetbrains.kotlin:kotlin-stdlib:2.0.20"

implementation 'androidx.core:core-ktx:1.15.0'

implementation 'androidx.appcompat:appcompat:1.7.0'

implementation 'androidx.constraintlayout:constraintlayout:2.2.0'

改成下面三行,也就是把相關(guān)依賴庫統(tǒng)統(tǒng)降級。

implementation 'androidx.core:core-ktx:1.12.0'

implementation 'androidx.appcompat:appcompat:1.6.1'

implementation 'androidx.constraintlayout:constraintlayout:2.0.4'

完成以上配置修改之后,再編譯Qplayer2Demo工程,然后安裝到手機(jī)的QPlayer2首頁如下圖所示:

點(diǎn)擊首頁上方的長視頻按鈕,打開長視頻的演示頁面如下圖所示。

回到首頁,點(diǎn)擊下方的雙播放器按鈕,打開雙播放器的演示頁面如下圖所示。

可見QPlayer2能夠正常播放網(wǎng)絡(luò)視頻。

更多詳細(xì)的FFmpeg開發(fā)知識參見《FFmpeg開發(fā)實(shí)戰(zhàn):從零基礎(chǔ)到短視頻上線》一書。

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

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

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