Nachdem es die letzten Tage nur ein Plugin Container war, welcher vorne auf dem softhddevice grabbed , hinten auf den LEDs ein lustiges Lauflicht spielt, wissen wir seit gestern Abend das es geht, und zwar so richtig performant!
Wir haben ein paar Sachen getestet, den Code von Softhddevice und dfatmo analysiert, und auch mit johns geschrieben und beim Plaudern kam dann das Thema auf Skalierung . Daraus ist dann die Idee gewachsen das ganze Thema in Hardware mit vdpau auf der Graka erschlagen zu wollen.
Man muss sich vorstellen man hat ein LED Setup von sagen wir 30x16 LED rundherum, das sagen wir dem softhddevice und bekommen ein fertiges Bild runterskaliert auf unserere LED Geometrie zugeschnitten, wir brauchen grundsätzlich nur noch die (Rand)Pixel ausgeben. Das grabben dieses Miniaturbildes ist dann natürlich extrem performant.
Wir haben dazu gestern ein Patch für Softhddevice gebaut und das ganze ausprobiert: und ich muss sagen das funktioniert prima und benötigt (ohne weitere Verarbeitung, nur 1:1 auf den Stripe geschoben) an der Stelle 0% CPU. – Somit haben wir nur noch die 6% mehr CPU, die durch den Stream auf dem UART entstehen.
Wie gesagt ist es bis hierher nur eine Machbarkeitsstudie, man kann noch nichts einstellen, alles ist hart einkompiliert, gestern ging auch nur oben und unten (die Seiten noch nicht): aber es funktioniert tadellos!
An dieser Stelle hier auch ganz besonderen Dank an Jörg. Auch wenn er meist etwas im Hintergrund bleibt: ohne sein geniales Coding sind solche Projekte nicht möglich!
Christian