1. 程式人生 > 實用技巧 >基於Qt ffmpeg開發跨平臺安卓實時投屏軟體

基於Qt ffmpeg開發跨平臺安卓實時投屏軟體

https://gitee.com/Barryda/QtScrcpy##%E5%A6%82%E4%BD%95%E7%BC%96%E8%AF%91

從這篇文章得到靈感,決定實現復刻

下載原始檔

https://gitee.com/Barryda/QtScrcpy/repository/archive/v1.4.2?ref=v1.4.2&sha=4c3dff6167446a491767182e6bc80248b74df9a2&format=zip&captcha_type=yunpian&token=4b0c2c73080349488bbf96747d3c3ae2&authenticate=14541be97afb4f8d9bfdf56d3bad66e2

Qt開發環境(Qt == 5.15, vs == 2017 (不支援mingw))

本機環境VS2015 qt5.6

pro工程轉sln工程

1.在專案目錄裡,開啟命令列,然後找到一個qt的qmake拖入到 命令列窗口裡,然後輸入-project

2.將.pro檔案用記事本開啟加入QT += widgets

3.然後再拖進去輸入 -tp vc test1.pro

每次對新增了QT的類檔案 都要重複這樣的工作。

最後開啟.vcxproj檔案

tips:當你的xx.pro的TEMPLATE = subdirs時,

qmake -r -tp vc xx.pro

最後上面的幾個沒成功,直接用vs自帶的外掛,打開了all.pro 檔案,直接轉化。

平板開啟ADB除錯

編譯沒通過,先開啟安裝包,測試一下執行流暢度,中途遇到個小問題,華為**平板adb除錯打不開

找了多方測試:

樓主,將USB連線模式改為【傳輸照片】或者【傳輸檔案】,
也可以開啟【“僅充電”模式下允許 ADB 除錯】模式:
進入設定 > 系統 > 關於平板,連續點選7次版本號,直到手機出現提示:您正處於開發者模式,然後點選設定 > 系統 > 開發人員選項 > “僅充電”模式下允許 ADB 除錯。
最後是RNDIS 選項才成功跳出執行USB除錯選項,成功連線,總體執行比較流暢,還可以通過無線連線,nice!是我想要的程式。

總結下:總共有三個地方設定,

1)設定 裡面 安全 允許通過HDB連線裝置

2)關於平板電腦 裡面連續雙擊版本號

3)系統和更新 開發人員選項 USB除錯 選擇USB配置裡面 選擇 RNDIS(USB乙太網)[這個框我也不知怎麼調出來的],我想大抵是重複插拔後 歐皇現身。

開始編譯

1)qt::SkipEmptyParts 修改為QString::SkipEmptyParts

2)#include "controlmsg.cpp"

新增
#include <QtCore/qmath.h>

92行
quint32 u = f * qPow(2, 16);//0x1p16f; // 2^16