Domanda

Ho alcuni video che vorrei convertire in immagini di fotogrammi ogni 2 secondi.

es. Se il video è lungo 7 secondi a 15 fps mi piacerebbe ottenere fotogrammi 1, 31, 61, 91.

Il comando:

ffmpeg -i foo.mp4 -r 0.5  -f image2 -vcodec mjpeg foo%d.jpg

sembra fare quello che voglio, ma che incorniciano lo fa ottiene? 1, 31, 61, 91 o 30, 60, 90 o 13, 43, 73, 103?

È stato utile?

Soluzione

La prima immagine sarà dal primo fotogramma.

Si noti che è molto bene possibile ottenere un'immagine o più che ci si aspetta due. Credo che questo sia a causa dell'arrotondamento e / o che ffmpeg crea un immagini finali. Es .: è il video davvero 7S a lungo? O è 7.63s lungo?

Altri suggerimenti

ho finito per fare quanto segue in gran parte preso in prestito dal tutorial ffmpeg:

ffmpeg -v 3 -vsync 0 -sameq -i movie.mpr  -f image2 "images-%03d.jpeg"

Questo mi dà ogni fotogramma del filmato in formato JPEG numerati da 1 a alla fine del film. Ho poi filtrata questi file utilizzando un linguaggio di scripting, sapendo il frame rate è 30 fps, per afferrare ogni fotogramma 60 °.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top