ffmpeg et l'erreur «impossible de trouver une sortie appropriée»

17

J'essaie de convertir un grand MKV en un fichier AVI old-school.

J'essaye ceci:

ffmpeg -i video.mkv -s -codec:v mpeg4 -bf 1 -b 2567k -mbd 2 -g 300 -flags cgop -acodec copy video.avi

mais je reçois

[NULL @ 0x7fa0d901e600] Unable to find a suitable output format for 'mpeg4' mpeg4: Invalid argument

Version longue du message de ffmpeg ...

ffmpeg version 2.1.3 Copyright (c) 2000-2013 the FFmpeg developers
  built on Feb  4 2014 17:53:32 with Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/2.1.3 --enable-shared     --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-     hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags=        --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
  libavutil      52. 48.101 / 52. 48.101
  libavcodec     55. 39.101 / 55. 39.101
  libavformat    55. 19.104 / 55. 19.104
  libavdevice    55.  5.100 / 55.  5.100
  libavfilter     3. 90.100 /  3. 90.100
  libavresample   1.  1.  0 /  1.  1.  0
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
  libpostproc    52.  3.100 / 52.  3.100
Input #0, matroska,webm, from ‘video.mkv':
  Metadata:
    creation_time   : 2011-05-11 09:25:47
  Duration: 00:49:01.35, start: 0.000000, bitrate: 2851 kb/s
    Stream #0:0(eng): Video: h264 (High), yuv420p(tv, bt709), 1280x720, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
    Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s (default) (forced)
    Stream #0:2(eng): Subtitle: subrip
[NULL @ 0x7fa0d901e600] Unable to find a suitable output format for 'mpeg4' 
mpeg4: Invalid argument

Une idée de ce qui se passe?

EDIT: J'avais l'intention d'utiliser ffmpeg après que DivX Converter - à la fois sur Mac et Windows - échouerait à divers moments en essayant de transcoder une vidéo en profil DivX Home Theater. Le plus proche que j'ai obtenu était la réponse de shlck. Il n'a émis que des avertissements (plutôt que des erreurs.) Dans tous les cas, je n'ai pas pu lire la vidéo sur le lecteur DVD (elle gèlerait toutes les 10 secondes pendant environ 6 secondes). Si vous avez trouvé cette question en essayant de rechercher la création d'une vidéo compatible avec le profil DivX Home Theater, vous pouvez éventuellement utiliser cette chaîne comme point de départ pour comprendre ce qui ne va pas et poster une nouvelle question de suivi à SU:

ffmpeg -i video.mkv -s 720x406 -codec:v mpeg4 -bf 1 -b:v 2567k -mbd 2 -g 300 -flags cgop -sc_threshold 1000000000 -acodec copy video.avi

(À la fin, j'ai donné l'ancien lecteur DVD).

iceequal
la source
-s sert à spécifier la taille de la sortie. Le format est -swxh, où w et h sont la largeur et la hauteur de la sortie.
Vineet Menon
Merci mais si vous lisez mon montage, ou la réponse et les commentaires de slhck que j'ai acceptés, vous verrez que c'est la première chose qui a été corrigée.
iceequal
Ouais! j'ai vu votre question modifiée un peu tard.
Vineet Menon

Réponses:

14

Vous avez là une -soption solitaire . Il manque son argument.

Vous devez spécifier la taille que vous voulez ou la laisser entièrement - sinon il ne sera pas interprété -codec:vcorrectement et supposera que mpeg4c'est votre nom de fichier de sortie.

De plus, utilisez -b:vau lieu de simplement -b- c'est ambigu.

ffmpeg -i video.mkv -s 1280x720 -codec:v mpeg4 -bf 1 -b:v 2567k -mbd 2 -g 300 -flags cgop -acodec copy video.avi
slhck
la source
Merci! J'ai mis -s 720x406 mais j'obtiens maintenant: [mpeg4 @ 0x7fc13a813800] Rapport d'aspect pixel non valide 406/405, la limite est 255/255 réduisant / [mpeg4 @ 0x7fc13a813800] le gop fermé avec détection de changement de scène n'est pas encore pris en charge, définissez le seuil à 1000000000 (...) / Erreur lors de l'ouverture de l'encodeur pour le flux de sortie # 0: 0 - peut-être des paramètres incorrects tels que bit_rate, taux, largeur ou hauteur / J'utilise la résolution suggérée par l'application DivX Converter pour le 'Home Theater' profil donné le même fichier d'entrée (le convertisseur DivX a ses propres bogues fatals). Une idée où aller d'ici avec ffmpeg?
iceequal
(J'ai également corrigé l'option -b)
iceequal
Retirez le -flags cgopsi vous n'en avez pas nécessairement besoin. Ou ajoutez -sc_threshold 1000000000en option.
slhck
-sc_threshold 1000000000a permis à ffmpeg de transcoder au moins le fichier. Pour toute personne essayant de créer une vidéo compatible avec le profil DivX Home Theater, reportez-vous à ma question modifiée ci-dessus (vous devrez faire plus de demandes / recherches).
iceequal