So recently I had a need to record a radio broadcast that happens pretty regularly, but its an overseas station, and the time zone is not convenient to get up in the middle of the night and turn on my mp3 recorder. So I was looking for a good scheduled radio recorder, but surprisingly didn’t find anything that would work with my stream. So that led me to my own solution… here’s what I did..
Step 1. Get you’re streams URL
The first step is to figure out the URL for your stream, if you use an mp3 player or other streaming audio player, there are various was to do this.. I use the site Radio Garden it gives you a Google earth view and plots all the locations where radio streams originate from, so use it to explore live radio. You can also use streamfinder.com to get URL’s and other information
For this example lets say I want to listen to the BBC news stream for BBC Radio 1
Step 2. Download and install the Recording Software: VLC Player
For automated recording we’ll be using VLC MEdia Player, for a couple of reasons, first its supports all PC’s and Macs, second it has a wide variety of codecs to decode most streaming formats, and finally it can be run in a headless mode (via the command line) to allow us to schedule our recordings.
Download and install it form here VLC Media Player.
Step 3. Schedule you’re recording..
To make this part painless, here’s the simple script I put together to make this all happen easily. This is a script written for Windows 10 , 11 but it’s only a few lines an can be easily adapter to Linux or Mac . Simply save this script as record_stream.bat (or equivalent name)
' RECORD a selected Radio station @ECHO OFF ECHO Recordinga selected Radio station set radio_station_url='http://open.live.bbc.co.uk/mediaselector/5/select/version/2.0/mediaset/http-icy-mp3-a/vpid/bbc_radio_one/format/pls.pls' set record_length_sec=1800 set output_filename=radio_recordings.mp3 vlc %radio_station_url% --sout "#duplicate{dst=std{access=file,mux=raw,dst=C:\Users\tonyb\Downloads\%output_filename%}" --stop-time %record_length_sec% vlc://quit
Finally , let’s schedule this at the time we want it to run.. Obviously you’re computer will need to be on at that time, or if you do this on a server or even a NAS running some VM platform, just as long as its powered on when the scheduled time arrives.
To schedule it under windows as such. For Linux you can of course use cron. In windows It should create a task running your batch file under your account at logon. Alternatively you can use the Windows Task Scheduler Gui to set it up
$Trigger= New-ScheduledTaskTrigger -At 10:00am –Daily # Specify the trigger settings $User= "NT AUTHORITY\SYSTEM" # Specify the account to run the script $Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "C:\PS\record_Stream.bat" # Specify what program to run and with its parameters Register-ScheduledTask -TaskName "MonitorGroupMembership" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force # Specify the name of the task
Enjoy the Recording
That’s it, if all went as expected you should have your radio_recordings.mp3 waiting for you to listen and enjoy when you’re ready.
You can expand on this and of course set different recordings for different stations, all are just variations of the steps above.
Happy Listening..