1 votes

Erreur lors de l'exécution de ffmpeg sous linux

Je développe sur une machine Windows et j'utilisais avec succès le code suivant pour vérifier les vidéos :

ffmpeg -v error -i $file_path -f null - 2>&1

Après l'avoir déployé sur Linux, je reçois l'erreur ci-dessous pour laquelle je n'ai rien trouvé sur le puissant Google :

Numéro attendu pour v mais trouvé : erreur

Des mots de sagesse ???

1voto

Babak Points 33

Peut-être ce que vous voulez est le drapeau -err_detect?

-err_detect              .D.VA. définir les indicateurs de détection d'erreur
   crccheck                     .D.VA. vérifier les CRC intégrés
   bitstream                    .D.VA. détecter les déviations de spécification du flux binaire
   buffer                       .D.VA. détecter une longueur de flux binaire incorrecte
   explode                      .D.VA. interrompre le décodage en cas de détection d'erreur mineure    
   careful                      .D.VA. considérer des éléments violant la spécification et n'ayant pas été rencontrés dans la nature comme des erreurs
   compliant                    .D.VA. considérer toutes les non-conformités à la spécification comme des erreurs
   aggressive                   .D.VA. considérer des éléments que devrait éviter un encodeur sain comme une erreur

1voto

slhck Points 209720

Vous utilisez probablement une ancienne version de ffmpeg, très probablement quelque chose d'ancien qui était inclus avec CentOS. Selon votre kernel, vous pouvez télécharger une version statique, ou le compiler vous-même pour obtenir la dernière version.

Ensuite, l'option -v (ou -loglevel, qui est la même), accepte les paramètres suivants:

  • ‘quiet’ – Ne rien afficher du tout; rester silencieux.
  • ‘panic’ – Afficher uniquement des erreurs fatales qui pourraient entraîner un crash du processus, comme une erreur d'assertion. Actuellement non utilisé pour quoi que ce soit.
  • ‘fatal’ – Afficher uniquement les erreurs fatales. Ce sont des erreurs après lesquelles le processus ne peut absolument pas continuer.
  • ‘error’ – Afficher toutes les erreurs, y compris celles qui peuvent être récupérées.
  • ‘warning’ – Afficher tous les avertissements et erreurs. Tout message lié à des événements potentiellement incorrects ou inattendus sera affiché.
  • ‘info’ – Afficher des messages informatifs pendant le traitement. C'est en plus des avertissements et des erreurs. C'est la valeur par défaut.
  • ‘verbose’ – Pareil que info, mais plus verbeux.
  • ‘debug’ – Afficher tout, y compris les informations de débogage.

Cela accepte des nombres, mais ce sont des valeurs codées en dur dans le fichier log.h:

AV_LOG_QUIET    -8
AV_LOG_PANIC     0
AV_LOG_FATAL     8
AV_LOG_ERROR    16
AV_LOG_WARNING  24
AV_LOG_INFO     32
AV_LOG_VERBOSE  40
AV_LOG_DEBUG    48

Vous pouvez donc utiliser ces nombres si vous le souhaitez, mais il sera bien entendu plus facile d'utiliser les représentations en chaîne de caractères.

0voto

mael Points 1

-v prend un nombre pour le niveau de verbeux, donc vous auriez besoin d'écrire -v 0 pour seulement les erreurs (comme indiqué précédemment), ou -v 1 pour plus d'informations.

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