如何使用.mp4,webm,3gp格式从视频生成缩略图

时间:2016-03-09 11:08:43

标签: java hibernate

我想用.mp4,webm,3gp格式的视频生成缩略图。这是我的代码使用jcodec但我没有得到视频thumbnai我在framegrab.getnativeline上得到nullpointer异常。

1 个答案:

答案 0 :(得分:0)

使用最新版本的jcodec,下面这个简单的帮助方法按预期工作。

public void generate(File file) {
    try {
        double startSec = 51.632;
        int frameCount = 10;

        FrameGrab grab = FrameGrab.createFrameGrab(NIOUtils.readableChannel(file));
        grab.seekToSecondPrecise(startSec);

        for (int i = 0; i < frameCount; i++) {
            Picture picture = grab.getNativeFrame();
            System.out.println(picture.getWidth() + "x" + picture.getHeight() + " " + picture.getColor());

            BufferedImage bufferedImage = AWTUtil.toBufferedImage(picture);
            ImageIO.write(bufferedImage, "png", new File(file.getAbsolutePath() + "-frame" + i + ".png"));
        }
    } catch (Exception e) {
        log.error(e.getMessage());
    }
}