Auflösung vs. Effizienz

Moin!

Ich bin gerade dabei, die Urlaubsvideos eines Freundes zu(sammen)zuschneiden (MPEG-2, 720x540px). Danach sollen sie komprimiert werden (Xvid, weil sein DVD-Player H.264 nicht lesen kann). Alle seine Videos passen bei einer Bitrate von 1400kbps (oder entsprechend vorgegebenen Dateigrößen) auf eine DVD.

Der bei ihm vorhandene DVD-Decrypter bietet nun verschiedene Auflösungen an, z. B. 720x540 bei 0,14bits/px oder 576x432 bei 0,225bits/px. Irgendo im Netz habe ich aufgeschnappt, daß die „Effizienz“ bei mindestens 0,2bits/px liegen sollte.

Ich habe die beiden obigen Einstellungen probiert (2-pass) und erkenne weder am PC noch an seinem DVD-Player (am Röhren-TV) große Unterschiede - die geringere Auflösung scheint zu einem Bild zu führen, daß einen Hauch weicher gezeichnet ist, wobei ich mehrfach schauen mußte und mir dessen auch nicht wirklich sicher bin.

Im Netz habe ich bislang keine Begründung finden können, warum die „Effizienz“ (was ist das eigentlich?) mindestens 0,2bits/px betragen sollte.

Ein Punkt für die geringere Auflösung: Die Konvertierung geht schneller, was ich nicht gedacht hätte, da ja hier im Gegensatz zu höheren Auflösung die Größe umgerechnet werden muß.

Der langen Rede kurzer Sinn: Ich möchte bei vorgegebener Dateigröße und vorgegebenem Codec das beste Ergebnis abliefern. Welche Einstellung wäre also zu bevorzugen?

Besten Dank vorab!

Munter bleiben… TRICHTEX

  1. XVid mit 2Pass und 1400kbps ist schon recht brauchbar für PAL
  2. XVid liefert geringfügig weniger schärfe als x264, hat dafür aber auch keine sichtbaren Fehler in dunklen Bereichen und stehenden Texturen. Daher ist XVid derzeit mein Favorit, sogar für 1920x800! Dazu ist er auch noch schneller als x264 und lässt sich nachträglich leichter schneiden, ergibt also im MP4 Container mit AAC Mehrkanal die perfekte Lösung um auch HD Material unterzubringen.
  3. mit steigender Auflösung benötigen XVid wie auch x264 weniger Bitrate pro Pixel. ich denke es liegt daran das man nicht nur die die Pixel sondern den Inhalt betrachten sollte. Ob ein Ball durch DVD Auflösung fliegt… oder durch eine BlueRay! Its the same! Nur mit mehr Pixel, aber die Bewegungsvektoren bleiben.

Fazit: 1400kbps im 2Pass sollten für beide Auflösungen ausreichend sein. Wobei ich letztens mal die Grenzen gesehen habe… ein schnell schwimmender Fischschwarm der von Tuns, Delfis und was weiß ich noch zerlegt wurde. Da konnte man auf dem HD Beamer schon recht deutlich sehen das man auch mal 2500kbps XVid für PAL benötigt. Bei einem normalen Film eigentlich nie.

Tipp: Für 1920x800(1024) und 24FPS gibt es ab 4500-6000 kbps sehr gute XVid Videos. Da sieht man das man bei steigender Pixelzahl weniger kbps benötigt.

Aber worauf du noch achten solltest: Welches Codierungsprofil akzeptiert der Player! Ein Simpel oder ein Advanced Profile? In welcher Stufe…?

Noch ein Tipp: Bei Mehrkern-CPU`s den XVid manuell die Kernanzahl vorgeben! Die automatische Erkennung plätschert auf meinem Core2Duo mit ca. 70% dahin… wenn ich die Kerne vorgebe mit ca. 95%.

Moin!

  1. mit steigender Auflösung benötigen XVid wie auch x264
    weniger Bitrate pro Pixel. ich denke es liegt daran das man
    nicht nur die die Pixel sondern den Inhalt betrachten sollte.
    Ob ein Ball durch DVD Auflösung fliegt… oder durch eine
    BlueRay! Its the same! Nur mit mehr Pixel, aber die
    Bewegungsvektoren bleiben.

Es besteht also keine lineare Beziehung zwischen Auflösung und Bitrate, wenn die Qualität gleich bleiben soll. Der Teil des Speicherbedarfes, der für die Bewegungsvektoren benötigt wird, ist bei allen Auflösungen in etwa derselbe, der Teil hingegen, der für den Bildinhalt gebraucht wird, müßte mit höherer Auflösung steigen.

Dann müßte das höher aufgelöste Bild bei gleicher Bitrate eigentlich etwas schlechter sein - absolut betrachtet, also für Bildausschnitte gleicher Pixelgröße. Natürlich ist ein - sagen wir mal - 100x100-Pixel-Ausschnitt eines 576x432-Bildes etwa 1/25 des Gesamtbildes, während er bei einem 720x540-Bild etwa 1/39 ausmacht. Relativ betrachtet wäre die Qualität beider Auflösungen gleich, berücksichtigt man zudem, daß die Bewegungsvektoren denselben Speicheplatz benötigen, müßte die hohe Auflösung sogar besser sein - relativ eben.

Nun ist allerdings die Frage, was man davon wirklich sieht. Sind evtl. Artefakte an bewegten Kanten bei der höheren Auflösung störender, als das etwas weicher gezeichnete Bild (muß ja interpoliert werden) der geringeren?

Fazit: 1400kbps im 2Pass sollten für beide Auflösungen
ausreichend sein. Wobei ich letztens mal die Grenzen gesehen
habe… ein schnell schwimmender Fischschwarm der von Tuns,
Delfis und was weiß ich noch zerlegt wurde. Da konnte man auf
dem HD Beamer schon recht deutlich sehen das man auch mal
2500kbps XVid für PAL benötigt.

Ob da womöglich eine geringere Auflösung besser gewesen wäre?

Tipp: Für 1920x800(1024) und 24FPS gibt es ab 4500-6000 kbps
sehr gute XVid Videos. Da sieht man das man bei steigender
Pixelzahl weniger kbps benötigt.

Hm, das wären dann zwischen 0,122 und 0,163 Bits/px. Damit sollten die 0,144 bei 720x540 bei 25FPS und 1400kbps eigentlich schon recht knapp sein. Ob die 0,225 der 576x432 bei 25FPS und 1400kbps da besser sind?

Aber worauf du noch achten solltest: Welches Codierungsprofil
akzeptiert der Player! Ein Simpel oder ein Advanced Profile?
In welcher Stufe…?

Das, was der Decrypter liefert, akzeptiert der Player zumindest. Dort lassen sich gerade mal Auflösung, Bitrate und Single- bzw. Two-pass einstellen. Sonderlich „advanced“ sieht das nicht aus.

Noch ein Tipp: Bei Mehrkern-CPU`s den XVid manuell die
Kernanzahl vorgeben! Die automatische Erkennung plätschert auf
meinem Core2Duo mit ca. 70% dahin… wenn ich die Kerne
vorgebe mit ca. 95%.

Gut, da muß ich mich nicht drum kümmern, es steht ein P4/3GHz zur Verfügung…

Munter bleiben… TRICHTEX

Da der XVid wie auch Mpeg2 mit 8x8 Pixel Makroblöcke arbeitet kannst du dir das ausmalen wie 8x8 Pixelverblockung auf 720x576 oder 1920x1080 aussieht. Man sieht es bei HD auf meinem 2.7m Diagonale schon, aber es ist sehr viel weniger störend als bei DVD.

1 Like

Moin!

Da der XVid wie auch Mpeg2 mit 8x8 Pixel Makroblöcke arbeitet
kannst du dir das ausmalen wie 8x8 Pixelverblockung auf
720x576 oder 1920x1080 aussieht. Man sieht es bei HD auf
meinem 2.7m Diagonale schon, aber es ist sehr viel weniger
störend als bei DVD.

Interessant. Demzufolge ist der höheren Auflösung eigentlich immer der Vorzug zu geben. Wenn man jetzt noch ermitteln könnte, wieviel Prozent des Speicherbedarfes in etwa (durchschnittlich) für die Vektorisierung „draufgehen“, könnte man für verschiedene Auflösungen Effizienzen empfehlen. Dabei läßt man das Verhältnis von Blockgröße zu Auflösung einfließen und käme so zu einer Tabelle oder Kurve von Richtwerten.

Insgesamt scheint mir die schiere Effizienz in Bits pro Pixel ein recht unzulängliches Maß für die Qualität zu sein, weil dort geringere Auflösungen zwangsläufig besser bei wegkommen, wenn man annimmt, daß höhere Werte bessere Qualtität liefern.

Bliebe die Frage, ob es für die Qualität überhaupt sinnvolle Kennzahlen gibt, oder ob sie dafür zu subjektiv ist. Objektiv wäre beispielsweise eine durchschnittliche Abweichung vom Original, dazu müßte aber endweder jedes Einzelbild (oder eine aussagekräftige Anzahl von Stichproben) des komprimierten Videos mit denen des Originals verglichen werden. Gibt’s sowas?

Munter bleiben… TRICHTEX

Schwierig da eine „Kennline“ festlegen zu wollen!

Ich habe das schon des öfteren probiert, aber es scheitert an vielen Dingen:

  1. die subjektive Wahnehmung, es gibt kein messbares Maß für Bildqualität.
  2. die Komplexität der Coder! Mpeg2 liegt ja schon weitestgehend fest, kann man ja eigentlich mit JPG vergleichen. XVid geht auch noch, kann aber flexibeler mit der Struktur arbeiten. Dann aber unterschiedliche Profile die die komplexität der Codiereffizienz beeinflussen. Viele Hardwareplayer unterstützen nur einfache weil die komplexen das Gerät überfordern würden. Dem PC ist das Wurst. Die 264 sind da ganz „wild“, die können zeilich im Videostrom springen und z.B. sagen: das hatte ich schon mal, das nehmen wir nochmal mit Verweiss. Aber wie will man sowas dann im nachhinein noch schneiden wenn ein Bild aus lauter Verweisen besteht. Benötigt halt deutlich mehr CPU Last.

Deshalb habe ich mir verschiednen Profile angelegt, die alle auf Erfahrung aufbauen. Denn eigentlich kann nur ich beurteilen was ein Film ca. an Bitrate benötigt. „Alien“ kommt mit deutlich weniger zurecht als z.B. „Der blaue Planet“.
Man könnte auch mit CQ Kodierung arbeiten, wenn man da aber die Erfahrung aus „Alien“ auf „Der blaue Planet“ anwendet… hat der Alien z.B. 800MB und „D.b.P.“ 5GB!

Sehr komplexes Thema bei dem ich auch immer noch jeden Tag was lerne… bzw. ich weiß eh nur Grundlegendes…

Mal Beispiel so aus dem Kopf (XVid)

  • PAL DV Homevideo 2500kbps
  • PAL TV ca. 1500 kpbs
  • 720x400(480) ca. 1200-1500 kbps
  • 1280x720 ca. 2800 kbps
  • 1440x600 ca. 4500 kbps
  • 1920x1080(800) ca. 5000-6500kbps

x264 ist generell schärfer bei ca. 15-20% weniger Bitrate! Wenn man alle Features zuschaltet! Dann aber auch sehr viel langsamer als XVid.
Aber macht deutliche Fehler in sehr dunklen Bereichen und in länger stehenden Texturen. Hatte da sogar schon Kontakt mit einem der Mitprogrammierer des x264. Haben es aber auch nach was weiß ich wievielen Parameteränderungen nicht herausbekommen.

1 Like

Moin!

Schwierig da eine „Kennline“ festlegen zu wollen!

Schade eigentlich, aber Deine Beispiele belegen das:

Mal Beispiel so aus dem Kopf (XVid)

  • PAL DV Homevideo 2500kbps
  • PAL TV ca. 1500 kpbs
  • 720x400(480) ca. 1200-1500 kbps
  • 1280x720 ca. 2800 kbps
  • 1440x600 ca. 4500 kbps
  • 1920x1080(800) ca. 5000-6500kbps

Bei 25 FPS sind das Effizienzwerte von
0,241
0,136
0,139-0,208
0,122
0,208
0,0965-0,169,
wenn ich mich nicht verrechnet habe.

Zumindest ist damit die Effizienz als Qualitätskriterium endgültig vom Tisch. Schlimmer noch: Es ist noch nichtmal ein Trend bei der Effizienz erkennbar. Bei der Bitrate hingegen schon - je höher die Auflösung, desto größer sollte sie sein. Ist ja auch naheliegend.

Einzige Aussage über die Effizienz aus Deiner Aufstellung: Sie sollte zwischen 0,1 und 2,5 liegen. Ist der Wert zu hoch, verschenkt man Speicherplatz, ist er zu klein, verschenkt man Qualität.

Zumindest scheine ich bei 576x432 mit 0,225 qualitätsmäßig auf der „sicheren“ Seite zu sein, 720x540 kann mit 0,144 gut oder weniger gut sein. In Bitraten gesprochen könnten 1400kbps bei 720x540 tatsächlich grenzwertig sein, während sie bei 576x432 satt im „grünen Bereich“ zu liegen scheinen.

Meß- und vergleichbare Qualitätskriterien wird es auf diesem Gebiet offensichtlich in absehbarer Zeit auch nicht geben, bleibt also nur das Ausprobieren und Beurteilen. Deine Erfahrungswerte sind definitiv hilfreich, ich werde mit kurzen Filmschnipseln auch mal sowas erstellen.

Munter bleiben… TRICHTEX

Das mit den kurzen Filmschnippseln ist mit Sicherheit das beste was man machen kann. Vieleicht noch ein paar Tipps für Probesequenzen…

  1. Was ganze dunkles mit leichten Farbverläufen. Ich finde es grauselig wenn ich über dem Beamer deutliche farbverläufe sehe. Dessen Farbraum ist aber auch größer als der der HDTV Norm.
  2. Was richtig fieses: Explosionen, Blitze die die Umgebung erhellen oder auch Licht vom Schweißen. Das fordert jedes Videocodec!
  3. Feine Texturen! Teppich, Wollpulli usw. Details werden zuerst als Information beim codieren getötet.
  4. Schnelle Bewegungen…

Aber wenn du dir mal die Einstellmöglichkeiten von XVid anschaust :smile: Kannst du bis in alle Ewigkeiten experimentieren. Besser Profile von Tools wie StaxRip oder MeGUI nutzen und die auf die Eigenen Bedürfnisse zuschneiden.

1 Like

Moin!

Das mit den kurzen Filmschnippseln ist mit Sicherheit das
beste was man machen kann. Vieleicht noch ein paar Tipps für
Probesequenzen…

Gibt’s sowas schon fertig? Codec-Testfilme sozusagen? Sonst würde ich mir eben was basteln, was freilich etwas dauern würde, und es irgendwo zum Download hinterlegen - schließlich kann das der ein oder andere sicher auch gebrauchen.

Munter bleiben… TRICHTEX

Gut Möglich das es das gibt, ich denke jeder der sich ein wenig damit beschäftigt wird sich sowas mal anlegen.

Mein Test-File hat etwas über 600MB in 1920x1080P… ist ca. 3 Minuten lang… also nix für eine Mail :smile:

Als Quelle könnte eine NICHT KOPIERGESCHÜTZTE BlueRay dienen, oder auch die Aufnahme eines DVB-S2 SatRecievers. In den Demokanälen von Astra/Arte usw. finden sich mit Sicherheit interessante Videoabfolgen.
Alternativ mit einem Videoschnittprogramm was anlegen und in HD ablegen:

  • Farbverlauf der sich langsam dreht
  • Blitze
  • schnelle Farbwechsel
  • Texturenwechsel, drehende Texturen
  • kombinationen
    … ich glaube das mache ich mir auch nochmal… mal sehen wie hoch meine alte Videosoftware skalieren kann :smile:
    Vieleicht hast du da auch noch ein paar Ideen!

Bin aber gerade in einer Anlageninbetriebnahme… vieleicht komme ich heute Abend im Hotel dazu!
Könnte ich dir dann am Weekend auf meinen Webserver legen.

1 Like

Moin!

  • Farbverlauf der sich langsam dreht
  • Blitze
  • schnelle Farbwechsel
  • Texturenwechsel, drehende Texturen
  • kombinationen
    … ich glaube das mache ich mir auch nochmal… mal sehen wie
    hoch meine alte Videosoftware skalieren kann :smile:
    Vieleicht hast du da auch noch ein paar Ideen!

Dunkle, kontrastschwache Szenen - ich hab’ mal eine komprimierte Unterwasserszene gesehen, die durch die vielen Fehler fast schon wieder lustig war… Evtl ein paar dunkle, farbige Punkte kreuz und quer durch ein dunkelgraues Bild jagen.

Ein feines Schachbrettmuster, das sich bewegt, dasselbe, frameweise invertiert, die von Dir erwähnte Explosion (wegen der vielen Vektoren), Stroboskopeffekte, „Diashow“ (ein Frame = ein Bild, da wird keine Vektorisierung möglich sein).

Ich würde sowas vermutlich aus Einzelbildern erstellen, was zwar lange dauert, aber dafür garantiert kein geschütztes Material enthält.

Bin aber gerade in einer Anlageninbetriebnahme… vieleicht
komme ich heute Abend im Hotel dazu!

An einem Abend würde ich das nur schaffen, wenn ich entsprechende Szenen aus vorhandenem Material zusammenschneiden würde.

Könnte ich dir dann am Weekend auf meinen Webserver legen.

Gerne! Wenn ich dann mal mit meiner Datei so weit bin, lasse ich sie Dir zukommen.

Munter bleiben… TRICHTEX