Play & record SomaFM radio channels
- Play all SomaFM channels directly in your terminal.
- Play random channel.
- Nice & clean output of playing song including timestamp and song history.
- Desktop notifications on track change (can be disabled).
- Specify channel directly or use interactive mode.
- Show channel list and search by name and genre.
- Hit + to instantly add playing song to favourites list.
- Copy current song title to clipboard by pressing c.
- Record channels and save tracks to your working directory.
$ yarn global add somafm
or with npm:
$ npm install --global somafm
To record a channel, you need Streamripper and its executable
On Linux, the
xclip package is needed to enable copying the current song title to the clipboard.
Interactive mode. Choose a channel to play from the list.
$ somafm list [<keywords>]
Show a list of all SomaFM channels. You can filter by one or more keywords.
$ somafm play <channel> | random
Play a channel. To specify a channel, use the ID from the channel list (lower-case, no spaces), e.g.
random to play any channel.
$ somafm info <channel>
Get channel information.
$ somafm record <channel>
Record a channel. Tracks are saved into a directory containing channel name, date and time, e.g.
SomaFM Groove Salad/20171011_213324. It is automatically created in the current working directory.
$ somafm list-favourites [<keywords>]
List your favourite songs. You can filter by one or more keywords in song title and channel name.
$ somafm edit-favourites
Edit your favourites songs file.
All commands have short aliases for faster typing.
Don't show desktop notifications.
While playing, the following keyboard shortcuts are available:
|Copy current song title to clipboard||c|
|Add current song to favourites||+ or f|
|Remove current song from favourites||- or u|
|Increase volume*||* or 0|
|Decrease volume*||/ or 9|
|Enable desktop notifications||d|
|Disable desktop notifications||n|
|Stop playback & quit application||q or esc|
* MPlayer only