Zitat
Originally posted by Rafiki
Bei 'Square Pixel' wären es 944 Pixel / Zeile bei 768 aktiven. Die Austastlücken werden ziemlich sicher nicht mitübertragen, wäre ja ein gewaltige Verschwendung.
Ok, überzeugt.
Zitat
Originally posted by Rafiki
Sorry, ich muß hier editieren - da passt was nicht zusammen. Wenn 864Pixel 64µs sind (laut CCIR 601), dann sind 720 aktive Pixel 53,3µs. Wahrscheinlich hat man bei der Festlegung der 720 schon etwas Reserve eingerechnet (aktiv im Analogen sind ja 52µs) weil eine so exakte Synchronisierung und Stabilität vor einigen Jahren noch nicht möglich war und man auf analogen TVs die exakt eingestellt sind und dann ev. um 0,5µs wegdriften, nicht einen störenden Balken auf der Seite haben wollte.
...
Wenn 720 Pixel 64µs wären, dann wären 702 Pixel 62,4µs. So kann das nicht stimmen. Also 864 Pixel sind 64us, 720 Pixel sind 53,3333us und 702Pixel sind 52us.
Dann stimmt die Ausgabe. Wenn du dir anschaust, wie ein standardkonformes MPEG2 PAL daherkommt (wie z.B. vom ORF).
Siehe http://www.dream-multimedia-tv…ent.php?attachmentid=1718
Dieses MPEG2 enthält 702 aktive Pixel bei einer breite von 720 Pixel. Manche Sendeanstalten belegen die ganzen 720 Pixel, was meines Wissens jedoch nicht konform ist.
Zitat
Originally posted by Rafiki
Ich glaub auch nicht, daß die Box das sooo falsch macht. Ich kann jetzt nicht die ganzen Berechnungen hier nachvollziehen, aber ich denke da liegt irgendwo ein Denkfehler oder Rechenfehler drinnen. Möglicherweise ist es aber auch so, daß ev. die Sender nicht immer (Programmabhängig?) die ganzen 720x576 auch wirklich ausnützen. Das ist jetzt aber nur eine Vermutung von mir.
Tun sie auch nicht. Man sieht in 98% der Fälle einem MPEG2 Transportstrom links und rechts immer diese schmalen Balken, die je nach Bildinhalt sogar innerhalb der Sendungen selbst variieren. Das liegt einfach daran, wie die Kameras und die Chips das optische Bild abgreifen.
Zitat
Originally posted by Rafiki
Das müßte man mal verifizieren, wenn man wirklich alle 720 Pixel vom Sender auch ausgibt und zwar innerhalb von 53,333333us. Dann könnte man das auch nachmessen und von anderen Effekten (overscan des TVs) auseinander halten.
Mit den schmalen Balken links und rechts erhält man ja die 52 µs im analog gewandelten Signal wenn man die 720 Pixel auf die 53,333333 µs legt.
Wenn wir von den ursprünglichen Werten 21a und d2b für pal_h_start und pal_h_end ausgehen, sind das horizontal 2833 Werte gewesen. Nehmen wir also weiter an, dass der Prozessor mit 53 MHz taktet kommen wir auf folgendes.
2833 / 53 Mhz = 53,4528301
Wenn 53,333333 µs 720 Pixel entsprechen, war der Wert schon nahe am Optimum. Absolutes Optimum wäre.
53,333333 µs = X / 53 Mhz
X = 53,333333 µs * 53 MHz
X = 2826,666666
Somit hätten wir für die 702 aktiv ausgenutzten Pixel im MPEG2 Transportstrom die 52 µs für das analoge Ausgabebild. Von dem her war meine Ursprüngliche Berechnung für die h-Werte falsch.
Wenn wir die 2826,666666 Werte so nehmen und zurückrechnen kommen wir auf folgende Werte. Diese sind optimal, vorausgesetzt die Taktfrequenz mit 53 stimmt in etwa (zweite Kommastelle ist vernachlässigbar, die erste ist schon noch ausschlaggebend).
2833 - 2826,666666 = 6,333333
6,333333 / 2 = 3,1666666 ~ 3
538 (0x21a) + 3 = 541
3371 (0xd2b) - 3 = 3368
Daraus folgt.
pal_h_start > 21d
pal_h_end > d28
Ich werde die Werte mal heute Abend beobachten und berichten. Wenn sie passen, müssen sie eben noch ein mal angepasst werden im Treiber.
Zitat
Originally posted by Rafiki
Ich sehe gerade, in der ITU-R BT.656-5 stehen auch die hier gesuchten Werte drinnen -
Field blanking from Line 624 to 22 (inklusive) und 311-335. Macht zusammen 49 Zeilen --> insgesamt 576 aktive. Erste aktive ist demnach 23 und 336.
Der Wert 2D für das derzeitige pal_v_start wäre bei Zeile 45.
Pal_h_start passt oder? Oder wie würdest du diese Norm auf unsere Werte umsetzen?
tmbinc & Entwickler:
Kann man die genaue Taktfrequenz mal eruieren und verifizieren? Dieser Faktor ist der entscheidendste, wenn man genau berechnen will.
Update: Zwischen den Werten, die jetzt im Treiber sind und denen von mir hier neu berechneten, sieht man keinen Unterschied. Die feinen Linien in meinem Testbild sehen mit den hier berechneten Werten genauso aus wie mit den aktuellen Werten im Treiber.
Wenn man berechnet, kann man den Unterschied auch nicht sehen. Das sind im Vergleich zum ursprünglichem Wert nur 2 Werte horizontal Unterschied.
0xd27 - 0x21e = 0xb09 (2825) ... im aktuellen Treiber
0xd28 - 0x21d = 0xb0b (2827) ... hier berechnet
2825 / 53 MHz = 53,301887 µs
Da ich die Werte d27/21e für geometrisch richtiger empfand (Referenzbilder), denke ich, dass die aktuellen schon passen. Zudem ändern die rein rechnerisch exakteren Werte kein Bischen am Bild. Wenn die Taktfrequenz des Prozessors auch nur um eine Kommastelle höher oder geringer ist, sind die Werte rechnerisch ohnehin wieder falsch. Ich würde mich also eher auf das Referenzbild berufen und die Werte so lassen, wie sie jetzt sind.