Translate

Saturday, October 17, 2020

Raspberry streaming audio - notes and VLC server

Time ago I did buy and built a Pimoroni kit to have a streaming IP radio.
Is time to try to enhance it little bit and add some extra information.

Installation

There are basically two ways to install the pirate radio.
Depending the one chosen is possible eventually to enhance it.

Pirate Radio image

Pimoroni prepared a quick way to install the radio.
A pre-built image with everything need can be downloaded and burnt on the SD card.
Manually editing a couple of files on the SD card after burning the image allows to personalize the image, adding a WiFi login and editing the playing list.
Inserting the SD card in a card reader is enough to locate the file wpa_supplicant.conf file and add the data of the WiFi.
The file is located in the /boot directory.

Note ! The image I did use (the latest available) is based on Raspbian Stretch but is limited, many tools are simply not installed like apt-get, raspi-config and many other tools are not present in the image.

Pro:

  • easy to install
  • pre-build ready to go to support the Phat Beat
  • filesystem built to be protected from power removal. The entire system runs in the RAM so after the boot the SD card is not used anymore and thus the system can be turned off at any moment
Cons:
  • hard to update or add features

Pirate Radio installer

Pimoroni put together a guide to start an installation for the pirate radio.
However this imply to have a Raspberry Pi hooked up to a keyboard and a HDMI display

In order to have a system capable to be easily expanded this is the way to follow, however has some cons.

Pro:

  • relatively easy to set up the radio on a standard Raspbian image
  • can be expanded adding modules and update the system
Cons:
  • hardware need initially to be connected to a keyboard and monitor
  • it runs from SD card, it can be little bit slower and and power off can destroy the SD card

Streaming from local server

I have a server based on Ubuntu 18.04LTS - headless (i.e. only CLI) where I have a Plex and Logitech streamer installed and my music collection.
Installing stuff on the Pirate Radio is a pain in the neck because the limitations of the installation I did use, is not even working the editor on a playlist via ssh (it make sense since when running everything is in the RAM).

The idea was originally to add a Plex plugin to be able to use the Plex server to stream at least the music.
Is possible to add Plex support using Mopidy_plex plug in.

But since adding stuff to the Pirate Radio image is difficult at least, I did try a different approach.

On the server I did install VLC.
To do so I did open a ssh session from my machine with the -X parameter in order to use X11 on the client machine that is also based on Ubuntu 18.04LTS.

  • sudo apt-get install vlc
Since VLC on the server need to be executed with root permission :

  • open the binary with vi (/etc/bin/vlc), look for the string geteuid and change it in getppid, save
  • run vlc : sudo vlc

At this point should appears the GUI for VLC.

  • select Stream from the menu
  • select the files you want to stream then click Stream button
  • on the stream popup click on Next
  • in the destination select HTTP (by default is File) and then click Add button
  • select a port (default is 8080 - I used another one, say 8082)
  • in the Path field add a title after the slash, say test.mp3 - click on Next
  • click on Next (leave default)
  • click on Stream
    At this point the server is streaming the content selected.
    On the Pirate Radio in the playlist add the url of the server as the setting, something like : Http://<local_server_ip>:8082/test.mp3

Reboot the Pirate Radio and you should be able to  listen to your streaming.
Lot of things to learn and set up but at least is a starting !
I want to see if is possible to stream a folder rather than select specific files or to change on the fly folder, send metadata, etc.

No comments:

Post a Comment