Das funktioniert wohl so. Aber es gibt diesen DISP_CMD_LAYER_SET_SCN_WINDOW ioctl. Muss doch möglich sein, auf den "großen" DISP_CMD_LAYER_SET_PARA zu verzichten...
Magst nochmal probieren? Ich hatte x + y vergessen zu setzen. SRC_WINDOW wird wohl nicht benötigt. Ansonsten kann man ja deinen Patch mal etwas abgewandelt einbauen, damit zumindest die video.id nicht zurückgesetzt wird.
Gruß
Andreas
Beiträge von rell
-
-
Stimmt. War offensichtlich falsch. Tsts... Habs noch mal geändert und ein paar Debugs zugefügt. Vielleicht könntests du es nochmal probieren...
Danke
Andreas -
Problem #3 (schwarzes Bild bei Umschalten zwischen Fenster- und Vollbildmodus):
Gerade ist mir aufgefallen, dass das Bild immer bei Größenänderung des Fensters schwarz wird. Falls man das Fenster "nur" verschiebt, wird der Fensterrahmen verschoben, das Bild jedoch weiter an der letzten Position ausgegeben. Das Problem wird also durch Verkleinern/Vergrößern/Vollbild/Fenstermodus ausgelöst. Nach Umschalten auf einen anderen Kanal kommt das Bild wieder. Da wird wohl neu initialisiert.
Hallo Oliver,
kannst du das mal mit diesem Branch probieren. Müsste der richtige Ansatz sein, selbst habe ich es allerdings (noch) nicht probiert.
Gruß Andreas -
Kann man das Problem schon einschränken?
Nach den Meldungen fallen Systeme mit dvbhddevice und rpihddevice ja dann weg. D.h. VDR an sich und streamdev könnte man ausschließen?
Ein System mit softhddevice und nvidia könnte dann wohl klären, obs an softhddevice oder libvdpau-sunxi oder beiden liegt...?Gruß
Andreas -
Nein, damit geht es schon nicht mehr. Aber mit dem Commit davor https://github.com/rellla/libv…8abd504f869a1f0ae9798a13q kommt noch ein Bild - es "zappelt" allerdings.
Hm. Ich muss das selber mal probieren. Findet sich irgendwas in den Logs? VDR funktioniert also (bis auf #1-#3), mplayer nicht?
Hat noch jemand das Problem, bzw. könnte mal jemand mplayer/ mpv direkt auf der Konsole ohne WM starten?
Gruß Andreas -
Kannst du mal versuchen, den letzten funktionierenden Commit rauszufinden um das etwas einzuschränken. Geht es da noch?
Gruß Andreas -
Das liegt daran, dass mit dem neuen Code die Größe und Lage des Fenster nur beim Beginn des Streams gesetzt werden.
Kann wie gesagt daran liegen.
Gruß Andreas -
Falls hier Mathematiker unter uns sind, könnte sich wer diese Funktionen ansehen.
Es müssten hier die Werte für Brightness, Contrast, Saturation und Hue aus den beiden Matrizen (csc_matrix von vdpau hier erstellt) und der jeweils zugehörigen Farbraum Matrix zurückgerechnet werden, da man dem Display Treiber nicht die CSC Matrix sondern nur die Einzelwerte mitgeben kann.
Die derzeitigen Funktionen liefern zwar Ergebnisse, die sind aber nicht zu 100% korrekt. Contrast schaffe ich, die anderen überfordern meine Fähigkeiten. Zumal das Rückwärtsrechnen von sinus Funktionen erstmal kein eindeutiges Ergebnis liefert.Gruß
AndreasUFO: Ich wollte eigentlich nicht mehr bugs schaffen, als Features einzuführen XClearWindow?
-
Im stage/fixed Branch den du leider gelöscht hast
Ist nochmal oben. Kannst nochmal probieren bzw. schauen was da anders ist.
Ich hab da ein ganz schönes Durcheinander in den Branches, und bevor sich keiner mehr auskennt, habe ich versucht zu reduzieren :p
Zusammen mit ständigem Rebasen wird das mit der Zeit chaotisch[EDIT] Bis auf das "#define FORCE_DEINT", das es nicht mehr gibt, sollte es zumindest was den Deinterlacer angeht keine Unterschiede geben.[/EDIT]
Gruß Andreas
-
Ok. Das liegt daran, dass mit dem neuen Code die Größe und Lage des Fenster nur beim Beginn des Streams gesetzt werden. Verändert man die Lage und Größe während des Abspielens, gibts Probleme.
Der master branch hat bei jedem Frame die Display Initialisierung durchlaufen, was dieses Problem dann gar nicht zum Vorschein brachte und/ aber auch mehr Resourcen benötigt.
Ich muss mir das mal anschauen. Sollte nicht zu schwer sein, das zu lösen.Gruß
Andreas -
Hallo,
ohne mich jemals selbst mit der MLD beschäftigt zu haben habe ich eine Anmerkung.
Würde es Sinn machen bzw. ist es sogar geplant, dass man die Distribution nicht auf den BananaPi beschränkt, sondern allen A10/A20 Devices zugänglich macht?
Sollte sich ja im Grunde nur in ein paar Dingen unterscheiden. Sowas wie mld-sunxi ...Gruß
Andreas -
Die beiden letzteren Fehler könnten daher kommen, dass XClearWindow; auskommentiert wurde.
Das wirkt sich wohl aus, wenn man das ganze nicht im kompletten Vollbildmodus ohne Window Manager betreibt.
Du kannst ja mal den Branch dev_upstream versuchen, ob da die Probleme auch noch da sind. Einziger Unterschied zum dev ist die Zeile XClearWindow;
Allerdings ist auch damit zu rechnen, dass die CPU Auslastung steigt.Gruß Andreas
-
Und dazu nach Möglichkeit diesen libvdpau-sunxi Branch verwenden.
Bitte Rückmeldung, wenns funktioniert :p
Danke Andreas -
Nein. Dafür speziell nicht. Fangen nur falsch ubergebene Werte ab, die evtl. vom Programm kommen.
Gruß andreas -
Fehler gefunden und korrigiert:
https://github.com/rellla/libvdpau-sunxi ->dev
Ich habe hier 10% cpu bei 576i und 18% bei 720p auf einem A20. Schaut sich ganz gut
Gruß Andreas -
Hallo,
habs ausgebessert. Ein weiterer Fehler war auch noch drin. Mit dem ewigen Rebasen ist das so eine Sache. Das war jetzt hoffentlich der letzte. Ab jetzt gibts wieder vernünftige Fix-Commits.
Danke Joachim. Hoffe, es ist jetzt alles soweit drin...
Gruß
Andreas -
Der vom Lemaker passt. Im linux-sunxi/sunxi-3.4 ist der gmac patch für den bananapi nicht drin.
Hast du die anderen patches auch mitgebaut? G2D noop blits (+fix) + disp div by 0 ...
Wie man die CSC Sache überhaupt nutzt, weiß ich nicht.Gruß
Andreas -
Hallo,
aktueller Kernelpatch wäre dieser hier. V3 ganz unten etwas überarbeitet.
Dazu habe ich versucht, die CSC Geschichte in libvdpau-sunxi etwas zu überarbeiten. Kam aber leider noch nicht zum Testen. Wer will, kanns ja mal ausprobieren.
Habe soeben auch endlich mal stage/fixed probiert, und muss gestehen, das läuft ganz gut. Praxistauglich. Dank der fleißigen Mithilfe von johns wohlgemerkt :pGruß Andreas
-
Den stage/fixed Branch habe ich gerade ein bißchen ge-rebased und ist wohl der aktuellste und sauberste Stand mit den ganzen fixes aus dev_upstream_fix2.
Happy Testing!Danke Johns!
Gruß Andreas
-