{
"info": {
"author": "Ronald Hecht",
"author_email": "ronald.hecht@gmx.de",
"bugtrack_url": null,
"classifiers": [
"Environment :: No Input/Output (Daemon)",
"Intended Audience :: End Users/Desktop",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 2",
"Topic :: Multimedia :: Sound/Audio :: Players"
],
"description": "*************\nMopidy-GMusic\n*************\n\n.. image:: https://img.shields.io/pypi/v/Mopidy-GMusic.svg?style=flat\n :target: https://pypi.python.org/pypi/Mopidy-GMusic/\n :alt: Latest PyPI version\n\n.. image:: https://img.shields.io/travis/mopidy/mopidy-gmusic/develop.svg?style=flat\n :target: https://travis-ci.org/mopidy/mopidy-gmusic\n :alt: Travis CI build status\n\n.. image:: https://img.shields.io/coveralls/mopidy/mopidy-gmusic/develop.svg?style=flat\n :target: https://coveralls.io/r/mopidy/mopidy-gmusic\n :alt: Test coverage\n\n`Mopidy `_ extension for playing music from\n`Google Play Music `_.\n\n\nDependencies\n============\n\nYou must have a Google account, and either:\n\n- have some music uploaded to your Google Play Music library, or\n\n- have a subscription for Google Play Music All Access.\n\n\nInstallation\n============\n\nInstall the Mopidy-GMusic extension by running::\n\n pip install mopidy-gmusic\n\n\nConfiguration\n=============\n\nBefore starting Mopidy, you must add your Google username, password and device\nID to your Mopidy configuration file::\n\n [gmusic]\n username = alice\n password = secret\n deviceid = 0123456789abcdef\n\nIf you use 2-step verification to access your Google account, which you should,\nyou must create an application password in your Google account for\nMopidy-GMusic. See Google's docs on `how to make an app password\n`_ if you're not already\nfamiliar with this.\n\nGoogle Play Music now requires all clients to provide a device ID. In the past,\nmopidy-gmusic generated one automatically from your MAC address, but Google\nseems to have changed their API in a way that prevents this from working.\nTherefore you will need to configure one manually.\nIf no device ID is configured, mopidy-gmusic will output a list of registered\ndevices and their IDs. You can either use one of those IDs in your config file,\nor use the special value `mac` if you want gmusicapi to use the old method of\ngenerating an ID from your MAC address.::\n\n [gmusic]\n deviceid = 0123456789abcdef\n # or\n deviceid = mac\n\nBy default, All Access will be enabled automatically if you subscribe. You may\nforce enable or disable it by using the all_access option::\n\n [gmusic]\n all_access = true\n\nBy default, the bitrate is set to 160 kbps. You can change this to either 128\nor 320 kbps by setting::\n\n [gmusic]\n bitrate = 320\n\nAll Access radios are available as browsable content or playlist. The following\nare the default config values::\n\n [gmusic]\n # Show radio stations in content browser\n radio_stations_in_browse = true\n # Show radio stations as playlists\n radio_stations_as_playlists = false\n # Limit the number of radio stations, unlimited if unset\n radio_stations_count =\n # Limit the number or tracks for each radio station\n radio_tracks_count = 25\n\n\nUsage\n=====\n\nThe extension is enabled by default if all dependencies are\navailable. You can simply browse through your library and search for\ntracks, albums, and artists. Google Play Music playlists are imported\nas well. You can even add songs from your All Access subscription to\nyour library. Mopidy will able to play them.\n\n\nSSL Errors\n==========\n\nThere have been reports of some errors relating to certificate verification like\nthe following::\n\n SSLError: (\"bad handshake: Error([('SSL routines', 'SSL3_GET_SERVER_CERTIFICATE', 'certificate verify failed')],)\",)\n\nThis is because OpenSSL 1.0.1 cannot handle cross-signed certificates. There\nhave been a number of possible solutions for this. Below, they are listed in\norder of preference. If one is not possible or does not work, try the next one.\n\n- Upgrade to OpenSSL 1.0.2\n- Assign the result of the following command to the REQUESTS_CA_BUNDLE::\n\n python -c 'import certifi; print certifi.old_where()'\n\n- Downgrade to certifi==2015.04.28\n\n\nProject resources\n=================\n\n- `Source code `_\n- `Issue tracker `_\n\n\nCredits\n=======\n\nWe are currently looking for a co-maintainer. Preferably someone who is familiar\nwith the codebase, familiar with python development, and uses the uploaded music\nfeature. If you're interested, please take a look at the code base and work on\nsubmitting a pull request or two (to show you understand how everything works\ntogether). If you need help getting a development environment set up, don't\nhesitate to ping belak in the #mopidy channel on the Freenode IRC network.\n\n- Original author: `Ronald Hecht `_\n- Current maintainer: `Kaleb Elwert `_\n- `Contributors `_\n\n\nChangelog\n=========\n\nv3.0.0 (2018-06-27)\n-------------------\n\n- Add Top Tracks to Artists\n- Work around broken track IDs returned by Google\n- Require Device ID to be set in the config\n\nv2.0.0 (2016-11-2)\n-------------------\n\n- Require gmusicapi >= 10.1.\n- Make search work for gmusicapi >= 10.0. (Fixes: #116, PR: #117)\n- Enable search for accounts without All Access. (PR: #117)\n- Require cachetools. (PR: #119)\n- Caching should be more consistent. (Fixes: #63, PR: #122)\n- Autodetect All Access if not specified in config. (PR: #123)\n- General refactoring. (PR: #120, #121)\n- Much faster playlist loading. (PR: #130)\n- Library browse rewrite. (PR: #131)\n- Add IFL playlist and improve radio caching. (PR: #135)\n\n\nv1.0.0 (2015-10-23)\n-------------------\n\n- Require Mopidy >= 1.0.\n- Require gmusicapi >= 6.0.\n- Update to work with new playback API in Mopidy 1.0. (PR: #75)\n- Update to work with new search API in Mopidy 1.0.\n- Fix crash when tracks lack album or artist information. (Fixes: #74, PR: #24,\n also thanks to PRs #27, #64)\n- Log error on login failure instead of swallowing the error. (PR: #36)\n- Add support for All Access search and lookup (PR: #34)\n- Add dynamic playlist based on top rated tracks.\n- Add support for radio stations in browser and/or as playlists.\n- Add support for browsing artists and albums in the cached library.\n- Add cover art to ``Album.images`` model field.\n- Add background refreshing of library and playlists. (Fixes: #21)\n- Fix authentication issues. (Fixes: #82, #87)\n- Add LRU cache for All Access albums and tracks.\n- Increment Google's play count if 50% or 240s of the track has been played.\n (PR: #51, and later changes)\n- Let gmusicapi use the device's MAC address as device ID by default.\n- Fix increasing of play counts in Google Play Music. (Fixes: #96)\n- Fix scrobbling of tracks to Last.fm through Mopidy-Scrobbler. (Fixes: #60)\n- Fix unhandled crashes on network connectivity issues. (Fixes: #85)\n- Add ``gmusic/bitrate`` config to select streaming bitrate.\n\n\nv0.3.0 (2014-01-28)\n-------------------\n\n- Issue #19: Public playlist support\n- Issue #16: All playlist files are playable now\n- Require Mopidy >= 0.18.\n\n\nv0.2.2 (2013-11-11)\n-------------------\n\n- Issue #17: Fixed a bug regarding various artist albums\n (compilations)\n- Issue #18: Fixed Google Music API playlist call for version 3.0.0\n- Issue #16 (partial): All Access tracks in playlists are playable now\n\n\nv0.2.1 (2013-10-11)\n-------------------\n\n- Issue #15: Fixed a bug regarding the translation of Google album\n artists to Mopidy album artists\n\n\nv0.2 (2013-10-11)\n-----------------\n\n- Issue #12: Now able to play music from Google All Access\n- Issue #9: Switched to the Mobileclient API of Google Music API\n- Issue #4: Generate Album and Artist Search Results\n\n\nv0.1.1 (2013-09-23)\n-------------------\n\n- Issue #11: Browsing the library fixed by implementing find_exact()\n\n\nv0.1 (2013-09-16)\n-----------------\n\n- Initial release\n\n\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/mopidy/mopidy-gmusic",
"keywords": "",
"license": "Apache License, Version 2.0",
"maintainer": "",
"maintainer_email": "",
"name": "Mopidy-GMusic",
"package_url": "https://pypi.org/project/Mopidy-GMusic/",
"platform": "",
"project_url": "https://pypi.org/project/Mopidy-GMusic/",
"project_urls": {
"Homepage": "https://github.com/mopidy/mopidy-gmusic"
},
"release_url": "https://pypi.org/project/Mopidy-GMusic/3.0.0/",
"requires_dist": [
"setuptools",
"Mopidy (>=1.0)",
"Pykka (>=1.1)",
"gmusicapi (>=10.1)",
"requests (>=2.0)",
"cachetools (>=1.0)"
],
"requires_python": "",
"summary": "Mopidy extension for playing music from Google Play Music",
"version": "3.0.0"
},
"last_serial": 4009255,
"releases": {
"0.1": [
{
"comment_text": "",
"digests": {
"md5": "e940e838ae5b86a681f48c52d6fa251f",
"sha256": "d634269cee7d81ca874b268f6f93d7cc166ef27778ce538fff05fb30af3be8a2"
},
"downloads": -1,
"filename": "Mopidy-GMusic-0.1.tar.gz",
"has_sig": false,
"md5_digest": "e940e838ae5b86a681f48c52d6fa251f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8319,
"upload_time": "2013-09-16T08:06:15",
"url": "https://files.pythonhosted.org/packages/fa/34/772c298966f279e881929b8a6fadf3a3f0ed3d404eed7095c85cac2e7832/Mopidy-GMusic-0.1.tar.gz"
}
],
"0.1.1": [
{
"comment_text": "",
"digests": {
"md5": "a00d8d3705ae51295fcd8bc3e669dcb5",
"sha256": "23cc23f7a944081fe968056d7e0c033f784a2d08f0eddf84277e055b395cbfc8"
},
"downloads": -1,
"filename": "Mopidy-GMusic-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "a00d8d3705ae51295fcd8bc3e669dcb5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8431,
"upload_time": "2013-09-23T06:19:58",
"url": "https://files.pythonhosted.org/packages/ab/f3/c658bdddd16bc0c723465249e35a94f89897ef647b08bdfe709d9be338da/Mopidy-GMusic-0.1.1.tar.gz"
}
],
"0.2": [
{
"comment_text": "",
"digests": {
"md5": "a4814a52af40e1d588d8bbdf2f1b6076",
"sha256": "91d525eeed021386b0caaa57c7c49adcbab77a07bb47255ee153418b4b30215a"
},
"downloads": -1,
"filename": "Mopidy-GMusic-0.2.tar.gz",
"has_sig": false,
"md5_digest": "a4814a52af40e1d588d8bbdf2f1b6076",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 10659,
"upload_time": "2013-10-11T06:43:32",
"url": "https://files.pythonhosted.org/packages/19/34/2f920312b0b997b19c6bae46460de53e2646801150e223a67e793b8c1c22/Mopidy-GMusic-0.2.tar.gz"
}
],
"0.2.1": [
{
"comment_text": "",
"digests": {
"md5": "2d733816ae6299f18fa7bc2d02217769",
"sha256": "a5587c9b63116cb0dac4dc8e3230d2c6d04859b7aef9b520dda818e5b666d677"
},
"downloads": -1,
"filename": "Mopidy-GMusic-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "2d733816ae6299f18fa7bc2d02217769",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 10789,
"upload_time": "2013-10-11T11:51:44",
"url": "https://files.pythonhosted.org/packages/ae/33/acf60e9338e15ed49b7e0de26943e66d5ecc39532d2ae7270dc547771e95/Mopidy-GMusic-0.2.1.tar.gz"
}
],
"0.2.2": [
{
"comment_text": "",
"digests": {
"md5": "ca21ed709336683ddc5bde65d457f8a5",
"sha256": "a38c904143bb8193c6a3342a9874f08ea7df0ff83d6da2fefe56c393d93f58c8"
},
"downloads": -1,
"filename": "Mopidy-GMusic-0.2.2.tar.gz",
"has_sig": false,
"md5_digest": "ca21ed709336683ddc5bde65d457f8a5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 12297,
"upload_time": "2013-11-11T09:29:37",
"url": "https://files.pythonhosted.org/packages/f8/cb/f48e059ba62f70532cc7b717af0e854b112ffa3f7184a1a8093ae80fde58/Mopidy-GMusic-0.2.2.tar.gz"
}
],
"0.3.0": [
{
"comment_text": "",
"digests": {
"md5": "5de4c7cc543080c5e9e547a91d1946f9",
"sha256": "59eeb628c837da2fe21aef6fdfebc5ed72299feb9a8aa79468606c3cfda92025"
},
"downloads": -1,
"filename": "Mopidy-GMusic-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "5de4c7cc543080c5e9e547a91d1946f9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13177,
"upload_time": "2014-01-28T12:33:43",
"url": "https://files.pythonhosted.org/packages/25/01/9578dcb235602b78627c85105efe3b3d658b5283750387fb884582b471b7/Mopidy-GMusic-0.3.0.tar.gz"
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "8d67ab939f974c6f5c08ee8ce3349867",
"sha256": "3eea892b3a7e8712ef7f383110e05d877b60cb8f1238cb865ee1c39483a5f283"
},
"downloads": -1,
"filename": "Mopidy_GMusic-1.0.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "8d67ab939f974c6f5c08ee8ce3349867",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 19889,
"upload_time": "2015-10-23T21:52:21",
"url": "https://files.pythonhosted.org/packages/d8/f1/71aebfb1e2450aed273eac32c17d83373421901db3fff5d5ea7d3af75293/Mopidy_GMusic-1.0.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "07f6692df7351c056a8c5f486aab4fd7",
"sha256": "712a64036e59143e6166054bec08966475591a5407e0c5bda242b7c4a75f2731"
},
"downloads": -1,
"filename": "Mopidy-GMusic-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "07f6692df7351c056a8c5f486aab4fd7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24768,
"upload_time": "2015-10-23T21:52:25",
"url": "https://files.pythonhosted.org/packages/5c/96/f6f5ec11dcc7cdde2ef639e976e3be51d454d31b4818a5c68d46983e5225/Mopidy-GMusic-1.0.0.tar.gz"
}
],
"2.0.0": [
{
"comment_text": "",
"digests": {
"md5": "49706ecb238eb966779d9d24c86c95d4",
"sha256": "f32fb5aa1d2cb6d4aeeea73b9590447fa11c79b97be3348dc58bdf2b83c9db76"
},
"downloads": -1,
"filename": "Mopidy_GMusic-2.0.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "49706ecb238eb966779d9d24c86c95d4",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 20365,
"upload_time": "2016-11-02T22:17:05",
"url": "https://files.pythonhosted.org/packages/89/bd/5a40801b4007990f117ebcc4d489d0c6f07cf77764ba6a16f35cebf6c41f/Mopidy_GMusic-2.0.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "aab1981070f399b548ea8eaac4b49294",
"sha256": "e7e5cc2fd07ffa1ed96b8263d6ec0cfc216506ef02795b026b428cd9584d5eeb"
},
"downloads": -1,
"filename": "Mopidy-GMusic-2.0.0.tar.gz",
"has_sig": false,
"md5_digest": "aab1981070f399b548ea8eaac4b49294",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24942,
"upload_time": "2016-11-02T22:17:08",
"url": "https://files.pythonhosted.org/packages/02/af/a313c837c63b10deadee22dcf453b0ec15a7e33c4e35a604f532559a68b6/Mopidy-GMusic-2.0.0.tar.gz"
}
],
"2.0.0rc1": [
{
"comment_text": "",
"digests": {
"md5": "cae4abff6e045ad8e38028d303419ee1",
"sha256": "64bebf3416785b230cb71b0ca6cc0d504db56a29c196d64eacd1a026b17e5c26"
},
"downloads": -1,
"filename": "Mopidy-GMusic-2.0.0rc1.tar.gz",
"has_sig": true,
"md5_digest": "cae4abff6e045ad8e38028d303419ee1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24224,
"upload_time": "2016-07-15T05:46:57",
"url": "https://files.pythonhosted.org/packages/23/e8/b95d7774c4e0372ba6f3b93bb413b478621151f23d51af318a924f1ce707/Mopidy-GMusic-2.0.0rc1.tar.gz"
}
],
"3.0.0": [
{
"comment_text": "",
"digests": {
"md5": "3760c16e2826a09753dd9930b600fd2f",
"sha256": "92e349339b3885150804a9c857f591ca21207533d0234e6e92e38050c669bef5"
},
"downloads": -1,
"filename": "Mopidy_GMusic-3.0.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "3760c16e2826a09753dd9930b600fd2f",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 16930,
"upload_time": "2018-06-27T22:50:56",
"url": "https://files.pythonhosted.org/packages/91/9d/ee3c66bc5b34911ce1feae04bb3dd93306e355055a3cbe7cf6d6b27e32b1/Mopidy_GMusic-3.0.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "768cd4b059d405b398aa1d682f4168ca",
"sha256": "ee3c29ca41a19dcffec506d2bee73cb95b11ac8a94f60d799d67a15423711d1d"
},
"downloads": -1,
"filename": "Mopidy-GMusic-3.0.0.tar.gz",
"has_sig": false,
"md5_digest": "768cd4b059d405b398aa1d682f4168ca",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 25462,
"upload_time": "2018-06-27T22:50:57",
"url": "https://files.pythonhosted.org/packages/46/a2/9d54ec3fa11d2e3a05371b7a786b1a2bc8137dc5b122b37469fe55f70e51/Mopidy-GMusic-3.0.0.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "3760c16e2826a09753dd9930b600fd2f",
"sha256": "92e349339b3885150804a9c857f591ca21207533d0234e6e92e38050c669bef5"
},
"downloads": -1,
"filename": "Mopidy_GMusic-3.0.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "3760c16e2826a09753dd9930b600fd2f",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 16930,
"upload_time": "2018-06-27T22:50:56",
"url": "https://files.pythonhosted.org/packages/91/9d/ee3c66bc5b34911ce1feae04bb3dd93306e355055a3cbe7cf6d6b27e32b1/Mopidy_GMusic-3.0.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "768cd4b059d405b398aa1d682f4168ca",
"sha256": "ee3c29ca41a19dcffec506d2bee73cb95b11ac8a94f60d799d67a15423711d1d"
},
"downloads": -1,
"filename": "Mopidy-GMusic-3.0.0.tar.gz",
"has_sig": false,
"md5_digest": "768cd4b059d405b398aa1d682f4168ca",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 25462,
"upload_time": "2018-06-27T22:50:57",
"url": "https://files.pythonhosted.org/packages/46/a2/9d54ec3fa11d2e3a05371b7a786b1a2bc8137dc5b122b37469fe55f70e51/Mopidy-GMusic-3.0.0.tar.gz"
}
]
}