2017-06-02 97 views
0

我试图使用Jcodec将一组图像转换为视频,看到正确运行的YouTube上的视频。我做了他们展示的一切。但代码无效。 PLZ,帮助。我将链接发布到视频,我的代码和错误。我试图将图像转换为使用jcodec的视频

视频链接: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(); 
    } 

} 

错误: 运行:

Exception in thread "main" java.lang.NoSuchMethodError: org.jcodec.api.SequenceEncoder.(Lorg/jcodec/common/io/SeekableByteChannel;)V at 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: Java returned: 1 BUILD FAILED (total time: 9 seconds)

+0

'java.lang.NoSuchMethodError'总是不可兼容jar文件的标志。核实。 – Jens

+0

我从jcodec.org下载了jar文件 –

回答

0

上面的代码工作。将图像编码成视频的适当方法。正如Jens在其中一个答案中所建议的,这是JAR文件不兼容的问题。所以我删除了添加的JAR文件并重复了视频中显示的步骤。有效。我唯一注意到的是图像需要具有相同的尺寸。所以我只是运行一个小功能来调整图像大小。它工作正常。

相关问题