超級簡單的跨平臺高效能音視訊播放框架QtAv編譯指南

朝十晚八發表於2019-06-25

一、瞭解QtAv

這幾天抱著試一試的心態,嘗試著瞭解了下QtAv這個庫,感覺確實挺不錯的,因此就打算學習下這個庫。

斷斷續續的看了不少文章,大多數都是通過百度搜尋出來的文章。說實話百度上大多數文章內容都差不多,而且很少有文章說清楚了編譯時的環境配置和編譯器上的區別,導致我自己也一度認為這個庫很難編譯。其實真的不難

網上的資源真的很多,但是有點兒雜亂,新手上來一看可能很容易就懵逼了。可是我這裡要告訴大家,真的不需要害怕,這個庫的編譯真的炒雞簡單,不信看我第三小節開始的編譯步驟,簡單到不敢相信。

因為我看到了windows編譯qtav這篇文章,文章中清楚的說明了環境變數配置是需要根據編譯器進行選擇設定的,這時自己的思路也一下子就開闊了。

我這裡使用的是QtCreator編輯器,編譯器使用的是是MSVC,是vs2013的編譯器。所以標頭檔案需要配置到Include上,庫檔案需要配置到Lib目錄上。

如果是gcc的編譯器,配置才可能像下邊這樣。這個我沒有測試,因為我自己是msvc環境,不過網上這麼多人說了,估計應該也沒啥問題。這也是為啥我開頭說網上資源亂,因為我看的大多數是Mingw整合環境下的文章。

CPATH : C:\Users\Administrator\Desktop\QtAV-depends-windows-x86+x64\QtAV-depends-windows-x86+x64\include
LIBRARY_PATH : C:\Users\Administrator\Desktop\QtAV-depends-windows-x86+x64\QtAV-depends-windows-x86+x64\lib

首先說明我的編譯環境:

  • Qt版本:Qt5.7.1
  • 編譯器:vs2013上的MSVC編譯器
  • 編輯工具:QtCreator 4.2,其實跟這個關係不大,只是一個ide而已,我們使用的編譯器仍然是微軟的msvc編譯器。
  • 系統:Win10 64位

重點強調下,windows編譯qtav這篇文章一定要看,內容真的很實用。主要是告訴你在編譯前期,msvc和gcc兩種編譯器下,怎麼去配置環境變數。

二、相關文章

編譯步驟:Qt5.5.0編譯QtAV

不同編譯器下環境變數配置:windows編譯qtav

我自己是看著Qt5.5.0編譯QtAV這篇文章進行編譯的,最起碼資源都是在文章中的連線裡下載的,包括QtAv原始碼和依賴庫QtAV-depends-windows-x86+x64

但是參考這篇文章中配置環境變數時,一定要注意,這篇文章中的作者是GCC編譯器。而我們自己去要根據自己的編譯環境來配置環境變數,如果你是MINGW整合環境,也就是說你是GCC編譯器,那麼恭喜你,直接按原文配置即可。

但是,如果你不是GCC編譯器,那麼你就需要看windows編譯qtav
這篇文章,他會告訴你,其他編譯器怎麼配置環境變數

MSVC編譯器,配置方法如下。把標頭檔案和庫檔案分別配置在Include和LIB目錄上。
如果是gcc的編譯器,需要把標頭檔案和庫檔案分別配置在CPATH和LIBTRARY_PATH環境變數上。

image

三、下載QtAv原始碼

原始碼下載時直接上官方的github即可,QtAv

四、下載QtAv依賴庫

由於QtAv是基於ffmpeg開發的,因此我們需要下載相關依賴庫。QtAV-depends-windows-x86+x64

五、設定環境變數

根據不同編譯器設定方法不一樣,具體參看windows編譯qtav這篇文章

1、gcc設定方式

CPATH : C:\Users\Administrator\Desktop\QtAV-depends-windows-x86+x64\QtAV-depends-windows-x86+x64\include
LIBRARY_PATH : C:\Users\Administrator\Desktop\QtAV-depends-windows-x86+x64\QtAV-depends-windows-x86+x64\lib

2、msvc(cl)設定方式

image
圖中環境變數列表中加粗的字即是我新增的環境變數,msvc編譯器下INCLUDE和LIB這個兩個變數本身就是存在的,所以我們只需要在值那一列把include和lib目錄新增上即可。

注意:需要新增自己的QtAV-depends-windows-x86+x64依賴庫

六、編譯

環境變數配置好之後,直接點選構建即可,編譯成功後,效果如下
image

七、測試

編譯完成之後,我們會發現bin目錄下會有很多可執行檔案,這個時候我們可以執行其中某一個可執行檔案對我們編譯的庫進行測試。

首先拷貝QtAv的依賴庫ffmpeg,找到之前解壓的QtAV-depends-windows-x86+x64資料夾,把裡邊的bin目錄下的資原始檔都拷貝到我們剛才編譯出來的QtAv目錄下。

找到我們剛才編譯生成的bin目錄,開啟裡邊的simpleplayer.exe可執行程式。選擇一個本地的資原始檔進行播放,效果圖可能如下圖所示,這裡是只放了一張圖,主要作為示意。

image

到這裡,我們的QtAv就編譯完成了。

後續有時間我會嘗試使用這個庫,然後做更進一步的分析




很重要--轉載宣告

  1. 本站文章無特別說明,皆為原創,版權所有,轉載時請用連結的方式,給出原文出處。同時寫上原作者:朝十晚八 or Twowords

  2. 如要轉載,請原文轉載,如在轉載時修改本文,請事先告知,謝絕在轉載時通過修改本文達到有利於轉載者的目的。


相關文章