我试着用Jcodec把一组图像转换成视频,在youtube上看到一个运行正常的视频。他们展示的一切我都做了。但密码不起作用。请救救我。我张贴到视频的链接,我的代码,和错误。
视频链接:https://www.youtube.com/watch?v=NYhnqE3E4CI
java代码:
package imagetovideoencoder;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.jcodec.api.awt.AWTSequenceEncoder;
import org.jcodec.api.SequenceEncoder;
import org.jcodec.common.io.NIOUtils;
import org.jcodec.common.io.SeekableByteChannel;
import org.jcodec.scale.AWTUtil;
import org.jcodec.common.*;
/**
*
* @author dell
*/
public class ImagetoVideoEncoder {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
AWTSequenceEncoder enc = AWTSequenceEncoder.createSequenceEncoder(new File("C:\\Users\\dell\\Desktop\\Downloads from seenium\\test.mp4"));
enc.getEncoder().setKeyInterval(25);
int framestoEncode = 100;
for(int i=1;i<=framestoEncode/2;++i)
{
BufferedImage image = ImageIO.read(new File("C:/Users/dell/Desktop/Downloads from seenium/0f1f4905877e9a5e92b069c966059cce.jpg"));
enc.encodeImage(image);
}
for(int i=1;i<=framestoEncode/2;++i)
{
BufferedImage image = ImageIO.read(new File("C:/Users/dell/Desktop/Downloads from seenium/54cae4238a5cf_-_american-muscle-facts-05-0312-xln.jpg"));
enc.encodeImage(image);
}
enc.finish();
}
}错误:运行:
线程"main“java.lang.NoSuchMethodError: java.lang.NoSuchMethodError中的异常在org.jcodec.api.awt.AWTSequenceEncoder.(AWTSequenceEncoder.java:27) at org.jcodec.api.awt.AWTSequenceEncoder.createSequenceEncoder(AWTSequenceEncoder.java:23) at imagetovideoencoder.ImagetoVideoEncoder.main(ImagetoVideoEncoder.java:30) C:\Users\dell\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53:返回:1构建失败(总时间:9秒)
发布于 2017-06-05 08:58:17
以上代码起作用了。一种将图像编码成视频的适当方法。这是Jens在其中一个答案中建议的不兼容JAR文件的问题。因此,我删除了添加的JAR文件,并重复了视频中显示的步骤。啊,真灵。我唯一注意到的是图像必须是相同大小的。所以我只运行了一个小函数来调整图像的大小。效果很好。
https://stackoverflow.com/questions/44327513
复制相似问题