I have a resin.io project and I'm trying to get WebRTC streaming to work.
I used instructions from here to modify my Dockerfile.
What I'm doing:
Install UV4L software:
RUN apt-get update && apt-get install -y \ uv4l \ uv4l-raspicam \ uv4l-raspicam-extras \ uv4l-webrtc \ uv4l-server \ uv4l-xscreen \ uv4l-mjpegstream \ uv4l-dummy \ uv4l-uvc \ uv4l-raspidisp \ uv4l-xmpp-bridge \ && rm -rf /var/lib/apt/lists/*
Run it with:
systemctl start uv4l_raspicam
When I go to http://192.168.0.103/stream
I see the mjpeg stream and it's working fine.
The next thing I try to do is to go to http://192.168.0.103/stream/webrtc
and see a WebRTC stream.
When I load the page I see no video, just this page:
When I press Call
nothing happens and the server dies - I can no longer see any streams and the web page doesn't load.
This is the output of uv4l
command with parameters:
<notice> [core] Trying driver 'raspicam' from built-in drivers...
<warning> [core] Driver 'raspicam' not found
<notice> [core] Trying driver 'raspicam' from external plug-in's...
<notice> [driver] Dual Raspicam Video4Linux2 Driver v1.9.48 built Mar 19 2017
<notice> [driver] Detected camera imx219, 3280x2464
<notice> [driver] Selected format: 640x480, encoding: h264, H264 Video Compression
<notice> [driver] Framerate max. 20 fps
<notice> [driver] ROI: 0, 0, 1, 1
<notice> [driver] H264 costant bitrate: 8000000
<notice> [core] Device detected!
<notice> [core] Registering device node /dev/video0
How do I debug this? Does uv4l
have any error logs? If so, what is the location of them?
1 Answer 1
How do I debug this? Does uv4l have any error logs? If so, what is the location of them?
Yes, by inspection of /etc/uv4l/uv4l-uvc.conf
you have some options for this.
To enable logging via port 514 for syslog, edit /etc/rsyslog.conf
and uncomment these lines:
module(load="imudp")
input(type="imudp" port="514")
Then run sudo systemctl restart rsyslog
. Next edit /etc/uv4l/uv4l-raspicam.conf
and uncomment these lines:
verbosity = 6
syslog-host = localhost
syslog = 514
You could try turning the verbosity up to level 9, not sure if that makes a difference. After running systemctl start uv4l_raspicam
you should see messages going into /var/log/syslog
. I don't have an RPi camera module to confirm with, but this procedure worked with UVC.
However, logs may or may not help you resolve this crash. uv4l can be especially difficult to troubleshoot being closed-source. As Raspbian has a kernel-mode V4L2 driver and other tools available, I have suggested users in your boat try webrtc-streamer which is open-source and was updated as recently as last week.