2011-04-04 41 views

回答

1

我最近公佈我們使用了FFmpeg的一些代碼在Android:

https://github.com/churnlabs/android-ffmpeg-sample/blob/master/jni/native.c

,首先功能,fill_bitmap(),填充有AVFrame緩衝區的內容一個Android的位圖。

不是最有效的方法,但它是有效的代碼。 Android位圖是ARGB_8888,我只是將alpha設置爲零。看起來像sws_scale()上下文支持的格式的最佳匹配。

+0

我的Android SDK是2.1.So它不能包含android/bitmap.h,Coudle你告訴我如何讓緩衝區充滿圖像數據並且可以通過BitmapFactory解碼?非常感謝你!! – huppyuy 2011-04-06 03:36:09

+0

對不起,不知道那個答案,我總是在最近的SDK上。 – mikerowehl 2011-04-06 05:20:47

+0

謝謝任何​​方式! – huppyuy 2011-04-06 05:32:09

0

在Android上不支持yuv420p格式。你需要轉換爲android支持的格式之一。找到格式here。您可以使用FFMPEG的sws_scale函數將yuv420p的格式轉換爲所需格式之一。

或者,您也可以查看ffplay.c或ffmpeg tutorial以瞭解如何執行轉換。