2015-11-12 64 views
0

由於某種原因,我想在Android中將圖像幀編碼爲h264。爲了獲得更好的性能,我使用ffmpeg和android ndk來編碼圖像。我很奇怪,很容易將h264幀解碼爲圖像,而將圖像編碼爲h264幀非常困難。當我嘗試使用av​​codec_encode_video2函數時,eclipse總是顯示一條消息 在「啓動MyApp」期間發生內部錯誤。 java.lang.NullPointerException 這讓我瘋狂。 我也很生氣,android ndk不顯示任何有用的消息告訴我發生了什麼。誰能幫我?如何在android中將圖像編碼爲h264?

回答

0

h264編碼器不是ffmpeg的組成部分。通常我們使用開源的x264編碼器,但這會產生重大的法律後果。 x264是GPL,而通常ffmpeg的版本是LGPL。您可以使用x264構建ffmpeg,或者使用x264獨立版。

+0

感謝您的幫助。但我是一個新人,你能教我如何用x264構建ffmpeg嗎?我使用互聯網上的.so文件。 –

+1

也許你更喜歡避免所有這些麻煩,並使用屬於Android的Java API?根據[table](http://developer.android.com/guide/appendix/media-formats.html#core),自Android 3.0以來,MediaCodec支持h264編碼器。 –

+0

它可能工作,但我已經用ffmpeg完成了Windows中的代碼,現在我想在android中使用代碼。更重要的是,我使用x264編譯了一個ffmpeg,遵循互聯網的步驟,但沒有奏效。我已經設置了enable-encoder = x264。 –

相關問題