Hi,
I started building the doorbell. As I am using a Pi 4 (has anybody an idea if a zero could deal with the video stream?) I had to overcome some compatibility issues with libssl and openssl first. I will show that here as it took me hours:
libssl and openssl are not compatible in the buster release. There is a /etc/ssl/openssl.cnf that confuses libssl and leads to something simmilar like this in the syslog when trying to start uv4l:
140099788864256:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:233:
140099788864256:error:0E07506E:configuration file routines:MODULE_LOAD_DSO:error loading dso:conf_mod.c:271:module=ssl_conf, path=ssl_conf
140099788864256:error:0E076071:configuration file routines:MODULE_RUN:unknown module name:conf_mod.c:212:module=ssl_conf
Most people on the net where able to solve the problem for their app by using export OPENSSL_CONF=/etc/ssl or OPENSSL_CONF=/dev/null
This was not working for me at all. Solution: rename /etc/ssl/openssl.cnf to .bak. I might need to rename it back when I want to use OpenSSL to do something again, but for now everything is working and uv4l starts. Figured this out after hours and combining all the other information. Many users of many applications suffer this right now while using Buster and I think some current Ubuntu, too The point is that the .cnf file is not needed at all for the module, it is just a standard search path to check IF there is a config file. And there it finds the incompatible one and crashes.
Next:
I configured the uv4l-raspicam.conf like described, but I added
server-option = --webrtc-receive-audio=yes
After adding that, when browsing to https://myhost:9090 and clicking on WebRTC and there on āCallā I got two way audio working with my USB Mic (PS3 Eye) and a speaker on the headphone jack on the Pi and my Browser.
I then copied the doorpi demo files found here, edited the index.html to take the video file from my host instead yours and when I brwose to https://myhost:8888 I get a side with a field for an URL, Accept and Decline Button and my video image. The video is working great but I get no voice communication when I click on Accept.
Any idea what I could check or where I could find a log that gives me a hint? What is the correct entry for the URL field? What is the expected behaviour? Do I have to change the .js files?
Thanks in advance for any help!