将位图加载到FFmpegFrameRecorder中

时间:2014-01-22 12:17:43

标签: android ffmpeg javacv

如何将位图加载到FFmpegFrameRecorder中?我的旧代码从SD卡加载它,现在我希望直接输入id。我用javacv。

FFmpegFrameRecorder recorder = new  FFmpegFrameRecorder(Environment.getExternalStorageDirectory().getPath()+ "/MyApp/Media/test-ffmep.mp4", w, h);
public void offerEncoder(Bitmap input) 
{
    recorder.record(opencv_highgui.cvLoadImage(input));
    //recorder.record(opencv_highgui.cvLoadImage("/sdcard/MyApp/Media/" + input + ".bmp")); //input was string
}

1 个答案:

答案 0 :(得分:1)

位图和IplImage都可以转换为bytearray。它们都支持bytearray相互转换。然后你可以使用Bitmap.copyPixelsFromBuffer或者copyPixelsToBuffer以及IplImage.getByteBuffer()。

要记住的是,Bitmap是4通道的,因此应该是IPL-Image。