だから、私は Android 用のカスタム ビデオ プレーヤーを開発していますが、Android がサポートするビデオ ファイル以上のものを再生する必要があります。(mp4, 3gp...), like wmv, avi, flv.
現時点で、私はすでに任意のビデオ タイプを .mp4 に変換しており、再コーディング後にそれらを再生できますが、これらwmv
のavi
ファイルをmp4
ビデオ フォーマットに再コーディングせずに再生する方法がわかりません。
再コーディングせずに Android でビデオを再生する方法はありますか?
JavaCV
+FFmpeg
ライブラリは既に機能していますが、その方法がわかりません。
ちなみに、私がビデオを再コード化するために使用しているコードは次のとおりです。
public static void convert(File file) {
FFmpegFrameGrabber frameGrabber =
new FFmpegFrameGrabber(file.getAbsolutePath());
IplImage captured_frame = null;
FrameRecorder recorder = null;
recorder = new FFmpegFrameRecorder("/mnt/sdcard/external_sd/videosteste/primeiroteste.mp4", 300, 300);
recorder.setVideoCodec(13);
recorder.setFrameRate(30);
recorder.setFormat("mp4");
try {
recorder.start();
frameGrabber.start();
while (true) {
try {
captured_frame = frameGrabber.grab();
if (captured_frame == null) {
System.out.println("!!! Failed cvQueryFrame");
break;
}
recorder.record(captured_frame);
} catch (Exception e) {
}
}
recorder.stop();
recorder.release();
} catch (Exception e) {
e.printStackTrace();
}
}