Durch die Neucodierung von H.264 in H.264 wurde es um 40 % größer

Ich habe einige Livestream-Aufnahmen (mit konstanter Bitrate codiert) und ich habe versucht, die Dateigröße für die Langzeitspeicherung zu reduzieren. Da die Codiergeschwindigkeit für mich keine Einschränkung mehr darstellt, dachte ich mir, dass ich dem Encoder mehr Zeit lassen und eine kleinere Datei erstellen könnte.

Das Originalmaterial wurde mit 12 Mbit/s codiert, aber als ich versuchte, es mit FFmpeg (libx264, CRF 18 und Preset veryslow) neu zu codieren, lag das Ergebnis bei 17 Mbit/s.

Meine Frage ist, wie kann die Verwendung dieser Einstellungen eine Datei so dramatisch größer als das Original machen? So wie ich es verstehe, besteht der Sinn der sehr langsamen Voreinstellung darin, viel Zeit in Anspruch zu nehmen und ein möglichst komprimiertes H.264-Video zu erstellen (wobei die Placebo-Voreinstellung ignoriert wird), aber in diesem Fall wäre ich viel besser dran, nichts zu tun! Ich würde verstehen, dass es etwas größer ist, weil es einige Komprimierungsartefakte codieren muss, aber keine 40%ige Erhöhung.

CRF 18 ist funktional verlustfrei. Sie hätten mit einer großen Datei rechnen müssen. Steigern Sie es auf 20 oder 22 oder sogar 24, bis Sie das gewünschte Qualitäts-/Größenverhältnis erhalten.
Ich weiß, dass es funktional verlustfrei ist; das war meine Absicht (obwohl ich versuchen werde, es zu verbessern und zu sehen, wie weit ich gehen muss). Ich fand es nur sehr seltsam, dass ich mit einer Vergrößerung um 40 % etwas funktional verlustfreies bekommen konnte, aber mit einer Vergrößerung um 0 % etwas vollkommen verlustfreies bekommen konnte.
Ich persönlich würde überhaupt nicht neu codieren. Ich würde das Original aufbewahren. Viel mehr Komprimierung wirst du ohne Qualitätsverlust nicht rausholen. Je stärker die Komprimierung ist, desto weniger können Sie in Zukunft mit der Datei arbeiten.

Antworten (1)

Sie verwenden einen qualitätsbasierten Komprimierungsfaktor mit variabler Bitrate für etwas, das bereits Artefakte enthält. Das bedeutet, dass versucht wird, das Video genau so zu erhalten, wie es ist, einschließlich Artefakte und Artefakte neigen dazu, nicht gut zu codieren. Dies bedeutet, dass Sie einen Videoeingang haben, der wahrscheinlich schwieriger zu codieren ist als das Original, und Sie eine qualitätsbasierte Komprimierung gewählt haben, die wahrscheinlich auch eine höhere Qualität hat, als Ihre ursprünglichen 12 Mbit / s bewältigen könnten. Dies bedeutet, dass eine insgesamt höhere Datenrate verwendet werden muss, um zu versuchen, zusätzliche Verluste durch die zweite Codierungsgeneration zu vermeiden, selbst mit den zusätzlichen Optimierungen, die ein langsamerer Komprimierungszyklus bewältigen kann, können Sie die zusätzliche Komplexität der ersten Codierung nicht überwinden und die verwendete Qualitätseinstellung.

Wenn dies irgendein HD-Stream war, ist das nicht wirklich überraschend, da 12 Mbit / s eine sehr stark komprimierte Endverbraucher-Komprimierungsstufe für alle HD-Formate ist. Es ist nicht wirklich eine große Überraschung, dass es nicht gut neu kodiert.