radio-active icon indicating copy to clipboard operation
radio-active copied to clipboard

Play any radios around the globe right from the terminal :zap:

RADIO-ACTIVE

Play any radios around the globe right from your terminal

radio-active - Play more than 30K radio stations from your terminal | Product Hunt


GitHub PyPI PyPI - Downloads CodeFactor Grade Discord

YouTube Video Likes and Dislikes

Join Discord Server

Features

  • [x] Supports more than 30K stations !!
  • [x] Saves last station information
  • [x] Favorite stations (Aliasing)
  • [x] Supports user-added stations
  • [x] Looks minimal and user-friendly
  • [x] Runs on Raspberry-Pi
  • [x] Finds nearby stations
  • [x] Discovers stations by genre
  • [x] Discovers stations by language
  • [ ] I'm feeling lucky ! Play Random stations
  • [ ] No external media player dependency!

See my progress here

External Dependency

It needs FFmpeg to be installed on your system in order to play the audio

on Ubuntu based system >= 20.04 Run

sudo apt update
sudo apt install ffmpeg

For other systems including windows see the above link

Installing FFmpeg

FFmpeg is required for this program to work correctly. Install FFmpeg by following these steps :-

Install

Just run: pip3 install --upgrade radio-active

I encourage you to install with pipx: pipx install radio-active

Run

Run with radioactive --station [STATION_NAME] or as simply radio -U [UUID] :zap:

Tips

  1. Use a modern terminal emulator, otherwise the UI might break! (gets too ugly sometimes)
  2. On windows, instead of default Command Prompt, use the new Windows Terminal or web-based emulators like hyper,Cmdr,Terminus etc. for better UI
  3. Let the app run for atleast 5 seconds (not a serious issue though, for better performance)

Demo


Options

Argument Note Description Default
--station, -S Required ( Optional from second run) Station name None
--uuid, -U Optional ID of the station None
--log-level, -L Optional Log level of the program info
--add-station , -A Optional Add an entry to fav list False
--show-favourite-list,-W Optional Show fav list False
--add-to-favourite,-F Optional Add current station to fav list False
--flush Optional Remove all the entries from fav list False
--discover-by-country,-D Optional Discover stations by country code false
--discover-by-state Optioanl Discover stations by country state false
--discover-by-tag Optional Discover stations by tags/genre fasle
--discover-by-language optional Discover stations by false
--limit Optional Limit the # of results in the discover table 100

--station, -S : Expects a station name to be played (if not provided it will try to get the last played station). Example: "pehla nasha" , pehla_nasha, bbc_radio

--uuid,-U : When station names are too long or confusing (or multiple results for the same name) use the station's uuid to play . --uuid gets the greater priority than --station. Example: 96444e20-0601-11e8-ae97-52543be04c81

--log-level, -L : don't need to specify unless you are developing it. info , warning , error , debug

-F : Add current station to your favorite list. Example: -F my_fav_1

-A: Add any stations to your list. You can add stations that are not currently available on our API. When adding a new station enter a name and direct URL to the audio stream.

Changes

see CHANGELOG

Community

Share you favorite list with our community 🌐 ➡️ Here

Your favorite list .radio-active-alias is under your home directory as a hidden file :)

Extra

If you ever face a situation where radio-active quits but the audio (ffplay) runs in the background. Kill the process ID (PID) of ffplay. Run ps -al get the PID of ffplay and kill [PID]. I know you Know that :)

Support

Buy Me A Coffee

Acknowledgements

Icons made by Freepik from www.flaticon.com

Happy Listening