Smoothing Problem

  • Hi,
    ich habe bei Hyperion das Update auf die letzte Version durchgeführt.
    Bei diesem Update wurde ja wieder das continuousOutput eingeführt.
    Ich hatte gehofft das hiermit mein Problem gelöst wäre. Leider sieht es noch immer so aus als hätte sich bei dunklen Szenen die letzte Farbe eingebrannt.Fällt am meisten bei atktiver Hintergrundbeleuchtung auf. Der Einzige Unterschied ist das die Led's jetzt leicht Flackern.

  • hi, kannst mal deine config via pastbin (o.ä.) hier posten ... das machts etwas einfacher dein problem nachzuvollziehen.


    > Leider sieht es noch immer so aus als hätte sich bei dunklen Szenen die letzte Farbe eingebrannt.


    Ist der effekt ohne smoothing auch vorhanden?
    Nebenbei ich hatte bisher auch eher zweifel das "eingebrannte" farbe an smoothing mit deaktivierten continuous output liegt. Denn da wurde, falls keine neuen daten vorhanden waren immer die letzten LED farben gesendet.
    Es gab im smoothing wirklich ein bug, dieser trat aber nur auf bei continuousOutput=false und updateDeley>0. Dies ist jetzt behoben.


    Es könnt sein, das der Fehler ursächlich garnicht im smoothing liegt ... leider kann ich den effekt nicht reproduzieren, daher ists schwer mit der fehlersuche.

  • Ich habe die Änderungen bei Frequenz und time durch probiert leider ohne Erfolg.
    Wenn ich das Backlight aus mache ist der Fehler auch vorhanden fallt nur nicht so stack auf.
    Es immer zu sehen wenn zb. erst eine sehr grelle Farbe und danach ein grau wie von einer Straße folgt.
    Anstatt leicht grau ist dann die letzte Farbe zu sehen.

  • hmmmm, ich kanns beim besten willen nicht reproduzieren. Was ich sehe, ist wenn die parameter (time und updatefrq) ungünstig sind, dann gibts komische effekte ....



    getestet habe ich mit nem effekt der "grelle" farben produziert und dann auf schwarz schaltet.


    import hyperion, time
    while not hyperion.abort():
    hyperion.setColor(255, 15, 15)
    time.sleep(0.5)
    hyperion.setColor(0, 0, 0)
    time.sleep(0.5)
    hyperion.setColor(15, 255, 15)
    time.sleep(0.5)
    hyperion.setColor(0, 0, 0)
    time.sleep(0.5)
    hyperion.setColor(15, 15, 255)
    time.sleep(0.5)
    hyperion.setColor(0, 0, 0)
    time.sleep(1)


    Vom code her kann ich nur sagen, das das alles gut aussieht. Das einzige was mir da potenziell gefährlich aussieht ist die verwendung von dezimalzahlen. Das kann durchaus mal ungenau bei berechnungen werden (rundungsfehler, verlust der genauigkeit beim int casting, ...)


    Da aber der effekt schon von anderen gemeldet wurde, muss da natürlich was dran sein.

  • Wirklich seltsam. Ich hab auch schon alle Werte die sich mit HyperCon ändern lassen durch probiert, hat leider nichts geändert. Das einzige was bis jetzt wirklich geholfen hat war Smoothing aus machen. Aber dann sieht der Effekt an sich unsauber aus.
    Ich hätte auch gerne als Beispiel mal ein Video gemacht aber mit der Kamera bekommt man ja die Farben nicht richtig eingefangen.

  • ich ändere die einstellungen direkt in der konfig - sollte aber kein unterschied machen.
    Vielleicht hat es was mit der ledhardware zu tuen?
    Meine led hardware ist sehr anders als deine, vielleicht bekomme ich den effekt deswegen nich hin.
    Ich sende via tcp an einen serverdienst, der dann eine hardware namens "fadecandy" bedient. Daran hängen 2 ws2812 a ca. 64 leds.


    Das nette ist, das ding kann smoothing/interpolation gleich in hardware. Für die tests hab ich das natülich ausgeschaltet gehabt ...


    @Brindosch, du hast das phänomen doch auch beobachtet, vielleicht kannst du noch infos beisteuern

  • wir brauchen was reproduzierbares. Also am besten ein effekt der das problem produziert und virtuelle leds (https://github.com/redPanther/hypersim). Wenn wir das damit hinbekommen, dann sollte sich der fehler leicht finden lassen.


    Vom code her, wird smoothing und farbkorrektur vollkommen gleichwertig auf effekte und grabber angewandt (bzw. es ist an dem punkt wo die farbkorrektur gemacht wird, garnicht mehr zu sehen wo die led daten herkommen) - damit sollte es erstmal keinen unterschied geben, ob die daten vom effekt oder vom grabber kommen.


    Was ich auch spannend finden würde, ob der fehler auftritt wenn man die ganze farbkorrektur weglassen würde. Aktuell kann man die noch nicht via config umgehen, man müßte im code
    https://github.com/hyperion-pr…yperion/Hyperion.cpp#L877
    ledcolors durch priorityInfo.ledColors ersetzen und dann wird keine Korrektur vorgenommen.

  • Hey Leute, bin hier schon ne weile am Mitlesen, weil ich das Problem bei mir auch schon festgestellt habe. Hatte jetzt mal wieder ein bisschen Zeit zum Rumprobieren und habe bei mir was Reproduzierbares hinbekommen.
    Wenn ich mit HyperCon grelle Farben sende und danach Grautöne sende ist alles richtig. Wenn ich aber im Kodi ein graues Bild öffne (3F3F3F von [WIKI="hyperion-color-calibration-greylvl-pictures"]hier[/WIKI] funktioniert gut), dann Farben sende und zurücksetze, dann bleibt ein bisschen Farbe hängen und die LEDs sind nicht ganz grau.
    Es wird also irgendwas mit dem Grabber zu tun haben.

  • Servus,


    gibt es zu diesem Problem neue Lösungsansätze ?
    Deaktiviere ich Smoothing, ist das Problem weg . Jedoch kann ich dann das Ambilight nicht mehr mit dem Fernseher syncen . Aktiviere ich es mit der delayfunktion, habe ich dann aber wieder diese Artefakte. Pest oder Cholera :sickxx: .


    Grüße


    Andi

  • Moin,
    leider nicht das Problem besteht weiterhin, selbst bei Hyperion ng.
    Ich nutzte zur Zeit bei mir anstatt luminanceMinimum die alten blacklevel Einstellungen.
    zb.:
    "red" :
    {
    "threshold" : 0.0000,
    "gamma" : 2.2000,
    "blacklevel" : 0.0200
    Dadurch werden leider die Farben leicht verfälscht aber dieser seltsame Effekt ist nicht mehr sichtbar. So ist es zumindest für mich erträglicher.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!