Playing RetroPie games in the browser

This is a tutorial and below is the demo which shows a new way to play RetroPie games with an headless Raspberry Pi 3B+ and an Android “terminal” in the same LAN: traditionally the Raspberry Pi is directly wired to display, speakers (where the game is rendered ) and a gamepad controller. In this case, however, the Raspberry Pi is not connected to any display (except in the first part of the demo for clarity), speakers and controller. On the contrary, the game is played from within Android Chrome on an smartphone with a gamepad controller connected to the smartphone itself. In other words, the game video and audio are rendered onto the smartphone screen and speakers. The great thing is that no special, third-party application on the smartphone is required other than the stock Chrome browser.

Content not available.
Please allow cookies by clicking Accept on the banner

New Screensharing Web App for Raspberry Pi

In this example we will see how to configure the Raspberry Pi to serve a customizable web app which allows the Raspberry Pi to share its screen and speakers (“what you hear”) to the PC browser. Additionally, thanks to a virtual keyboard running on the Raspberry Pi, it will be possible to emulate the keypresses captured and sent from within the web page in the browser.

It can be used to fully play RetroPie games in the browser as shown in this DEMO.

Content not available.
Please allow cookies by clicking Accept on the banner

File transfer via WebRTC Data Channels

WebRTC data channels can be used for an infinite number of useful things. They are ideal for sharing data between two peers in a secure and efficient way. In a past demo we showed how they could be used to control a robot in real-time. In this demo we will see how to use a WebRTC data channel to transfer a file from a browser to a Raspberry Pi. The demo can also work as a simple remote media player.

UV4L now supports the TC358743 HDMI to MIPI converter chip

The Video4Linux2 uv4l-raspicam driver for Raspberry Pi  has been extended to support the TC358743 HDMI to MIPI converter chip. This chipset is often found in the B101 capture boards made by Auvidea.

Any resolution, color space or hardware codec (like MJPEG, H264, YUVs, etc…, with or without preview) will work. All the UV4L components on the top of this driver will work as usual.

The Raspberry Pi  3 is supported by this new release of the raspicam driver, while support for other Raspberry Pi models can be activated upon request.

Upgrade the driver or read these instructions to know how to install it. Remember that the TC358743 in the driver has to be enabled via the –tc358743=yes option (e.g. in the configuration file) to use it.

How to deploy and run a custom Web App with UV4L

This is a long-awaited tutorial showing how to deploy and serve a custom web app through the UV4L Streaming Server. The example web app does very little other than embedding a live video stream from a remote camera into a standard HTML5 page and processing it in real-time to perform face detection with plain JavaScript. It’s a good starting point for more complex things that can be done in a browser (and not only!).

UV4L WebRTC has now landed on the Raspberry Pi Zero and Zero W models!

The UV4L WebRTC extension is finally available for the following models as well: Raspberry Pi 1, Raspberry Pi Zero and Raspberry Pi Zero W (Wireless).

For the installation instructions click here.

Remember that these models have less CPU power than the Raspberry Pi 2 and 3 counterparts, so please consider experimenting with “modest” resolutions first.

Users of other Rpi models, however, are also suggested to upgrade the UV4L packages to the most recent release as includes general improvements and new options, especially for the Streaming Server module and the raspicam driver (e.g. it’s now possible to disable image processing blocks in the ISP).

Immersive Telepresence for the IoT

An unique embedded 3D immersive telepresence over the web solution based on the UV4L framework with the following features is now ready:

  • optionally two-way, encrypted live data-audio-video in HD or greater resolution at full frame rate between two participants (or even more)
  • FPV in a 180° x 180° panorama
  • 3D Stereo image (optional)
  • real-time head tracking, working out-of-the-box with any smartphone (no special software required, e.g. plugin-free browser) inside a VR headset like Google cardboards or easily adaptable to dedicate hardware like Oculus or OSVR
  • software based on standard technology
  • over Internet (cloud) or LAN
  • peer-to-peer or video rooms with multiple participants
  • does not necessarily require any third-party server infrastructure…
  • …but can be optionally easily made as on-demand service when put in the cloud
  • easy NAT traversal
  • audio-video on-the-fly recording & play back on the browser client or recording on server side for further post-processing
  • adaptive bitrate streaming to available bandwidth
  • very low CPU usage
  • single board, low cost

DEMO

Content not available.
Please allow cookies by clicking Accept on the banner