Making a video file out of images in Java?

2019-08-02 02:06发布

I make a robot that has an auto delay of 50 then do this.

for(int a=0;a<1000;a++;)
{
    Rectangle screenRect= new Rectangle(300,400);
    al.add(r.createScreenCapture(screenRect));
}
File outputfile = new File(output,"Test.mp4");
AWTSequenceEncoder enc = 
AWTSequenceEncoder.createSequenceEncoder(outputfile,20);
for (BufferedImage bi : al)
    enc.encodeImage(bi);
enc.finish();`

output is the path to my desktop. These are the errors I have gotten:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at org.jcodec.containers.mp4.muxer.MP4Muxer.addTrack(MP4Muxer.java:91)
    at org.jcodec.containers.mp4.muxer.MP4Muxer.addTrack(MP4Muxer.java:87)
    at org.jcodec.containers.mp4.muxer.MP4Muxer.addVideoTrack(MP4Muxer.java:196)
    at org.jcodec.api.transcode.SinkImpl.outputVideoPacket(SinkImpl.java:69)
    at org.jcodec.api.transcode.SinkImpl.outputVideoFrame(SinkImpl.java:223)
    at org.jcodec.api.SequenceEncoder.encodeNativeFrame(SequenceEncoder.java:101)
    at org.jcodec.api.awt.AWTSequenceEncoder.encodeImage(AWTSequenceEncoder.java:49)
    at Test.main(Test.java:47)
    Caused by: java.lang.RuntimeException: Uncompilable source code - cannot find symbol
        symbol:   class Nullable
        location: package javax.annotation
             at org.jcodec.common.Preconditions.<clinit>(Preconditions.java:17)
             ... 8 more

标签: java jcodec
1条回答
劫难
2楼-- · 2019-08-02 02:15
Uncompilable source code - cannot find symbol
        symbol:   class Nullable
        location: package javax.annotation

The compiler can't find javax.annotation.Nullable. You are using Jcodec, which depends on the Javax.annotation API, which you don't seem to have included. You can find it here.

However, you should consider building your project with Maven, which will take care of such dependencies for you. I wouldn't be surprised if there are further dependencies hidden.

查看更多
登录 后发表回答