跨平臺播放器開發(fā) (三) QT for Windows & FFmpeg 環(huán)境搭建
簡介
上一篇咱們在 「Linux」 平臺下搭建了播放器開發(fā)環(huán)境,該篇主要介紹如何在 「Windows」 平臺下搭建 QT 和 FFmpeg 開發(fā)環(huán)境。如果你是在 mac 或者linux 環(huán)境下, 那么可以參考下面文章進(jìn)行搭建
跨平臺播放器開發(fā) (一) QT for MAC OS & FFmpeg 環(huán)境搭建
跨平臺播放器開發(fā) (二) QT for Linux & FFmpeg 環(huán)境搭建
環(huán)境準(zhǔn)備
由于我自己用的是 MAC 電腦,所以如果想在 Linux 或者是 Win 上面想跑代碼,那么只能裝一個虛擬機(jī)了??梢詤⒖荚撈恼?給mac裝個 vmware 虛擬機(jī): https://snowdreams1006.github.io/tools/mac-install-vmware.html
Windows
QT安裝
「進(jìn)入 QT 官網(wǎng)」
從 5.15.0 版本開始 QT 便不再支持離線安裝了。所以我們只能通過申請一個賬號,在線安裝了。
直接點(diǎn)擊 「Go open source」 -> 「Download the Qt Online Installer」 最后會根據(jù)自己的系統(tǒng)匹配軟件,點(diǎn)擊 Download 就可以下載了。

「雙擊執(zhí)行下載下來的軟件:」

「跟著提示點(diǎn)擊 next 即可:」


然后選擇 QT SDK 開發(fā)包,我這里安裝的是 6.1.1

選擇好了之后,點(diǎn)擊 next 就會進(jìn)入下載狀態(tài):


「直到出現(xiàn)如下頁面,就代表安裝成功可以啟動 QT 了:」

最后 「QT for Windows ?GUI 樣式如下:」

編譯 FFmpeg
由于在 Windows 平臺下編譯 FFmpeg 實(shí)在是太麻煩,所以我這里直接下載 FFmpeg 官網(wǎng)編譯好的,當(dāng)然如果你對 windows 平臺編譯比較熟悉,那么可以直接源碼編譯好了將動態(tài)庫和頭文件放在 QTFFplayer/libs 即可。
「1、源碼編譯」
Cygwin安裝與配置 - Windows下編譯安裝FFmpeg: http://www.ibooker.cc/article/340/detail
ffmpeg精講常見問題: https://blog.avdancedu.com/f3f66133/
(ps:后面有時間我自己編譯一下,然后再補(bǔ)上編譯腳本)
「2、官網(wǎng)下載」
首先進(jìn)入 https://github.com/BtbN/FFmpeg-Builds/releases ?,然后選擇你需要的動態(tài)庫,我這里選擇的是 https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2021-06-19-12-36/ffmpeg-n4.4-72-g91aa49218e-win64-gpl-shared-4.4.zip
下載完成之后,直接解壓放入如下目錄:

現(xiàn)在 FFmpeg 環(huán)境放入到了咱們項(xiàng)目中,下面就來編譯看下結(jié)果
「選擇編譯環(huán)境」

這里有可能編譯通過,但是打不開軟件報 QT6Core.dll 找不到,這種一般直接在 系統(tǒng)環(huán)境變量 PATH 加上你當(dāng)前安裝 QT 的路徑,我這里是 C:\Qt\6.1.1\mingw81_64\bin;
現(xiàn)在我們再次編譯運(yùn)行,發(fā)現(xiàn)還是崩潰,報錯如下 ffmpeg 的 *.dll 庫找不到,我們直接把 「QTFFplayer/libs/bin」 中的 *「.dll」 copy 到 「c:\windows\System32\」 下即可,編譯運(yùn)行出現(xiàn)如下頁面,代表成功:
可以發(fā)現(xiàn)在 ?「Windows」 平臺下,可以調(diào)用 FFmpeg 和 QT API 進(jìn)行開發(fā)了。
總結(jié)
「QT for Mac OS」 、 「Linux」 、「Windows」 ?開發(fā)環(huán)境都搭建完畢了,可以發(fā)現(xiàn) QT 在各個平臺安裝都幾乎一樣,但是編譯 FFmpeg 就不是很順利了,特別是 「Windows」 環(huán)境下編譯。
現(xiàn)在環(huán)境都搭建好了,以后直接在主平臺開發(fā)即可。等播放器開發(fā)完了之后,我們會在 「MAC OS、Linux 、Windows 、IOS 、Android」 平臺下跑下看下效果。
下一篇主要講解 FFmpeg 解封裝的知識,請敬請等待吧!
項(xiàng)目地址: https://github.com/yangkun19921001/QTFFPlayer.git
