1 votes

Convertir un fichier avec une image clé manquante

Je n'arrive pas à convertir ce fichier vidéo car il se met toujours en erreur :

Image clé manquante lors de la réorganisation de l'index en fonction de la liste d'édition

Je ne peux même pas lire les détails avec :

ffmpeg -i missingKeyFrameProblem.mp4

Il s'agit de ce dossier : https://www.quadcam.ch/missingKeyFrameProblem.mp4

Avec le logiciel "Free MP4 Video Converter" sous Windows, je peux le convertir et le rendre utilisable, mais pourquoi ffmpeg ne peut-il pas le faire ?

EDIT : A titre de comparaison, voici un fichier de travail provenant de la même caméra : https://www.quadcam.ch/workingFile.mp4

3voto

MarianD Points 2626

Avec le logiciel "Free MP4 Video Converter" sous Windows, je peux le convertir et le rendre utilisable, mais pourquoi ffmpeg ne peut-il pas le faire ?

N'offensez pas notre logiciel favori FFmpeg :-)
Votre "Free MP4 Video Converter" utilise simplement FFmpeg sous le capot...

I can't even read the details with:

      ffmpeg -i missingKeyFrameProblem.mp4

Cela n'a rien à voir avec votre fichier d'entrée - la véritable erreur est la suivante

Au moins un fichier de sortie doit être spécifié.

Vous vouliez probablement ffprobe 代わりに ffmpeg :

ffprobe -i missingKeyFrameProblem.mp4

et cela fonctionne bien.


Cette simple commande

ffmpeg -i missingKeyFrameProblem.mp4 output.mp4

convertit votre vidéo. Mais

  • fichier d'entrée ( missingKeyFrameProblem.mp4 ) a une durée d'environ 58 s
  • fichier de sortie ( output.mp4 ) ne dure qu'environ 39 s

La raison en est la suivante l'image clé manquante au début de votre vidéo :

ffprobe -hide_banner -select_streams v -skip_frame nokey -\
  show_frames -show_entries frame=pkt_pts_time,pict_type missingKeyFrameProblem.mp4

Sortie :

....
....
  Duration: 00:00:58.45, start: 0.000000, bitrate: 1463 kb/s
    Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), none, 1280x960, 1459 kb/s, SAR 1:1 DAR 4:3, 32.99 fps, 36 tbr, 10k tbn, 20k tbc (
  default)
    Metadata:
      creation_time   : 2019-09-08T08:56:38.000000Z
      handler_name    : VideoHandler
[FRAME]
pkt_pts_time=19.417500
pict_type=I
[/FRAME]
[FRAME]
pkt_pts_time=21.417400
pict_type=I
[/FRAME]
....
....

Comme vous pouvez le constater, le première image clé (alias intra frame, I-frame) est à cca 19 secondes depuis le début de la vidéo. La conversion a donc commencé par cette image (en sautant les 19 premières secondes), ce qui explique le raccourcissement du fichier de sortie (58 s - 19 s = 38 s).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X