-
Notifications
You must be signed in to change notification settings - Fork 149
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
100% cpu load when not streaming #1
Comments
500 ms seems to work |
You might also want to look at the upstream implementation of uvc-gadget. It has just been updated with lots of work released. |
Hi Kieran. I see you guys moved to using |
I really want to find time to try uvc-gadget on pi-zero, especially with our latest libcamera work - but I just never get time :-( I'd be very interested to know what issues you hit to see if I can help you work through them. |
Hi @kbingham and others. I have been looking at this uvc-gadget.c and been trying to setup to have a UVC USB webcam and also an ethernet gadget on the RPI0W and like @ikester, I have been having issues where ethernet works and Win10 device manager shows both UVC Camera and ethernet but UVC Camera does not stream with MediaCaptureFailedEvent. If I removed ethernet then UVC Camera works so a bit at a loss. I have been experimenting with Buster Lite Aug 2020 and Jessie Lite 2017-7 and see more or less the same thing. I am not a pro at Linux but I find this entire setup interesting and want to explore further because it helps me understand more of Linux and Pi and also the work you guys are doing. I know @wlhe repository is old and climberhunt's work, is what I can get working. I can clone http://git.ideasonboard.org/uvc-gadget.git but I see main.c and a lot of other C files but I failed to understand how this uvc-gadget.c has one file and that cloned git repository has main.c and other files but not uvc-gadget.c. Could you give me pointers on how to "update" this uvc-gadget.c because http://git.ideasonboard.org/uvc-gadget.git has lots of new updates? I can understand C++ and C code so I just need some guidance to see where I can go towards. Help please? Thanks! :-) |
Looking around, this partciular bug appears to have been fixed in various forks, and is also fixed by rewriting all of this upstream as far as I can tell. Unfortunately, I can't test any of this on my RPi4 as I can't get the gadget to function at all. Either it's crashing/hanging in the UDC kernel driver, or somethings not getting enough votls/power and it's causing the board to hang. |
Hi Kieran, thanks for the reply. Just some questions if you have the time please? Ta.
Thanks for your time and contribution to the community :-) |
Where do you get a segmentation fault? What have you built? |
Sure Kieran, I will do that. Thanks again for the fast reply! :-) |
Is there a kernel version where these entries were added to configfs? On my AM57x kernel 4.19.94, they aren't there. |
I guess this was added by 4.20. So close |
If you're on an AM57x, I assume you are able to build your own kernel? If so - you can cherry pick the required kernel updates. |
Yeah, I will give it a shot, just had to chuckle when I found the kernel was almost close enough. I'm used to running platforms based on 3.2 xD |
not enough knowledge on this but looking at the source @line +/- 450
guess we could sleep(2); instead of returning directly is no one is listening?
not sure how the events work, will we miss them or are they queued?
The text was updated successfully, but these errors were encountered: