/tizonia-openmax-il

Command-line cloud music player for Linux with support for Spotify, Google Play Music, YouTube, SoundCloud, Dirble, Plex servers and Chromecast devices.

Primary LanguageCGNU Lesser General Public License v3.0LGPL-3.0

Tizonia logo

The Tizonia Project

  • A command-line streaming music client/server for Linux.
  • Support for Spotify (Premium), Google Play Music (free and paid tiers), YouTube, SoundCloud, Dirble, Plex servers and Chromecast devices.
  • The first open-source implementation of OpenMAX IL 1.2.

Build Status | Coverity Scan Build Status | Codecov | GitHub commits | Codacy Badge | license | CII Best Practices | [Gitter chat]

News

  • [2018-06-15] Tizonia v0.15.0. Reworked Spotify support to overcome playlist search problems that arised in libspotify. Now spotipy is being used to retrieve track, artist, album, and playlist metadata from Spotify.

  • [2018-04-20] Tizonia v0.14.0. Added support for Google Play Music stations for non-subscribers and YouTube channels (uploads and playlists). Also added option to play the user's entire Google Play Music library.

  • [2018-03-09] Tizonia v0.13.0. Added support for Plex servers. Various improvements and bug fixes in Google Music, SoundCloud, Dirble and Spotify.

  • [2018-02-11] Tizonia v0.12.0. Chromecast support is now available for Google Play Music, YouTube, SoundCloud, and Dirble playlists and standalone HTTP radio stations (casting of Spotify and local media to be included in a future release).

  • [2017-12-28] Snap Package and Docker Image available.

  • [2017-08-26] tizonia-all and tizonia-all-git packages submitted to the Arch User Repository

  • [2017-05-04] Summer of Code 2017: Add OpenMAX state tracker in Mesa/Gallium that uses Tizonia (X.Org Foundation project, with Gurkirpal Singh and Julien Isorce).

Installation

Debian / Ubuntu / Raspbian

Available from Bintray, with the following distro/arch combinations:

Ubuntu Xenial (16.04) Ubuntu Bionic (18.04) Debian Stretch (9) Raspbian Stretch (9) Debian Buster (10)
amd64, armhf amd64, armhf amd64, armhf armhf amd64
Download Download Download Download Download

NOTE: Elementary OS and Linux Mint are (or will be) supported on releases based on Ubuntu 'Xenial' or 'Bionic'.

Please note that the recommended way to install Tizonia on a Debian-compatible system is by running the following command:

    $ curl -kL https://github.com/tizonia/tizonia-openmax-il/raw/master/tools/install.sh | bash

    # Or its shortened version:

    $ curl -kL https://goo.gl/Vu8qGR | bash

NOTE: This script installs the latest release and all the dependencies.

NOTE: The usual disclaimers apply: trust no-one. You should have a look at the installation script before running it on your system!.

Arch User Repository (AUR)

    $ yaourt -S tizonia-all # for the latest stable release

    # or

    $ yaourt -S tizonia-all-git # for the bleeding edge

Snap Package

A 'snap' package is now available to download from the 'Global' snap store ('stable' channel). For more details visit:

To install, first visit Install Snapd and make sure that your Linux distro is supported. Follow the instructions to get the 'snapd' service running on your system, and finally use this command to install Tizonia:

$ sudo snap install tizonia

Tizonia's snapcraft.yaml file is hosted in its own repository:

Docker Image

Tizonia can also be run from a Docker container. A Docker image is available from the Docker hub:

Configuration

To use Spotify, Google Play Music, SoundCloud, Dirble and Plex introduce your credentials in Tizonia's config file (see instructions inside this file for more information):

    ( On first use, Tizonia outputs its configuration file, if it is not there yet )

    $ tizonia --help

    ( now edit $HOME/.config/tizonia/tizonia.conf )

    ( NOTE: If Tizonia was installed from the 'snap' package, use this path instead )
    ( $HOME/snap/tizonia/current/.config/tizonia/tizonia.conf )

Upgrade (Debian / Ubuntu / Raspbian)

To upgrade, simply re-run the install script. This is the most convienent way of upgrading the software and all its dependencies.

If you prefer to do it manually, it is a two-step process. Run 'apt-get' as usual to upgrade the Debian packages, but also make sure the various Python dependencies are up-to-date, as follows:

    # Step1: This will update Tizonia's Debian packages
    $ sudo apt-get update && sudo apt-get upgrade

    # Step2: Tizonia's Python dependencies
    # (Note that new versions of some of these Python packages are released frequently,
    # so you should do this frequently, even if there isn't a new Tizonia release)
    $ sudo -H pip install --upgrade gmusicapi soundcloud youtube-dl pafy pycountry titlecase pychromecast plexapi fuzzywuzzy eventlet && sudo -H pip install git+https://github.com/plamere/spotipy.git --upgrade

Roadmap

  • Pandora support.
  • Tidal support
  • Support for YouTube live streams.
  • REPL command-line interface.
  • OS X port.

Resources