我对视频编码还比较陌生,我正在尝试使用jcodec从png图像列表(如bufferedimage)生成mp4格式的视频。我跟着警察走http://jscodec.org/index.html.
因此,我在我的项目的build.gradle文件中添加了以下行:
compile 'org.jcodec:jcodec:0.2.3'
compile group: 'org.jcodec', name: 'jcodec', version: '0.2.3'
compile group: 'org.jcodec', name: 'jcodec-javase', version: '0.2.3'
我试着用我的代码:
AWTSequenceEncoder encoder = new AWTSequenceEncoder(outputFile, Rational.R(1, 1));
但是awtsequenceencoder类的构造函数只接受format.mov,因此即使生成的文件具有扩展名“.mp4”,实际的格式仍然是quicktime而不是mpeg电影。
awtsequenceencoder类的构造函数:
public AWTSequenceEncoder(SeekableByteChannel out, Rational fps) throws IOException {
super(out, fps, Format.MOV, Codec.H264, null);
}
同样,我尝试了sequenceencoder:
SequenceEncoder encoder = new SequenceEncoder(out, Rational.R(1, 1), Format.MOV, Codec.H264, null);
如果只接受format.mov,则format.avi或format.h264等任何其他内容都将引发类似“不支持输出格式avi”或“不支持输出格式h264”的异常。
那么,有人能帮助我如何使用jcodec生成一个实际的mpeg电影(mp4)吗?
暂无答案!
目前还没有任何答案,快来回答吧!