простое декодирование видео на Java / Scala - PullRequest
3 голосов
/ 08 марта 2011

Есть ли простой способ декодировать видео в java / scala?

Мне нужны только кадры, и я должен сделать с ними некоторые вычисления. Не нужно быть быстрым или в режиме реального времени.

Я попробовал обработку, которая работала, но не очень хорошо, и я не смог встроить ее в свой проект. Я также видел jmf, но с 2004 года он уже не поддерживается.

Ответы [ 2 ]

2 голосов
/ 08 марта 2011

Взгляните на Xuggler или FMJ (который пытался определить, где остановился JMF, но выглядит полуживым).

0 голосов
/ 13 мая 2013

Вы можете использовать класс FrameGrab из JCodec (http://jcodec.org).
Сейчас он поддерживает формат файлов MP4 (ISO BMF, QuickTime) с видео AVC (H.264).
Только для одного кадра

int frameNumber = 150;
BufferedImage frame = FrameGrab.getFrame(new File("filename.mp4"), frameNumber);
ImageIO.write(frame, "png", new File("frame_150.png"));

JCodec доступен в Maven:

<dependency>
    <groupId>org.jcodec</groupId>
    <artifactId>jcodec</artifactId>
    <version>0.1.3</version>
</dependency>

или для скачивания на своем веб-сайте.

...