J'ai un fichier vidéo et je veux obtenir le nombre d'images vidéo qui s'y trouvent. Je peux utiliser ffmpeg
pour obtenir la durée de la vidéo et les IPS. Cependant, je ne vois rien d'évident pour le nombre total d'images.
En théorie, on devrait pouvoir multiplier la durée (en secondes) par les IPS pour obtenir le nombre d'images, mais dans ce cas, la durée (34,43 secondes) et le taux d'images par seconde (29,97 ips) donnent un non-entier, ce qui me fait penser que je fais quelque chose de mal.
J'ai besoin de pouvoir faire cela en ligne de commande de manière totalement automatisée et non graphique. J'ai aussi besoin que cela soit assez précis, et non une estimation (si c'est même possible avec des fichiers vidéo)
J'ai essayé d'utiliser tcprobe
sur certains fichiers. Pour certains fichiers AVI cela fonctionne, mais pour certains fichiers VOB, la sortie de tcprobe n'indique pas le nombre d'images. Voici la sortie que j'obtiens:
[tcprobe] Flux de programme MPEG (PS)
[tcprobe] Résumé pour myfile.vob, (*) = non par défaut, 0 = non détecté
taille de l'image importée: -g 720x480 [720x576] (*)
ratio d'aspect: 4:3 (*)
taux d'images par seconde: -f 29.970 [25.000] frc=4 (*)
PTS=2199.3972, frame_time=33ms bitrate=7000 kbps
piste audio: -a 0 [0] -e 48000,16,5 [48000,16,2] -n 0x2000 [0x2000] (*)
PTS=2199.2763, bitrate=192 kbps
-D 3 --av_fine_ms 20 (images & ms) [0] [0]