I bought a VPS (Virtual Private Server) to make an online radio station, and it only took a few hours from purchase to a running station.
If you're able to toss out the Board of Directors at your local PUBLIC Radio station, or convince the Private guy to join Team Humanity, you could stream this server while you get yours set up.
install ubuntu or linuxmint... probably will work on others distros, but I don't know for sure
sudo apt install mpd mpc lltag id3v2 vorbisgain mp3gain ffmpeg openssh-server icecast2
mpd = the music server
cp /etc/mpd.conf /etc/mpd.conf0 # I always do this incase something gets screwed, original nice to have
sudo nano /etc/mpd.conf # the default music directory is /var/lib/mpd/music - I'd change this to a dir you own or chown this folderI did have an error on first run with 'bad' db file (permissions)- maybe chown-ing /var/lib/mpd would've made it easier π€·ββοΈ
mpc = controls for mpd (all my scripts use mpc) type mpc help and see the list of commands... so many options
id3v2 = tags for mp3 files
lltag = tags for ogg files - like mp3 but with vorbisgain (volume normalizer) read about replaygain
some versions of linux don't have mp3gain, so i converted all the mp3s to ogg- can't tell a difference sound wise
ffmpeg = video/audio converter tool - professional grade
openssh-server = allow remote access from home, make a "key" on ur home puter, then copy it via usb to the new server (or upload to vps) ~/.ssh/mykey.pub (~ = home folder)
icecast2 = streaming option (bandwidth = $$)
This is what the scripts are like
sudo chown urUsername /usr/local/bin
mkdir scripts
cd scripts/
tar -xzf zgRadioScripts.tar.gz
ln -s ~/scripts/newscript.sh /usr/local/bin/newscript
ls -1 > /tmp/list
while read line; do newscript "$line"; done < /tmp/list- chown = change owner to YOU of the local/bin folder, so you don't have to sudo/password every time you add a new script
- download the scripts, put it in the scripts folder, unzip
- ln -s = make a symlink to usr/bin so you call call the script in any folder
- do this first manually for newscript...
- the loop does this menial task for all the scripts
https://notards.net/zgRadioScripts.tar.gz
So you record a tik-tok video littleCat99-angryRant-tt.mp4 ::x:: naming convention = user-title-source
wavit littleCat... converts the audio to ogg (or mp3) with a compression filter (better 4 radio) and volume bump - seems pretty good, but fool with the variables if you like
litleCat99-angryRant-tt.ogg is place in the zzclips folder for random play with artist, title, album and replaygain tags
If there are foul words to be edited out,
audacity littleCat....
but this needs to be done on your desktop, not via remote. If you're in the same building, you can edit the same file, otherwise you need to edit it at home and ftp it to the server
zga littleCat to find all littleCat99 clips
zg angryRant to find audio with angryRant in the title
zgb tt to find all TikTok clips
Now how do you make a 24/7 playlist?
mpc listall > ~/playlists/all.m3u # (or wherever mpd.conf sez)if you already have the WtP clips in zzclips and zkclips folders
mpc listall | grep -v zzclips | grep -v zklips > ~/playlists/all.m3u # grep -v return everything butthe vertical line between means pipe, ie pipe the result to grep, pipe it again then save it to urhome/playlists
mpc load all # load that playlist with all 8000 songs
mpc shuffle
mpc play
rzclip 7 & # random zzclips every 7 min zklips folder = not on random rotation
nwzclip 30 & # & = run in background so you can keep using terminal (this will pull a random news clip every 30 min)
there's also : ipl news which will queue up today's newly added news clips and queue with your news intro clip
That's it- now the station is running with We The People voices several times per hour
Now it's about making your own clips for your community, and finding other wisdom online to share, both tasks can be community sourced.
TLDR:
- Install Ubuntu with mpd
- Get a bunch of mp3s/oggs
- Unzip scripts
- Make Playlist
- Queue WtP clips every X minutes
- Enjoy
More
https://notards.net/wtf/bash-scripts-run-radio-station-remotely
Blog comments