2013-05-14 89 views
1

我有一些已经用android编码器编码的h264帧。现在我想创建并将它们逐个写入mp4文件。请告知如何在Java中的android上执行此操作。我不想使用OpenCV或本机代码。如何从android上的h264编码帧创建mp4文件?

MP4解析器不能做到这一点,因为我明白

成田MPEG4Writer过于复杂,使用

奇怪,为什么作为MP4写入这样一个共同的和非常有用的东西不是从相机没有在Android实

回答

1

您可以使用我的mp4parser项目。您可以在纯Java中将H264和AAC与其复合:

H264TrackImpl h264Track = new H264TrackImpl(new FileInputStream("raw.h264").getChannel()); 
    Movie m = new Movie(); 
    m.addTrack(h264Track); 

    IsoFile out = new DefaultMp4Builder().build(m); 
    FileOutputStream fos = new FileOutputStream(new File("h264_output.mp4")); 
    out.getBox(fos.getChannel()); 
    fos.close(); 
+0

这将产生一个mp4文件,该文件可能播放速度太快。参考这个SO项目:http://stackoverflow.com/questions/38738890/what-governs-playback-speed-when-encoding-with-androids-mediacodec-mp4parser – FuzzyAmi 2016-08-03 09:18:40