Szukaj…


Pierwsze kroki

Możesz pobrać JCodec automatycznie za pomocą maven. W tym celu wystarczy dodać poniższy fragment kodu do pliku pom.xml.

<dependency>
    <groupId>org.jcodec</groupId>
    <artifactId>jcodec-javase</artifactId>
    <version>0.1.9</version>
</dependency>

Pobieranie klatki z filmu

Uzyskiwanie pojedynczej klatki z filmu (obsługuje tylko AVC, H.264 w MP4, ISO BMF, kontener Quicktime):

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

Pobieranie sekwencji klatek z filmu (obsługuje tylko AVC, H.264 w MP4, ISO BMF, kontener Quicktime):

double startSec = 51.632;
FileChannelWrapper ch = null;
try {
    ch = NIOUtils.readableFileChannel(new File("filename.mp4"));
    FrameGrab fg = new FrameGrab(ch);
    grab.seek(startSec);
    for (int i = 0; i < 100; i++) {
        ImageIO.write(grab.getFrame(), "png",
            new File(System.getProperty("user.home"), String.format("Desktop/frame_%08d.png", i)));
    }
} finally {
    NIOUtils.closeQuietly(ch);
}


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow