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

RPi + Other Software NG Hyperion-v4l2 capture resolution issue

Discussion in 'Software Support' started by popecix, 8 August 2019.

  1. popecix

    popecix New Member

    Messages:
    5
    Hardware:
    RPi3
    Hi All,

    I've been using Hyperion for years and have a working classic setup with HDMI2AV on an older TV, and just recently purchased a new 4k.

    On the new one I went with RPi3B, WS2812spi, and Hyperion.ng - all of which appears to be working fine, but running into the same issues of HDR washout, etc... that everyone else sees when using converters/splitters and a USB AV Cap dongle. So decided to try out the USB camera solution as discussed in this thread: https://hyperion-project.org/thread...cam-in-front-of-tv-prepare-input-region.2615/

    Had a Logitech C270 already, so the setup was pretty straight forward and largely works, but strangely the NG version of hyperion-v4l2 will only capture at 160x120, even with no screen decrementing. Even setting the resolution with v4l2-ctl before running it has no effect, because it seems to just get set back whenever hyperion-v4l2 runs:

    Code:
    [email protected]:~ $ v4l2-ctl -v width=640,height=480
    [email protected]:~ $ v4l2-ctl -V
    Format Video Capture:
        Width/Height      : 640/480
        Pixel Format      : 'YUYV' (YUYV 4:2:2)
        Field             : None
        Bytes per Line    : 1280
        Size Image        : 614400
        Colorspace        : sRGB
        Transfer Function : Default (maps to sRGB)
        YCbCr/HSV Encoding: Default (maps to ITU-R 601)
        Quantization      : Default (maps to Limited Range)
        Flags             :
    [email protected]:~ $ hyperion-v4l2 -s 1 --screenshot
    hyperion-v4l2:
        Version   : 1.0.0 (master (Paulchen-Panther-65c2fdba/4fc745e7-1564845603) Git Remote: https://github.com/hyperion-project/hyperion.ng.git)
        build time: Aug  7 2019 17:32:36
    
    Signal detection informations
    =============================
    dimension after decimation: 160 x 120
    signal detection area  : 40,30 x 120,90
    
    WARNING "no signal image" is to dark, signal detection is not relaiable.
    WARNING difference between threshold color and the other color components is to small, signal detection might have problems.
    
    suggested config values for signal detection:
        "redSignalThreshold"   : 0.29,
        "greenSignalThreshold" : 0.39,
        "blueSignalThreshold"  : 0.32,
        "signalDetectionHorizontalOffsetMin" : 0.26,
        "signalDetectionVerticalOffsetMin"   : 0.27,
        "signalDetectionHorizontalOffsetMax" : 0.3,
        "signalDetectionVerticalOffsetMax"   : 0.75
    
    Relevant config entries here:
    Code:
        "general": {
            "name": "My Hyperion Config",
            "showOptHelp": true,
            "watchedVersionBranch": "Stable"
        },
        "grabberV4L2": {
            "blueSignalThreshold": 5,
            "cropBottom": 0,
            "cropLeft": 0,
            "cropRight": 0,
            "cropTop": 0,
            "device": "/dev/video0",
            "greenSignalThreshold": 5,
            "redSignalThreshold": 5,
            "sDHOffsetMax": 0.75,
            "sDHOffsetMin": 0.25,
            "sDVOffsetMax": 0.75,
            "sDVOffsetMin": 0.25,
            "signalDetection": true,
            "sizeDecimation": 1,
            "standard": "NO_CHANGE"
        },
        "instCapture": {
            "systemEnable": false,
            "systemPriority": 250,
            "v4lEnable": true,
            "v4lPriority": 240
        },
    
    Since it looks like the latest hyperion-v4l2 no longer supports setting width/height, I'm at a loss on how to crack this. Not sure if it's a bug or just me missing something simple. Any ideas?
     
  2. Paulchen-Panther

    Paulchen-Panther Active Member Developer

    Messages:
    403
    Hardware:
    RPi1/Zero, RPi3, 32/64bit, +Arduino
  3. popecix

    popecix New Member

    Messages:
    5
    Hardware:
    RPi3
    Hi Paulchen,

    Yeah, that's the behavior I would expect, however I can set the resolution and whenever I call hyperion-v4l2 it resets the format back to 160x120: Screenshot_1.png
    I'm installing 'motion' now to see if it works under that at a real resolution.
     
  4. popecix

    popecix New Member

    Messages:
    5
    Hardware:
    RPi3
    Well, fine in motion at 1280x720, so that would lead me to believe the camera is recognized correctly by the RPi, and getting the appropriate power. So I'm not sure why the grabber is detecting the dimensions wrong/setting them to that resolution. Thoughts?
     
  5. Paulchen-Panther

    Paulchen-Panther Active Member Developer

    Messages:
    403
    Hardware:
    RPi1/Zero, RPi3, 32/64bit, +Arduino
    So that I can change something in the source code, I have to know how you installed Hyperion.NG.
     
  6. popecix

    popecix New Member

    Messages:
    5
    Hardware:
    RPi3
    I used the instructions on github, from my history:

    18 sudo apt update
    19 sudo apt upgrade
    20 sudo apt-get install git cmake build-essential qtbase5-dev libqt5serialport5-dev libusb-1.0-0-dev python3-dev libxrender-dev libavahi-core-dev libavahi-compat-libdnssd-dev libjpeg-dev
    21 sudo apt-get install libraspberrypi-dev
    22 wget -qO- https://raw.githubusercontent.com/hyperion-project/hyperion.ng/master/bin/compile.sh | sh
    23 cd ~/hyperion/build
    24 sudo make install/strip

    then just ran hyperiond from command line to test before installing service.
     
  7. Paulchen-Panther

    Paulchen-Panther Active Member Developer

    Messages:
    403
    Hardware:
    RPi1/Zero, RPi3, 32/64bit, +Arduino
  8. popecix

    popecix New Member

    Messages:
    5
    Hardware:
    RPi3
    I was able to test it on Sunday and it works great now! The capture is detected as 1280x960 and with a size dec of 4 it looks fantastic and only using 30-40% of CPU on a RPi 3b. Using the external cam for capture, it is independent of source, so all 4k/HDR content is viable.

    Will those changes be rolled into the main branch?

    If there's anything I can do to help out with testing or documenting I'm happy to do so, just let me know how I can help out.

    Thanks for your work on this, I really appreciate it!!!
     
  9. Paulchen-Panther

    Paulchen-Panther Active Member Developer

    Messages:
    403
    Hardware:
    RPi1/Zero, RPi3, 32/64bit, +Arduino
    Yes, in the next PR I will take it in.
     
    • Like Like x 1
  10. isMunim

    isMunim New Member

    Messages:
    27
    Hardware:
    RPi3
    I am running 151 ws2801 leds on STK1160 and running into a similar issue. Pulled the master branch from this commit

    Here's the console logs when I enable hyperion.
    [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:43:setHyperionEnable()) Enable Hyperion, recover previous component states [hyperiond V4L2:auto] (INFO) configured v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:634:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:672:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) Started [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'System/GRABBER' with priority 250 as inactive [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Framegrabber: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'System/V4L' with priority 240 as inactive [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 250 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 250 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 240 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 240 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.27

    Checking v4l2-ctl before and after enabling hyperion


    Screen Shot 2019-08-27 at 9.52.09 PM.png

    Live view from web menu:
    Screen Shot 2019-08-27 at 9.52.21 PM.png
     
  11. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    1,372
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
    Set resolution to width=36 height=32

    did you cahnge the width and height?
     
  12. Paulchen-Panther

    Paulchen-Panther Active Member Developer

    Messages:
    403
    Hardware:
    RPi1/Zero, RPi3, 32/64bit, +Arduino
    • Informative Informative x 1
  13. isMunim

    isMunim New Member

    Messages:
    27
    Hardware:
    RPi3
    No, it automatically keeps switching to that. Even when I increase it manually via v4l2-ctl.
     
  14. isMunim

    isMunim New Member

    Messages:
    27
    Hardware:
    RPi3
    • Like Like x 1
  15. isMunim

    isMunim New Member

    Messages:
    27
    Hardware:
    RPi3
    @Paulchen-Panther Still facing the same issue. Here's the log:
    [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:43:setHyperionEnable()) Enable Hyperion, recover previous component states [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: enabled [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond V4L2:auto] (INFO) configured v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=24 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) Started [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'System/V4L' with priority 240 as inactive [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 240 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 240 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29
    Screen Shot 2019-08-29 at 4.44.54 PM.png
     
    Last edited: 29 August 2019
  16. Paulchen-Panther

    Paulchen-Panther Active Member Developer

    Messages:
    403
    Hardware:
    RPi1/Zero, RPi3, 32/64bit, +Arduino
    @isMunim Please post the Output from v4l2-ctl --all
    and full Log from hyperiond
     
  17. isMunim

    isMunim New Member

    Messages:
    27
    Hardware:
    RPi3
  18. Paulchen-Panther

    Paulchen-Panther Active Member Developer

    Messages:
    403
    Hardware:
    RPi1/Zero, RPi3, 32/64bit, +Arduino
    @isMunim With full log I meant the complete console output
     
  19. Paulchen-Panther

    Paulchen-Panther Active Member Developer

    Messages:
    403
    Hardware:
    RPi1/Zero, RPi3, 32/64bit, +Arduino
    @isMunim Could you please test my v4l2 branch? I would be very happy to receive feedback in the form of a console output of hyperion to solve your problem faster.

    git command:
    Code:
    git clone --recursive --single-branch --branch v4l2 https://github.com/Paulchen-Panther/hyperion.ng.git hyperion-v4l2
     
  20. isMunim

    isMunim New Member

    Messages:
    27
    Hardware:
    RPi3
    on it. Will test it out and share my results by tomorrow. Sorry for the delayed responses. Hurricane here.

    Here's the output from the main repo's master branch.

    [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:29:setHyperionEnable()) Disable Hyperion, store current component states [hyperiond V4L2:auto] (INFO) Stopped [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: disabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:250:clearInput()) Removed source priority 240 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 255 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:43:setHyperionEnable()) Enable Hyperion, recover previous component states [hyperiond V4L2:auto] (INFO) configured v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) Started [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'System/V4L' with priority 240 as inactive [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 240 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 240 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'Web [email protected]::ffff:192.168.1.29/COLOR' with priority 1 as inactive [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:193:setInput()) Priority 1 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 1 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:75:setSourceAutoSelectEnabled()) Source auto select is now disabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 240 [hyperiond V4L2:auto] (ERROR) Frame too small: 1152 != 2304 [hyperiond V4L2:auto] (INFO) Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000 [hyperiond V4L2:auto] (INFO) Signal threshold set to: {2, 12, 12} [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:79:uninit()) uninit grabber: /dev/video0 [hyperiond V4L2:auto] (INFO) Stopped [hyperiond V4L2:auto] (INFO) available V4L2 devices: /dev/video0 stk1160 /dev/video1 stk1160 /dev/video10 bcm2835-codec /dev/video11 bcm2835-codec /dev/video12 bcm2835-codec [hyperiond V4L2:auto] (INFO) search for usable video devices [hyperiond V4L2:auto] (INFO) test v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) found usable v4l2 device: /dev/video0 (stk1160) [hyperiond V4L2:auto] (INFO) Started [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:200:sendClose()) send close: 1000 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond V4L2:auto] (INFO) Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000 [hyperiond V4L2:auto] (INFO) Signal threshold set to: {2, 12, 12} [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:79:uninit()) uninit grabber: /dev/video0 [hyperiond V4L2:auto] (INFO) Stopped [hyperiond V4L2:auto] (INFO) available V4L2 devices: /dev/video0 stk1160 /dev/video1 stk1160 /dev/video10 bcm2835-codec /dev/video11 bcm2835-codec /dev/video12 bcm2835-codec [hyperiond V4L2:auto] (INFO) search for usable video devices [hyperiond V4L2:auto] (INFO) test v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) found usable v4l2 device: /dev/video0 (stk1160) [hyperiond V4L2:auto] (INFO) Started [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:29:setHyperionEnable()) Disable Hyperion, store current component states [hyperiond V4L2:auto] (INFO) Stopped [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: disabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:250:clearInput()) Removed source priority 240 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:319:setCurrentTime()) The manual selected priority '240' is no longer available, switching to auto selection [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:75:setSourceAutoSelectEnabled()) Source auto select is now enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 1 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:43:setHyperionEnable()) Enable Hyperion, recover previous component states [hyperiond V4L2:auto] (INFO) configured v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) Started [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'System/V4L' with priority 240 as inactive [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 240 is now active [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:200:sendClose()) send close: 1000 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:75:setSourceAutoSelectEnabled()) Source auto select is now disabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 240 [hyperiond V4L2:auto] (INFO) Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000 [hyperiond V4L2:auto] (INFO) Signal threshold set to: {2, 12, 12} [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:79:uninit()) uninit grabber: /dev/video0 [hyperiond V4L2:auto] (INFO) Stopped [hyperiond V4L2:auto] (INFO) available V4L2 devices: /dev/video0 stk1160 /dev/video1 stk1160 /dev/video10 bcm2835-codec /dev/video11 bcm2835-codec /dev/video12 bcm2835-codec [hyperiond V4L2:auto] (INFO) search for usable video devices [hyperiond V4L2:auto] (INFO) test v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) found usable v4l2 device: /dev/video0 (stk1160) [hyperiond V4L2:auto] (INFO) Started [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:29:setHyperionEnable()) Disable Hyperion, store current component states [hyperiond V4L2:auto] (INFO) Stopped [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:250:clearInput()) Removed source priority 240 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: disabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:319:setCurrentTime()) The manual selected priority '240' is no longer available, switching to auto selection [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:75:setSourceAutoSelectEnabled()) Source auto select is now enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 1 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:43:setHyperionEnable()) Enable Hyperion, recover previous component states [hyperiond V4L2:auto] (INFO) configured v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) Started [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'System/V4L' with priority 240 as inactive [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 240 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:250:clearInput()) Removed source priority 1 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 240 [hyperiond V4L2:auto] (ERROR) Frame too small: 1152 != 2304 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:29:setHyperionEnable()) Disable Hyperion, store current component states [hyperiond V4L2:auto] (INFO) Stopped [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:250:clearInput()) Removed source priority 240 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: disabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 255 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:43:setHyperionEnable()) Enable Hyperion, recover previous component states [hyperiond V4L2:auto] (INFO) configured v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) Started [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'System/V4L' with priority 240 as inactive [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 240 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 240 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.27' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.27 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.27 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.27 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:29:setHyperionEnable()) Disable Hyperion, store current component states [hyperiond V4L2:auto] (INFO) Stopped [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: disabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:250:clearInput()) Removed source priority 240 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 255 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: disabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: disabled [hyperiond FLATBUFSERVER] (DEBUG) (FlatBufferServer.cpp:68:newConnection()) New connection from ::ffff:127.0.0.1 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'V4L2 [email protected]::ffff:127.0.0.1/FLATBUFSERVER' with priority 150 as inactive [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 150 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 150 [hyperiond FLATBUFSERVER] (DEBUG) (FlatBufferClient.cpp:70:disconnected()) Socket Closed [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:250:clearInput()) Removed source priority 150 [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 255 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.27' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.27 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.27' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.27 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.27' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.27 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.27' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.27 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.29' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1114:handleLoggingCommand()) log streaming deactivated for client ::ffff:192.168.1.29 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:86:handleInstanceSwitch()) Client '::ffff:192.168.1.27' switch to Hyperion instance 0 [hyperiond WEBSOCKET] (DEBUG) (WebSocketClient.cpp:29:WebSocketClient()) New connection from ::ffff:192.168.1.27 [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:43:setHyperionEnable()) Enable Hyperion, recover previous component states [hyperiond V4L2:auto] (INFO) configured v4l device: /dev/video0 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:642:init_device()) Set resolution to width=36 height=32 [hyperiond V4L2:auto] (DEBUG) (V4L2Grabber.cpp:680:init_device()) Pixel format=UYVY [hyperiond V4L2:auto] (INFO) Started [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:153:registerInput()) Register new input 'System/V4L' with priority 240 as inactive [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) Hyperion: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) V4L capture device: enabled [hyperiond ComponentRegister] (DEBUG) (ComponentRegister.cpp:67:componentStateChanged()) LED device: enabled [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:233:setInputImage()) Priority 240 is now active [hyperiond HYPERION] (DEBUG) (PriorityMuxer.cpp:333:setCurrentTime()) Set visible priority to 240 [hyperiond WEBSOCKET] (DEBUG) (JsonAPI.cpp:1105:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.1.27


    [email protected]:~ $ v4l2-ctl --all

    Driver Info:

    Driver name : stk1160

    Card type : stk1160

    Bus info : usb-3f980000.usb-1.5

    Driver version : 4.19.66

    Capabilities : 0x85200001

    Video Capture

    Read/Write

    Streaming

    Extended Pix Format

    Device Capabilities

    Device Caps : 0x05200001

    Video Capture

    Read/Write

    Streaming

    Extended Pix Format

    Priority: 2

    Video input : 0 (Composite0: ok)

    Video Standard = 0x000000ff

    PAL-B/B1/G/H/I/D/D1/K

    Format Video Capture:

    Width/Height : 36/32

    Pixel Format : 'UYVY' (UYVY 4:2:2)

    Field : Interlaced

    Bytes per Line : 72

    Size Image : 2304

    Colorspace : SMPTE 170M

    Transfer Function : Default (maps to Rec. 709)

    YCbCr/HSV Encoding: Default (maps to ITU-R 601)

    Quantization : Default (maps to Limited Range)

    Flags :

    Streaming Parameters Video Capture:

    Frames per second: 25.000 (25/1)

    Read buffers : 2


    User Controls


    brightness 0x00980900 (int) : min=0 max=255 step=1 default=128 value=128 flags=slider

    contrast 0x00980901 (int) : min=0 max=127 step=1 default=64 value=64 flags=slider

    saturation 0x00980902 (int) : min=0 max=127 step=1 default=64 value=64 flags=slider

    hue 0x00980903 (int) : min=-128 max=127 step=1 default=0 value=0 flags=slider

    chroma_agc 0x0098091d (bool) : default=1 value=1 flags=update

    chroma_gain 0x00980924 (int) : min=0 max=127 step=1 default=40 value=49 flags=inactive, slider, volatile