将Java Swing应用程序直接呈现到视频的方法

将Java Swing应用程序直接呈现到视频的方法,java,video-encoding,Java,Video Encoding,我想写一个应用程序一个二维动画序列,然后渲染到一个视频。您使用什么方法和软件来实现这一点?看看。这应该对你有帮助。下面是一个简单的例子-您可以轻松地在此基础上进行构建 从单个帧创建视频流的“实时”示例: IMediaWriter writer = ToolFactory.makeWriter("C:/movie.mp4"); // We tell it we're going to add one video stream, with id 0, // at position 0, and th

我想写一个应用程序一个二维动画序列,然后渲染到一个视频。您使用什么方法和软件来实现这一点?

看看。这应该对你有帮助。下面是一个简单的例子-您可以轻松地在此基础上进行构建

从单个帧创建视频流的“实时”示例:

IMediaWriter writer = ToolFactory.makeWriter("C:/movie.mp4");
// We tell it we're going to add one video stream, with id 0,
// at position 0, and that it will have a fixed frame rate of
// FRAME_RATE.
writer.addVideoStream(0, 0, IRational.make(FRAME_RATE), width, height);
try {
    long startTime = System.nanoTime();
    while(true) {
        final BufferedImage screen = new BufferedImage(width, height, BufferedImage.TYPE_3BYTE_BGR);
        // Draw the frame
        // encode the image to stream #0
        writer.encodeVideo(0, screen, System.nanoTime() - startTime, TimeUnit.NANOSECONDS);
        Thread.sleep(1000/FRAME_RATE);
    }
} catch (RuntimeException x) {
    // Problem
} finally {
    writer.close();
}

看看Werner Randelhofer的,它是一个纯Java解决方案,用于创建简单的AVI电影。肯定没有像Xugle这样的本地方法那么快,但是非常容易设置和使用。Werner还有一个新的Monte媒体库,它似乎取代了AVIDemo,但我还没有使用它,所以我不能说它有多容易使用

更新日期2017年8月

为多种电影格式提供编码器,包括H.264/MP4。它可以获取一系列BuffereImage(例如,使用Java自动拍摄的屏幕截图)并将其转换为视频文件