VSCode?搭建?x264?源碼調(diào)試環(huán)境的詳細(xì)步驟
本節(jié)用到了上節(jié) Win10環(huán)境下 編譯 和 運(yùn)行 x264 搭建的 msys 和 mingw 的環(huán)境
使用的 MSYS2 MINGW64 、 gcc.exe 、 gdb.exe 都是上一節(jié)搭建好的環(huán)境
1.下載 x264
https://www.videolan.org/developers/x264.html

解壓后

2. 使用上一節(jié)介紹的方法為 x264 生成支持 debug 的 x264.exe
我在 D盤 創(chuàng)建一個(gè)新的文件夾 x264_vscode_debug,用于存放之后要生成的 x264.exe
上一節(jié)博客:Win10環(huán)境下 編譯 和 運(yùn)行 x264
打開 MSYS2 MINGW64 輸入下面的命令
cd D:\x264_vscode_debug cd x264-master ./configure --enable-debug --prefix=D:\/x264_vscode_debug\/x264_generat make make install
其中 x264_generat 文件夾不要我們自己去創(chuàng)建,后面 make install 的時(shí)候會自動生成



這樣就生成了 x264_generat\bin\x264.exe

3. 在 VSCode 中打開 x264 源碼文件夾


4. 創(chuàng)建并配置 launch.json
4.1 創(chuàng)建 launch.json
點(diǎn)擊 Run–>AddConfiguration–>c/c++: (gdb) 啟動, 就能創(chuàng)建 launch.json



4.2 配置 launch.json 的 gdb.exe 路徑
先找到 gdb.exe 的路徑(依賴上一節(jié)博客搭建的環(huán)境)

將 gdb.exe 的路徑填到 launch.json 里面,注意要把路徑里的 \ 改成 \\
C:\\msys64\\mingw64\\bin\\gdb.exe

4.3 配置 launch.json 的 x264.exe 路徑
先找到之前生成的 x264.exe 路徑

然后把路徑填到 launch.json,注意要把路徑里的 \ 改成 \\

5. 創(chuàng)建并配置 tasks.json
5.1 創(chuàng)建 tasks.json
點(diǎn)擊 Terminal–>Condigure Tasks…–>Create tasks.json from template–>MSBuild Excutes the build target ,就能創(chuàng)建 tasks.json




5.2 配置 tasks.json 的 gcc.exe 路徑
找到 gcc.exe 的路徑(依賴上一節(jié)博客搭建的環(huán)境):
C:\msys64\mingw64\bin\gcc.exe

將 gcc.exe 的路徑 填到 tasks.json

點(diǎn)擊 Run --> Run Without Debugging

terminal 打印沒有傳命令參數(shù)

解決辦法是 在 launch.json 添加 x264 的命令參數(shù)
6. 在 launch.json 添加 x264 的命令參數(shù)
6.1 先準(zhǔn)備一個(gè) yuv 文件

6.2 在 launch.json 填啟動命令參數(shù)
"-o", "D:\\x264_vscode_debug\\x264_generat\\bin\\768_320.h264", "D:\\x264_vscode_debug\\x264_generat\\bin\\768x320.yuv"
參數(shù)的意思是: 輸入文件為 D:\x264_vscode_debug\x264_generat\bin 路徑下的 768x320.yuv ,讓 x264 編碼,生成輸出文件為 D:\x264_vscode_debug\x264_generat\bin 下的 768_320.h264

運(yùn)行后, terminal 打印如下

同時(shí),也在路徑下面生成了 相應(yīng)的 h264 文件

我們使用 ffplay 播放這個(gè)編碼好的 768_320.h264
ffplay D:\x264_vscode_debug\x264_generat\bin\768_320.h264
播放成功,說明編碼的 h264 沒有問題。

7. 調(diào)試 x264 源碼
7.1 打斷點(diǎn)




7.2 debug





到此這篇關(guān)于VSCode 搭建 x264 源碼調(diào)試環(huán)境的文章就介紹到這了,更多相關(guān)VSCode源碼調(diào)試內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用SSH快速下載Git項(xiàng)目的實(shí)現(xiàn)方法
下面小編就為大家分享一篇使用SSH快速下載Git項(xiàng)目的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12
git與svn的區(qū)別及優(yōu)缺點(diǎn)說明
Git和SVN都是版本控制系統(tǒng),用于代碼管理,SVN是集中式的,需要聯(lián)網(wǎng)并且中央服務(wù)器存在單點(diǎn)故障的風(fēng)險(xiǎn),Git是分布式的,每個(gè)終端都是一個(gè)完整的倉庫,不依賴中央服務(wù)器,提高了工作的靈活性和安全性,SVN易于管理權(quán)限,但必須聯(lián)網(wǎng)工作且更新提交可能面臨沖突2024-10-10
Jenkins集成Gitlab實(shí)現(xiàn)自動化部署的全過程記錄
因?yàn)橹行凸静豢赡芘渲眠\(yùn)維開發(fā),而開發(fā)只管開發(fā)的,所以運(yùn)維只能是通過使用開源工具的方式來搭建自動化部署系統(tǒng),下面這篇文章主要給大家介紹了關(guān)于Jenkins集成Gitlab實(shí)現(xiàn)自動化部署的相關(guān)資料,需要的朋友可以參考下2022-04-04
scratch-www 在Win10下的環(huán)境搭建詳細(xì)教程
scratch-www是scratch-gui的網(wǎng)頁版,功能包括gui的編輯,保存,播放,和gui的作品展示,這里主要介紹scratch-www在window系統(tǒng)下的安裝和運(yùn)行,感興趣的朋友跟隨小編一起看看吧2021-08-08

