課程介紹
本課程講解的是基於流行的直播技術 FFMpeg3.3音視頻處理框架,和應用廣的c++跨平臺的QT5庫(主要用作界面)。開發的一個完整的屏幕錄像機項目,包含桌面錄製(基於 QT(跨平臺),directx(高效)),話筒錄製,音視頻h264編碼,MP4封裝。QT圓角邊框界面。 開發工具基於vs2015,但同樣適用於vs更高版本。
課程收益
學會基於ffmpeg的音視頻編碼封裝,學會qt音頻錄製,屏幕錄製,學會directx的高效屏幕錄製
講師介紹
夏曹俊更多講師課程
夏曹俊:南京捷帝科技有限公司創始人,南京大學計算機碩士畢業,有15年c++跨平臺項目研發的經驗,領導開發過大量的c++虛擬仿真,計算機視覺,嵌入式圖像處理,雲安全審計項目,比賽鷹眼系統,主編出版過《C++實訓教程》,並同時熟悉php,c#,java,安卓項目研發。
課程大綱
第1章:課程介紹和基礎知識
1.課程介紹-課程羣651163356 8:54
2.封裝和編碼格式介紹mpeg4標準介紹 7:37
3.FFMpeg庫下載和vs項目創建 7:09
第2章:視頻傳封裝代碼演示講解(MP4 to MOV)
1.創建mp4轉mov的項目並調用SDK打開mp4文件 13:17
2.創建mov封裝格式的上下文創建並配置音頻和視頻流信息 14:14
3.寫入mov視頻文件格式頭信息 6:36
4.完成成了視頻音頻幀數據寫入並根據timebase計算pts 19:46
5.重封裝用到的SDK接口和結構體通過流程圖總結 5:09
第3章:視頻編碼(RGB TO MP4)
1.詳解RGB和YUV 7:06
2.創建視頻編碼項目設置並打開視頻編碼器 19:28
3.完成視頻編碼的封裝上下文創建和視頻流信息添加 6:26
4.視頻像素格式轉換rgb轉爲yuv 19:57
5.視頻封裝頭和尾寫入視頻幀編碼 20:02
6.完成視頻寫入清理,解決AVPacket空間泄露 9:49
第4章:音頻編碼(PCM to aac)
1.音頻參數詳解 4:00
2.創建和配置音頻編碼器 11:06
3.創建音頻封裝的輸出上下文寫入音頻文件頭 9:10
4.創建和配置音頻重採樣上下文 8:46
5.創建音頻輸出AVFrame完成音頻重採樣 10:07
6.完成音頻的編碼和封裝入aac文件 7:02
第5章:音視頻編碼類設計
1.音視頻編碼類封裝介紹和使用ffmpeg工具抽取rgb和pcm 5:53
2.創建XVideoWriter接口類完成工廠模式對象創建 6:57
3.完成ffmpeg初始化、輸出上下文初始化和關閉清理接口 17:24
4.新增視頻流接口添加,設置視頻編碼參數並打開 18:12
5.設置rgb轉yuv轉換上下文參數設置,創建yuv輸出空間 15:50
6.讀取文件中rgb數據轉換爲yuv 14:35
7.完成h264視頻幀編碼和相關資源清理 11:26
8.打開視頻輸出IO寫入mp4視頻文件頭 6:16
9.寫入視頻幀和視頻索引並修正視頻幀的pts 14:19
10.音頻編碼器參數設置並打開 13:07
11.音頻重採樣上下文參數設置和初始化 12:02
12.讀取音頻文件中pcm進行重採樣並清理和關閉音頻相關資源. 18:06
13.音頻編碼和MP4文件寫入 8:59
14.音頻pts計算並完成音視頻寫入同步計算 13:46
第6章:錄製屏幕
1.directx截屏接口講解 7:30
2.完成directx3d對象創建和顯卡device對象創建 18:16
3.創建離屏表面並截取屏幕編碼爲mp4視頻 14:42
4.QT5開發環境準備QtScreen項目創建 12:21
5.完成qt屏幕截圖並在QWidget中顯示 13:07
6.使用qt顯示directx截屏並比較兩種截屏時間消耗 9:39
第7章:使用qt錄製音頻
1.QT音頻錄製類方法講解 6:09
2.使用qt完成音頻錄入並將錄入音頻轉爲aac 12:05
第8章:實戰屏幕錄像機
1.屏幕錄像機項目簡介和用到的qt技術說明並創建vs2015的項目 8:45
2.設置圓角無鋸齒窗口並添加關閉和最小化按鈕和操作 12:50
3.完成按鈕的三種樣式圖片設置,使用qss完成界面設計 16:43
4.完成錄製和停止錄製按鈕事件響應和錄製時間響應 16:27
5.項目類圖類設計 5:40
6.XCaptureThred類啓動關閉和線程入口函數編寫完成 16:05
7.XCaptureThread截屏線程和隊列rgb數據獲取接口完成並完成屏幕錄製類測試 14:58
8.XAudioThread音頻錄製類編碼完成. 21:00
9.XScreenRecord屏幕錄製控制類完成開發和測試 19:27
10.完成XScreenRecord音視頻的錄製接口和測試 11:55
11.完成了屏幕錄像機qt界面與XSCreenRecord集成 10:05
12.視頻錄製程序發佈dll庫準備 10:48
大家可以點擊【查看詳情】查看我的課程