您好,登錄后才能下訂單哦!
最近折騰了一下軟編碼器,網上的資料好少,踩的坑記一下
從frameworks/media/libstagefright/codecs下面找一個enc的代碼看看
無非是從SimpleSoftOMXComponent繼承,然后實現onfill什么的,自己的編碼器就在這里實現,比較好理解。
SoftOMXPlugin.cpp里注冊這個編碼器,OMX.google.xxx.encoder,照著上面仿寫就行
網上說的只需要上面兩步,但實際上在我這還跑不起來,只好加日志跟起來
ACodec.cpp
有這么個函數onAllocateComponent,看下自己的是定義的軟編還是硬編,加個標記flags = OMXCodec::kSoftwareCodecsOnly;
setVideoPortFormatType這里也要看看,有可能colorFormat和格式對不上需要特殊處理跳過去
OMXCodec.app
這里也有一個MIME對編×××的數組,作用沒仔細看,為防萬一也加上了
這樣一個編碼器就能跑起來了,最后在/etc/media_codecs.xml注冊一下
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。