A new release of UV4L is out with a new “tiny” feature. You can now capture and record the audio/video live stream from the remote peer (e.g. a Raspberry Pi) into a standard webm container, that you can play back later or save to disk. All this can be done from within your browser at the usual /stream/webrtc web page (there’s a start/stop recording button right below the video box). As usual, this does not require any additional plug-in. With regard to the Raspberry Pi this means that you can easily record Full HD audio/videos at 30fps.
These are the projects currently in preparation:
- For Raspberry Pi: screen and audio sharing with the browser. It will be possible to fully control the screen (by screen we mean whatever you would see on a HDMI display directly attached to the Rpi, not just the desktop) from any browser (with no additional plug-in) from a smartphone, PC or tablet, etc… with mouse and keyboard. This solution can completely replace RealVNC.
- For the Raspberry Pi Compute Module with a Dual Camera: real-time, high resolution, 30fps stereo depth maps directly to the browser.
- (*) An unique, magic thing that we are not sure we want to tell now.
As promised, the announced RESTful API over HTTP and HTTPS is now ready! What does it mean? As a developer, it allows you to easily write your custom application in your preferred language and make use of a great part of the UV4L functionalities from within the application itself. At the moment, for example, the API makes it possible to change all the Streaming Server settings on-the-fly and fully drive a Janus client session in fine-grained detail.
From the user’s perspective support for Janus is not something new in UV4L (here is an old introduction), but as a developer you gain access to many more interesting features, such as dynamic audio/video recording, max. bitrate selection, audio and video codec selection between vp8, vp9, and hardware-encoded h264 in high resolution, mute/unmute, etc…not counting that you can create or destroy or list existing rooms on a server, list the participants of a room, and so on…
The documentation of the API is work-in-progress (keep an eye on it), but a panel for testing the API now is directly available as a web page at the UV4L Streaming Server.
If you want to quickly test the API with a fully working, self-enclosed environment, download and try out the updated release of the VideoConference DEMO OS for Raspberry Pi.
As usual, please see these installation instructions to know how to install UV4L on a Raspberry Pi. Packages for x86 will be available soon.
The announced RESTful API for developers who need to have full control of Janus Gateway sessions is almost ready. Here is a preview of a panel that will be available as a web page on the UV4L Streaming Server and that will be useful for testing the API itself:
A new release of the Rpi Video Conference DEMO OS is out! Other than the official Raspberry Pi cameras, now also USB webcams are supported out-of-the-box. All you have to do is to attach the webcam to the Raspberry Pi and visit the dedicated Streaming Server at the default URL http://<your_rpi_address>:8000, from which it is possible to participate or create conferences as usual. Each time you attach or detach the webcam, the server instance is automatically created or destroyed respectively.
Although UV4L is already highly configurable for almost any needs, starting from the next releases on it will be gradually supporting a well-defined RESTful API over HTTP/HTTPS to control every functionality of the Streaming Server on-the-fly with finer detail than is currently possible. This should make it extremely easy for any developers to design and implement graphical user interfaces of any type – not only web-based like the built-in interfaces – in any programming language.
DEMO OS for Video Conferences over the web with the Raspberry Pi!
A ready-to-use image for Raspberry Pi 3 allowing a Rpi with camera, microphone, screen and speakers attached to it to entirely host or participate to video conferences over the web is available. Check this section for more informations.