Hallo, hier wurde ja schon des öfteren über Auswertung von VGA Signalen gesprochen, nur leider hab ich nichts passendes für mich gefunden. Will mir ein Ambilight mit VGA bauen. Könnt ihr mir sagen wie ich an die einzelnen Pixal rankomme? Was ich bisher weiss: nach V sync baut sich neues bild auf nach jeder einzelnen zeile gibt es dann ein H sync dieser dauert bei mir 20,4 us. Wie komme ich den jetzt zb theoretisch an den x ten Pixel in der Zeile y? Danke
du musst den Pixeltakt ausrechnen. Dann musst du nach Auftreten des V-Syncs einfach soviele H-Sync-Impulse zählen bis du in der richtigen Zeile bist und dann entsprechend dem Pixeltakt lange warten bist der richtige Pixel da ist. Dann musst RGB abtasten (möglichst >=8 bit) und voilà. Obiges ist aber reichlich kompliziert. Da der Bildinhalt eh im PC irgendwo vor liegt, schau dass du da ran kommst. Da gibts soweit ich weiß DirectShow-filter, welche sich in die Grafikausgabe einknlinken. Google mal nach "Atmolight Directshow" Gruß Roland
>Könnt ihr mir sagen wie ich an die einzelnen Pixal rankomme?
Mit einer Lupe und einer Pinzette? SCNR ;)
Roland Praml schrieb: > du musst den Pixeltakt ausrechnen. > > Dann musst du nach Auftreten des V-Syncs einfach soviele H-Sync-Impulse > zählen bis du in der richtigen Zeile bist und dann entsprechend dem > Pixeltakt lange warten bist der richtige Pixel da ist. Dann musst RGB > abtasten (möglichst >=8 bit) und voilà. > genau ich habe immer nach einer neuen Zeile einen timer gesatrtet, der zählt bis 5µs (1/4 ZeilenTakt) und dann soll der ADC messen, das müsste also an sich so gehen ja?
> genau ich habe immer nach einer neuen Zeile einen timer gesatrtet, der > zählt bis 5µs (1/4 ZeilenTakt) und dann soll der ADC messen, das müsste > also an sich so gehen ja? Im Prinzip ja, nur solltest Du das Signal mit einer Sample-and-Hold-Stufe aufbereiten, weil Dein ADC mit hoher Wahrscheinlichkeit ganz erheblich langsamer ist als der Pixeltakt der VGA-Karte. Obendrein bist Du mit dieser Zeitabzählmethode nicht synchron zum Pixeltakt; es kann also passieren, daß Du nicht beginnend mit einem Pixel abtastest, sondern an der Stelle des Überganges zwischen zwei benachbarten sich voneinander unterscheidenden Pixeln. Das ist zur Steuerung eines "Ambilight"-Mechanismus eher ungeeignet. Sinnvoller erscheint mir die Integration/Mittelung aller Pixel in einem Bildschirmquadranten zur Bestimmung der überwiegenden Farbe. Schließlich soll ja nicht ein einzelnes Pixel oder eine einzelne Pixelzeile über die Farbe des "Ambilights" bestimmen, sondern, wenn Du vier Lichtquellen hast, jede Ecke des Bildes über die Farbe der zugeordneten Bildecke. Hast Du nur eine Lichtquelle, musst Du "nur" die Durchschnittsfarbe des gesamten Bildes bestimmen.
Die ganze Bildpunkt-Zählerei funtioniert natürlich nur bei DER Auflösung. Daher wäre ein Zwischenschritt wie z.B. definierte Kalibrierung mit einem Musterbild ganz nützlich.
> > Im Prinzip ja, nur solltest Du das Signal mit einer > Sample-and-Hold-Stufe aufbereiten, weil Dein ADC mit hoher > Wahrscheinlichkeit ganz erheblich langsamer ist als der Pixeltakt der > VGA-Karte. > > Das ist zur Steuerung eines "Ambilight"-Mechanismus eher ungeeignet. > > Sinnvoller erscheint mir die Integration/Mittelung aller Pixel in einem > Bildschirmquadranten zur Bestimmung der überwiegenden Farbe. > Ich würde gerne die Integrationsvariant verfolgen und das Bild in die Bereiche (siehe Anhang) unterteilen. Dafür baue ich jetzt ein OPV als Integrierer auf und lass den von Anfang der Zeile bis zur mitte Integrieren oder wie mache ich das am besten? Sample and hold über C und die Ladung entladung über µC Steuern? Über Hilfe wäre ich dankbar
evtl könnte man das anze sogar "halbdigital" lösen: ein Monoflop an V-Sync. dies muss "kippen" wenn die Hälfte der Zeilen vorbei sind. ein weiteres Monoflop an H-Sync, dies muss kippen, wann man auf der "rechten" Seite ist. Somit hast du 4 Zustände. Damit kannst du Analogschalter ansteuern die dir die 4 Bereiche auf einzelne Bereiche aufteilen. Integrieren tust du das Ganze noch in dem du jeweils ein RC-Glied dahinter hängst. je mehr ich darüber nachdenke um so einfacher sollte das sein. Mittels 2 Potis stellt man die "Mitte" ein und der Rest ist Analogtechnik. Gruß Roland
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.