Wenn ich mp4/mkv/ts mit nicht-nativen Auflösungen auf meiner 50Hz-Röhre wiedergebe (Scart), so habe ich ein vertikal stark verschwommenes und flimmerndes Bild. Ändern der Deinterlace-Einstellung im Autoresolution-Plugin hilft da auch nicht (Flimmern wird lediglich weniger). Bis vor zwei Tagen war das noch I.O.
Beispiel: CC-Zwei-31-NRWTV.mp4
[gelöst] dev-2009-05-31: Grausliges Scaling von Quellen mit geringen Auflösungen
-
-
Hat das wirklich noch kein anderer beobachtet?
Nun konnte ich mir das Problem auch mal auf einem Full-HD Bildschirm ansehen. Es scheint sich aus der Beobachtung auf folgendes Problem zu reduzieren:Alle Videos werden bei mir als interlaced erkannt (lt. Autores-Infoscreen), also bspw. auch Youtube-HD-Videos als 720i. Das hat zur Folge, dass beim Scaling die Frames in zwei Fields aufgeteilt werden, und diese einzeln hochskaliert werden. Natürlich wählt dann Autores auch die "passende" Interlaced-Auflösung aus, nicht aber Progressive. Das scheint unabhängig vom Format (MPEG2/H264, TS,MKV,MP4) zu sein.
Das von mir verlinkte Beispiel (512x288p@25Hz) wurde dann getrennt 2 mal von 512x144 auf 720x288 hochskaliert und auf meinem TV mit 720x576i angezeigt. Jede horizontale Kante wurde dann mit Kammeffekt verdoppelt, das muss ja auf einer Std.-Röhre stark flimmern.Also die Progressive-Erkennung hatte ja schonmal funktioniert. Es wäre schön, wenn sich ein Entwickler, der sich damit auskennt, das mal anschaut.
-
Also für alle, die das Problem nicht haben, ich habe mal mit AviDemux rumgespielt und einen Filter zusammengestellt, der das bei mir vorhandene Probem visualisiert:
XML
Alles anzeigen<?xml version="1.0"?> <filters FilterNumber="3"> <Filter Tag="32" Conf=" Separate Fields"/> <Filter Tag="1" Conf=" Resize 512 x 144 --> 1024 x 288 "> <Parameters Number="3"> <w>1024</w> <h>288</h> <algo>0</algo> </Parameters> </Filter> <Filter Tag="33" Conf=" Merge fields"/> </filters>
Das sieht dann beispielsweise so aus:
Ich habe auch noch ein wenig mit Mediainfo nachgeforscht. Die von mir verlinkte Datei hat definitiv Progressive-Content:
Code
Alles anzeigenAllgemein Vollständiger Name : CC-Zwei-31-NRWTV.mp4 Format : MPEG-4 Format-Profil : Base Media Codec-ID : isom Dateigröße : 393 MiB Dauer : 54min Gesamte Bitrate : 1 001 Kbps Video ID : 1 Format : AVC Format/Info : Advanced Video Codec Format-Profil : High@L5.1 Format-Einstellungen für CABAC : Ja Format-Einstellungen für ReFrame : 6 frames Codec-ID : avc1 Codec-ID/Info : Advanced Video Coding Dauer : 54min Bitraten-Modus : variabel Bitrate : 899 Kbps Breite : 512 Pixel Höhe : 288 Pixel Bildseitenverhältnis : 16/9 Modus der Bildwiederholungsrate : konstant Bildwiederholungsrate : 25,000 FPS Auflösung : 24 bits Colorimetrie : 4:2:0 Scantyp : progressiv Bits/(Pixel*Frame) : 0.244 Stream-Größe : 353 MiB (90%)
Ich bin dann mein Archiv mal durch und es wurden alle H264-codierte Dateien immer als interlaced von der DM800 ausgegeben, auch wenn sie von MediaInfo als progressive angezeigt wurden, auch so bekannte Stücke wie:Code
Alles anzeigenAllgemein Vollständiger Name : big_buck_bunny_720p_h264.mkv Format : Matroska Dateigröße : 398 MiB Dauer : 9min 56s Gesamte Bitrate : 5 597 Kbps Filmname : Avidemux Kodierendes Programm : Lavf51.12.1 verwendete Encoder-Bibliothek : Lavf51.12.1 Video ID : 1 Format : AVC Format/Info : Advanced Video Codec Format-Profil : Main@L3.1 Format-Einstellungen für CABAC : Nein Format-Einstellungen für ReFrame : 2 frames Muxing-Modus : Container profile=Unknown@3.1 Codec-ID : V_MPEG4/ISO/AVC Dauer : 9min 56s Bitrate : 4 919 Kbps Breite : 1 280 Pixel Höhe : 720 Pixel Bildseitenverhältnis : 16/9 Bildwiederholungsrate : 24,000 FPS Auflösung : 24 bits Colorimetrie : 4:2:0 Scantyp : progressiv Bits/(Pixel*Frame) : 0.222
Oder:Code
Alles anzeigenAllgemein Vollständiger Name : for.the.birds.2000.720p.bluray.x264-sinners.mkv Format : Matroska Dateigröße : 114 MiB Dauer : 3min 25s Gesamte Bitrate : 4 652 Kbps Kodierungs-Datum : UTC 2007-10-27 21:40:42 Kodierendes Programm : mkvmerge v2.1.0 ('Another Place To Fall') built on Aug 19 2007 13:40:07 verwendete Encoder-Bibliothek : libebml v0.7.7 + libmatroska v0.8.1 Video ID : 1 Format : AVC Format/Info : Advanced Video Codec Format-Profil : High@L5.1 Format-Einstellungen für CABAC : Ja Format-Einstellungen für ReFrame : 8 frames Muxing-Modus : Container profile=Unknown@5.1 Codec-ID : V_MPEG4/ISO/AVC Dauer : 3min 25s Bitrate : 3 819 Kbps nominale Bitrate : 4 000 Kbps Breite : 1 280 Pixel Höhe : 688 Pixel Bildseitenverhältnis : 1.860 Bildwiederholungsrate : 23,976 FPS Auflösung : 24 bits Colorimetrie : 4:2:0 Scantyp : progressiv Bits/(Pixel*Frame) : 0.181 verwendete Encoder-Bibliothek : x264 core 56 svn-680 Kodierungseinstellungen : cabac=1 / ref=5 / deblock=1:0:0 / analyse=0x3:0x113 / me=umh / subme=7 / brdo=1 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=0 / threads=3 / nr=0 / decimate=1 / mbaff=0 / bframes=3 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=1 / wpredb=1 / bime=1 / keyint=250 / keyint_min=25 / scenecut=40(pre) / rc=2pass / bitrate=4000 / ratetol=1.0 / rceq='blurCplx^(1-qComp)' / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 Sprache : Englisch
Oder HQ-Dateien vom OnlineTVRecorder, die ich mit dem TSMuxer umgepackt habe:Code
Alles anzeigenAllgemein ID : 1 Format : MPEG-TS Dateigröße : 938 MiB Dauer : 1h 34min Gesamte Bitrate : 1 380 Kbps maximale Gesamtbitrate : 35,5 Mbps Video ID : 4113 (0x1011) Menü-ID : 1 (0x1) Format : AVC Format/Info : Advanced Video Codec Format-Profil : Main@L3.0 Format-Einstellungen für CABAC : Ja Format-Einstellungen für ReFrame : 4 frames Dauer : 1h 34min Bitrate : 1 133 Kbps Breite : 720 Pixel Höhe : 576 Pixel Bildseitenverhältnis : 16/9 Bildwiederholungsrate : 25,000 FPS Standard : PAL Auflösung : 24 bits Colorimetrie : 4:2:0 Scantyp : progressiv Bits/(Pixel*Frame) : 0.109
Nur bei MPEG-Dateien funktioniert es problemlos, diese Datei wird als progressive erkannt und mit 720p ausgegeben (wie in AutoRes vorgegeben):Code
Alles anzeigenAllgemein ID : 1 Format : MPEG-TS Dateigröße : 271 MiB Dauer : 29min Gesamte Bitrate : 1 293 Kbps Video ID : 256 (0x100) Menü-ID : 1 (0x1) Format : MPEG Video Format-Version : Version 2 Format-Profil : Main@Main Format-Einstellungen für Matrix : üblich Dauer : 29min Bitraten-Modus : variabel Bitrate : 1 114 Kbps nominale Bitrate : 3 076 Kbps Breite : 512 Pixel Höhe : 384 Pixel Bildseitenverhältnis : 16/9 Bildwiederholungsrate : 25,000 FPS Colorimetrie : 4:2:0 Scantyp : progressiv Bits/(Pixel*Frame) : 0.227
-
Es gibt offensichtlich doch noch Leute, die das Problem auch haben, hier:
Problem mit Autores mit neuen Treibern vom 3.6. -
Das Problem mit der fehlerhaften Interlace-Erkennung wurde vor etwa einer Woche behoben (besten Dank) und das Ganze sieht nun schon viel besser aus. Der Scaler arbeitet nun auf dem kompletten Frame und hinten kommt Progressive raus und Autores schaltet richtig um.
Aber irgendwie stimmt immer noch was nicht richtig. Scheinbar wird das progressive Quellmaterial in zwei Durchgängen in den Scaler geschickt, so dass sich ein starkes Interlace-Kantenflackern ergibt (das wird dann als progressive zum TV geschickt, so das dann dessen De-Interlacer deaktiviert bleibt).
Der Ablauf sollte doch folgender sein:- Quellmaterial in Auflösung xy (bsp. 512x288p@25Hz)
- Autores schaltet auf passende Ausgabe XY (bsp. 720x576p@25Hz oder 720x576p@50Hz)
- bei Progressive:
Scaler skaliert frameweise in Rate des Quellmaterials (25Hz), Ausgabe dann ggf. in doppelter Rate (50Hz) - bei Interlace:
Scaler skaliert fieldweise in Rate des Quellmaterials, Ausgabe muss dann dieselbe Rate haben
Z.Zt. scheint es so zu sein:
- bei Progressive:
Scaler teilt Frame (25Hz) in zwei Fields (50Hz) und skaliert dann hoch.
-
Interessanterweise konnte ich den Effekt nur bei einer Ausgabe nach 720p und 576p@50Hz beobachten, nicht aber nach 480p@60Hz.
-
Liest diesen Thread eigentlich ein Entwickler mit? Kurzes Feedback wäre allgemein nett.
Bei den letzen Änderungen hat sich wohl ein neuer Fehler in der Interlace/Progressive-Erkennung eingeschlichen: Es wird nur das erste angespielte Video korrekt erkannt. Folgende sind nun immer interlaced. Wenn ich stattdessen zwischendurch auf SD-TV schalte und dann das neue Video starte, geht es wieder. Nur als Hinweis.
-
Ich habe heute mal die neuen Treiber und das Videoenhancement-Plugin installiert und getestet (für irgendwas muss das Schietwetter ja gut sein :S).
Zunächst war ich ernüchtert, gar enttäuscht, da das normale SD-Bild an Schärfe verloren hatte. Das von mir beschriebene Interlace-Flimmern war hingegen weg. Meine Deinterlacer-Einstellung im Autoresolution war weiterhin auf "aus". Dann las ich in Bildqualität der DreamBox 800 von den neuen Treiber-Optionen und fand die richtigen Einstellungen für ein optimales Bild:- 576i -> 576i: bob
- 576i -> 1080i: on
- progressive: off
Die Einstellung "auto" schaltet leider nur zwischen "off" und "on" um. Ich müsste also je nach Quellmaterial immer vorher die Einstellung ändern zudem unterstützt Autoresolution noch nicht die Einstellung "bob".
Ich habe das Plugin daher um eine zusätzliche Einstellung ergänzt und kann nun für Interlaced- und Progressive-Content verschiedene Einstellungen vornehmen:Ich werde den Patch mal unverbindlich an den Autor weiterleiten...