Ich möchte nur einen PGS-Stream eines Videos komprimieren

Ich möchte nur einen PGS-Stream eines Videos komprimieren

Ich habe ein Video als MKV mit PGS-Untertiteln gespeichert. Mir ist aufgefallen, dass ffmpeg -i "movie.mkv" -filter_complex [0:v][vid];[0:s:1][sub];[vid][sub]overlay[v] -map [v] -map 0:a:0 -c:v libx265 -c:a copy 'output.mp4'sich meine Dateigröße verdoppelt, wenn ich die Untertitel mit diesem Befehl hier einbrenne? Gibt es eine Möglichkeit, nur den PGS-Stream und nicht das Originalvideo zu komprimieren, sodass ich zwar immer noch die Untertitel einbrennen kann, die Dateigröße aber nicht die des Originalvideos verdoppelt? Soweit ich gelesen habe, kann man dem PGS-Overlay x265-Parameter hinzufügen, aber das hat bei mir keinen Erfolg gehabt.

Antwort1

Soweit ich weiß, gibt es mit ffmpeg keine Möglichkeit, eine Untertitelspur zu brennen, ohne den gesamten Videostream neu zu kodieren.

In Ihrer Befehlszeile geben Sie weder eine Zielbitrate noch einen Qualitätsfaktor an, sodass ffmpeg eigene Standardwerte anwendet und Sie keine Kontrolle über die Ausgabegröße haben. Sie sollten einen davon verwenden:

Zielvideobitrate: -b:v 2000k(in kb/s)

oder

Qualitätsfaktor: -crf 20(je niedriger der Wert -> desto höher die Qualität -> desto größer die Datei)

(Die andere Frage ist: Müssen Sie die Untertitel wirklich brennen?)

verwandte Informationen