GitHub開源分享 | 一個(gè)跨平臺(tái)的高性能音視頻播放框架

?Github 開源推薦
專注分享 GitHub 上有趣、好玩的開源項(xiàng)目,以幫助大家提高編程技巧,找到編程樂趣。
如果你對(duì)開源感興趣,想和大家分享一些優(yōu)質(zhì)項(xiàng)目,隨時(shí)歡迎投稿(微信號(hào):iwaleon)。
QtAV 是一個(gè)基于 Qt 和 FFmpeg 的跨平臺(tái)、高性能多媒體播放框架,能夠幫助你輕而易舉地編寫出一個(gè)播放器。

官網(wǎng)地址:http://www.qtav.org/
Github 地址:https://github.com/wang-bin/QtAV
編譯 QtAV:https://github.com/wang-bin/QtAV/wiki/Build-QtAV
在項(xiàng)目中使用 QtAV:https://github.com/wang-bin/QtAV/wiki/Use-QtAV-In-Your-Projects
1
編譯安裝
以 Windows 平臺(tái)為例,下載依賴 QtAV-depends-windows-x86+x64.7z(詳見:https://sourceforge.net/projects/qtav/files/depends/)。解壓縮之后,里面有構(gòu)建時(shí)需要用到的頭文件和庫,分別存儲(chǔ)在?include、lib、bin?目錄下。
編輯 QtAV 源碼目錄中的 .qmake.conf文件,在其中添加以下 2 行內(nèi)容:

注意:這里我引用的是相對(duì)路徑,$$PWD/../ 表示當(dāng)前路徑的上一層目錄。
打開 QtAV.pro,執(zhí)行 qmake -> 構(gòu)建。完成之后,會(huì)生成相應(yīng)的庫文件和程序:

其中,bin 目錄包含了測試程序,lib_win_x86_64 目錄包含了 .lib 和 .dll 庫文件。
2
基本使用
QtAV 簡單易用,只需幾行代碼就能播放一個(gè)視頻:
#include?
#include?
#include?
using?namespace?QtAV;
int?main(int?argc,?char?*argv[])
{
????QApplication?a(argc,?argv);
????//?GLWidgetRenderer2?使用?GLSL?渲染視頻幀
????GLWidgetRenderer2?renderer;
????renderer.show();
????//?AVPlayer?用于控制播放過程
????AVPlayer?player;
????player.setRenderer(&renderer);
????player.play("test.mp4");
????return?a.exec();
}
當(dāng)然了,這只是一個(gè)很簡單的例子。如果想了解 QtAV 的更多細(xì)節(jié),建議結(jié)合官方文檔和源碼中的 examples。
不妨嘗試一下,運(yùn)行 examples 下的 player 示例,效果如下:

這個(gè)示例相當(dāng)完整了,播放器常用的功能幾乎都有。如果你想快速打造一個(gè)屬于自己的播放器,參考它準(zhǔn)沒錯(cuò)
!
·END·

