Canticle is a command-line music/audio streaming application. It uses Blessed as front-end for youtube-dl and mplayer. Canticle is designed for streaming only and does not download media for off-line playback.
This software uses the MIT License.
Canticle has served me well for a good stretch of time even though I neglect doing work to improve it. If I were to put forth the effort to finish cleaning it up, it might even be something nice. Not sure if that'll ever happen. Occasionally dependencies will break this app; be patient, sometimes these things work themselves out.
- Uses the entire terminal window to provide a friendly user interface.
- Command console accepts text commands for managing playlists and playback.
- Add URL's from popular streaming sites such as YouTube to local playlists.
- Option to shuffle playback.
- Keyboard shortcuts for seeking through tracks. (0.0.3)
- Keyboard shortcuts for controlling in-app volume. (0.0.3)
- User specific options can be set in
~/.config/canticle/*.json. (0.0.3) - Keyboard shortcuts for controlling playback. (0.0.3)
- (0.0.4) Command to validate that existing tracks in a playlist have valid streams.
- (0.0.4) Example:
validate playlist example - (0.0.4) Maintenence script can optionally prune invalid tracks
- (0.0.4) Ability to import existing public YouTube playlists
- (0.0.4)
djandautoplaycommands for quickly starting playback - (0.0.4) Add tracks to playlists via CLI
- (0.0.4) WinAMP style title scroll in the Now Playing widget
- (0.0.4) Keyboard shortcuts for navigating playlist
PgUpSelect first track in playlistPgDnSelect last track in playlistHomeMove playlist selection up the number of visible tracksEndMove playlist selection down the number of visible tracks
- Published on yarn
- Switched to yarn for development
- File logging path can be set in user config under
logging- Default
false
- Default
- Database file path can be set in user config
- Default
/home/$USER/.config/canticle/database.sql
- Default
- Interactive
helpcommand - Ability to delete tracks from the app
- mysql and postgres support.
- VIM Style keybindings.
- mpv and VLC support.
- Move tracks between playlists.
- Trash playlist that acts like a recycle bin.
- Export tracks to text file.
- Desktop notications.
- Time-weighted shuffle.
- A modern version of node (Developed using v8.9.3)
- mplayer
- sqlite3
sudo apt install mplayeryarn global add canticle- If it isn't already you'll need to put your yarn global bin in your
$PATH.
Though there is some mouse support, Canticle is primarily controlled by text commands.
add playlist [name]- add a new playlist to the playlist manageradd track [URL]- add a new track to the open playlistadd tracks [playlist url]- add tracks from a public YouTube playlist to the open playlistplay- Opens a playlist, if a playist is open, play the highlighted trackplay [integer]play track [integer]- Opens a specific track in the playlist by indexplay [name]play playlist [name]- Opens a specific track in the playlist manager by name
shuffle- Toggles track shufflingnext- Highlight the next track to be playeddj- Opens a playlist, enables shuffle, selects the next track, and starts playbackvalidate playlist [name]validate each track in a playlistpause- Toggle pausing playbackquit- Quit the application
Esc- Blur the command console (click in text area to reselect)Ctrl+c- When command console is blurred exit the apphome- Select first track in the open playlistend- Select the last track in the open playlistPgUp- Move playlist selection up the number of visible tracksPgDn- Move playlist selection down the number of visible tracksRight Arrow- Seek ahead in trackLeft Arrow- Seek behind in trackUp Arrow- Go back in command historyDown Arrow- Go forward in command history or blank console
Inspired by mps-youtube
- MIT