H264分層編碼SVC


參考鏈接文檔:

https://blog.csdn.net/tanningzhong/article/details/80578981

 

https://blog.csdn.net/qq_29350001/article/details/78271900

 

分層的關鍵:

openh264 中 temporal layer 的輸出順序與幀率

在 openh264 的內部,存在一張表,用來記錄每一層的輸出順序,可以在 encoder_data_tables.cpp 中找到內容如下:

解析如下:

iTemporalLayerNum 的值為 1 時,使用 uiGopSize = 1 的配置,即每一幀為一組,每一組的 uiTemporalId 值為 0

iTemporalLayerNum 的值為 2 時,使用 uiGopSize = 2 的配置,即每兩幀為一組,每一組中對應的uiTemporalId 為 [0, 1]

iTemporalLayerNum 的值為 3 時,使用 uiGopSize = 4 的配置,即每四幀為一組,每一組中對應的uiTemporalId 為 [0, 2, 1, 2]

iTemporalLayerNum 的值為 4 時,使用 uiGopSize = 8 的配置,即每 8 幀為一組,每一組中對應的uiTemporalId 為 [0, 3, 2, 3, 1, 3, 2, 3]

根據上述描述以及輸入的幀率可計算每一層的幀率是多少,例如在 30fps 下分兩層輸出,則 T0 幀率為 15fps;

分 3 層時,每 4 幀組則有完整 7 組,則 T0 的幀率有 7 + 1 = 8fps,T1 的幀率有 8 + 7 = 15fps,T2 則有 30fps;

分 4 層的情況可按相同的方法計算每一層的幀率。

————————————————
版權聲明:本文為CSDN博主「老衲不出家」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/tanningzhong/article/details/80578981


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM