Aufgrund von Kompatibilitätsfehlern zwischen dem Plex-Server und den Fernsehgeräten von Panasonic besteht die einzige Möglichkeit, die Funktion zu verbessern, darin, alles auf MKV zu remuxen und alle Streams (Video, Audio, Untertitel) direkt zu kopieren.
Scheint einfach genug:
avconv -i "input.avi" -c copy "output.mkv"
Außer:
avconv version 0.8.6-4:0.8.6-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
built on Apr 2 2013 17:00:59 with gcc 4.6.3
[mpeg4 @ 0x8422140] Invalid and inefficient vfw-avi packed B frames detected
Input #0, avi, from 'input.avi':
Metadata:
encoder : VirtualDubMod 1.5.4.1 (build 2117/release)
Duration: 00:27:38.52, start: 0.000000, bitrate: 1173 kb/s
Stream #0.0: Video: mpeg4 (Advanced Simple Profile), yuv420p, 640x352 [PAR 1:1 DAR 20:11], 25 tbr, 25 tbn, 25 tbc
Stream #0.1: Audio: mp3, 48000 Hz, stereo, s16, 132 kb/s
File 'output.mkv' already exists. Overwrite ? [y/N] y
Output #0, matroska, to 'output.mkv':
Metadata:
encoder : Lavf53.21.1
Stream #0.0: Video: mpeg4, yuv420p, 640x352 [PAR 1:1 DAR 20:11], q=2-31, 1k tbn, 25 tbc
Stream #0.1: Audio: libmp3lame, 48000 Hz, stereo, 132 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press ctrl-c to stop encoding
[matroska @ 0x8422cc0] Can't write packet with unknown timestamp
av_interleaved_write_frame(): Invalid argument
Mit den relevanten Gotcha-Zeilen:
[mpeg4 @ 0x8422140] Invalid and inefficient vfw-avi packed B frames detected#
<snip>
[matroska @ 0x8422cc0] Can't write packet with unknown timestamp
av_interleaved_write_frame(): Invalid argument
Ich kann keine Option zum Entpacken der B-Frames sehen (oder eine VBR-Zeitkarte erstellen? Benötigen wir diese in avconv?)
Gibt es eine Möglichkeit, dies zu tun, wie in Avidemux?
avconv -i xxx | buf | avconv -i stdin xxx
mkfifo
. Im Wesentlichen verwenden Sie eine Datei als temporären Speicher für Stout.Ab diesem Ticket # 1979 bei ffmpeg Bugtracker besteht die einfachste Lösung darin, diesen Fehler zu beheben oder manuell
-fflags +genpts
zur Befehlszeile hinzuzufügen .Dh ändern
zu
quelle
avconv
Version 0.8.16, bisCan't write packet with unknown timestamp
am Ende der Datei eine ungerade angezeigt wird . Seltsam.-fflags
es als Eingabeoption verwendet wird: Es muss vor Ihrem gehen-i input
. Aber wahrscheinlich hätte es überhaupt nicht funktioniert, wenn Sie nicht+genpts
an der richtigen Stelle platziert hätten.avconv
9.18-6: 9.18-0ubuntu0.14.04.1Dank Andreas Cadhalpun hat
ffmpeg
jetzt neuer Filter:mpeg4_unpack_bframes
(siehe Ref ). Auf diese Weise können Sie die Nachricht entfernen :Invalid and inefficient vfw-avi packed B frames detected
.Die Verwendung ist so einfach wie:
quelle