mdbraber / radiobar

macOS menubar app to listen to streaming radio
MIT License
56 stars 7 forks source link
macos menubar python radio rumps vlc

RadioBar

macOS menubar app to play user-defined radio stations with help from rumps and VLC. It includes a remote to switch channels, on/off, pause/resume etc. Forked from RadioBar by David May

screenshot

Features

Installation

Make sure you have vlc installed, e.g. using brew cask install vlc. Also, if you don't have Python installed, install it with brew install python3. Use the master repo of rumps to use the sleep() and wake() events (see PR #109)

Currently no packaged .app is distributed because I've not yet been able to include an easy way to change / update channels. Suggestions for an easy / simple mechanism are welcome!

Usage

Check radiobar.py source code to set options to show notifications or show nowplaying in the menubar.

Pause / resume stops streaming (but shows the channel as paused). It's not buffering radio (which didn't seem logical for live radio). You can also use the remote.py to automate switching channels, see below.

When macOS sleeps streaming will be stopped and you have to manually resume it (this is a feature). This only works if you're using the latest version of rumps (see PR #109).

Remote

Use the include remote.py to send commands to a running RadioBar instance to change channels and switch on/off. You can also use the command as part of an Alfred workflow. remote.py understands the following commands:

Development

Make sure you have VLC installed, ie. brew cask install vlc.

Tested in Python 2.7.x and 3.x. To run, try:

  1. pip install -r requirements.txt
  2. python radiobar.py

To re-build the macOS app, run:

  1. rm -rf ./dist/ ./build/
  2. python setup.py py2app

You can also use the supplied Makefile to use make clean, make build (default) and make install (to copy the new .app to /Applications)

Bugs

Credits

This is a fork of RadioBar built by wass3r (David May). All credits for the intial concept go to him!

License

MIT