Benutzeravatar
BERLINHIMMEL
Mitglied

Beiträge:103
Registriert:27. Mar 2016
Wohnort:Berlin

Nach Kalibrierung Falschfarben im KODI Menü und beim ersten Bildbetrachten (Gelöst)

28. Apr 2016, 19:10

Ich habe mein Ambilight nun kalibriert so das weiß auch wirklich weiß ist. Das hat so weit auch ganz gut funktioniert, doch stimmen seither die Farben im KODI Menü nicht mehr. Wo vorher blau und teils etwas weiß dominierten, sieht man nun grün und weiß. Wenn ich mir einen Film ansehe, dann funktioniert aber alles zu 100% richtig. Strange wird es auch, wenn ich die Rubrik "Bilder" öffne. Öffne ich ein Naturmotiv das ich mir zu Testzwecken auf den Pi gepackt habe, dann wollen die Farben auch nicht auf anhieb stimmen. So habe ich z.B. ein grünlastiges Motiv mit etwas Lichteinfall (weiß), die LED's zeigen aber zum Großteil nur weiß an. Von grün fehlt jede Spur. Lade ich das nächste Bild, eine Grafik die nur grün hat oder nur rot usw. passen die Farben wieder... Auch bei einem Motiv mit div. Farbstreifen stimmt alles. Kommt dann wieder das "grünlastige Motiv", passt nun auch hier wieder alles.

Das ganze betrifft aktuell nur die Konfiguration am Pi. Für externe Geräte habe ich noch nichts weiter gemacht / ausprobiert.

Da es recht schwer ist das nun alles in Text zu erklären und sich das dann auch noch vorzustellen, habe ich das mal aufgenommen und bei YT hochgeladen...
https://www.youtube.com/watch?v=Tk_Be17m-zE An Ende des Videos gibt es noch einen Intro der Berlinale wo die einzelnen LED's gut herausgefordert werden. Auch hier sieht man, dass alles prima funktioniert. Im Gegensatz zum ersten Foto jedoch eben sofort, ohne Probleme...

Hier meine hyperion.config Datei. Ich habe das Ende mal gekürzt, da hier ja nur das Setup für jede einzelne LED zu sehen ist. Also nicht wundern wenn da am Ende was fehlt.

Achja... Noch eine Frage bez. der Startanimation. Ich habe nun ein paar Versuche gemacht um die Zeit für die Startanimation zu erhöhen, jedoch erfolglos. Das ganze Leuchtet nur sehr kurz auf mit dem gewählten Modi (knapp 1 Sekunde) und dann ist schon wieder Ende. Ich habe den Wert mal auf 8000 Millisek. gesetzt oder 5000, doch werden diese Ignoriert wie mir scheint. Die Prio habe ich bei 990 belassen, aber auch testweise mal höher gehabt. Ebenfalls keine Besserung.

Code: Alles auswählen

// Automatically generated configuration file for 'Hyperion daemon'
// Generated by: HyperCon (The Hyperion deamon configuration file builder)
// Created with HyperCon V1.01.2 (31.03.2016)

{
   /// Device configuration contains the following fields:
   /// * 'name'       : The user friendly name of the device (only used for display purposes)
   /// * 'type'       : The type of the device or leds (known types for now are
   /// ---------SPI---------, APA102, WS2801, P9813, LPD6803, LPD8806, ---------PWM---------, WS2812b (just RPi1), WS281X (RPi1, RPi2, RPi3), --------OTHER--------, PhilipsHUE, AtmoOrb, PiBlaster, Tinkerforge, UDP, FadeCandy, SEDU, TPM2, USBASP-WS2801, USBASP-WS2812, ------3rd PARTY------, Adalight, AdalightAPA102, AmbiLed, Atmo, Lightpack, Multi-Lightpack, Paintpack, Test (file), None)
   /// * [device type specific configuration]
   /// * 'colorOrder' : The order of the color bytes ('rgb', 'rbg', 'bgr', etc.).
   "device" :
   {
      "name"       : "MyHyperionConfig",
      "type"       : "ws2801",
      "output"     : "/dev/spidev0.0",
      "rate"     : 1000000,
      "colorOrder" : "rbg"
   },

   /// Color manipulation configuration used to tune the output colors to specific surroundings.
   /// The configuration contains a list of color-transforms. Each transform contains the
   /// following fields:
   ///  * 'id'   : The unique identifier of the color transformation (eg 'device_1')   ///  * 'leds' : The indices (or index ranges) of the leds to which this color transform applies
   ///             (eg '0-5, 9, 11, 12-17'). The indices are zero based.   ///  * 'hsv' : The manipulation in the Hue-Saturation-Value color domain with the following
   ///            tuning parameters:
   ///            - 'saturationGain'  The gain adjustement of the saturation
   ///            - 'valueGain'       The gain adjustement of the value
   ///  * 'red'/'green'/'blue' : The manipulation in the Red-Green-Blue color domain with the
   ///                           following tuning parameters for each channel:
   ///            - 'threshold'       The minimum required input value for the channel to be on
   ///                                (else zero)
   ///            - 'gamma'           The gamma-curve correction factor
   ///            - 'blacklevel'      The lowest possible value (when the channel is black)
   ///            - 'whitelevel'      The highest possible value (when the channel is white)
   ///
   /// Next to the list with color transforms there is also a smoothing option.
   ///  * 'smoothing' : Smoothing of the colors in the time-domain with the following tuning
   ///                  parameters:
   ///            - 'type'            The type of smoothing algorithm ('linear' or 'none')
   ///            - 'time_ms'         The time constant for smoothing algorithm in milliseconds
   ///            - 'updateFrequency' The update frequency of the leds in Hz
   ///            - 'updateDelay'     The delay of the output to leds (in periods of smoothing)
   "color" :
   {
      "correction" :
      [
         {
            "id"   : "default",
            "leds" : "*",
            "correctionValues" :
            {
               "red"    : 150,
               "green"   : 255,
               "blue"    : 240
            }
         }
      ],
      "temperature" :
      [
         {
            "id"   : "default",
            "leds" : "*",
            "temperatureValues" :
            {
               "red"    : 255,
               "green"   : 240,
               "blue"    : 240
            }
         }
      ],
      "transform" :
      [
         {
            "id"   : "default",
            "leds" : "*",
            "hsv" :
            {
               "saturationGain"   : 1.0000,
               "valueGain"      : 0.8000
            },
            "hsl" :
            {
               "saturationGain"   : 1.0000,
               "luminanceGain"   : 1.0000
            },
            "red" :
            {
               "threshold"    : 0.0000,
               "gamma"        : 1.0000,
               "blacklevel"   : 0.0000,
               "whitelevel"   : 1.0000
            },
            "green" :
            {
               "threshold"    : 0.0000,
               "gamma"        : 1.0000,
               "blacklevel"   : 0.0000,
               "whitelevel"   : 1.0000
            },
            "blue" :
            {
               "threshold"    : 0.0000,
               "gamma"        : 1.0000,
               "blacklevel"   : 0.0000,
               "whitelevel"   : 0.2600
            }
         }
      ],

      "smoothing" :
      {
         "type"            : "linear",
         "time_ms"         : 200,
         "updateFrequency" : 25.0000,
         "updateDelay"     : 0
      }
   },

   /// The black border configuration, contains the following items:
   ///  * enable             : true if the detector should be activated
   ///  * threshold          : Value below which a pixel is regarded as black (value between 0.0 and 1.0)
   ///  * unknownFrameCnt      : Number of frames without any detection before the border is set to 0 (default 600)
   ///  * borderFrameCnt      : Number of frames before a consistent detected border gets set (default 50)
   ///  * maxInconsistentCnt    : Number of inconsistent frames that are ignored before a new border gets a chance to proof consistency
   ///  * blurRemoveCnt      : Number of pixels that get removed from the detected border to cut away blur (default 1)
   ///  * mode             : Border detection mode (values=default,classic,osd)
   "blackborderdetector" :
   {
      "enable" : true,
      "threshold" : 0.14,
      "unknownFrameCnt" : 600,
      "borderFrameCnt" : 50,
      "maxInconsistentCnt" : 10,
      "blurRemoveCnt" : 1,
      "mode" : "default"
   },

   /// The configuration of the effect engine, contains the following items:
   ///  * paths      : An array with absolute location(s) of directories with effects
   ///  * color       : Set static color after boot -> set effect to "" (empty) and input the values [R,G,B] and set duration_ms NOT to 0 (use 1) instead
   ///  * effect       : The effect selected as 'boot sequence'
   ///  * duration_ms   : The duration of the selected effect (0=endless)
   ///  * priority    : The priority of the selected effect/static color (default=990) HINT: lower value result in HIGHER priority!
   "effects" :
   {
      "paths" :
      [
         "/storage/hyperion/effects"
      ]
   },

   "bootsequence" :
   {
      "color" : [0,0,0],
      "effect" : "Rainbow mood",
      "duration_ms" : 3000,
      "priority" : 990
   },

   /// The configuration of the Json/Proto forwarder. Forward messages to multiple instances of Hyperion on same and/or other hosts
   /// 'proto' is mostly used for video streams and 'json' for effects
   ///  * proto   : Proto server adress and port of your target. Syntax:[IP:PORT] -> ["127.0.0.1:19447"] or more instances to forward ["127.0.0.1:19447","192.168.0.24:19449"]
   ///  * json   : Json server adress and port of your target. Syntax:[IP:PORT] -> ["127.0.0.1:19446"] or more instances to forward ["127.0.0.1:19446","192.168.0.24:19448"]
   ///  HINT:   If you redirect to "127.0.0.1" (localhost) you could start a second hyperion with another device/led config!
   ///       Be sure your client(s) is/are listening on the configured ports. The second Hyperion (if used) also needs to be configured! (HyperCon -> External -> Json Server/Proto Server)
   "forwarder" :
   {
      "proto" : ["127.0.0.1:19447"],
      "json" : ["127.0.0.1:19446"]
   },

   ///  The configuration for the frame-grabber, contains the following items:
   ///   * width        : The width of the grabbed frames [pixels]
   ///   * height       : The height of the grabbed frames [pixels]
   ///   * frequency_Hz : The frequency of the frame grab [Hz]
   ///   * priority     : The priority of the frame-gabber (Default=890) HINT: lower value result in HIGHER priority!
   ///   * ATTENTION    : Power-of-Two resolution is not supported and leads to unexpected behaviour!
   "framegrabber" :
   {
      "width" : 64,
      "height" : 64,
      "frequency_Hz" : 40.0,
      "priority" : 0
   },

   /// The configuration of the Kodi connection used to enable and disable the frame-grabber. Contains the following fields:
   ///  * xbmcAddress       : The IP address of the Kodi-host
   ///  * xbmcTcpPort       : The TCP-port of the Kodi-server
   ///  * grabVideo         : Flag indicating that the frame-grabber is on(true) during video playback
   ///  * grabPictures      : Flag indicating that the frame-grabber is on(true) during picture show
   ///  * grabAudio         : Flag indicating that the frame-grabber is on(true) during audio playback
   ///  * grabMenu          : Flag indicating that the frame-grabber is on(true) at the Kodi menu
   ///  * grabScreensaver   : Flag indicating that the frame-grabber is on(true) when Kodi is on screensaver
   ///  * enable3DDetection : Flag indicating that the frame-grabber should switch to a 3D compatible modus if a 3D video is playing
   "xbmcVideoChecker" :
   {
      "xbmcAddress" : "192.168.178.40",
      "xbmcTcpPort" : 9090,
      "grabVideo" : true,
      "grabPictures" : true,
      "grabAudio" : true,
      "grabMenu" : false,
      "grabScreensaver" : true,
      "enable3DDetection" : false
   },

   /// The configuration of the Json server which enables the json remote interface
   ///  * port : Port at which the json server is started
   "jsonServer" :
   {
      "port" : 19444
   },

   /// The configuration of the Proto server which enables the protobuffer remote interface
   ///  * port : Port at which the protobuffer server is started
   "protoServer" :
   {
      "port" : 19445
   },

   /// The configuration of the boblight server which enables the boblight remote interface
   ///  * port    : Port at which the boblight server is started
   ///  * priority: Priority of the boblight server (Default=900) HINT: lower value result in HIGHER priority!
   "boblightServer" :
   {
      "port" : 19333,
      "priority" : 900
   },

   /// Configuration for the embedded V4L2 grabber
   ///  * device          : V4L2 Device to use [default="/dev/video0"]
   ///  * input           : V4L2 input to use [default=0]
   ///  * standard        : Video standard (no-change/PAL/NTSC) [default="no-change"]
   ///  * width                : V4L2 width to set [default=-1]
   ///  * height               : V4L2 height to set [default=-1]
   ///  * frameDecimation      : Frame decimation factor [default=2]
   ///  * sizeDecimation       : Size decimation factor [default=8]
   ///  * priority             : Hyperion priority channel [default=900]
   ///  * mode                 : 3D mode to use 2D/3DSBS/3DTAB (note: no autodetection) [default="2D"]
   ///  * cropLeft             : Cropping from the left [default=0]
   ///  * cropRight            : Cropping from the right [default=0]
   ///  * cropTop              : Cropping from the top [default=0]
   ///  * cropBottom           : Cropping from the bottom [default=0]
   ///  * redSignalThreshold   : Signal threshold for the red channel between 0.0 and 1.0 [default=0.0]
   ///  * greenSignalThreshold : Signal threshold for the green channel between 0.0 and 1.0 [default=0.0]
   ///  * blueSignalThreshold  : Signal threshold for the blue channel between 0.0 and 1.0 [default=0.0]
   "grabber-v4l2" :
   {
      "device" : "/dev/video0",
      "input" : 0,
      "standard" : "NTSC",
      "width" : -1,
      "height" : -1,
      "frameDecimation" : 2,
      "sizeDecimation" : 4,
      "priority" : 900,
      "mode" : "2D",
      "cropLeft" : 6,
      "cropRight" : 6,
      "cropTop" : 2,
      "cropBottom" : 2,
      "redSignalThreshold" : 0.1,
      "greenSignalThreshold" : 0.1,
      "blueSignalThreshold" : 0.1
   },

   ///  The configuration for each individual led. This contains the specification of the area
   ///  averaged of an input image for each led to determine its color. Each item in the list
   ///  contains the following fields:
   ///  * index: The index of the led. This determines its location in the string of leds; zero
   ///           being the first led.
   ///  * hscan: The fractional part of the image along the horizontal used for the averaging
   ///           (minimum and maximum inclusive)
   ///  * vscan: The fractional part of the image along the vertical used for the averaging
   ///           (minimum and maximum inclusive)
   "leds" :
Zuletzt geändert von BERLINHIMMEL am 1. Mai 2016, 02:35, insgesamt 1-mal geändert.
Mein Projekt "Ambilight hinter eine Leinwand" erfolgreich abgeschlossen.

b2un0
Moderator

Beiträge:1819
Registriert:16. Nov 2015
Wohnort:Hamburg
Beruf:Softwareentwickler

Nach Kalibrierung Falschfarben im KODI Menü und beim ersten Bildbetrachten

29. Apr 2016, 08:15

Für das Grundlegende Problem habe ich erstmal keine Lösung, aber deine Konfiguration ist einfach viel zu voll.

"forwarder" solltest du abschalten wenn du es nicht verwendest (spart Ressourcen)
"xbmcAddress" sollte auf 127.0.0.1 stehen wenn es die gleiche Maschine ist
"boblightServer" kannst du ebenfalls abschalten wenn du es nicht verwendest (spart Ressourcen)
"grabber-v4l2" hat in deiner Konfig für Kodi nichts zu suchen -> abschalten!

Bzgl der Startanimation: entfern Testweise den "color" eintrag unter "bootsequence", aber Grundsätzlich sollte "duration_ms" natürlich greifen.

Ansonsten kann ich dir nur den TIi geben: setz alle Farb/Transform Werte auf Standard zurück und verpass dem Stripe einfach noch mal Strom am Ende. Dann klappts evtl auch mit den richtigen Farben ;)
Kein Support per PM!

BERLINHIMMEL
Mitglied

Beiträge:103
Registriert:27. Mar 2016
Wohnort:Berlin

Nach Kalibrierung Falschfarben im KODI Menü und beim ersten Bildbetrachten

30. Apr 2016, 14:01

Hi,

mal so auf die schnelle... (später ggf. mehr). Das der grabber-v4l2 eigentlich nicht aktiv sein soll habe ich der Anleitung bereits entnommen. Mache ich ihn aber aus, läuft das Ambilight nicht mehr. Sobald er aktiv ist, funktioniert es.

Was mich auch etwas anstrengt ist, das die Konfiguration für Hyperion ziemlich vergesslich ist. Sprich, schalte ich die Software aus, sind viele meiner Einstellungen (Mac OS) futsch. Es hilft auch nicht vorher einen export und dann wieder einen Import der Settings zu machen. Das erschwert die Konfiguration ungemein, weil ich jedes mal div. Daten wieder neu eingeben muss und das ist perfekt für den Fehlerteufel. Ich bin fast dazu übergegangen, direkt in der config datei zu arbeiten, wenn sie richtig funktioniert.
Mein Projekt "Ambilight hinter eine Leinwand" erfolgreich abgeschlossen.

BERLINHIMMEL
Mitglied

Beiträge:103
Registriert:27. Mar 2016
Wohnort:Berlin

Nach Kalibrierung Falschfarben im KODI Menü und beim ersten Bildbetrachten

1. Mai 2016, 02:25

So. Ich habe das Problem nun behoben, auch wenn ich nicht genau weiß wo es nun lag. Ich habe nun unter Windows (via Parallels am Mac) das Konfig-Programm installiert und zwar in der frischen Version 1.02.0, wo sich noch einmal ein paar Dinge vereinfacht haben zu meiner Freude.

Parallel dazu habe ich auf das offizielle Wiki zurückgegriffen, wo alles noch etwas genauer beschrieben steht und man auch div. Testbilder zum Download bekommt für die Kalibrierung. -> https://hyperion-project.org/wiki/a-Hyp ... figuration

Am Ende hat nun alles gepasst und die Farben werden nun korrekt angezeigt, egal ob ich nun ein Bild ansehe, ein Film / Video oder ob ich im Menü rumswitche.

Das Problem hat sich also erledigt.
Mein Projekt "Ambilight hinter eine Leinwand" erfolgreich abgeschlossen.

Zurück zu „Ambilight - Support“