audica-radio

A stream player/recorder with a Textstar Serial LCD, Web UI and REST UI. Developed to use a raspberrypi as a standalone streaming radio. VLC is needed for playing. Streamripper is needed for recording.

npm install audica-radio
79 downloads in the last week
123 downloads in the last month

audica radio

A stream player/recorder with a Textstar Serial LCD, Web UI and REST UI. Developed to use a raspberrypi as a standalone streaming radio. VLC is needed for playing. Streamripper is needed for recording. It allows to display the current songs of a radio stream if a playlist url and a regular expression is configured for parsing it out.

REST UI

POSThttp://raspberripy:3141/add?url=<url>[&name=<name>&playlistUrl=<stream playlist url>&playlistRegexp=<regular expression with group(s)>]Add a radio station and a optional name for it. Optional is also the a parameter for the stream playlist and a parameter with a regular expression that defines what do parse out from the content of the playlist url
POSThttp://raspberripy:3141/update?old=<stream entry as json>&<new url value>&name=<new name value>&playlistUrl=<new stream playlist url value>&playlistRegexp=<new regular expression with group(s) value>Update a radio station.
POSThttp://raspberripy:3141/delete?old=<stream entry as json>Deletes the first station that matches the stream properties
GEThttp://raspberrypi:3141/nextSwitch to the next radio station
GEThttp://raspberrypi:3141/prevSwitch to the previous radio station
GEThttp://raspberrypi:3141/playStart playing the current radio station
GEThttp://raspberrypi:3141/stopStop playing the current radio station
GEThttp://raspberrypi:3141/recordStart recording the current radio station
GEThttp://raspberrypi:3141/recordStopStop recording the current radio station
GEThttp://raspberrypi:3141/stationsGives a list of all added stations back. The format is as json.
GEThttp://raspberrypi:3141/currentSongGives the current song of the current stream back.

LCD UI

Key A (upper left)Switch to the previous radio station
Key C (upper right)Switch to the next radio station
Key B short <2s (bottom left)Start/Stop playing the current radio station
Key B long >2s (bottom left)Show ip's of eth0 and/or wlan0 if available
Key D (bottom right)Start/Stop recording the current radio station

Web UI

Open the following url http://raspberrypi:3141/ in a web browser.

Examples

Complete values for the "kexp" radio station:

urlhttp://kexp-mp3-2.cac.washington.edu:8000/listen.pls
namekexp
playlistUrlhttp://kexp.org/playlist/miniplaylist
playlistRegexp<title>([^]*)</title>

Complete values for the "radio eins" radio station:

urlhttp://www.radioeins.de/live.m3u
nameradio eins
playlistUrlhttp://www.radioeins.de/include/rad/nowonair/now_on_air.html
playlistRegexp<p class="artist">(.?)</p>[^]<p class="songtitle">(.*?)</p>

There can be multiple groups. Every group is displayed.

npm loves you