Wie kann ich feststellen, welche FFmpeg-Datei verwendet wird?
408
a_sid
Ich möchte den Code für den MJPEG-Decoder studieren. Ich versuche das, indem ich laufende Befehle für den Decoder benutze und dann versuche, die Datei zu identifizieren, die die Decodierungsaufgabe ausführt.
Ich habe den folgenden Befehl ausgeführt:
ffmpeg -r 10 -i heli.mjpg -vcodec copy newheli.avi
Es ergab folgende Ausgabe:
[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 372, current: 149; changing to 373. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 373, current: 150; changing to 374. This may result in incorrect timestamps in the output file. .... .... .... .... .... .... [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 536, current: 215; changing to 537. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 537, current: 215; changing to 538. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 538, current: 216; changing to 539. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 539, current: 216; changing to 540. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 540, current: 216; changing to 541. This may result in incorrect timestamps in the output file. frame= 542 fps=0.0 q=-1.0 Lsize= 2720kB time=00:00:54.20 bitrate= 411.1kbits/s video:2701kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.686601%
Der Anfangsteil der Ausgabe ist nicht sichtbar. Wie kann ich herausfinden, welche .c-Datei MJPEG-Decodierung durchführt? Wie kann ich es isolieren, Änderungen an der .c vornehmen und dann ausführen?
BEARBEITEN:
Im Idealfall möchte ich den Code für den MJPEG-Decoder in eine IDE wie Qt übertragen und dort den Code analysieren. Ich habe Schwierigkeiten zu verstehen, wie ich den MJPEG-Decoder dort betreiben kann.
Der direkteste Weg ist, ihn in einem Debugger auszuführen (zB `gdb`). Sie benötigen eine ausführbare Debug-Datei. abhängig von der Plattform, die das Installieren eines `-dbg`-Pakets oder das lokale Kompilieren von 'ffmpeg` umfasst.
quixotic vor 7 Jahren
0
@quixotic Danke für die Antwort. Was meinen Sie mit "ffmpeg" lokal übersetzen _? Ich kann `ffmpeg` ausführen und das liegt daran, dass ich es bereits kompiliert habe. Ich bin damit nicht sehr vertraut, entschuldigen Sie mich bitte, wenn meine Frage zu einfach ist.
a_sid vor 7 Jahren
0
Wenn Software aus vorgefertigten Binärdateien installiert wird, hat der Packager häufig Debugging-Symbole aus der ausführbaren Datei entfernt. Dies spart Platz, macht Debugger jedoch weniger übersichtlich. Möglicherweise müssen Sie `ffmpeg` erneut kompilieren, um sie zu erhalten. Verwenden Sie das Flag "--disable-stripping", wenn Sie das Skript "configure" erneut ausführen.
quixotic vor 7 Jahren
0
@quixotic Vielen Dank für Ihre Hilfe. Ich habe den Befehl ausgeführt. Wie kann ich damit den Code für den MJPEG-Decoder nach Qt übertragen und dann MJPEG-Dateien von dort decodieren?
a_sid vor 7 Jahren
0
0 Antworten auf die Frage
Verwandte Probleme
-
6
Wie kann ich eine defekte AVI-Datei reparieren?
-
5
Wie kann ich eine Powerpoint-Präsentation in eine Videodatei (AVI oder WMV) konvertieren?
-
10
Was ist die beste Software, um avi-Dateien zu teilen und zu verbinden?
-
2
Wie kann ich eine VRO-Datei in eine AVI-Datei kodieren?
-
1
Wie kann ich Probleme mit Interlaced-Video-Ruckeln / -Schnipsen bei der Wiedergabe auf DVD-Playern b...
-
6
So erhöhen Sie die Lautstärke für eine AVI-Datei
-
1
So zeigen Sie veoh.com-Videos mit HT03-A Android an
-
3
Brennen Sie eine Staffel AVI auf einen Nicht-DivX-DVD-Player
-
2
Wie finde ich den Codec für eine AVI?
-
1
Audio-Video-Synchronisierungsproblem in Windows 7 Media Center