Hdmi grabber?
- pigbait
- Thread is marked as Resolved.
-
-
Hello @Paulchen-Panther. I was a bit busy this week, but I finally came and checked changes.
First of I tried to make screenshot again using hyperion-v4l2 and had no luck. Even when I specified pixel format mjpeg (which now is valid) I got small black rectangle.Code
Display Morepi@raspberrypi:~/hyperion-mjpeg/hyperion.ng/build/bin $ ./hyperion-v4l2 --screenshot --pixel-format mjpeg hyperion-v4l2: Version : 2.0.0 (V4L2 (GitHub-325a2fc4/1dba4ee7-1557003366) Git Remote: https://github.com/Paulchen-Panther/hyperion.ng.git) build time: May 6 2019 23:10:47 Signal detection informations ============================= dimension after decimation: 26 x 20 signal detection area : 6,5 x 19,15 WARNING no red, green or blue "no signal area" detected, signal detection might have problems. suggested config values for signal detection: "redSignalThreshold" : 0.1, "greenSignalThreshold" : 0.1, "blueSignalThreshold" : 0.1, "signalDetectionHorizontalOffsetMin" : 0.23, "signalDetectionVerticalOffsetMin" : 0.25, "signalDetectionHorizontalOffsetMax" : 0.73, "signalDetectionVerticalOffsetMax" : 0.75
Then I tried hyperion. Changes I noticed:
- Now I'm able to change capturing device without getting errors.
- Also video standard option was changed, Earlier it worked only in auto mode, now it works in any mode (testedall) without any difference.
- After hyperion startup leds isn't working until I will "restart" led device from web-gui.
Code
Display Morepi@raspberrypi:~/hyperion-mjpeg/hyperion.ng/build/bin $ ./hyperiond -d [hyperiond DAEMON] <DEBUG> <PythonInit.cpp:20:PythonInit()> Initializing Python interpreter [hyperiond SettingsManager] <INFO> Selected configuration file: /home/pi/.hyperion/config/hyperion_main.json [hyperiond SettingsManager] <DEBUG> <SettingsManager.cpp:129:SettingsManager()> Settings database initialized [hyperiond EFFECTFILES] <INFO> 36 effects loaded from directory :/effects/ [hyperiond EFFECTFILES] <INFO> 19 effect schemas loaded from directory :/effects/schema/ [hyperiond EFFECTFILES] <INFO> 0 effects loaded from directory /home/pi/.hyperion/custom-effects [hyperiond SettingsManager] <INFO> Selected configuration file: /home/pi/.hyperion/config/hyperion_main.json [hyperiond SettingsManager] <DEBUG> <SettingsManager.cpp:73:SettingsManager()> Settings database initialized [hyperiond BLACKBORDER] <DEBUG> <BlackBorderProcessor.cpp:65:handleSettingsUpdate()> Set mode to: default [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:67:componentStateChanged()> Blackborder detector: enabled [hyperiond FLATBUFCONNECTION] <INFO> Connecting to Hyperion: 127.0.0.1:19401 [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:67:componentStateChanged()> LED device: enabled [hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:53:init()> Adalight header for 184 leds: Ada 0x00 0xb7 0xe2 [hyperiond LEDDEVICE] <INFO> LedDevice 'adalight' configured. [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:67:componentStateChanged()> Smoothing: enabled [hyperiond LEDDEVICE] <INFO> Opening UART: /dev/ttyUSB0 [hyperiond EFFECTENGINE] <INFO> run effect Rainbow swirl fast on channel 0 [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:153:registerInput()> Register new input 'System/EFFECT' with priority 0 as inactive [hyperiond HYPERION] <INFO> Inital foreground effect 'Rainbow swirl fast' started [hyperiond EFFECTENGINE] <INFO> run effect Trails color on channel 254 [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:153:registerInput()> Register new input 'System/EFFECT' with priority 254 as inactive [hyperiond HYPERION] <INFO> Inital background effect 'Trails color' started [hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:182:tryOpen()> Setting baud rate to 115200 [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 BOBLIGHT] <DEBUG> <BoblightServer.cpp:24:BoblightServer()> Instance created [hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:198:tryOpen()> Device blocked for 1500 ms [hyperiond DAEMON] <INFO> Hyperion initialized [hyperiond DAEMON] <INFO> set screen capture device to 'dispmanx' [hyperiond DISPMANXGRABBER] <DEBUG> <Grabber.cpp:33:setVideoMode()> Set videomode to 0 [hyperiond DISPMANXGRABBER] <INFO> Display opened with resolution: 1920x1080 [hyperiond DISPMANXGRABBER] <DEBUG> <Grabber.cpp:82:setWidthHeight()> Set new width: 80, height: 45 for capture [hyperiond DAEMON] <INFO> DISPMANX frame grabber created [hyperiond V4L2:auto] <DEBUG> <Grabber.cpp:33:setVideoMode()> Set videomode to 0 [hyperiond V4L2:auto] <INFO> Signal threshold set to: {12, 12, 12} [hyperiond V4L2:auto] <INFO> Cropping image: width=0 height=0; crop: left=3 right=2 top=3 bottom=2 [hyperiond V4L2:auto] <INFO> Signal detection is now disabled [hyperiond V4L2:auto] <INFO> Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000 [hyperiond DAEMON] <DEBUG> <hyperiond.cpp:419:handleSettingsUpdate()> V4L2 grabber created [hyperiond V4L2:auto] <INFO> available V4L2 devices: /dev/video0 USB2.0 PC CAMERA [hyperiond V4L2:auto] <INFO> search for usable video devices [hyperiond V4L2:auto] <INFO> test v4l device: /dev/video0 [hyperiond V4L2:auto] <DEBUG> <V4L2Grabber.cpp:598:init_device()> width=160 height=120 [hyperiond V4L2:auto] <DEBUG> <V4L2Grabber.cpp:660:init_device()> Pixel format=MJPEG [hyperiond V4L2:auto] <INFO> found usable v4l2 device: /dev/video0 (USB2.0 PC CAMERA) [hyperiond V4L2:auto] <INFO> Started [hyperiond JSONSERVER] <DEBUG> <JsonServer.cpp:23:JsonServer()> Created instance [hyperiond JSONSERVER] <INFO> Started on port 19444 [hyperiond FLATBUFSERVER] <INFO> Started on port 19400 [hyperiond PROTOSERVER] <INFO> Started on port 19445 [hyperiond WEBSERVER] <DEBUG> <WebServer.cpp:96:handleSettingsUpdate()> Set document root to: :/webconfig [hyperiond WEBSERVER] <INFO> Started on port 8090 name 'Hyperion Webserver' [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:231:setInputImage()> Priority 0 is now active [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:330:setCurrentTime()> Set visible priority to 0 [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:231:setInputImage()> Priority 254 is now active [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:231:setInputImage()> Priority 240 is now active [hyperiond LEDDEVICE] <DEBUG> <ProviderRs232.cpp:216:writeBytes()> 34 frames dropped [hyperiond WEBSOCKET] <DEBUG> <WebSocketClient.cpp:32:WebSocketClient()> New connection from ::ffff:192.168.0.3 [hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:80:receivedData()> >>received 4 bytes data [hyperiond EFFECTENGINE] <INFO> effect finished [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:290:setCurrentTime()> Timeout clear for priority 0 [hyperiond HYPERION] <DEBUG> <PriorityMuxer.cpp:330:setCurrentTime()> Set visible priority to 240 [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:67:componentStateChanged()> LED device: disabled [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:67:componentStateChanged()> LED device: enabled
Also there are links to docs, that are closed from guest and hasn't registration. I tried to understand what is "led layout" and I had to do it myself.
Finally I have question most likely not related to your branch. I tried to calibrate colors and did it with one remark. Yellow color is too red, but only on two edges. And I don't know if I calibrated it wrong or not. Can led strip connection affects colors, but doesn't affect whole led brightness? If it's not connections issue, then I should do calibration for only two sides?
Thanks.
-
First of I tried to make screenshot again using hyperion-v4l2 and had no luck.
Try to execute the command several times in succession. My HDMI Capture Card brings only a useful picture after repeated executions.Can led strip connection affects colors, but doesn't affect whole led brightness?
How many power supply points do you have on your led stips?If it's not connections issue, then I should do calibration for only two sides?
I think that's possible. -
Also video standard option was changed, Earlier it worked only in auto mode, now it works in any mode (testedall) without any difference.
Your external device does not support the video standard option (in MJPEG mode). That's why you do not notice any change. Will try to hide this option if the device does not support itAfter hyperion startup leds isn't working until I will "restart" led device from web-gui.
Can you please post your config? -
Try to execute the command several times in succession. My HDMI Capture Card brings only a useful picture after repeated executions.
Tried a lot of times, same result. May be it's because I'm not using hdmi capture card as this thread states, but simple composite video grabber with only mjpeg supported?
How many power supply points do you have on your led stips?
1 But when I tested red/green/blue/white colors all is fine. Can power issue produce not-solid color when white color is ok? I mean all pixels look powered well and I can imagine problem with data signal, but why with power?
Can you please post your config?
Attached file.
-
Hi,
I´m using a grabber with mjpg as single pixelformat option. I know that it wont work with the original hyperion installation.
Searching about this issue i found this thread.
My question to @Paulchen-Panther or someone else knowing about: Is the MJPG FPixelformat already available in the hyperion.ng master branch or still in a extra Branch by Paulchen-Panther? If so in which one?Thx for help
Archie -
Should be in master branch. DId you test it?
@Paulchen-Panther implemented it but AFAIK no one did reply with real valid test results. -
Thx!
I´ve got a new RPI 4 this week, so I take the chance an will re-build my actual system which is running on a RPI 2.
I will install hyperion.ng on rasparian/debian buster and will to use the VBG500 Grabber (which only provides mjpg for pixelformat, but is usefull because it replaces HDMI-Splitter, PAL-Converter, Grabber from the PI 2 System to one single box).
This will take some days - but i will report the result here. -
First try worked
Have even a live picture in the Web-Interface.Only Problem: i get a repeating Error when starting:
root@raspberrypi:/home/pi# hyperiond
[hyperiond DISPMANXGRABBER] <ERROR> Snapshot failed: -1
[hyperiond DISPMANXGRABBER] <ERROR> Previous line repeats 200 timesAny hints about this?
But the grabber seems to have a new driver in buster - its now YUVV instead of MJPG?
So the i´ve not tested the MJPG issue...Video input : 0 (Camera 1: ok)
Format Video Capture:
Width/Height : 1920/1080
Pixel Format : 'YUYV' (YUYV 4:2:2)
Field : None
Bytes per Line : 3840
Size Image : 4147200
Colorspace : sRGB
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Limited Range)
Flags :
Crop Capability Video Capture:
Bounds : Left 0, Top 0, Width 1920, Height 1080 -
Good to hear!
Maybe @Paulchen-Panther can say something to that error.what a shame that you can't test it with MJPEG. Would you mind to try your old installation with old drivers for this? Would be a great help for us to complete the MJPEG feature.
Many thanks! -
Maybe @Paulchen-Panther can say something to that error.
I already had the topic on Github. I have no RPi 4 to narrow down the error. If I find something new I'll let you know.@Paulchen-Panther implemented it but AFAIK no one did reply with real valid test results.
That is not completely right. I bought a HDMI USB 3.0 grabber and tested it. Here are some pictures and screenshots: -
Should not be a problem.
Will do this task as soon as the new system is stable.
Hope at the weekend.Can you help me with another issue?
Where does the webinterface (gui a port 8090) save its config?
Seems that I loose the config each i reboot -
I already had the topic on Github. I have no RPi 4 to narrow down the error. If I find something new I'll let you know.
The procedure from Github helped: Now running as a service and not from the console: the error disappears...
-
Can you help me with another issue?
Where does the webinterface (gui a port 8090) save its config?
Seems that I loose the config each i rebootThe config is saved in ~/.hyperion/db/hyperion.db
It is a SQLite database.
As I see your first attempt in post #49 was started with root. Did you now started the new service with your user "pi"? So then you have created one config in /home/root/.hyperion/db and one in /home/pi/.hyperion/dbSeems to be the same "issue" like here:
https://github.com/hyperion-pr…83#issuecomment-521438989 -
Tested now hyperion.ng with raspi 3 using stretch where the grabber uses MPJG: Works out of the box
Just some issues with the grabber itself because there is no USB 3.0 available - but I´d say: MJPG proof of concept: positive -
Thanks for testing!
-
Any hints about this?
This is solved. Details HERE. -
kann gelöscht werden
-
Ich habe den HDMI Grabber jetzt mal getestet, aber das Problem, dass dadurch doch ein ziemlich großer Delay auftritt. Habt ihr auch die Probleme?
@Paulchen-Panther hast du das auch und lässt sich das minimieren?
-
Was ist den mit diesem grabber.?
https://www.amazon.de/gp/product/B07MZQJYYM?tag=hyperioforum-21&ie=UTF8&psc=1
könnte der in einem 4K Setting funktionieren? Im Forum hier schreibt jemand das er geht. Somit könnte man wenn man wie ich einen sub HDMI am AVR hat sich den splitter grabber und HDMI-> RCA Kram sparen
Participate now!
Don’t have an account yet? Register yourself now and be a part of our community!