使用下面的 JCodec 代码,我期待视频在 3 秒内显示 4 张图像,总共 12 秒。
但是,视频仅显示第 1、第 2、第 3 图像 3 秒,然后在 9 秒处停止,但视频的总持续时间为 12 秒。
谁能帮我?
SeekableByteChannel ch = NIOUtils.writableFileChannel(out);
MP4Muxer muxer = new MP4Muxer(ch, Brand.MP4);
FramesMP4MuxerTrack outTrack = muxer.addTrackForCompressed(TrackType.VIDEO, 1);
outTrack.addFrame(new MP4Packet(NIOUtils.fetchFrom(image1), 0, 1, 3, 0, true, null, 0, 0));
outTrack.addFrame(new MP4Packet(NIOUtils.fetchFrom(image2), 3, 1, 3, 1, true, null, 3, 0));
outTrack.addFrame(new MP4Packet(NIOUtils.fetchFrom(image3), 6, 1, 3, 2, true, null, 6, 0));
outTrack.addFrame(new MP4Packet(NIOUtils.fetchFrom(image4), 9, 1, 3, 3, true, null, 9, 0));
outTrack.addSampleEntry(MP4Muxer.videoSampleEntry("png ", new Size(800, 600), "JCodec"));
muxer.writeHeader();
NIOUtils.closeQuietly(ch);