Git Product home page Git Product logo

playmusiccl's Introduction

PlayMusicCL

A command line client for Google Play Music.

Code Health

No longer maintained

This project is no longer actively maintained. I haven't really got the time needed to mainthin this and have since stopped using the client for my personal use.

Install/Configuration

Install using python setup.py install, which installs the majority of dependencies; however, you will also need the Python GTK bindings (for GST):

  • Debian-based systems: sudo apt-get install python-gst*
  • RHEL: sudo yum install gstreamer-python* python-mock
  • OS X: brew install pygobject3 gstreamer

Configure by copying the example config file to your home directory: cp example.playmusicclrc ~/.playmusicclrc, then edit as needed. The minimum required settings are google_user and google_device_id. Use GetDeviceID.py to get the registered device IDs associated with your account, then use one of them (minus the leading '0x') as your google_device_id. If no password is included in the config file, one will be requested when the app starts (note that if using Google two factor authentication then you will need to create an application specific password).

Remove the lastfm_ entries from the config file to disable Last.fm integration.

Usage

From a terminal: playmusiccl

Once the app is running you will then have access to the following commands:

  • PLAY - Pauses or unpauses playback
  • PAUSE - Same as PLAY
  • P - Same as PLAY
  • LIKE - Loves the current song on Last.fm and gives it a Thumbs Up on Google Play
  • LOVE - Same as LIKE
  • L - Same as LIKE
  • EXIT - Exits
  • NOW - Shows the title and artist of the currently playing song.
  • [return] - Same as NOW
  • NEXT (n) - Plays the nth song after the current song (n has no effect in random play mode, n can also be negative to skip back through tracks)
  • N - Plays next track
  • PMODE [random/linear] [repeat/norepeat] - Specifies play options, if you have used any other media player they should be self explanatory
  • LIST (pn) - Shows a list of all artists
  • LIST (pn) PLIST - Shows a lit of all user playlists
  • LIST (pn) PLIST [playlist] - Shows all songs in specified user playlist
  • LIST (pn) [artist] - Shows all albums by specifies artist (including albums they appear on)
  • LIST (pn) [artist] [album] - Shows all songs in specified album by specified artist
  • QUEUE (pn) - Show songs currently in the queue (in the order they are to be played)
  • QUEUE PLIST [playlist] - Add all songs from specified user playlist to queue
  • QUEUE [artist] - Adds all songs by specified artist to queue
  • QUEUE [artist] [album] - Adds all songs by specified album to queue
  • QUEUE [artist] [album] [song] - Adds specified song to queue
  • CLEARQUEUE - Stops playback and removes all songs from the queue
  • PAM - "Play Awesome Music": clears queue, queues "Thumbs Up" playlist, sets random playback and plays

Note that n and pn are optional parameters and both default to 1, pn denotes the number of the page to display.

Commands themselves are case insensitive, however artist, album, track and playlist names are case sensitive and must have correct spacing.

Command Examples

To see all albums by Eluvietie: list Eluveitie

To see all tracks in Spirit by Eluveitie: list Eluveitie Spirit

To add "...Of Fire, Wind and Wisdom" (in album Spirit) by Eluveitie to the queue: queue Eluveitie Spirit "...Of Fire, Wind and Wisdom"

To see all playlists: list plist

To see all tracks in playlist "Symphonic Metal": list plist "Symphonic Metal"

To add all tracks from playlist "Symphonic Metal" to queue: queue plist "Symphonic Metal"

playmusiccl's People

Contributors

belak avatar charlescbeebe avatar dannixon avatar jonls avatar thetechstewart avatar vulcanfk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.