Benutzeravatar
sanj3k
Neuling

Beiträge:8
Registriert:23. Dec 2016

Ambilight V4L2 Grabber + PS4 (keine Pro)

23. Dez 2016, 12:03

Hi Leute,

nachdem ich das Ambilight für Kodi hinbekommen hatte, wollte ich es auch für die HDMI fähigen Geräte (zB PS4) aufbauen und habe wie in der Anleitung alle Sachen gekauft + aufgebaut. Ich glaube bei mir stimmen die Crop Werte nicht (aus der Anleitung) ich habe ein Screenshot gemacht und per Paint markieren neue Crop Pixel Werte bestimmt. Ich habe dafür von Joachim Wilkes Kalibrierungsanleitung die Bilder benutzt....

Bild

Das Bild über den PS4 Media Player geöffnet und voll gezoomed.

Ich komme auf unten 2 px, rechts 10px, oben 13px und links 25px abschneiden ist das korrekt?

Hier die Grabber Config seperat und die ganze Json kommt zum Schluss. Ist width -1 und height -1 so gewollt? Oder kommen da eigentlich andere Werte rein?

Weil vorhin beim Kalibrieren mit den Bildern (schwarz zu rot Verlauf zum Beispiel) waren Fehler bei den Lichtern. Beim hoch runter drehen vom Gamma wurde die linke Seite dunkler usw. und wenn man das Bild verschoben hat auch teilweise oben mal heller, ich denke dass da die Pixel nicht stimmen, da auch gefühlt bei clockwise/counter clockwise das gleiche Verhalten war. Weiß hier zu jemand was?

Code: Alles auswählen

"grabber-v4l2" :
   {
      "device" : "/dev/video0",
      "input" : 0,
      "standard" : "NTSC",
      "width" : -1,
      "height" : -1,
      "frameDecimation" : 2,
      "sizeDecimation" : 4,
      "priority" : 800,
      "mode" : "2D",
      "cropLeft" : 25,
      "cropRight" : 10,
      "cropTop" : 13,
      "cropBottom" : 2,
      "redSignalThreshold" : 0.1,
      "greenSignalThreshold" : 0.1,
      "blueSignalThreshold" : 0.1
   },


Die gesamte Config:

Code: Alles auswählen

// Automatically generated configuration file for Hyperion ambilight daemon
// Notice: All values are explained with comments at our wiki: wiki.hyperion-project.org (config area)
// Generated by: HyperCon (The Hyperion deamon configuration file builder)
// Created with HyperCon V1.03.1 (11.06.2016)

{
   // DEVICE CONFIGURATION
   "device" :
   {
      "name"       : "MyHyperionConfigGrabber",
      "type"       : "ws2801",
      "output"     : "/dev/spidev0.0",
      "rate"     : 250000,
      "colorOrder" : "rbg"
   },

   // COLOR CALIBRATION CONFIG
   "color" :
   {
      "channelAdjustment" :
      [
         {
            "id"   : "default",
            "leds" : "*",
            "pureRed" :
            {
               "redChannel"      : 255,
               "greenChannel"      : 0,
               "blueChannel"      : 0
            },
            "pureGreen" :
            {
               "redChannel"      : 0,
               "greenChannel"      : 112,
               "blueChannel"      : 0
            },
            "pureBlue" :
            {
               "redChannel"      : 0,
               "greenChannel"      : 0,
               "blueChannel"      : 122
            }
         }
      ],
      "temperature" :
      [
         {
            "id"   : "default",
            "leds" : "*",
            "correctionValues" :
            {
               "red"    : 255,
               "green"   : 255,
               "blue"    : 255
            }
         }
      ],
      "transform" :
      [
         {
            "id"   : "default",
            "leds" : "*",
            "hsl" :
            {
               "saturationGain"   : 1.4700,
               "luminanceGain"      : 1.9600,
               "luminanceMinimum"      : 0.0000
            },
            "red" :
            {
               "threshold"    : 0.1900,
               "gamma"        : 2.0000
            },
            "green" :
            {
               "threshold"    : 0.1900,
               "gamma"        : 2.0000
            },
            "blue" :
            {
               "threshold"    : 0.1900,
               "gamma"        : 2.0000
            }
         }
      ],
   // SMOOTHING CONFIG
      "smoothing" :
      {
         "type"            : "linear",
         "time_ms"         : 200,
         "updateFrequency" : 25.0000,
         "updateDelay"     : 0
      }
   },

   // V4L2 GRABBER CONFIG
   "grabber-v4l2" :
   {
      "device" : "/dev/video0",
      "input" : 0,
      "standard" : "NTSC",
      "width" : -1,
      "height" : -1,
      "frameDecimation" : 2,
      "sizeDecimation" : 4,
      "priority" : 800,
      "mode" : "2D",
      "cropLeft" : 25,
      "cropRight" : 10,
      "cropTop" : 13,
      "cropBottom" : 2,
      "redSignalThreshold" : 0.1,
      "greenSignalThreshold" : 0.1,
      "blueSignalThreshold" : 0.1
   },

   // BLACKBORDER CONFIG
   "blackborderdetector" :
   {
      "enable" : true,
      "threshold" : 0.14,
      "unknownFrameCnt" : 600,
      "borderFrameCnt" : 50,
      "maxInconsistentCnt" : 10,
      "blurRemoveCnt" : 1,
      "mode" : "default"
   },

   // BOOTEFFECT CONFIG
   "bootsequence" :
   {
      "color" : [0,0,0],
      "effect" : "Rainbow swirl fast",
      "duration_ms" : 3000,
      "priority" : 700
   },

   // JSON SERVER CONFIG
   "jsonServer" :
   {
      "port" : 19444
   },

   // PROTO SERVER CONFIG
   "protoServer" :
   {
      "port" : 19445
   },

   // EFFECT PATH
   "effects" :
   {
      "paths" :
      [
         "/storage/hyperion/effects",
         "/usr/share/hyperion/effects"
      ]
   },

   // NO FRAME GRABBER CONFIG
   // NO KODI CHECK CONFIG
   // NO BOBLIGHT SERVER CONFIG
   // NO JSON/PROTO FORWARD CONFIG

   // LED CONFIGURATION
   "leds" :
   [
      {
         "index" : 0,
         "hscan" : { "minimum" : 0.3200, "maximum" : 0.3600 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 1,
         "hscan" : { "minimum" : 0.2800, "maximum" : 0.3200 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 2,
         "hscan" : { "minimum" : 0.2400, "maximum" : 0.2800 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 3,
         "hscan" : { "minimum" : 0.2000, "maximum" : 0.2400 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 4,
         "hscan" : { "minimum" : 0.1600, "maximum" : 0.2000 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 5,
         "hscan" : { "minimum" : 0.1200, "maximum" : 0.1600 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 6,
         "hscan" : { "minimum" : 0.0800, "maximum" : 0.1200 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 7,
         "hscan" : { "minimum" : 0.0400, "maximum" : 0.0800 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 8,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0400 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 9,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.9231, "maximum" : 1.0000 }
      },
      {
         "index" : 10,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.8462, "maximum" : 0.9231 }
      },
      {
         "index" : 11,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.7692, "maximum" : 0.8462 }
      },
      {
         "index" : 12,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.6923, "maximum" : 0.7692 }
      },
      {
         "index" : 13,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.6154, "maximum" : 0.6923 }
      },
      {
         "index" : 14,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.5385, "maximum" : 0.6154 }
      },
      {
         "index" : 15,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.4615, "maximum" : 0.5385 }
      },
      {
         "index" : 16,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.3846, "maximum" : 0.4615 }
      },
      {
         "index" : 17,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.3077, "maximum" : 0.3846 }
      },
      {
         "index" : 18,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.2308, "maximum" : 0.3077 }
      },
      {
         "index" : 19,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.1538, "maximum" : 0.2308 }
      },
      {
         "index" : 20,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.0769, "maximum" : 0.1538 }
      },
      {
         "index" : 21,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0769 }
      },
      {
         "index" : 22,
         "hscan" : { "minimum" : 0.0000, "maximum" : 0.0400 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 23,
         "hscan" : { "minimum" : 0.0400, "maximum" : 0.0800 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 24,
         "hscan" : { "minimum" : 0.0800, "maximum" : 0.1200 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 25,
         "hscan" : { "minimum" : 0.1200, "maximum" : 0.1600 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 26,
         "hscan" : { "minimum" : 0.1600, "maximum" : 0.2000 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 27,
         "hscan" : { "minimum" : 0.2000, "maximum" : 0.2400 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 28,
         "hscan" : { "minimum" : 0.2400, "maximum" : 0.2800 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 29,
         "hscan" : { "minimum" : 0.2800, "maximum" : 0.3200 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 30,
         "hscan" : { "minimum" : 0.3200, "maximum" : 0.3600 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 31,
         "hscan" : { "minimum" : 0.3600, "maximum" : 0.4000 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 32,
         "hscan" : { "minimum" : 0.4000, "maximum" : 0.4400 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 33,
         "hscan" : { "minimum" : 0.4400, "maximum" : 0.4800 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 34,
         "hscan" : { "minimum" : 0.4800, "maximum" : 0.5200 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 35,
         "hscan" : { "minimum" : 0.5200, "maximum" : 0.5600 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 36,
         "hscan" : { "minimum" : 0.5600, "maximum" : 0.6000 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 37,
         "hscan" : { "minimum" : 0.6000, "maximum" : 0.6400 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 38,
         "hscan" : { "minimum" : 0.6400, "maximum" : 0.6800 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 39,
         "hscan" : { "minimum" : 0.6800, "maximum" : 0.7200 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 40,
         "hscan" : { "minimum" : 0.7200, "maximum" : 0.7600 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 41,
         "hscan" : { "minimum" : 0.7600, "maximum" : 0.8000 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 42,
         "hscan" : { "minimum" : 0.8000, "maximum" : 0.8400 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 43,
         "hscan" : { "minimum" : 0.8400, "maximum" : 0.8800 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 44,
         "hscan" : { "minimum" : 0.8800, "maximum" : 0.9200 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 45,
         "hscan" : { "minimum" : 0.9200, "maximum" : 0.9600 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 46,
         "hscan" : { "minimum" : 0.9600, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
      },
      {
         "index" : 47,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.0000, "maximum" : 0.0769 }
      },
      {
         "index" : 48,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.0769, "maximum" : 0.1538 }
      },
      {
         "index" : 49,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.1538, "maximum" : 0.2308 }
      },
      {
         "index" : 50,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.2308, "maximum" : 0.3077 }
      },
      {
         "index" : 51,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.3077, "maximum" : 0.3846 }
      },
      {
         "index" : 52,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.3846, "maximum" : 0.4615 }
      },
      {
         "index" : 53,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.4615, "maximum" : 0.5385 }
      },
      {
         "index" : 54,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.5385, "maximum" : 0.6154 }
      },
      {
         "index" : 55,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.6154, "maximum" : 0.6923 }
      },
      {
         "index" : 56,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.6923, "maximum" : 0.7692 }
      },
      {
         "index" : 57,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.7692, "maximum" : 0.8462 }
      },
      {
         "index" : 58,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.8462, "maximum" : 0.9231 }
      },
      {
         "index" : 59,
         "hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.9231, "maximum" : 1.0000 }
      },
      {
         "index" : 60,
         "hscan" : { "minimum" : 0.9600, "maximum" : 1.0000 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 61,
         "hscan" : { "minimum" : 0.9200, "maximum" : 0.9600 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 62,
         "hscan" : { "minimum" : 0.8800, "maximum" : 0.9200 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 63,
         "hscan" : { "minimum" : 0.8400, "maximum" : 0.8800 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 64,
         "hscan" : { "minimum" : 0.8000, "maximum" : 0.8400 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 65,
         "hscan" : { "minimum" : 0.7600, "maximum" : 0.8000 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 66,
         "hscan" : { "minimum" : 0.7200, "maximum" : 0.7600 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 67,
         "hscan" : { "minimum" : 0.6800, "maximum" : 0.7200 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      },
      {
         "index" : 68,
         "hscan" : { "minimum" : 0.6400, "maximum" : 0.6800 },
         "vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
      }
   ],

   "endOfJson" : "endOfJson"
}

sanj3k
Neuling

Beiträge:8
Registriert:23. Dec 2016

Ambilight V4L2 Grabber + PS4 (keine Pro)

23. Dez 2016, 14:47

Hier noch mal ein PS4 Homescreen Bildschirm, wie gesagt passen die Werte von der Grabber Config? Und warum geht auf der falschen Seite das halb dunkle Bild dunkler? Also ich schalte Ambilight aus und wieder an oder muss ich den Pi ganz neu starten wenn ich eine neue Grabber.json Datei raufziehe?

Bild

Edit: Ärgere mich gerade drüber... Ja Counter Clockwise ausprobiert, aber ohne die LED 0 auf den richtigen Anfang zu setzen -.- (beim letzten Mal also für Kodi hatte ich noch dran gedacht dieses mal habe ich das nachts gemacht und gepennt ^^) bin auch in einem anderen Grabber Thread darüber gestolpert dass man den HDMI2AV Konverter auf NTSC stellen soll, damit das Bild nicht so abgehackt ist. Wie ihr seht in diesem Screenshot ist nicht das gesamte Bild da. Beim neuen schon ^^ Also ich denke damit sind meine Probleme Adé :) setze mich nur noch mal an die Kalibrierung und dann endlich genießen!

sanj3k
Neuling

Beiträge:8
Registriert:23. Dec 2016

Ambilight V4L2 Grabber + PS4 (keine Pro)

23. Dez 2016, 18:31

Ist das normal, dass die Quali so aussieht beim Grabber?

Bild

Irgendwie bei den einzelnen Testbildern super kalibriert, aber die Thresholds sind scheinbar fürcherlich also die Farben sehen total anders aus aus dem Ambilight. (Das ist jetzt mit black border detection auf 0.07 in der Anleitung wird ja 0.14 genannt, aber zu Demo Zwecken mal etwas niedriger gestellt)

Bild

Arminius
Mitglied

Beiträge:317
Registriert:24. Nov 2015

Ambilight V4L2 Grabber + PS4 (keine Pro)

2. Jan 2017, 13:37

Die Blackborder Detection hat nichts mit den Farben zu tun. Damit stellst du ein, dass bei Spielfilmen die schwarzen Ränder übersprungen werden und das Ambilight die Farben weiter innen analysiert und wiedergibt.
Ich denke es ist bei dir nun einfach eine Einstellungssache. Die Einstellungen bei Testbildern vorzunehmen ist zwar eine gute Idee, aber bei mir hat es nicht gut funktioniert. Ich habe dann bei Filmen immer wieder angehalten und die Feinjustierung mit der App gemacht. Anschließend habe ich eine neue Config mit den ermittelten Werten erstellt.
Wichtig: Immer einen Neustart, wenn du etwas an der Config veränderst!
Beste Grüße

Arminius

Mein Ambilight in Aktion --> https://youtu.be/ODVdEI93R3E

Zurück zu „Ambilight - Support“