PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Verhältnis Bitrate zu Bildrate


DanMan
2011-08-14, 14:23:11
Wie ist das eigentlich? Wenn ich ein Video mit doppelter Bildrate ggü. einem Referenzvideo encode, brauche ich dann die doppelte oder halbe Bitrate um visuell die gleiche Qualität zu erreichen?

Der erste Impuls sagt mir doppelte Rate, weil ja doppelt so viele Bilder. Andererseits wird jedes Bild aber auch nur halb so lange angezeigt.

Trap
2011-08-14, 14:57:04
Die Anzeigedauer ist egal, aber Videocodecs nutzen Ähnlichkeit zwischen aufeinanderfolgenden Bildern. Bei verdoppelten Bildern oder berechneten Zwischenbildern erhöht sich deshalb die Bitrate nur ein wenig. Bei völlig unterschiedlichen Bildern sollte man keinen Videocodec benutzen, aber die Bitrate dürfte sich ungefähr verdoppeln, wenn man es doch macht.

DanMan
2011-08-14, 15:22:53
Die Anzeigedauer ist egal, aber Videocodecs nutzen Ähnlichkeit zwischen aufeinanderfolgenden Bildern. Bei verdoppelten Bildern oder berechneten Zwischenbildern erhöht sich deshalb die Bitrate nur ein wenig.
Du meinst höhere Bildrate bedeutet auch mehr I-, B-Frames usw.? Aber was kann man dabei über die Bildquali sagen? Oder war mit "nur ein wenig" das gemeint?

Anders gefragt: ergibt eine Erhöhung der Bildrate auch eine Erhöhung der Bitrate und damit der Qualität?
Bei völlig unterschiedlichen Bildern sollte man keinen Videocodec benutzen, aber die Bitrate dürfte sich ungefähr verdoppeln, wenn man es doch macht.
Das verstehe ich nicht. Video ohne Codec?

Geldmann3
2011-08-14, 15:24:17
Probier es doch mal aus. Du wirst bemerken, dass du für ein Video mit dem selben Inhalt und der doppelten Framerate nur marginal mehr Datenrate benötigst um auf die selbe optische Qualität zu kommen. Das liegt wie mein Vorrendner schon sagte daran, dass moderne Codecs meist nur die Veränderungen im Bild speichern. Das machen sie zurzeit bereits sehr gut. Daher würde ich schätzen, dass du bei einem Sprung von 15 auf 30FPS nur ca. 30% mehr Bitrate oder sogar nur 20% benötigst.

Hängt natürlich immer mit dem verwendeten Codec und Settings zusammen.
Bei völlig unterschiedlichen Bildern sollte man keinen Videocodec benutzen, aber die Bitrate dürfte sich ungefähr verdoppeln, wenn man es doch macht.
Ich schätze er meint damit unkomprimierte AVI's.

DanMan
2011-08-14, 15:26:36
Probier es doch mal aus. Du wirst bemerken, dass du für ein Video mit dem selben Inhalt und der doppelten Framerate nur marginal mehr Datenrate benötigst um auf die selbe optische Qualität zu kommen. Das liegt wie mein Vorrendner schon sagte daran, dass moderne Codecs meist nur die Veränderungen im Bild speichern. Das machen sie zurzeit bereits sehr gut. Daher würde ich schätzen, dass du bei einem Sprung von 15 auf 30FPS nur ca. 30% mehr Bitrate oder sogar nur 20% benötigst.
Ok, das heißt also ich brauche definitiv dann auch mehr Bitrate, nur nicht doppelt so viel, weil da die Codecs noch eine Rolle spielen. Verstehe.

Im Umkehrschluss bedeutet das dann also, dass, wenn man nur die Bildrate erhöht und ansonsten alles gleich lässt, dass dann die Bildquali sinkt, richtig? Weil nicht mehr Bit zur Verfügung stehen, um die zusätzlichen Bilder zu komprimieren.

Schade, dass es da kein psycho-optisches Phänomen gibt, dass bei erhöhter Bildrate die Quali einzelnen Bilder weniger ins Gewicht fallen.

Geldmann3
2011-08-14, 15:28:17
Ok, das heißt also ich brauche definitiv dann auch mehr Bitrate, nur nicht doppelt so viel, weil da die Codecs noch eine Rolle spielen. Verstehe.
Praktisch ja, definitiv.

Im Umkehrschluss bedeutet das dann also, dass, wenn man nur die Bildrate erhöht und ansonsten alles gleich lässt, dass dann die Bildquali sinkt, richtig?
Manche empfinden auch eine flüssige Wiedergabe als "bessere Bildqualität". :wink:
Ich habe "Praktisch" geschrieben, weil es nicht auf jede Szene zutreffen muss. Eine höhere Framerate kann dem Codec behilflich sein Bewegungen zu tracken und so effizienter zu komprimieren. Unter Umständen kann so an Stellen effektiv komprimiert werden, an denen vorher sogar ein neuer I-Frame gesetzt werden musste. Da spielen unendlich viele Faktoren eine Rolle.
Praktisch passiert das aber nahezu nie.

Trap
2011-08-14, 15:34:40
Du meinst höhere Bildrate bedeutet auch mehr I-, B-Frames usw.? Aber was kann man dabei über die Bildquali sagen? Oder war mit "nur ein wenig" das gemeint?
Bei gleicher Bildqualität und zusammenhängenden Bildern braucht man für höhere Bildrate nur etwas mehr Bitrate. Hatte mal einen Seite gesehen, die das im Detail untersucht hat, verdoppelte Bildrate von 25 auf 50 fps braucht im Durchschnitt bei Material wie Kinofilmen etwa 15-30% mehr Bitrate.
Das verstehe ich nicht. Video ohne Codec?
GIF, MNG, MJ2, usw.

Eben Formate, die auf Einzelbild-Kompression optimiert sind und nicht annehmen, dass aufeinanderfolgende Bilder irgendwas miteinander zu tun haben.

DanMan
2011-08-14, 16:04:05
Danke für die Erklärungen.

P.S.: Gerade gefunden: http://frames-per-second.appspot.com/

Necu
2011-08-15, 00:19:02
Schau mal hier: http://encodingwissen.de/ - Sehr zu empfehlen, gerade wenn man mit der ganzen Videobearbeitungsschose loslegt.

Aber nicht übertreiben, sonst raucht die Birne. ;)

Gast
2011-08-15, 20:11:05
Schade, dass es da kein psycho-optisches Phänomen gibt, dass bei erhöhter Bildrate die Quali einzelnen Bilder weniger ins Gewicht fallen.

In der Regel hast du eh keine Wahl, wenn ein Video mit 30fps aufgenommen wurde, dann wurde es mit 30fps aufgenommen. Nur weil du das Video mit 60fps abspeicherst enthält es trotzdem nicht mehr Informationen. Du müsstest das Video schon neu mit 60fps aufnehmen um wirkliche Mehrinformationen zu haben.

Wenn du ein 30fps-Video mit 60fps speicherst, wird einfach jedes Frame 2x gespeichert, das braucht praktisch überhaupt keine erhöhte Bitrate. Du wirst vermutlich keinen Unterschied merken wenn du das selbe Video 1x mit 30 und 1x mit 60 fps, jeweils mit der selben Bitrate encodierst.

Eine weitere Möglichkeit wäre natürlich Zwischenbilder zu berechnen. Nachdem das den Bildinhalt verändert kann sich natürlich auch die benötigte Bitrate verändern. Wie hängt davon ab, wie die Zwischenbilder berechnet werden. Ein Filter der Priorität auf flüssige Wiedergabe legt, wird eher unscharfe Einzelbilder erzeugen, die für sich nur sehr wenig Speicher belegen, ein Filter der Wert auf hohe Schärfe legt benötigt dagegen eine höhere Bitrate.

DanMan
2011-08-15, 20:44:56
Es ist mir natürlich klar, dass ohne neues Encoding mit tatsächlich höherer Bildrate es wohl keinen Unterschied geben wird. Allerdings hab ich was gefunden, mit dem man Zwischenbilder berechnen lassen kann, wenn man kein entsprechendes Ausgangsmaterial hat: http://compression.ru/video/frame_rate_conversion/index_en_frcn.html

Necu
2011-08-16, 01:27:23
Über was sprechen wir hier, progressives Material? Angenommen du hast dir aus dem Netz ein Video mit 15 Bilder pro Sekunde heruntergeladen. Die abgehackten Bewegungen lassen sich mit künstlich generierten Zwischenbildern glätten. Je nach Algorithmus und Zielbildrate mal mehr mal weniger gut.

Geht es hingegen um Interlace-Material, so kannst du die die einzelnen Fields (Halbbilder) vom Vollbild "separieren", hochskalieren (interpolieren), zeitlich korrekt anordnen. Ergebnis ist eine Verdopplung der Bildrate, was eine deutlich gesteigerte Füssigkeit zur Folge hat (Bsp. 25>50bps).

In beiden Fällen gibt es Lösungen in Form von (A) eigenständige Programme bzw. (B) PlugIns für bestehende Videobearbeitungssoftware.

DanMan
2011-08-16, 18:17:41
In beiden Fällen gibt es Lösungen in Form von (A) eigenständige Programme bzw. (B) PlugIns für bestehende Videobearbeitungssoftware.
Da würden mich ein paar Namen interessieren, falls du welche parat hast.

Necu
2011-08-16, 23:30:28
Da du nicht erwähnst was für Videos du bearbeiten möchtest, hier ein universeller Tipp:

"Halbbildumwandlung" und mehr:
VirtualDub (http://www.virtualdub.org/) - Für alles was in ein .avi-Container gepresst werden soll. Wird seit vielen Jahren gehegt und gepflegt. Eine wahre Freewareperle in dem Bereich.
Avisynth (http://avisynth.org/mediawiki/Main_Page) - Umfangreicher, dafür aber auch weniger intuitiv. Auch hier: Seit Jahren erprobt und sehr leistungsstark.

Bei beiden wirst du um eine gewisse Einarbeitungszeit bzw. ein Einlesen nicht umherkommen.


Wenn es dir um "neuberechnen" von Bildern geht.... damit habe ich mich schon länger nicht befasst. Grund: Eher maue Ergebnisse. Es gab meine ich ein Programm mit Namen Motion[irgendwas], das machte das. Der genaue Name fällt mir nicht mehr ein. Vielleicht finde ich was in alten Backups; das aber dann zum Wochenende... sofern ich daran denke. ;)

DanMan
2011-08-17, 17:47:58
Nene, ich mein Programme fürs Zwischenbild berechnen. Die anderen kenne ich natürlich - das was ich zuletzt verlinkt habe ist ja ein AviSynth Plugin.

Gast
2011-08-18, 10:22:11
Eben Formate, die auf Einzelbild-Kompression optimiert sind und nicht annehmen, dass aufeinanderfolgende Bilder irgendwas miteinander zu tun haben.

Nur als Anmerkung: Das geht mit jedem CODEC, indem man einfach ausschliesslich I-Frames verwendet.

Necu
2011-08-20, 06:32:48
So... das müsste das Programm gewesen sein MotionPerfect (http://www.goodervideo.com/products/MP.html).

Je nachdem wieviel du bearbeiten möchtest bleiben noch die üblichen Verdächtigen (Adobe Premiere Pro, Sony Vegas Pro, etc.). Ein PlugIn für diese Programme, welches gute Ergebnisse liefern soll http://www.revisionfx.com/products/twixtor/.

Viel Vergnügen.

DanMan
2011-08-20, 12:06:53
So... das müsste das Programm gewesen sein MotionPerfect (http://www.goodervideo.com/products/MP.html).

Je nachdem wieviel du bearbeiten möchtest bleiben noch die üblichen Verdächtigen (Adobe Premiere Pro, Sony Vegas Pro, etc.). Ein PlugIn für diese Programme, welches gute Ergebnisse liefern soll http://www.revisionfx.com/products/twixtor/.

Viel Vergnügen.
Danke. Das AviSynth-Script sieht mir da aber interessanter (weil billiger :D ) aus.

aufkrawall
2011-08-20, 12:45:42
*edit*
weg damit

Gast
2011-08-23, 18:04:31
Geht es hingegen um Interlace-Material, so kannst du die die einzelnen Fields (Halbbilder) vom Vollbild "separieren", hochskalieren (interpolieren), zeitlich korrekt anordnen. Ergebnis ist eine Verdopplung der Bildrate, was eine deutlich gesteigerte Füssigkeit zur Folge hat (Bsp. 25>50bps).


Das ist eine ganz schlechte Idee. Aus fast jedem Deinterlacer kommen am Ende schon 50 bzw. 60fps raus (bei 50i bzw. 60i-Material). Das passiert normalerweise in Echtzeit während der Wiedergabe.

Einfach jedes Field hochskalieren und in der richtigen Geschwindigkeit abzuspielen ist qualitativ sehr schlecht, dabei würde das Bild ständig in der vertikalen Achse flackern. Man könnte natürlich auch "offline" deinterlacen, ob der Qualitätsgewinn eines potentiell besseren Deinterlacing-Algorithmus den Verlust durch eine erneute verlustbehaftete Komprimierung ausgleicht ist allerdings eher unwahrscheinlich.

Necu
2011-08-24, 16:55:18
Das ist eine ganz schlechte Idee. Aus fast jedem Deinterlacer kommen am Ende schon 50 bzw. 60fps raus (bei 50i bzw. 60i-Material). Das passiert normalerweise in Echtzeit während der Wiedergabe.Von welchen Deinterlacern sprichst du? Solche die in Abspielsoftware integriert sind? Wenn du Interlace-Material archivieren und nur ab und an reinschauen möchtest mag das sinnvoll sein. Möchtest du hingegen auf proggressiv trimmen macht dieses "On the fly" aus meiner Sicht wenig Sinn. Auch sind mir keine Deinterlacer bekannt die so etwas standardmäßig machen. Die Regel sind hier andere Methoden.

Einfach jedes Field hochskalieren und in der richtigen Geschwindigkeit abzuspielen ist qualitativ sehr schlecht, dabei würde das Bild ständig in der vertikalen Achse flackern. Man könnte natürlich auch "offline" deinterlacen, ob der Qualitätsgewinn eines potentiell besseren Deinterlacing-Algorithmus den Verlust durch eine erneute verlustbehaftete Komprimierung ausgleicht ist allerdings eher unwahrscheinlich.Auch hier muss ich dir widersprechen. Das zweite Halbbild wird um eine Zeile versetzt angeordnet. Da ruckelt dann gar nichts.

HeldImZelt
2011-08-26, 01:48:55
Dafür gibt's adaptive Deinterlacer in Echtzeit, z.B. Yadif in FFDShow. Da wird nur gebobbt, wo es nötig ist. Da an den Stellen Informationen fehlen, können die Artefakte nur begünstigt werden (Shifting, Interpolation).

Gast
2011-08-28, 20:43:16
Von welchen Deinterlacern sprichst du? Solche die in Abspielsoftware integriert sind?

Pixel-Adaptive-Deinterlacer mit Motion-compensation. Jede halbwegs moderne Grafikkarte kann das. Es gibt auch Software-Postprozessoren mit entsprechenden filtern, wie beispielsweise ffdshow.

Das was du vorschlägst ist einfachstes Blending, das ist qualitativ nicht besonders gut (relativ unscharf) und benötigt auch nur einen sehr geringen Rechenaufwand.


Wenn du Interlace-Material archivieren und nur ab und an reinschauen möchtest mag das sinnvoll sein. Möchtest du hingegen auf proggressiv trimmen macht dieses "On the fly" aus meiner Sicht wenig Sinn.

Wenn man nur archivieren will, sollte man so wenig wie möglich vom Ausgangsmaterial verändern. Wenn man beispielsweise zur Platzersparnis auf jeden Fall neu encodieren will kann man natürlich das Deinterlacing auch gleich erledigen, aber dann bitte mit einem besseren Algorithmus als einfaches Bobbing oder Blending.

PatkIllA
2011-08-28, 20:51:41
Deinterlacing sollte das Endgerät machen.
Wenn man aus 1080i mit 50 Hz 1080p mit 25 Hz macht dann verliert man eine Menge Information. Ein guter Deinterlacer macht daraus 1080p mit 50 Hz bevor es an die nächste Stufe geht und das zu speichern würde nur unnötig Platz kosten.

Necu
2011-08-29, 15:05:01
Wir reden aneinander vorbei.

Einigen wir uns darauf: Es gibt zig Herangehensweisen, so etwas wie "die beste Methode" gibt es nicht. Je nach Vorlieben bevorzugt man das Eine oder Andere; und auch hier kommt es auf die Situation an.