2015-12-17 152 views
0

流媒體使用MediaMuxer視頻(我不是在英語確實不錯,但我會盡我所能。)H.264保存在Android

我工作的一個Android應用程序會將收到的H.264流視頻/音頻幀添加到剪輯中。我遇到了一個問題,提到here,「缺少編解碼器特定數據」。

我試過一些方法來解決這個問題。

  1. 分配預定義的編解碼器特定數據。
    我從this post借用,它的工作非常完美 - 但僅限於我的個人手機(索尼Xperia Z3,Android 5.1.1)。大多數測試設備只是迷戀(Android 4.3/4.4)。
  2. 解析來自視頻流自身的編解碼器特定數據。
    在我的手機上粉碎。但不知怎麼的在一些設備上工作。 我以this code爲例。
  3. 創建一個編碼器對接收到的視頻幀進行編碼,然後將它們傳遞給MediaMuxer。
    是的,這是一個愚蠢的想法,它不起作用。
  4. 創建一個解碼器來解碼接收到的視頻幀,將它們傳遞給編碼器,然後將編碼幀傳遞給MediaMuxer,將其保存。
    應用程序無法從編碼器獲得任何空閒緩衝區。僵局。

現在我已經沒有想法了。

我得到的最後希望是使用ffmpeg。
但我發現的資源是來自視頻文件的編碼/解碼視頻,而不是來自視頻流。
有什麼建議嗎?

在此先感謝。 :)

回答

0

經過一週的嘗試,包括週末學習h.264規格和更多。

我發現問題不在於視頻。

這是導致應用程序粉碎的音頻。


病例密切,感謝觀看。 :\