Die Konvertierung eines .mov mit ffmpeg in unkomprimiertes .avi führt zu einem schwarzen Bildschirm in virtualdub

8335

Ich versuche, eine .mov mit ffmpeg in eine unkomprimierte .avi-Datei zu konvertieren. Da ich keinen Qualitätsverlust will, verwende ich den folgenden ffmpeg-Befehl:

ffmpeg -i toto.mov -vcodec copy -y toto.avi 

Die Konvertierung funktioniert einwandfrei (das Video funktioniert in VLC), nur dass ich beim Öffnen der Datei mit virtualdub einen schwarzen Bildschirm bekomme.

In VirtualDub bekomme ich unter Dateiinformationen folgendes:

Frame size: 800x600, 30.000fps Length: 802 frames Decompressor: Internal DIB decoder 

Wenn ich die Argumente -pix_fmt und -vcodec nicht spezifiziere, wird ffmpeg in mpeg-4 und yuv420p konvertiert, aber ich bin an Qualität verloren, da meine Datei auf etwa 400Mo auf 1Mo geschrumpft ist. Das Video funktioniert jedoch in virtualdub und diesmal ist der Decompressor eingestellt zum ffdshow Video Codec (FMP4). Ich bezweifle, dass dies eine ffdshow ist, da ich ein anderes Video hatte, das perfekt mit dem internen DIB-Decoder funktioniert.

Irgendeine Idee, um das Image in VirtualDub zu bekommen?

0

1 Antwort auf die Frage

0
Nick van Tilborg

Zunächst ändern Sie nur den Mediencontainer, nicht aber den Codec. Wahrscheinlich kann VirtualDub den Codec, der sich in Ihrem ursprünglichen toto.movContainer befindet, nicht decodieren . Sie können den Codec mit der -q:vEinstellung 1 auf MPEG-4 umcodieren. Dies führt zu einer ausreichend guten Qualität.

ffmpeg -i toto.mov -q:v 1 -vcodec mpeg4 -y toto.avi 
Das Originalvideo ist in rawvideo und pal8 für das Pixelformat ... Ich bekomme eine Warnung zu -qscale 1: Bitte verwenden Sie -q: a oder -q: v, -qscale ist mehrdeutig Ich wechsle zu -q: v 1 vor 11 Jahren 0
Entschuldigung, es ist -q: v tatsächlich in meiner Antwort geändert. Da Sie sagen, die Daten sind bereits Rohvideos, scheint VirtualDub die Rohdaten auf diese Weise nicht "decodieren" zu können. VLC macht das, da es fast jedes Video abspielen kann. Ich kann Ihnen möglicherweise nicht weiter helfen, das Rohvideo zu verwenden, da ich nie mit VirtualDub gearbeitet habe. Nick van Tilborg vor 11 Jahren 0
Gibt es eine Möglichkeit, Videoinformationen aus dem ursprünglichen mov zu extrahieren? vor 11 Jahren 0
Sie können [`ffprobe -i toto.mov`] (http://www.ffmpeg.org/ffprobe.html) verwenden, um Ihre Videodatei zu analysieren und alle Daten von der Befehlszeile zu extrahieren. Nick van Tilborg vor 11 Jahren 0
Sry, ohne `-i`, nur` ffprobe toto.mov` Nick van Tilborg vor 11 Jahren 0
Ok, ich muss alles kompilieren, da ffprobe für Linux gedacht ist (ich verwende Windows). Stattdessen werde ich Ihre frühere Lösung verwenden, da sie funktioniert und die Ergebnisse zufriedenstellend sind. Danke vor 11 Jahren 0
FFprobe ist auch standardmäßig in den [Zeranoe Windows Builds] (http://ffmpeg.zeranoe.com/builds/) enthalten, wenn Sie dies wünschen. Nick van Tilborg vor 11 Jahren 0
Zu viel für ein kleines Video zu installieren ... Aber trotzdem danke vor 11 Jahren 0