Page 1 of 1

Using UV4l with uvc and mjpeg streamer help

Posted: Sat Mar 10, 2018 4:18 pm
by Innyve89
The overall goal is to embed a camera feed into a website for a robot. So far it seems like the only things that work is uv4l-uvc webrtc. I can hit the call button and initiate the call and that works. However if I end it and try it again it sometimes does not work and I have to restart the pi to get it working again. I figured out how to reset it by using:

Code: Select all

pkill uv4l

Code: Select all

sudo /etc/init.d/uv4l-uvc add 046d:081b
(The device id for the logitech c310 web camera.)
It starts back up and I can do it again. Also sometimes I notice more than one video in /dev/video0, /dev/video1 etc. It seems like it will try to start a new instance and then gets confused.

Another issue I have is when I go to XXX:8090/stream (8090 is the default port for uvc) it works for a couple seconds and then stops. Sometimes it gives a kernel error, something saying a stack overflow. I'm not sure what this means.

I have been working with the face detection website that you can download from the demos and that works but again I have to restart that server since it doesn't have a stop button.

I guess the questions I'm asking are:
How can I get the XXX:8090/stream to work?
How can I connect to the web camera again without restarting the server/instance?
How can I add a stop button to the face detection website?

Let me know what other code would help answer those questions. Thanks!

Re: Using UV4l with uvc and mjpeg streamer help

Posted: Sun Mar 11, 2018 7:41 pm
by RpiName
uv4l-uvc should not provoke any kernel oops as it's an userspace program. check your power supply is powering the usb webcam properly.

that said,if uv4l-uvc gives problems try the kernel driver:

modprobe uvcvideo

this will register e.g. /dev/video1.


uv4l --external-driver --device-name=video1 --server-option '--port=9000'

Re: Using UV4l with uvc and mjpeg streamer help

Posted: Sat Mar 31, 2018 4:17 am
by Lyu
This answer is a bit out of the question, but there is another way to stream video besides uv4l or mjpeg streamer.

rpi-webrtc-streamer is open source and If you use only video feeds, it's probably worth trying.

The deb file can be downloaded from

Code: Select all

sudo apt update
sudo apt full-upgrade
sudo dpkg -i rws_xxx_armhf.deb
sudo systemctl start rws
Open the following URL in the chrome browser will display the native-peerconnection testing page.

http://your-private-ip-address:8889/nat ... onnection/