1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Black lights for black scenes

Discussion in 'Hyperion General' started by schmidtjr, 18 May 2020.

  1. schmidtjr

    schmidtjr New Member

    Messages:
    9
    Hardware:
    RPi3, +nodeMCU/ESP8266
    Hi,

    I've got my setup up and running so far.
    Hyperion 2.0.0-alpha.5 on a RPI3+. 3 instances providing raw udp data to 3 esp8266. grabbing from avr using this grabber: https://www.amazon.de/gp/product/B07VS6X6S9
    settings in hyperion are pretty default, nothing special yet. Works really good so far.

    But I have one questions that's sticking in my head for a while. I thought I've read something about it, but I can't find it.
    Here's the question:
    Is it possible to disable the light for dark/black areas? If a movie is black, the lights are alway lighting low white. That's quite annoying because it destroys the dark scene.

    I'm unsure where to start for this. Hyperion itself can (of course) turn off the leds or dimm them really low. If using a single color source from the remote screen in ui, there's no problem. But via grabbed image, it's always white not black. So, is it a grabber configuration? Is it some after effects/image optimization? ist it blackborder detection (had it disabled, didn't change anything). Is it impossible due to the way hyperion works?

    Thank you very much in advance,
    kind regards,
    Martin Schmidt
     
  2. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    1,805
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
    Configuration->Image Processing->Coloured backlight

    should be off

    blackborder detection is only to detect the blackborders and cut them out
     
  3. schmidtjr

    schmidtjr New Member

    Messages:
    9
    Hardware:
    RPi3, +nodeMCU/ESP8266
    Hi,

    coloured backlight is disabled (per default) for all instances. My test video from youtube:

    but still, the lights are glowing white.
    udp output is defined to be always sending messages even if there are no changes in the image (in the image processing smoothing section).
    checked my WLED config if it interferes.
    - in wled there's no gamma correction, no brightness correction, no crossfade, no palette transitions, even no palette blending

    when colorpicking the live preview of hyperion virtualization, the black is not a real dark black, its rgb 30,30,30. but.. I don't know if this is a trustworthy and useful measurement.

    Kind regards,
    Martin
     
  4. Lord-Grey

    Lord-Grey Moderator Staff Member Developer

    Messages:
    168
    Hardware:
    RPi3, 32/64bit
    Could you export your configuration and share the output file?
     
  5. schmidtjr

    schmidtjr New Member

    Messages:
    9
    Hardware:
    RPi3, +nodeMCU/ESP8266
    Hi
    yes of course. Here it is.

    Kind regards,
    Martin
     

    Attached Files:

  6. Lord-Grey

    Lord-Grey Moderator Staff Member Developer

    Messages:
    168
    Hardware:
    RPi3, 32/64bit
    Hi

    a) "udp output is defined to be always sending messages even if there are no changes in the image"

    That is because you configured "rewriteTime": 5000 on the device
    Which means that every 5 seconds the last color is written, if there is no update to the device in between.

    Set the rewriteTime = 0

    Note: with PR 785 the rewrite time will not be configurable for network-devices going forward preventing that one runs into this scenario.

    b) You have 54 Leds in your Layout, but only 1 in the LedController. if you have 54 leds you should have that matching, i.e. Hardware LED count = 54

    For everything else, I tested with your You-Tube Video (via hyperions screen share capability) and have the output send to a "File" device and I cannot see any anything else than "Black" is written.
    So either there is a problem on the input or on the other end of the UDP- Stream.

    Beside that I would suggest you clean-up a) and b) anyway.
     
  7. schmidtjr

    schmidtjr New Member

    Messages:
    9
    Hardware:
    RPi3, +nodeMCU/ESP8266
    Hi,

    quick update, I had not much time today, sorry.
    @Lord-Grey: your anser raises some questions:
    1. rewriteTime -> can't be configured via hyperion.ng WebUI, or did I miss it somewhere?
    2. hardwareLedCount -> can't be configured via hyperion.ng WebUI, or did I miss it somewhere?

    The most interesting question for me:
    What's configuration export supposed to do? It only exports the configuration of the currently selected instance. Is this the desired behavior? That's not what I was expecting behind this functionality. (keep in mind, I have 3 instances configured, but in the previously attached config you see only one instance)

    I checked the UDP stream to see what's transmitted. I used "tcpdump -n udp port 19446 -X" on the hyperion machine.
    For the above attached config (brigthness 30%, gamma 1.0 for each channel) I get following output for the pure black video:
    Code:
    23:19:09.146171 IP 192.168.2.66.59461 > 192.168.2.11.19446: UDP, length 174
            0x0000:  4500 00ca 6105 4000 4011 5380 c0a8 0242  [email protected]@.S....B
            0x0010:  c0a8 020b e845 4bf6 00b6 8665 0303 0303  .....EK....e....
            0x0020:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x0030:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x0040:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x0050:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x0060:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x0070:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x0080:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x0090:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x00a0:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x00b0:  0303 0303 0303 0303 0303 0303 0303 0303  ................
            0x00c0:  0303 0303 0303 0303 0303                 ..........
    
    ignoring the udp headers, it doesn't look like what I would expect for pure black.

    Changing the gamma to 1.5 for each channel, I get:
    Code:
    23:21:38.096525 IP 192.168.2.66.59461 > 192.168.2.11.19446: UDP, length 174
            0x0000:  4500 00ca 83a6 4000 4011 30df c0a8 0242  [email protected]@.0....B
            0x0010:  c0a8 020b e845 4bf6 00b6 8665 0101 0101  .....EK....e....
            0x0020:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x0030:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x0040:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x0050:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x0060:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x0070:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x0080:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x0090:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x00a0:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x00b0:  0101 0101 0101 0101 0101 0101 0101 0101  ................
            0x00c0:  0101 0101 0101 0101 0101                 ..........
    
    which is still not pure black, but nearly.

    The snippets above (and the attached config) where from the top led strip.
    The left led strip is configured in the same way, except it has another led count. hardwareledcount and and rewrite time have been adapted manually in the json and reimported, as I did it with the top strip.

    same video, gamma at default (1.5), brigthness 100% gives the following udp dump for the left strip:
    Code:
    23:21:38.096466 IP 192.168.2.66.42907 > 192.168.2.10.19446: UDP, length 162
            0x0000:  4500 00be 2a3c 4000 4011 8a56 c0a8 0242  E...*<@[email protected]
            0x0010:  c0a8 020a a79b 4bf6 00aa 8658 0505 0505  ......K....X....
            0x0020:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x0030:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x0040:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x0050:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x0060:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x0070:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x0080:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x0090:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x00a0:  0505 0505 0505 0505 0505 0505 0505 0505  ................
            0x00b0:  0505 0505 0505 0505 0505 0505 0505       ..............
    
    So, based on the UDP traffic, I would say it's not the other end of the udp stream.
    I'm not familiar with the V4L2 grabbing. is there something that can be adjusted here? maybe the signal is just interpreted "too bright"?

    Kind regards,
    Martin


    Maybe an issue: After importing a configuration, the USB capture device is no longer working. I need to restart the hyperion service in order to have it running again.
     
  8. NeeeeB

    NeeeeB Member

    Messages:
    91
    Hardware:
    RPi3
    Hi,
    I had the same kind of problem at my first start with Hyperion.ng
    For example, on the waiting screen of Netflix (which is black), ambilight was emitting low white, and when someone on the screen was wearing a black suit on the edge of the screen, leds were still emitting low white instead of nothing.
    I fixed this by setting red/green/blue gammas to 2.5 instead of 1 in the "Image processing" tab. (color calibration).
    Don't know if it will work for you, but it is worth giving a try.
     
  9. schmidtjr

    schmidtjr New Member

    Messages:
    9
    Hardware:
    RPi3, +nodeMCU/ESP8266
    Hi
    Yes @NeeeB that's working. increased the gamma over 2.0 and now the lights are turned off in black scenes.

    Thank you very much.
    Kind regards,
    Martin
     
    • Like Like x 1
  10. NeeeeB

    NeeeeB Member

    Messages:
    91
    Hardware:
    RPi3
    You're welcome !! Glad I could help you !
     
  11. Lord-Grey

    Lord-Grey Moderator Staff Member Developer

    Messages:
    168
    Hardware:
    RPi3, 32/64bit
    @schmidtjr

    Please change the "Settings level" to "Expert". Then you should be able to see both configuration elements.
    You can find "settings level" via the most right icon at the top of the hyperion web-UI.

    I would suggest you capture this as a change request, that it is considered as part of the development backlog.

    https://github.com/hyperion-project/hyperion.ng/issues

    Kind regards.
     
  12. schmidtjr

    schmidtjr New Member

    Messages:
    9
    Hardware:
    RPi3, +nodeMCU/ESP8266