Walkman
Walkman puts you in control if your music.
Install
gem install walkman
Dependencies
Walkman relies on a few external services to do its magic. Currently, the canonical source for music data comes from Echo Nest who provides artist/album/song information as well as playlist generation and seeding. Actual music streams are currently provided via Rdio with support for Spotify and local file playback via MPD in the works.
Echo Nest
- Sign up for an Echo Nest developer account
- Grab the
api_key
,consumer_key
, andshared_secret
- Create a catalog (taste profile) to use as your base library and grab its
id
to use ascatalog_id
:
curl -F "api_key=<api_key>" -F "format=json" -F "type=general" -F "name=base_profile" "http://developer.echonest.com/api/v4/tasteprofile/create"
Rdio
Config
Create a Walkman config file at ~/.walkman
:
log_level: debug # optional
server:
host: localhost # optional
port: 27001 # optional
echonest:
api_key: APIKEY
consumer_key: CONSUMERKEY
shared_secret: SHAREDSECRET
catalog_id: CATALOGID
rdio:
player_url: http://localhost:4567/rdio # optional
playback_token: PLAYBACKTOKEN
browser_path: /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --no-process-singleton-dialog # optional
Usage
Commands:
walkman help [COMMAND] # Describe available commands or one specific command
walkman like # plays more music like the current song
walkman next # plays the next song in the current playlist
walkman now_playing # shows the song that's currently playing
walkman play # plays the current playlist
walkman play_artist ARTIST # plays songs from the given artist
walkman play_artist_radio ARTIST # plays music like the given artist
walkman shutdown # stops the walkman server
walkman skip COUNT # skips the given amount of songs
walkman start # starts the walkman server
walkman stop # stops playing music
walkman up_next # shows the next songs on the current playlist