Frage von Coburn:Hi Leute,
ich habe hier 3 Screenshots von meinem aktuellen Projekt.
Gefilmt wurde in 1080i mit der XHA1
Unter anderem gibt es Szenen mit einer LED Leinwand im Hintergrund. Diese bereitet mir beim Rendern massive Probleme.
Ich habe das ganze als Quicktime gerendert und es hat natürlich keine Qualitätseinbußen. Da das Video aber für den Internetstream gedacht ist, will ich keine 10GB hoch laden müssen.
Daher benutze ich meiste den H.264 und lass das ganze mit 8 Bit raus rendern. Bisher hatte ich damit sehr gute Erfolge gehabt.
Aber mit dieser LED Leinwand im Hintergrund, gibt es folgende Resultate:
Quicktime:
zum Bild http://img5.fotos-hochladen.net/uploads/vlcsnap201405fp9mchvj06.png
H.264:
zum Bild http://img5.fotos-hochladen.net/uploads/vlcsnap201405h0flnqcvja.png
H.264 immer wieder für ein paar Frames, im 3 sekunden Takt:
zum Bild http://img5.fotos-hochladen.net/uploads/vlcsnap201405b3gh0p41ta.png
Habt ihr ne Idee ob der Codec das einfach nicht packt, oder ob ich da noch was machen kann.
Ich versuchs jetzt mal noch ein paar andere Codec's wie Flash und co.
--
Edit: (4 Stunden später, keine Verpixelung mehr, gutes Ergebnis!)
Ergebnis vom f4v codec:
zum Bild http://img5.fotos-hochladen.net/uploads/f4v1rxley2g3q.png
Antwort von MLJ:
@Coburn
Das ist das, was ich während meiner Filmstudio Tour in Deutschland im Fernsehen immer wieder gesehen habe und liegt an den falschen Einstellungen im Codec. Welchen nimmst du ? X264vfw ? X264 ? Den von ffdshow ? Das tritt typischerweise auf wenn die Keyframes zu weit auseinander liegen und die Motion Quantisation falsch gewählt ist, siehe drittes Bild, da ist es schon fast komplett Weichgezeichnet.
Der Hintergrund (LED Wand) bringt den Codec richtig durcheinander denn, sagen wir es mal vereinfacht, der Codec nicht "weiß" auf was er sein Hauptmerkmal legen soll. XviD macht das nicht anders mit den Grundeinstellungen und würde damit ein vergleichbares Ergebnis liefern. Wenn man an den Richtigen Einstellungen in XviD z.B. dreht geht es und das Bild ist wie im ersten Bild (QuickTime).
Dann fehlen weitere Angaben um dir da effektiv weiterhelfen zu können:
Welches System ? Codec ? NLE oder VirtualDub ? Welche Versionen (Codec, NLE/VirtualDub etc.) ? Es gibt da einige Einstellungen und Filter die das vermeiden, aber da fehlt mir im Moment zu viel Input um dir weiterhelfen zu können.
Cheers, Mickey.
Antwort von rkunstmann:
Womit kodierst Du denn? Ich benutze meistens MPEG Streamclip für das Wandeln nach h.264. Du solltest die Bitrate so hoch setzen wie möglich für Deine Zwecke und außerdem falls möglich B-Frames und Mulitpass Optionen aktivieren. Dann rechnet es um vieles länger, aber das Ergebnis wird sichtbar besser. Außerdem würde ich deinterlacen für web. Warum drehst Du nicht pogressiv? Gibt"s da einen Grund. Ich weiß nicht, ob Deine Kamera 50p kann, baer für Web ist sowieso 25p die richtige Lösung, da 50i und 50p nicht unterstützt werden.
Beste Grüße!
Robert
Edit: Ich sehe es handelt sich um die XHA1. Die kann 1080p (in dieser 25f Variante oder wie Canon das nennt, aber kein 50p)
Edit: Auch Flash oder Xvid und dergleichen arbeiten mit dem h.264 Codec nur anders verpackt, auch Quicktime .mov lässt diese Option zu. Wichtig ist die Verarbeitung.
Antwort von Coburn:
Jo danke für die Antworten.
Ich mache alles komplett in Premiere CS6 auf Win 8.
Und auch mit den Adobe "hauseigenen" Codecs.
Hab mir schon gedacht das was an den Einstellungen des Codecs nicht stimmt, aber ich kann keiner dergleichen einstellen.
Hier meine Standarteinstellung:
Antwort von MLJ:
@Coburn
Also: Du hast das Profil "Einfach" genommen, da solltest du das "Erweiterte" Profil nehmen das automatisch die passenden Parameter einstellt. Weiterhin hast du den Keyframe Abstand auf "75" gesetzt, den würde ich auf "25" stellen, also jede Sekunde ein Keyframe. Der Rest scheint in Ordnung, nur die Audio Bitrate für AAC würde ich auf 192 KBit/s statt 160 KBit/s setzen.
Wenn das alles nichts hilft, dann hat der Encoder in Premiere Probleme das gut zu rendern, im Moment bin ich dann raus, sorry. Vielleicht hat ja jemand anderes noch einen Tipp für dich.
Cheers, Mickey.
Antwort von Coburn:
Danke für den Tip Mickey.
Ich werds dann mal so raus rendern.
Bei Profil gibt es bei mir
"Einfach", "Hauptoption" und "Hoch"
jedoch kein erweitert.
Desweiteren hab ich Deinterlacing von Premiere eingestellt. (Halbbilder immer zusammenfügen)
In ner knappen Stunde sag ich auch wie das Ergebnis war.
Antwort von MLJ:
Hi Coburn,
dann würde ich die anderen Optionen "Hauptoption" und "Hoch" einfach durchprobieren. Kannst du nur einen kurze Sequenz mit einer kritischen Passage rausrendern statt dem ganzen Projekt ? Das würde dir schneller zeigen welches Profil am besten ist ;)
Das mit den "Halbbildern zusammenfügen", was hast du da noch für Optionen ? Deinterlacen ist nicht gleich Deinterlacen, da gibt es immense Unterschiede. Wenn du die Option "Motion Average" oder "Motion Compensation" hast, dann ist das alle mal besser und verlustfreier als "Halbbilder zusammenfügen". Du darfst nicht vergessen, es geht beim Deinterlacen immer Qualität drauf, da sollte es schon, wenn es sein muss, die beste Methode sein, oder ?
Freut mich das ich dir ein wenig weiterhelfen konnte. Wünsche gutes gelingen.
Cheers, Mickey.
Antwort von Coburn:
Also Premiere lässt mich zwischen diesen Halbbildereinstellungen wechseln.
Halbbilddominanz umkehren, on/off
Berechnungsoptionen:
- ohne
- Aufeinanderfolgende Frames auf Halbbilder verteilen
- Halbbilder immer zusammenfügen
- Flimmern reduzieren
Gerendert is, aber Ergebnis fast gleich, jedoch verpixelt er das Bild nun öfters, jede Sekunde.
Ich werde jetzt einige Sachen ausprobieren mit einem 5 Sekunden Teil vom Film.
Mal sehn ob ich was hin bekomme das hilft.
Renderst du mit einer externen Software?
Grüße Peter
--
Edit:
Also es hat wirklich was mit den Keyframes zu tun.
Ich habe diese nun auf 100 gesetzt und jetzt kommt das "verpixeln" alle 4 Sekunden.
Das blick ich leider noch nicht. :-/
Und das er so ein Verlust an Details im Gesicht hat, is schon krass.
Antwort von MLJ:
Hi Coburn,
zu den Halbbild Optionen:
"Halbbilddominaz umkehren" würde bedeuten, das du aus einem "Top Field" ein "Bottom Field" machen würdest. Da du in HD gedreht hast is dein Material mit Sicherheit "Top Field First", also auf OFF lassen.
Berechnungsoptionen:
"Aufeinanderfolgende Frames auf Halbbilder verteilen" würde bedeuten, das du aus Progressivem Material Interlaced machen würdest, also auch nicht verwenden denn dein Material IST Interlaced.
"Halbbilder immer zusammenfügen" bedeutet, das du aus Interlaced Material Progressives machst, die solltest du probieren.
"Flimmern reduzieren" bedeutet, das bei Standbildern, für DVD z.B. das Material "beruhigt" wird da Fotos/Hintergründe ja nicht Interlaced sind und so ein Flimmern am TV reduziert wird. Kannst du diese Option zusätzlich zu der Option "Halbbilder immer zusammenfügen" aktivieren oder geht nur eines von beiden ?
Ich nutze MoviePack Pro und rendere MPEG z.B. mit dem Pegasys TMPEGEncoder. Wenn ich Deinterlacen muss nehme ich den Encoder von Honestech, der bietet mir alles was das Herz begehrt.
Das er jetzt das Bild alle 2 sekunden "verpixelt" dürfte nicht sein, da ist noch irgendetwas anderes falsch eingestellt. Das geschieht immer dann, wenn zwischen den Keyframes zuviele P-Frames/B-Frames sind mit einem zu großen Q-Wert, etwa 20-31, um die Dateigröße zu verringern.
Habe eben deinen "Edit" gelesen, dann kannst du folgendes probieren: Setze die Keyframes mal auf 125 (alle 5 Sekunden) oder 250 (alle 10 Sekunden). QuickTime MPEG-4 setzt übrigens alle 15 Frames 1 Keyframe, nur so nebenbei ;)
An der Bitrate mit 8 MB dürfte es keine verpixelungen geben, mit 1 oder 1.5 MB ja, aber 8 ? Hast du irgendwelche Filter geladen ? In welcher Farbtiefe gehst du raus oder nimmst du ein YUV Modell wie 4:2:0/4:2:2 ?
Cheers, Mickey.
Antwort von TheBubble:
Die vielen Details im Hintergrund (verändern sich oder flimmern diese auch noch ständig, oder ist die Anzeige zumindest vom Stativ gefilmt und weitgehend "fest"?) sind vermutlich nur ineffizient komprimierbar und sie bringen vermutlich die Bitratensteuerung des Codecs durcheinander. Sobald das verfügbare Bit-Budget aufgebrucht ist, muss sich der Codec einschränken, was zu den Artefakten führt.
Die massiven Artefakte alle 3 Sekunden kommen durch die Keyframes. Jedes Keyframe muss sich sehr einschränken und kann daher die Details nicht abspeichern. Diese "regenerieren" sich erst durch darauffolgende Frames.
Antwort von TheBubble:
Gerendert is, aber Ergebnis fast gleich, jedoch verpixelt er das Bild nun öfters, jede Sekunde.
Versuche zumindest die maximale Bitrate massiv zu erhöhen. Wenn das nicht reicht, dann erhöhe auch die normale Zielbitrate.
Wenn Du das Video auf einem Internetvideoportal hochlädst, dass die Filme neu komprimiert, dann rechne dabei schon mal mit ähnlichen Artefakten.
Antwort von MLJ:
@TheBubble
was du über die Bitratensteuerung schreibst ist richtig, aber nur bei 1-Pass, "Coburn" nimmt ja 2-Pass VBR, nicht CBR, da dürfte das nicht auftreten, schon garnicht bei 8 MB. Ich habe mit den XviD oder x264vfw Codecs auch schon solche Sachen gehabt und im 2-Pass VBR war das nie so schlimm wie auf den Screenshots von "Coburn". So eine Qualität hätte ich nie weitergegeben. Ich kann mir kaum vorstellen das Adobe irgendeinen "Billig Codec" verwendet, oder ?
Cheers, Mickey.
Antwort von Coburn:
Also, ich werde das mit der Bitrate mal nochmal versuchen.
Für mein 10 Sekunden Testausschnitt habe ich nun mit den unten stehenden Einstellungen bessere Ergebnisse bekommen, werde jetzt den ganzen Film mal so rendern.
@Bubble, das mit dem Kompressor von Youtube z.B. befürchte ich auch.
Dann wäre es sowieso genauso.
Das gibt mir grad richtig Kopfweh... Wie kann ich denn das in Zukunft vermeiden mit so einem Hintergrund?
Gefilmt wurde mit 2 XHA1, beide auf dem Stativ. Gleiche Einstellungen, gleiches Problem.
Hier die Einstellung:
Antwort von TheBubble:
was du über die Bitratensteuerung schreibst ist richtig, aber nur bei 1-Pass, "Coburn" nimmt ja 2-Pass VBR, nicht CBR, da dürfte das nicht auftreten, schon garnicht bei 8 MB.
CBR bedeutet, dass die Bitrate eingehalten werden soll. Das ist bei bestimmten Übertragungswegen wichtig.
VBR bedeutet nur, dass nach einem ersten Analyse-Durchlauf, in einigen Bereichen, die sich mit weniger Bits gut repräsentieren lassen, weniger Bits verwendet werden, während in anderen Bereichen mehr Bits als durchschnittlich vorgesehen verwendet werden. Dabei kann es sinnvoll sein, gegebenenfalls eine maximale Bitrate trotzdem einzuhalten.
Da ist auch schon sein erstes Problem mit den Einstellungen: Die maximal erlaubte Bitrate sollte für seine Aufnahmen höher als die durchschnittliche Bitrate sein.
Antwort von Coburn:
Also Film ist gerendert und keine Artefaktbildung mehr. Film passt so jetzt! Auch die Details sind im Gesicht mehr als bei dem Screenshot vom H.264 am Anfang.
Das macht auf jeden Fall Sinn mit der Max Bitrate. Evtl ist das sogar das Problem. Ich werde das gleich testen.
Antwort von TheBubble:
Das gibt mir grad richtig Kopfweh... Wie kann ich denn das in Zukunft vermeiden mit so einem Hintergrund?
Kamera mit geringer Schärfentiefe verwenden, und/oder durch geeignete Einstellungen den Hintergrund unscharf werden lassen.
Antwort von Coburn:
Kamera mit geringer Schärfentiefe verwenden, und/oder durch geeignete Einstellungen den Hintergrund unscharf werden lassen.
Sprich die Details aus dem Hintergrund wegnehmen, logisch. Hätte ich mit der XHA1 in dem Fall evtl nicht hinbekommen, dafür war ich zu nah dran. Bühnenbeleuchtung gabs keine, nur Sonnenlicht.
Antwort von MLJ:
@Coburn
Du hast zwar die Audiobitrate auf 192 KBit/s erhöht aber gehst mit 44.100 kHz raus von ursprünglichen 48.000 kHz ? Ist das so gewollt ? Wenn ja, dann wären 256 KBit/s sinnvoller bei 44.100 kHz.
@TheBubble
Zitat:
"Die maximal erlaubte Bitrate sollte für seine Aufnahmen höher als die durchschnittliche Bitrate sein."
Zitat ende.
Stimmt, Punkt für dich :)
Cheers, Mickey.
Antwort von Coburn:
Habe nun die max Bitrate auf 15 erhöht. Ohne sichtbaren Erfolg.
Werde nun bei dem f4v bleiben und es so weiter geben. Schluss für Heute.
Wüsste trotzdem gern an was es genau liegt, ob nun doch am dem VBR?
Danke für euer Mitdenken und Helfen zur später Stunde!
--
Edit:
Habe bei dem H.264 in der ersten Einstellung von VBR auf CBR umgestellt. 8 MBit/s sind geblieben.
Ergenbis, die Artefaktbildung ist weg.
Antwort von carstenkurz:
Der Codec kann nicht wissen, was im Bild wichtig ist und was nicht. Sobald Du die Bitrate limitierst und der Hintergrund zuviel Bitratenbudget verschlingt, wird der Vordergrund darunter leiden. Man kann natürlich die grundsätzlichen Parameter des Codecs etwas höher setzen, die Keyframes enger, die Bitrate höher etc.. Dann hat man vielleicht ein halbwegs brauchbares Resultat als lokale Kopie. Wenn das Ganze aber nach YouTube soll, wird man dort ggfs. wieder die gleichen Probleme kriegen, und dort kann man in der Regel keinerlei Anpassungen vornehmen, da ist es dann schlicht Glückssache, was rauskommt.
Realistische Abhilfe ist bei sowas nur, den Hintergrund unscharf zu maskieren, temporal zu filtern (Flickerunterdrückung, etc.), um den Anteil des Hintergrundes am Bitratenbudget zu reduzieren, damit der Codec für den Vordergrund wieder mehr Luft hat.
Dumm gelaufen, aber sowas gibts leider. Videokompression hat Grenzen.
- Carsten
Antwort von TomStg:
Der Codec kann nicht wissen, was im Bild wichtig ist und was nicht.
Sehr richtig! Der Codec ist nicht das Problem, sondern die Aufnahme.
Solche feinen nicht-statischen Hintergrundmuster sind grundsätzlich zu vermeiden. Das gilt ebenso zB für Kleidung mit Pepita- oder Hahnentrittmustern. Ein Herren-Sacco oder Damen-Kostüm mit einem solchen Stoffmuster bringt bei entsprechenden Aufnahmeabstand (wie hier) eine Kamera ins Schleudern.
Antwort von Coburn:
So, also Youtube hat in der Tat kein schönes Ergebnis geliefert.
Aber wenigstens keine puslierende Artefaktbildung, wie beim nicht Flash codec.
<object width="853" height="480"><param name="movie" value="//www.youtube.com/v/chyF6kYSJJc?hl=en_US& ... ram><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="//www.youtube.com/v/chyF6kYSJJc?hl=en_US&version=3" type="application/x-shockwave-flash" width="853" height="480" allowscriptaccess="always" allowfullscreen="true"></embed></object>