Warum verhält sich die Option -to manchmal anders?
366
Houseman
Zwei verschiedene Videos bereiten mir Probleme, wenn sie zu einem bestimmten Zeitpunkt mit Code beschnitten werden, da derselbe Code die Videos nicht auf dieselbe Weise abschneidet, wenn sie mit demselben ffmpegBefehl verarbeitet werden
Wenn ich mit dem ersten Video eine -tovon 10 spezifiziere, wird es bei einem Bild zuvor geschnitten.
Mit dem zweiten Video, wenn ich einen angeben -to10, wird es geschnitten auf diesem Rahmen.
Wenn man hier einen Kommentar liest, sagt eine Person, dass "Suchen nicht immer auf dts ausgeführt wird, es hängt tatsächlich vom Container ab. Wenn die Containerzeitstempel pts sind, ist das Suchen in pts; wenn Containerzeitstempel dts sind, ist das Suchen in dts."
Was kann ich tun, um vorher zu bestimmen, wie meine Schnitte funktionieren werden?
Im Idealfall möchte ich die Informationen in der Ausgabe eines ffprobeBefehls finden und meine Logik entsprechend anpassen
Mir ist bekannt, wie `-ss` mit Keyframes funktioniert, aber mein Problem ist der` -to`-Befehl. Wie würde es mir helfen, den PTS und den DTS jedes Pakets zu kennen, um zu bestimmen, wie sich der Befehl "to" verhält?
Houseman vor 6 Jahren
0
Die Option "-to" sucht auf ähnliche Weise nach dem Zeitstempel jedes Frames, wenn Sie entscheiden, wann die Codierung beendet werden soll. Sie müssen sich Ihre beiden Beispiele ansehen und sehen, warum der PTS- oder DTS-Zeitstempel ausgewählt ist.
slhck vor 6 Jahren
0
Tut mir leid, wenn ich unklar war, aber ich habe versucht zu fragen: Was bestimmt, ob das PTS oder DTS ausgewählt ist? Was soll ich suchen?
Houseman vor 6 Jahren
0
Ah, deine ursprüngliche Frage war, wie man das Video inspizieren kann. Ich dachte, du könntest dort ein Muster finden. Ich nehme an, es wird vom Paket-Demuxer abhängen, wobei es Dutzende (wenn nicht mehr) Möglichkeiten gibt, wie dieser Demuxer den Frame-Zeitstempel auswählt. Ich bin nicht der richtige Ansprechpartner. Ein FFmpeg-Entwickler, der die Interna kennt, könnte mehr wissen.
slhck vor 6 Jahren
0