原创 快速理解AAC編碼格式

本文包含兩部分內容:介紹AAC編碼格式,以及如何解決ffmpeg獲取aac文件時長不準的問題。 寫在前面:想要自己詳細學習AAC編碼格式細節的朋友們當然更推薦直接去看標準文檔《MPEG-4 Audio: ISO/IEC 14496

原创 ffmpeg綜合應用示例(三)——安卓手機攝像頭編碼

本文的示例將實現:讀取安卓手機攝像頭數據並使用H.264編碼格式實時編碼保存爲flv文件。示例包含了 1、編譯適用於安卓平臺的ffmpeg庫 2、在java中通過JNI使用ffmpeg 3、讀取安卓攝像頭數據並在後臺線程中使用ffmpeg

原创 WebRTC VoiceEngine綜合應用示例(一)——基本結構分析

把自己這兩天學習VoiceEngine的成果分享出來,供大家參考,有什麼問題也歡迎大家指出,一起學習一起進步。 本文將對VoiceEngine的基本結構做一個分析,分析的方法是自底向上的:看一個音頻編碼器是如何一層層被封裝到VoiceEn

原创 WebRTC VoiceEngine綜合應用示例(二)——音頻通話的基本流程

下面將以實現一個音頻通話功能爲示例詳細介紹VoiceEngine的使用,在文末將附上相應源碼的下載地址。這裏參考的是voiceengine\voe_cmd_test。 第一步是創建VoiceEngine和相關的sub-apis   //

原创 ffmpeg綜合應用示例(四)——攝像頭直播的視音頻同步

在ffmpeg超詳細綜合教程——攝像頭直播文中完成了一個讀取PC攝像頭視頻數據並以RTMP協議發送爲直播流的示例,但是並沒有實現對音頻的支持,所以在這篇文章中對該示例做進一步的完善並且詳細分析直播流的視音頻同步問題,同樣,也會給出代碼示例

原创 x264源碼分析與應用示例(一)——視頻編碼基本流程

打算寫幾篇文章記錄一下學習x264源碼的成果,主要包含兩個方面的內容,一是基本的x264視頻編碼流程,二是x264中的碼率控制,之前分析過JM和HM的碼率控制,但是x264的碼率控制一直沒看,這回也算是補上了。然後再以兩個實際問題爲例介紹

原创 ffmpeg源碼分析與應用示例(一)——H.264解碼與QP提取

本文包含以下內容 1、H.264解碼流程詳述與對應ffmpeg源碼解析 2、針對一個應用實例介紹通過修改ffmpeg源碼解決問題的方案 具有較強的綜合性。 先介紹一下在第二部分中將要解決的實際問題:自ffmpeg 1.2版本之後,用於描述

原创 x264源碼分析與應用示例(二)——碼率控制

打算寫幾篇文章記錄一下學習x264源碼的成果,主要包含兩個方面的內容,一是基本的x264視頻編碼流程,二是x264中的碼率控制,之前分析過JM和HM的碼率控制,但是x264的碼率控制一直沒看,這回也算是補上了。然後再以兩個實際問題爲例介紹

原创 自適應流媒體傳輸(一)——DASH媒體內容的生成

DASH(Dynamic Adaptive Streaming over HTTP)即自適應流媒體傳輸,典型的系統框圖如下 簡單概括來說,就是在服務器端提前存好同一內容的不同碼率、不同分辨率的多個分片以及相應的描述文件MPD,客戶端在播

原创 x264源碼分析與應用示例(三)——淺談碼率控制的優化問題

打算寫幾篇文章記錄一下學習x264源碼的成果,主要包含兩個方面的內容,一是基本的x264視頻編碼流程,二是x264中的碼率控制,之前分析過JM和HM的碼率控制,但是x264的碼率控制一直沒看,這回也算是補上了。然後再以兩個實際問題爲例介紹

原创 ffmpeg源碼分析與應用示例(二)——代碼抽取的意義

我最早是在課堂上聽說的可以從ffmpeg中通過抽取代碼的方式提取出一個完整的編碼器或解碼器,最近正好在看ffmepg的源碼,就想嘗試一下。但經過調查之後,發現了代碼抽取的幾個問題: 1、如果只是抱着精簡ffmpeg的目的進行代碼抽取,則完

原创 深入理解VLC之縱觀全局

VLC系列文章 深入理解VLC之代碼流程 VLC,著名的開源播放器項目,它雖然很龐大,但是在架構設計上也高度模塊化。幸運的是,官方wiki非常詳細,無論是大的架構設計,還是每一個模塊裏面的代碼細節,都有詳盡的介紹。wiki鏈接:h

原创 歲歲年年人不同——LVS2019多媒體會議見聞(二)

在上一篇文章《歲歲年年人不同——LVS2019多媒體會議見聞(一)》中記錄了第一天的見聞,下面來看第二天。 今天聽的第一場演講來自芒果TV,主題是《QoE驅動的音畫體驗優化以及在芒果TV的實踐》,平心而論,比較水。下面來簡單看一下吧。

原创 歲歲年年人不同——LVS2019多媒體會議見聞(一)

2017年參加了在北京舉辦的第一屆LiveVideoStack多媒體技術大會,去年沒能參加,今年則遠赴上海蔘加了第三屆大會。會議的票價幾乎每年上漲一千元,今年8月在北京還有一場,全價票已經達到了3000元的水平,令人咂舌。要不是抽到了

原创 自適應流媒體傳輸(五)——正確認識碼率切換

這是本系列的第五篇文章 前四篇文章的鏈接如下: 自適應流媒體傳輸(一)——DASH媒體內容的生成 自適應流媒體傳輸(二)——爲什麼要使用fragmented MP4 自適應流媒體傳輸(三)——和TS格式說再見 自適應流媒體傳輸(四)—