iOS VideoToolBox decoder解碼失敗(-12909和-12911)問題解決(二)


    之前解決過一個-12909報錯的問題,后來在工作中又遇到了。這次是解碼沒有報錯,但是callback函數中返回了-12909,還是一樣的分析思路。最終定位:

問題原因:

    這次出問題的視頻源是iPhone錄制和拍攝的mp4視頻,其extradata中的pps有兩個,如果使用CMVideoFormatDescriptionCreateFromHEVCParameterSets API,那么如何組織pps的格式,找不到官方的說明,嘗試了幾次,均失敗。

修復:

    參考開源軟件的做法,使用CMVideoFormatDescriptionCreate,將extradata全部設置給extensions解決。

    注意修改extradata的組成格式,如果是annexb格式的,需要使用ffmpeg ff_isom_write_avcc等API將annexb格式的extradata轉換為mp4格式。


免責聲明!

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



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