diff --git a/docs/.doctrees/api/minim.discogs.API.doctree b/docs/.doctrees/api/minim.discogs.API.doctree index b6ae716..24831fa 100644 Binary files a/docs/.doctrees/api/minim.discogs.API.doctree and b/docs/.doctrees/api/minim.discogs.API.doctree differ diff --git a/docs/.doctrees/environment.pickle b/docs/.doctrees/environment.pickle index 2809788..5e0a628 100644 Binary files a/docs/.doctrees/environment.pickle and b/docs/.doctrees/environment.pickle differ diff --git a/docs/.doctrees/notebooks/getting_started.doctree b/docs/.doctrees/notebooks/getting_started.doctree index 72d8f14..6a49739 100644 Binary files a/docs/.doctrees/notebooks/getting_started.doctree and b/docs/.doctrees/notebooks/getting_started.doctree differ diff --git a/docs/.doctrees/notebooks/user_guide/editing_audio_metadata.doctree b/docs/.doctrees/notebooks/user_guide/editing_audio_metadata.doctree index b76e27e..764f9ab 100644 Binary files a/docs/.doctrees/notebooks/user_guide/editing_audio_metadata.doctree and b/docs/.doctrees/notebooks/user_guide/editing_audio_metadata.doctree differ diff --git a/docs/.doctrees/notebooks/user_guide/getting_recommendations.doctree b/docs/.doctrees/notebooks/user_guide/getting_recommendations.doctree index cc8e7f1..637462f 100644 Binary files a/docs/.doctrees/notebooks/user_guide/getting_recommendations.doctree and b/docs/.doctrees/notebooks/user_guide/getting_recommendations.doctree differ diff --git a/docs/_modules/minim/discogs.html b/docs/_modules/minim/discogs.html index 1c53551..422732e 100644 --- a/docs/_modules/minim/discogs.html +++ b/docs/_modules/minim/discogs.html @@ -337,13 +337,11 @@

Source code for minim.discogs

     
     To view and make changes to account information and resources, users
     must either provide a personal access token to this class's 
-    constructor as a keyword argument or store it as 
-    :code:`DISCOGS_PERSONAL_ACCESS_TOKEN` in the operating system's
-    environment variables, or undergo the OAuth 1.0a flow, which require
-    valid client credentials, using Minim. If an existing OAuth access
-    token/secret pair is available, it can be provided to this class's
-    constructor as keyword arguments to bypass the access token 
-    retrieval process.
+    constructor as a keyword argument or undergo the OAuth 1.0a flow, 
+    which require valid client credentials, using Minim. If an existing
+    OAuth access token/secret pair is available, it can be provided to
+    this class's constructor as keyword arguments to bypass the access
+    token retrieval process.
 
     .. tip::
 
@@ -597,7 +595,7 @@ 

Source code for minim.discogs

         ) -> None:
 
         """
-        Set the Discogs API personal or OAuth access token.
+        Set the Discogs API personal or OAuth access token (and secret).
 
         Parameters
         ----------
@@ -733,8 +731,6 @@ 

Source code for minim.discogs

             }
 
         elif self._flow == "discogs":
-            access_token = \
-                access_token or os.environ.get("DISCOGS_PERSONAL_ACCESS_TOKEN")
             if access_token is None:
                 if self._consumer_key is None or self._consumer_secret is None:
                     emsg = "Discogs API client credentials not provided."
@@ -872,7 +868,7 @@ 

Source code for minim.discogs

                .. code::
 
                   {
-                    "id": <int>,
+                    "id": <int><int>,
                     "username": <str>,
                     "resource_url": <str>,
                     "consumer_name": <str>
@@ -907,7 +903,7 @@ 

Source code for minim.discogs

         ----------
         username : `str`, optional
             The username of whose profile you are requesting. If not
-            specified, the profile of the authenticated user is used.
+            specified, the username of the authenticated user is used.
 
             **Example**: :code:`"rodneyfool"`.
 
@@ -926,7 +922,7 @@ 

Source code for minim.discogs

                     "wantlist_url": <str>,
                     "rank": <int>,
                     "num_pending": <int>,
-                    "id": <int>,
+                    "id": <int><int>,
                     "num_for_sale": <int>,
                     "home_page": <str>,
                     "location": <str>,
@@ -1024,7 +1020,7 @@ 

Source code for minim.discogs

                .. code::
 
                   {
-                    "id": <int>,
+                    "id": <int><int>,
                     "username": <str>,
                     "name": <str>,
                     "email": <str>,
@@ -1052,6 +1048,16 @@ 

Source code for minim.discogs

         
         self._check_authentication("edit_profile")
 
+        if curr_abbr and curr_abbr not in (
+                CURRENCIES := {
+                    "USD", "GBP", "EUR", "CAD", "AUD", "JPY",
+                    "CHF", "MXN", "BRL", "NZD", "SEK", "ZAR"
+                }
+            ):
+            emsg = (f"Invalid currency abbreviation ({curr_abbr=}). "
+                    f"Valid values: {', '.join(CURRENCIES)}.")
+            raise ValueError(emsg)
+
         return self._request(
             "post", 
             f"{self.API_URL}/users/{self._username}",
@@ -1068,27 +1074,364 @@ 

Source code for minim.discogs

 
[docs] def get_user_submissions( - self, username: str, *, page: int = None, per_page: int = None - ) -> dict[str, Any]: + self, username: str = None, *, page: int = None, + per_page: int = None) -> dict[str, Any]: """ + `User Identity > User Submissions <https://www.discogs.com + /developers/#page:user-identity,header + :user-identity-user-submissions-get>`_: Retrieve a user's + submissions (edits made to releases, labels, and artists) by + username. + + Parameters + ---------- + username : `str`, optional + The username of the submissions you are trying to fetch. If + not specified, the username of the authenticated user is + used. + + **Example**: :code:`"shooezgirl"`. + + page : `int`, keyword-only, optional + Page of results to fetch. + + per_page : `int`, keyword-only, optional + Number of results per page. + + Returns + ------- + submissions : `dict` + Submissions made by the user. + .. admonition:: Sample + :class: dropdown + + .. code:: + + { + "pagination": { + "items": <int>, + "page": <int>, + "pages": <int>, + "per_page": <int>, + "urls": {} + }, + "submissions": { + "artists": [ + { + "data_quality": <str>, + "id": <int>, + "name": <str>, + "namevariations": [<str>], + "releases_url": <str>, + "resource_url": <str>, + "uri": <str> + } + ], + "labels": [], + "releases": [ + { + "artists": [ + { + "anv": <str>, + "id": <int>, + "join": <str>, + "name": <str>, + "resource_url": <str>, + "role": <str>, + "tracks": <str> + } + ], + "community": { + "contributors": [ + { + "resource_url": <str>, + "username": <str> + }, + { + "resource_url": <str>, + "username": <str> + } + ], + "data_quality": <str>, + "have": <int>, + "rating": { + "average": <int>, + "count": <int> + }, + "status": <str>, + "submitter": { + "resource_url": <str>, + "username": <str> + }, + "want": <int> + }, + "companies": [], + "country": <str>, + "data_quality": <str>, + "date_added": <str>, + "date_changed": <str>, + "estimated_weight": <int>, + "format_quantity": <int>, + "formats": [ + { + "descriptions": [<str>], + "name": <str>, + "qty": <str> + } + ], + "genres": [<str>], + "id": <int>, + "images": [ + { + "height": <int>, + "resource_url": <str>, + "type": <str>, + "uri": <str>, + "uri150": <str>, + "width": <int> + }, + { + "height": <int>, + "resource_url": <str>, + "type": <str>, + "uri": <str>, + "uri150": <str>, + "width": <int> + } + ], + "labels": [ + { + "catno": <str>, + "entity_type": <str>, + "id": <int>, + "name": <str>, + "resource_url": <str> + } + ], + "master_id": <int>, + "master_url": <str>, + "notes": <str>, + "released": <str>, + "released_formatted": <str>, + "resource_url": <str>, + "series": [], + "status": <str>, + "styles": [<str>], + "thumb": <str>, + "title": <str>, + "uri": <str>, + "videos": [ + { + "description": <str>, + "duration": <int>, + "embed": <bool>, + "title": <str>, + "uri": <str> + }, + { + "description": <str>, + "duration": <int>, + "embed": <bool>, + "title": <str>, + "uri": <str> + }, + { + "description": <str>, + "duration": <int>, + "embed": <bool>, + "title": <str>, + "uri": <str> + } + ], + "year": <int> + } + ] + } + } """ - pass
+ if username is None: + if hasattr(self, "_username"): + username = self._username + else: + raise ValueError("No username provided.") + + return self._get_json( + f"{self.API_URL}/users/{username}/submissions", + params={"page": page, "per_page": per_page} + )
[docs] def get_user_contributions( - self, username: str, *, page: int = None, per_page: int = None, - sort: str = None, sort_order: str = None) -> dict[str, Any]: + self, username: str = None, *, page: int = None, + per_page: int = None, sort: str = None, sort_order: str = None + ) -> dict[str, Any]: """ + `User Identity > User Contributions <https://www.discogs.com + /developers/#page:user-identity,header + :user-identity-user-contributions-get>`_: Retrieve a user's + contributions (releases, labels, artists) by username. + Parameters + ---------- + username : `str`, optional + The username of the contributions you are trying to fetch. + If not specified, the username of the authenticated user is + used. + + **Example**: :code:`"shooezgirl"`. + + page : `int`, keyword-only, optional + Page of results to fetch. + + per_page : `int`, keyword-only, optional + Number of results per page. + + sort : `str`, keyword-only, optional + Sort items by this field. + + **Valid values**: :code:`"label"`, :code:`"artist"`, + :code:`"title"`, :code:`"catno"`, :code:`"format"`, + :code:`"rating"`, :code:`"year"`, and :code:`"added"`. + + sort_order : `str`, keyword-only, optional + Sort items in a particular order. + + **Valid values**: :code:`"asc"` and :code:`"desc"`. + + Returns + ------- + contributions : `dict` + Contributions made by the user. + + .. admonition:: Sample + :class: dropdown + + .. code:: + + { + "pagination": { + "items": <int>, + "page": <int>, + "pages": <int>, + "per_page": <int>, + "urls": {} + }, + "contributions": [ + { + "artists": [ + { + "anv": <str>, + "id": <int>, + "join": <str>, + "name": <str>, + "resource_url": <str>, + "role": <str>, + "tracks": <str> + } + ], + "community": { + "contributors": [ + { + "resource_url": <str>, + "username": <str> + }, + { + "resource_url": <str>, + "username": <str> + } + ], + "data_quality": <str>, + "have": <int>, + "rating": { + "average": <int>, + "count": <int> + }, + "status": <str>, + "submitter": { + "resource_url": <str>, + "username": <str> + }, + "want": <int> + }, + "companies": [], + "country": <str>, + "data_quality": <str>, + "date_added": <str>, + "date_changed": <str>, + "estimated_weight": <int>, + "format_quantity": <int>, + "formats": [ + { + "descriptions": [<str>], + "name": <str>, + "qty": <str> + } + ], + "genres": [<str>], + "id": <int>, + "images": [ + { + "height": <int>, + "resource_url": <str>, + "type": <str>, + "uri": <str>, + "uri150": <str>, + "width": <int> + } + ], + "labels": [ + { + "catno": <str>, + "entity_type": <str>, + "id": <int>, + "name": <str>, + "resource_url": <str> + } + ], + "master_id": <int>, + "master_url": <str>, + "notes": <str>, + "released": <str>, + "released_formatted": <str>, + "resource_url": <str>, + "series": [], + "status": <str>, + "styles": [<str>], + "thumb": <str>, + "title": <str>, + "uri": <str>, + "videos": [ + { + "description": <str>, + "duration": <int>, + "embed": <bool>, + "title": <str>, + "uri": <str> + } + ], + "year": <int> + } + ] + } """ - - pass
+ + if username is None: + if hasattr(self, "_username"): + username = self._username + else: + raise ValueError("No username provided.") + + return self._get_json( + f"{self.API_URL}/users/{username}/contributions", + params={"page": page, "per_page": per_page, "sort": sort, + "sort_order": sort_order} + )
diff --git a/docs/api/minim.discogs.API.html b/docs/api/minim.discogs.API.html index 7cb4dd0..9a06022 100644 --- a/docs/api/minim.discogs.API.html +++ b/docs/api/minim.discogs.API.html @@ -279,13 +279,11 @@

API#

To view and make changes to account information and resources, users must either provide a personal access token to this class’s -constructor as a keyword argument or store it as -DISCOGS_PERSONAL_ACCESS_TOKEN in the operating system’s -environment variables, or undergo the OAuth 1.0a flow, which require -valid client credentials, using Minim. If an existing OAuth access -token/secret pair is available, it can be provided to this class’s -constructor as keyword arguments to bypass the access token -retrieval process.

+constructor as a keyword argument or undergo the OAuth 1.0a flow, +which require valid client credentials, using Minim. If an existing +OAuth access token/secret pair is available, it can be provided to +this class’s constructor as keyword arguments to bypass the access +token retrieval process.

Tip

The authorization flow and access token can be changed or updated @@ -395,13 +393,13 @@

API#

User Identity > Profile > Get Profile: Retrieve a user by username.

get_user_contributions

-

+

User Identity > User Contributions: Retrieve a user's contributions (releases, labels, artists) by username.

get_user_submissions

-

+

User Identity > User Submissions: Retrieve a user's submissions (edits made to releases, labels, and artists) by username.

set_access_token

-

Set the Discogs API personal or OAuth access token.

+

Set the Discogs API personal or OAuth access token (and secret).

set_flow

Set the authorization flow.

@@ -412,7 +410,7 @@

API#

set_access_token(access_token: str = None, access_token_secret: str = None) None[source]#
-

Set the Discogs API personal or OAuth access token.

+

Set the Discogs API personal or OAuth access token (and secret).

Parameters:
@@ -472,7 +470,7 @@

API#

-get_user_contributions(username: str, *, page: int = None, per_page: int = None, sort: str = None, sort_order: str = None) dict[str, Any][source]#
-
+get_user_contributions(username: str = None, *, page: int = None, per_page: int = None, sort: str = None, sort_order: str = None) dict[str, Any][source]# +

User Identity > User Contributions: Retrieve a user’s +contributions (releases, labels, artists) by username.

+
+
Parameters:
+
+
usernamestr, optional

The username of the contributions you are trying to fetch. +If not specified, the username of the authenticated user is +used.

+

Example: "shooezgirl".

+
+
pageint, keyword-only, optional

Page of results to fetch.

+
+
per_pageint, keyword-only, optional

Number of results per page.

+
+
sortstr, keyword-only, optional

Sort items by this field.

+

Valid values: "label", "artist", +"title", "catno", "format", +"rating", "year", and "added".

+
+
sort_orderstr, keyword-only, optional

Sort items in a particular order.

+

Valid values: "asc" and "desc".

+
+
+
+
Returns:
+
+
contributionsdict

Contributions made by the user.

+ +
+
+
+
+
diff --git a/docs/notebooks/getting_started.html b/docs/notebooks/getting_started.html index 0cbc371..1991065 100644 --- a/docs/notebooks/getting_started.html +++ b/docs/notebooks/getting_started.html @@ -568,7 +568,7 @@
Spotify Web API
{'external_urls': {'spotify': 'https://open.spotify.com/artist/4sTQVOfp9vEMCemLw50sbu'},
- 'followers': {'href': None, 'total': 3360776},
+ 'followers': {'href': None, 'total': 3360524},
  'genres': ['dance pop', 'edm', 'pop', 'pop dance'],
  'href': 'https://api.spotify.com/v1/artists/4sTQVOfp9vEMCemLw50sbu',
  'id': '4sTQVOfp9vEMCemLw50sbu',
@@ -1368,19 +1368,19 @@ 
Private Qobuz API
{'collaborative': False,
- 'external_urls': {'spotify': 'https://open.spotify.com/playlist/1bS3bkYqI6G6qbvJ4SKPkC'},
+ 'external_urls': {'spotify': 'https://open.spotify.com/playlist/2nIJcg6e6zE8QV7AeckwNz'},
  'followers': {'href': None, 'total': 0},
- 'href': 'https://api.spotify.com/v1/playlists/1bS3bkYqI6G6qbvJ4SKPkC',
- 'id': '1bS3bkYqI6G6qbvJ4SKPkC',
+ 'href': 'https://api.spotify.com/v1/playlists/2nIJcg6e6zE8QV7AeckwNz',
+ 'id': '2nIJcg6e6zE8QV7AeckwNz',
  'images': [{'url': 'https://i.scdn.co/image/ab67616d00001e024a6c0376235e5aa44e59d2c2',
    'height': None,
    'width': None}],
  'primary_color': None,
  'name': 'Minim',
- 'description': '',
+ 'description': 'A playlist created using Minim.',
  'type': 'playlist',
- 'uri': 'spotify:playlist:1bS3bkYqI6G6qbvJ4SKPkC',
+ 'uri': 'spotify:playlist:2nIJcg6e6zE8QV7AeckwNz',
  'owner': None,
  'public': True,
- 'snapshot_id': 'MSwxNmNmY2U5OGY4ODk4NmRiMzlhMDA0NzBjNzc4M2RhNjU2NmM3MGVm',
+ 'snapshot_id': 'Miw4OTE4M2FkYzNlZjlhMDJhYWViNWNkMzUxYzAwYmMwYjU2MGQ1Y2Zl',
  'tracks': {'limit': 100,
   'next': None,
   'offset': 0,
   'previous': None,
-  'href': 'https://api.spotify.com/v1/playlists/1bS3bkYqI6G6qbvJ4SKPkC/tracks?offset=0&limit=100',
+  'href': 'https://api.spotify.com/v1/playlists/2nIJcg6e6zE8QV7AeckwNz/tracks?offset=0&limit=100',
   'total': 1,
-  'items': [{'added_at': '2023-12-27T01:33:32Z',
+  'items': [{'added_at': '2023-12-27T21:26:32Z',
     'primary_color': None,
     'video_thumbnail': {'url': None},
     'is_local': False,
@@ -1969,7 +1969,7 @@ 
Private TIDAL APIHide code cell output
-
{'playlist': {'uuid': 'e02223ff-d067-41b2-aa44-ea5bd0bb14d1',
+
 
 
-
+
@@ -484,7 +484,7 @@

TIDAL#< - + diff --git a/docs/searchindex.js b/docs/searchindex.js index 5c1961c..d2af1c6 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["api", "api/minim", "api/minim.audio", "api/minim.audio.Audio", "api/minim.audio.FLACAudio", "api/minim.audio.MP3Audio", "api/minim.audio.MP4Audio", "api/minim.audio.OggAudio", "api/minim.audio.WAVEAudio", "api/minim.discogs", "api/minim.discogs.API", "api/minim.itunes", "api/minim.itunes.SearchAPI", "api/minim.qobuz", "api/minim.qobuz.PrivateAPI", "api/minim.spotify", "api/minim.spotify.PrivateLyricsService", "api/minim.spotify.WebAPI", "api/minim.tidal", "api/minim.tidal.API", "api/minim.tidal.PrivateAPI", "api/minim.utility", "api/minim.utility.format_multivalue", "api/minim.utility.gestalt_ratio", "api/minim.utility.levenshtein_ratio", "index", "notebooks/getting_started", "notebooks/user_guide/editing_audio_metadata", "notebooks/user_guide/getting_recommendations", "notebooks/user_guide/transferring_music_libraries", "user_guide"], "filenames": ["api.rst", "api/minim.rst", "api/minim.audio.rst", "api/minim.audio.Audio.rst", "api/minim.audio.FLACAudio.rst", "api/minim.audio.MP3Audio.rst", "api/minim.audio.MP4Audio.rst", "api/minim.audio.OggAudio.rst", "api/minim.audio.WAVEAudio.rst", "api/minim.discogs.rst", "api/minim.discogs.API.rst", "api/minim.itunes.rst", "api/minim.itunes.SearchAPI.rst", "api/minim.qobuz.rst", "api/minim.qobuz.PrivateAPI.rst", "api/minim.spotify.rst", "api/minim.spotify.PrivateLyricsService.rst", "api/minim.spotify.WebAPI.rst", "api/minim.tidal.rst", "api/minim.tidal.API.rst", "api/minim.tidal.PrivateAPI.rst", "api/minim.utility.rst", "api/minim.utility.format_multivalue.rst", "api/minim.utility.gestalt_ratio.rst", "api/minim.utility.levenshtein_ratio.rst", "index.rst", "notebooks/getting_started.ipynb", "notebooks/user_guide/editing_audio_metadata.ipynb", "notebooks/user_guide/getting_recommendations.ipynb", "notebooks/user_guide/transferring_music_libraries.ipynb", "user_guide.rst"], "titles": ["<no title>", "minim", "audio", "Audio", "FLACAudio", "MP3Audio", "MP4Audio", "OggAudio", "WAVEAudio", "discogs", "API", "itunes", "SearchAPI", "qobuz", "PrivateAPI", "spotify", "PrivateLyricsService", "WebAPI", "tidal", "API", "PrivateAPI", "utility", "format_multivalue", "gestalt_ratio", "levenshtein_ratio", "Minim", "Getting Started", "Editing Audio Metadata", "Getting Recommendations", "Transferring Music Libraries", "User Guide"], "terms": {"thi": [2, 3, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 26, 27, 28, 29], "modul": [2, 3, 11, 13, 15, 18, 21, 26], "provid": [2, 3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 22, 26, 27, 29], "conveni": [2, 14, 20, 27], "python": [2, 25, 26], "keep": [2, 17], "track": [2, 3, 4, 5, 6, 7, 8, 12, 14, 16, 17, 19, 20, 27, 28, 29], "handl": [2, 29], "metadata": [2, 3, 4, 5, 6, 7, 8, 17, 19, 20, 25, 26, 29, 30], "convert": [2, 3, 4, 5, 6, 7, 8, 25], "between": [2, 3, 4, 5, 6, 7, 8, 12, 17, 25, 29], "differ": [2, 17, 26], "format": [2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 25, 27], "class": [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 26, 27, 28, 29], "minim": [3, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16, 17, 19, 20, 22, 23, 24, 27, 28, 29], "arg": [3, 4, 5, 6, 7, 8], "kwarg": [3, 4, 5, 6, 7, 8, 17], "sourc": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 23, 24, 26, 29], "base": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 28], "object": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 27, 28], "gener": [3, 17, 27, 28, 29], "file": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 25, 28], "handler": [3, 4, 5, 6, 7, 8, 27], "subclass": 3, "specif": [3, 17, 26, 27], "contain": [3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 26, 27], "includ": [3, 10, 12, 17, 20, 27], "flacaudio": [3, 5, 6, 7, 8, 26, 27], "encod": [3, 12, 17, 20, 26], "us": [3, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16, 17, 19, 20, 22, 26, 27, 28, 29], "free": [3, 29], "lossless": [3, 4, 5, 6, 7, 8, 14, 20, 26], "codec": [3, 4, 5, 6, 7, 8, 20, 26, 27], "flac": [3, 4, 5, 6, 7, 8, 14, 20, 26, 27], "mp3audio": [3, 26, 27], "store": [3, 10, 12, 14, 16, 17, 19, 20, 26, 27, 28, 29], "mpeg": 3, "layer": 3, "iii": [3, 20], "mp3": [3, 4, 5, 6, 7, 8, 14, 20, 26, 27], "mp4audio": [3, 4, 5, 7, 8, 26], "advanc": 3, "code": [3, 4, 5, 6, 7, 8, 12, 14, 17, 19, 20, 26], "aac": [3, 4, 5, 6, 7, 8, 20, 26], "appl": [3, 12, 26, 27], "alac": [3, 4, 5, 6, 7, 8, 20, 26], "4": [3, 17, 26], "part": 3, "14": 3, "mp4": [3, 4, 5, 6, 7, 8, 20, 26], "m4a": [3, 4, 5, 6, 7, 8, 26], "oggaudio": [3, 26], "opu": [3, 4, 5, 6, 7, 8, 26], "vorbi": [3, 4, 5, 6, 7, 8, 26], "an": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 28], "ogg": [3, 4, 5, 6, 7, 8], "waveaudio": [3, 26], "linear": 3, "puls": 3, "lpcm": [3, 4, 5, 6, 7, 8, 26], "waveform": 3, "wave": [3, 4, 5, 6, 7, 8, 26], "can": [3, 10, 14, 16, 17, 19, 20, 25, 26, 27, 28, 29], "instanti": [3, 10, 14, 16, 17, 19, 20, 26, 28, 29], "from": [3, 4, 5, 6, 7, 8, 12, 14, 16, 17, 19, 20, 26, 27, 28], "list": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 22, 23, 24, 28], "abov": [3, 17, 26, 27, 28, 29], "examin": 3, "its": [3, 12, 14, 16, 17, 19, 20, 26, 27, 29], "extens": [3, 4, 5, 6, 7, 8, 20], "howev": [3, 10, 27, 29], "mai": [3, 17, 20, 29], "instanc": 3, "when": [3, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 29], "detect": [3, 14, 26], "fail": [3, 20], "especi": [3, 29], "combin": [3, 14, 17], "i": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 22, 23, 24, 25, 26, 27, 28, 29], "rare": 3, "seen": 3, "As": [3, 14, 16, 20, 26, 27], "alwai": [3, 27], "best": [3, 4, 5, 6, 7, 8, 14, 29], "directli": [3, 20, 27, 29], "one": [3, 16, 17, 19, 20, 26, 27], "creat": [3, 10, 12, 14, 17, 20, 27, 28, 29], "your": [3, 12, 16, 17, 20, 26, 27, 28], "ar": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 28, 29], "known": [3, 26, 27], "paramet": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 23, 24], "str": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 23, 24, 26, 27], "pattern": [3, 4, 5, 6, 7, 8, 27], "tupl": [3, 4, 5, 6, 7, 8, 14, 20, 22], "keyword": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 28], "onli": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 28, 29], "option": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26], "regular": [3, 4, 5, 6, 7, 8, 27], "express": [3, 4, 5, 6, 7, 8, 27], "search": [3, 4, 5, 6, 7, 8, 11, 12, 14, 17, 19, 20, 27, 29], "correspond": [3, 4, 5, 6, 7, 8, 17, 27, 29], "field": [3, 4, 5, 6, 7, 8, 17, 22, 27], "": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 29], "valid": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20], "valu": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 22, 27], "The": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 27, 28, 29], "support": [3, 4, 5, 6, 7, 8, 12, 17, 20, 22, 26, 29], "artist": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 27, 28, 29], "titl": [3, 4, 5, 6, 7, 8, 12, 14, 17, 19, 20, 26, 27, 29], "track_numb": [3, 4, 5, 6, 7, 8, 14, 17, 26], "number": [3, 4, 5, 6, 7, 8, 12, 14, 17, 19, 20, 27, 28, 29], "exampl": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 27, 28, 29], "match": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20, 27, 29], "filenam": [3, 4, 5, 6, 7, 8, 20, 26, 27], "like": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27, 29], "taylor": [3, 4, 5, 6, 7, 8], "swift": [3, 4, 5, 6, 7, 8], "cruel": 3, "summer": 3, "d": [3, 4, 5, 6, 7, 8], "04": [3, 5, 6, 26], "man": 3, "13": [3, 12, 19], "you": [3, 4, 5, 8, 10, 12, 14, 16, 17, 20, 26, 27, 28], "need": [3, 17, 26, 27], "calm": 3, "down": [3, 17, 26], "multivalu": [3, 4, 5, 6, 7, 8, 22], "bool": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22], "determin": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 22, 27], "whether": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22], "tag": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20, 22, 26], "If": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 23, 24, 26, 27, 28], "fals": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 22, 26, 27, 28], "item": [3, 4, 5, 6, 7, 8, 12, 14, 17, 19, 20, 22, 26, 27, 28, 29], "concaten": [3, 4, 5, 6, 7, 8, 22], "separ": [3, 4, 5, 6, 7, 8, 17, 22, 27], "specifi": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 28], "sep": [3, 4, 5, 6, 7, 8, 22], "default": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27], "all": [3, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 18, 19, 20, 22, 26, 27, 29], "first": [3, 4, 5, 6, 7, 8, 12, 14, 17, 20, 22, 26, 27, 28, 29], "n": [3, 4, 5, 6, 7, 8, 26], "1": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 26, 27, 28, 29], "second": [3, 4, 5, 6, 7, 8, 20, 22, 27], "append": [3, 4, 5, 6, 7, 8, 17, 22, 29], "final": [3, 4, 5, 6, 7, 8, 22, 27, 28, 29], "attribut": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 28], "album": [3, 4, 5, 6, 7, 8, 12, 14, 17, 19, 20, 26, 27, 28, 29], "album_artist": 3, "artwork": [3, 4, 5, 6, 7, 8, 27], "byte": [3, 14, 17, 20, 27], "represent": 3, "url": [3, 10, 12, 14, 16, 17, 19, 20, 26], "lead": 3, "cover": [3, 4, 5, 6, 7, 8, 17, 20, 26, 27, 28], "bit_depth": [3, 14, 26], "int": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20], "bit": [3, 4, 5, 6, 7, 8, 14, 20, 26, 27], "per": 3, "sampl": [3, 26, 27, 29], "bitrat": [3, 14, 26, 27], "b": [3, 4, 5, 6, 7, 8, 26], "channel_count": 3, "channel": [3, 27], "comment": [3, 4, 5, 6, 7, 8, 27], "compil": [3, 4, 5, 6, 7, 8, 17, 20, 27], "song": [3, 12, 14, 17, 26], "variou": [3, 29], "compos": [3, 4, 5, 6, 7, 8, 14, 20, 26, 27], "lyric": [3, 4, 5, 6, 7, 8, 15, 16, 20, 27], "writer": [3, 14], "copyright": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20, 26, 27], "inform": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 26, 27, 28, 29], "date": [3, 14, 17, 20, 27], "releas": [3, 10, 14, 17, 26], "disc_numb": [3, 17, 26], "disc": [3, 4, 5, 6, 7, 8, 27], "disc_count": 3, "total": [3, 14, 17, 19, 20, 26, 29], "genr": [3, 14, 17, 26, 27, 28], "isrc": [3, 14, 17, 19, 20, 26, 27, 29], "intern": 3, "standard": 3, "record": [3, 12, 14, 26], "sample_r": 3, "rate": [3, 10, 27], "hz": [3, 26], "tempo": [3, 4, 5, 6, 7, 8, 17, 27], "beat": [3, 17], "minut": 3, "bpm": [3, 26], "track_count": [3, 14], "method": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 27], "none": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 27], "preserv": [3, 4, 5, 6, 7, 8], "true": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27, 29], "current": [3, 4, 5, 6, 7, 8, 14, 17, 20, 26, 29], "anoth": [3, 4, 5, 6, 7, 8, 10, 27, 28], "requir": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26], "ffmpeg": [3, 4, 5, 6, 7, 8, 26], "automat": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27], "updat": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 25, 26, 27, 28, 29], "reflect": [3, 4, 5, 6, 7, 8], "new": [3, 4, 5, 6, 7, 8, 14, 16, 17, 19, 20, 26, 27, 28, 29], "For": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 26, 27, 29], "chang": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27], "mp4a": [3, 4, 5, 6, 7, 8], "lossi": [3, 4, 5, 6, 7, 8], "wav": [3, 4, 5, 6, 7, 8, 26], "which": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27, 28], "command": [3, 4, 5, 6, 7, 8, 26], "line": [3, 4, 5, 6, 7, 8, 16, 28], "exclud": [3, 4, 5, 6, 7, 8, 17], "input": [3, 4, 5, 6, 7, 8], "output": [3, 4, 5, 6, 7, 8, 28], "y": [3, 4, 5, 6, 7, 8, 16, 17, 19, 20], "flag": [3, 4, 5, 6, 7, 8, 12], "overwrit": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 27], "c": [3, 4, 5, 6, 7, 8, 26], "v": [3, 4, 5, 6, 7, 8], "copi": [3, 4, 5, 6, 7, 8, 20, 26], "argument": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27, 28], "art": [3, 4, 5, 6, 7, 8, 20, 27, 28], "256k": [3, 4, 5, 6, 7, 8], "libfdk_aac": [3, 4, 5, 6, 7, 8], "wa": [3, 4, 5, 6, 7, 8, 17, 20], "enabl": [3, 4, 5, 6, 7, 8, 10, 14, 17], "libfdk": [3, 4, 5, 6, 7, 8], "libmp3lam": [3, 4, 5, 6, 7, 8], "q": [3, 4, 5, 6, 7, 8, 17], "0": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20, 26, 27, 28, 29], "libopu": [3, 4, 5, 6, 7, 8], "vn": [3, 4, 5, 6, 7, 8, 26], "strict": [3, 4, 5, 6, 7, 8, 14, 26], "experiment": [3, 4, 5, 6, 7, 8], "libvorbi": [3, 4, 5, 6, 7, 8], "pcm_s16le": [3, 4, 5, 6, 7, 8], "pcm_s24le": [3, 4, 5, 6, 7, 8], "depth": [3, 4, 5, 6, 7, 8, 14, 26, 27], "origin": [3, 4, 5, 6, 7, 8, 17, 27], "appropri": [3, 4, 5, 6, 7, 8, 28], "kept": [3, 4, 5, 6, 7, 8, 17], "set_metadata_using_itun": [3, 4, 5, 6, 7, 8, 27], "data": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26, 27, 28, 29], "dict": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 27], "ani": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22], "album_data": [3, 4, 5, 6, 7, 8, 27], "artwork_s": [3, 4, 5, 6, 7, 8], "1400": [3, 4, 5, 6, 7, 8], "artwork_format": [3, 4, 5, 6, 7, 8], "jpg": [3, 4, 5, 6, 7, 8, 20, 26, 28], "popul": [3, 4, 5, 6, 7, 8, 27], "retriev": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26, 27], "itun": [3, 4, 5, 6, 7, 8, 12, 25, 27], "api": [3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 17, 18, 20, 25, 28, 29], "about": [3, 4, 5, 6, 7, 8, 10, 14, 17, 20, 26, 27, 28, 29], "json": [3, 4, 5, 6, 7, 8, 10, 12, 17, 27], "obtain": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26], "via": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26, 27], "searchapi": [3, 4, 5, 6, 7, 8, 27], "lookup": [3, 4, 5, 6, 7, 8, 12, 27, 29], "unavail": [3, 4, 5, 6, 7, 8, 17, 26], "resiz": [3, 4, 5, 6, 7, 8], "size": [3, 4, 5, 6, 7, 8, 17, 19, 20, 26, 27], "pixel": [3, 4, 5, 6, 7, 8, 20], "raw": [3, 4, 5, 6, 7, 8], "uncompress": [3, 4, 5, 6, 7, 8], "high": [3, 4, 5, 6, 7, 8, 14, 20], "resolut": [3, 4, 5, 6, 7, 8, 14, 20], "imag": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26], "regardless": [3, 4, 5, 6, 7, 8], "png": [3, 4, 5, 6, 7, 8], "take": [3, 4, 5, 6, 7, 8, 10, 17, 27], "preced": [3, 4, 5, 6, 7, 8], "exist": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20], "should": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 22], "overwritten": [3, 4, 5, 6, 7, 8], "set_metadata_using_spotifi": [3, 4, 5, 6, 7, 8, 27], "audio_featur": [3, 4, 5, 6, 7, 8, 17, 27], "spotifi": [3, 4, 5, 6, 7, 8, 16, 17, 20, 25, 27], "web": [3, 4, 5, 6, 7, 8, 10, 14, 15, 16, 17, 20, 27, 28, 29], "servic": [3, 4, 5, 6, 7, 8, 15, 16, 17, 20, 25, 27, 29], "webapi": [3, 4, 5, 6, 7, 8, 27, 28, 29], "get_track": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20], "featur": [3, 4, 5, 6, 7, 8, 14, 17, 27, 29], "get_track_audio_featur": [3, 4, 5, 6, 7, 8, 17, 27], "time": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27], "sync": [3, 4, 5, 6, 7, 8, 16, 20], "privatelyricsservic": [3, 4, 5, 6, 7, 8], "get_lyr": [3, 4, 5, 6, 7, 8, 16], "set_metadata_using_tid": [3, 4, 5, 6, 7, 8, 27], "1280": [3, 4, 5, 6, 7, 8], "tidal": [3, 4, 5, 6, 7, 8, 14, 19, 20, 25, 27], "privateapi": [3, 4, 5, 6, 7, 8, 27, 29], "get_album": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20], "maximum": [3, 4, 5, 6, 7, 8, 14, 17, 20], "80": [3, 4, 5, 6, 7, 8], "get_track_compos": [3, 4, 5, 6, 7, 8, 20, 27], "get_track_contributor": [3, 4, 5, 6, 7, 8, 20], "get_track_credit": [3, 4, 5, 6, 7, 8, 20], "songwrit": [3, 4, 5, 6, 7, 8, 20, 26, 27], "credit": [3, 4, 5, 6, 7, 8, 14, 20, 27], "get_track_lyr": [3, 4, 5, 6, 7, 8, 20, 27], "descript": [3, 4, 5, 6, 7, 8, 14, 17, 20, 26, 29], "set_metadata_using_qobuz": [3, 4, 5, 6, 7, 8], "larg": [3, 4, 5, 6, 7, 8, 14, 17, 20, 26], "qobuz": [3, 4, 5, 6, 7, 8, 14, 25], "small": [3, 4, 5, 6, 7, 8, 14, 17, 20, 26], "thumbnail": [3, 4, 5, 6, 7, 8, 14, 26], "audio": [4, 5, 6, 7, 8, 12, 14, 17, 20, 25, 30], "_vorbiscom": [4, 7], "full": [4, 5, 6, 7, 8, 10, 14, 17, 20], "see": [4, 5, 6, 7, 8, 10, 12, 17, 19, 20, 27, 28, 29], "pathlib": [4, 5, 6, 7, 8, 20, 26, 27], "path": [4, 5, 6, 7, 8, 14, 20, 26, 27], "fearless": 4, "03": [4, 7, 27], "love": 4, "stori": [4, 6, 14, 28], "06": [4, 5, 7, 8, 26, 27], "belong": 4, "me": [4, 8, 26], "write_metadata": [4, 5, 6, 7, 8, 26, 27], "write": [4, 5, 6, 7, 8, 26, 27], "_id3": [5, 8], "red": 5, "knew": 5, "were": [5, 17], "troubl": [5, 28], "22": [5, 20], "mine": 6, "speak": 6, "now": [6, 26, 27], "07": [6, 27], "u": [6, 12, 17, 19, 20, 26, 27, 28], "blank": 7, "space": [7, 12], "style": [7, 28], "shake": 7, "It": [7, 10, 12, 16, 17, 19, 20], "off": [7, 17], "don": [8, 26, 27, 28], "t": [8, 17, 26, 27, 28], "blame": 8, "05": [8, 20, 26], "delic": 8, "look": [8, 12, 20, 27, 29], "what": [8, 17], "made": [8, 17, 26, 28], "do": [8, 26, 27, 29], "complet": [11, 14, 15, 17, 18, 27], "implement": [10, 11, 13, 15, 17, 18, 26, 29], "endpoint": [10, 11, 14, 15, 16, 17, 18, 19, 20, 26, 27], "client": [10, 12, 14, 16, 17, 19, 20, 26, 28, 29], "allow": [12, 14, 17, 20, 27, 29], "varieti": 12, "content": [12, 14, 17, 19, 20], "app": [12, 14, 17, 26], "ibook": 12, "movi": 12, "podcast": [12, 17], "music": [12, 17, 20, 25, 27, 28, 30], "video": [12, 19, 20], "audiobook": [12, 17], "tv": [12, 20, 26], "show": [12, 17, 26, 27], "within": [12, 17], "mac": 12, "also": [10, 12, 14, 16, 17, 19, 20, 26, 27], "id": [10, 12, 14, 16, 17, 19, 20, 26, 27, 28, 29], "request": [10, 12, 14, 16, 17, 19, 20, 26], "map": 12, "librari": [12, 17, 25, 27, 28, 30], "digit": 12, "catalog": [12, 14, 17, 19, 20, 27, 29], "more": [10, 12, 17, 18, 19, 20, 28, 29], "document": [12, 14, 16, 20], "api_url": [10, 12, 14, 17, 19, 20], "term": [12, 14, 16, 20], "countri": [12, 14, 17, 19, 20, 26], "media": [12, 14, 20, 26, 29], "entiti": [12, 17, 20, 26, 29], "limit": [10, 12, 14, 17, 19, 20, 26, 28, 29], "lang": 12, "version": [12, 14, 20, 26, 29], "explicit": [12, 17, 20, 26], "text": [12, 16, 17, 20], "string": [12, 14, 17, 23, 24, 27], "replac": [12, 17, 26, 27], "plu": [12, 20, 26], "charact": [12, 19], "except": [12, 22, 27, 29], "letter": 12, "period": [12, 14], "dash": 12, "underscor": [12, 17], "_": [12, 26, 27], "asterisk": 12, "jack": 12, "johnson": 12, "two": [12, 17, 27, 28], "want": [12, 17, 27, 28], "front": 12, "iso": [12, 16, 17, 19, 20], "obp": 12, "type": [12, 14, 17, 19, 20, 26, 27, 29], "musicvideo": 12, "shortfilm": 12, "tvshow": 12, "softwar": [12, 20], "ebook": 12, "result": [12, 14, 17, 19, 20, 26, 27, 29], "return": [10, 12, 14, 16, 17, 19, 20, 22, 23, 24, 26, 27, 29], "rel": [12, 28], "avail": [10, 12, 14, 16, 17, 19, 20, 27, 28, 29], "tabl": 12, "2": [12, 17, 19, 20, 26, 27, 28], "associ": [10, 12, 14, 16, 17, 19, 20], "movieartist": 12, "name": [10, 12, 14, 17, 19, 20, 26, 27, 29], "allartist": 12, "allartistterm": 12, "Then": [12, 28, 29], "maroon": 12, "5": [12, 14, 17, 28, 29], "instead": [12, 17, 20, 26, 28], "who": [10, 12], "have": [10, 12, 14, 16, 17, 20, 26, 27, 29], "ever": 12, "word": [12, 14, 16], "must": [10, 12, 14, 16, 17, 19, 20, 29], "200": [12, 19, 26], "50": [12, 14, 17, 20, 26, 28], "languag": [12, 14, 16, 17], "english": [12, 17], "japanes": 12, "five": 12, "codenam": 12, "en_u": 12, "ja_jp": 12, "kei": [10, 12, 14, 17, 20], "receiv": 12, "back": [12, 14, 27], "A": [12, 14, 17, 19, 20, 26, 27], "indic": [12, 17], "ye": 12, "To": [10, 12, 14, 17, 19, 20, 26, 27], "short": 12, "film": 12, "25": [12, 14, 27], "jim": 12, "jone": 12, "canada": 12, "ca": [12, 17, 26], "applic": [10, 12, 14, 17, 19, 20, 26, 28], "yelp": 12, "unit": 12, "state": [12, 17], "amg_artist_id": 12, "amg_album_id": 12, "amg_video_id": 12, "bundle_id": 12, "upc": [12, 14, 17, 19, 20, 26, 29], "isbn": 12, "sort": [10, 12, 20], "amg": 12, "ean": [12, 17, 19], "faster": 12, "fewer": 12, "posit": [12, 14, 17, 20, 26, 28], "bundl": 12, "appli": [12, 17, 19], "recent": [12, 14, 17], "up": [12, 14, 17, 20, 28, 29], "909253": 12, "284910350": 12, "468749": 12, "multipl": [12, 17, 19, 29], "5723": 12, "get": [10, 12, 14, 16, 17, 19, 20, 27, 29, 30], "each": [12, 17, 20, 26], "top": [12, 17, 20, 26, 28], "most": [12, 14, 26, 27], "720642462928": 12, "15175": 12, "15176": 12, "15177": 12, "15178": 12, "15183": 12, "15184": 12, "15187": 12, "15190": 12, "15191": 12, "15195": 12, "15197": 12, "15198": 12, "17120": 12, "book": 12, "9780316069359": 12, "com": [10, 12, 20, 26, 28], "yelpiphon": 12, "minimum": [13, 17, 18], "privat": [10, 13, 14, 15, 17, 18, 20, 27, 28, 29], "app_id": [14, 26], "app_secret": [14, 26], "flow": [10, 14, 17, 19, 20, 26, 29], "browser": [10, 14, 16, 20, 26, 29], "user_ag": [14, 20], "email": [10, 14, 17, 20, 26], "password": [14, 26, 29], "auth_token": [14, 26], "save": [10, 14, 16, 17, 19, 20], "collect": [10, 14, 17, 20, 21], "playlist": [14, 17, 20, 28], "perform": [10, 14, 20, 26, 29], "queri": [14, 17, 19, 20, 27], "them": [14, 17, 20, 26, 28, 29], "offici": [14, 17, 20], "been": [14, 16, 17, 20, 26, 27], "watch": [14, 16, 20], "http": [10, 14, 16, 17, 20, 26, 28, 29], "network": [14, 16, 20], "traffic": [14, 16, 20, 26], "design": [14, 16, 17, 20], "publicli": [14, 16, 20], "access": [10, 14, 16, 17, 19, 20, 26, 28, 29], "disabl": [10, 14, 16, 17, 19, 20], "remov": [14, 16, 17, 20, 26], "ensur": [10, 14, 16, 17, 20], "complianc": [14, 16, 20], "while": [14, 17, 20, 27], "necessari": [14, 17, 20, 26, 29], "public": [10, 14, 17, 18, 20, 26, 28, 29], "person": [10, 14, 17, 20], "stream": [14, 17, 20, 29], "activ": [14, 17, 20, 26], "In": [14, 16, 17, 19, 20, 28, 29], "latter": [14, 20], "case": [14, 16, 17, 19, 20, 26, 29], "accompani": [10, 14, 16, 17, 19, 20, 26], "token": [10, 14, 16, 17, 19, 20, 26], "header": [14, 16, 17, 19, 20], "grant": [14, 17], "inher": 14, "unsaf": 14, "sinc": [14, 17, 28], "ha": [14, 26, 27], "mechan": 14, "multifactor": 14, "brute": 14, "forc": 14, "attack": 14, "highli": [14, 17], "encourag": 14, "yourself": 14, "through": [14, 17], "player": [14, 16, 17, 20, 26, 27], "android": [14, 20, 26], "io": [14, 20, 26], "maco": [14, 20, 26], "window": [14, 20, 26], "secret": [10, 14, 17, 19, 20], "constructor": [10, 14, 16, 17, 19, 20, 26, 27, 28], "credenti": [10, 14, 17, 19, 20, 26, 28, 29], "qobuz_private_app_id": 14, "qobuz_private_app_secret": 14, "oper": [10, 14, 16, 17, 19, 20, 25], "system": [10, 14, 16, 17, 19, 20, 28], "environ": [10, 14, 16, 17, 19, 20, 26, 28, 29], "variabl": [10, 14, 16, 17, 19, 20, 26, 28, 29], "thei": [14, 17, 26, 28, 29], "set_flow": [10, 14, 17, 19, 20], "set_auth_token": 14, "respect": [10, 14, 16, 17, 19, 20, 23, 24, 26, 27, 28, 29], "manag": [10, 14, 16, 17, 19, 20], "properti": [10, 14, 16, 17, 19, 20, 27], "acquir": [10, 14, 16, 17, 19, 20], "configur": [10, 14, 16, 17, 19, 20, 28], "load": [10, 14, 16, 17, 19, 20, 27, 28], "next": [10, 14, 16, 17, 19, 20, 26, 27], "behavior": [10, 14, 16, 17, 19, 20, 27], "secur": [10, 14, 16, 17, 19, 20], "concern": [10, 14, 16, 17, 19, 20], "comput": [10, 14, 16, 17, 19, 20, 23, 24], "being": [10, 14, 16, 17, 19, 20], "share": [10, 14, 16, 17, 19, 20], "devic": [10, 14, 16, 17, 19, 20, 26, 28, 29], "author": [10, 14, 19, 26], "open": [10, 14, 17, 20, 26, 28, 29], "login": [14, 26], "page": [10, 14, 17, 19, 20, 26], "playwright": [10, 14, 17, 20], "framework": [10, 14, 17, 20, 26], "microsoft": [10, 14, 17, 20], "account": [10, 14, 17, 20, 26], "agent": [14, 20], "send": [10, 14, 16, 17, 19, 20], "address": [14, 20], "here": [10, 14, 16, 17, 19, 20, 26], "found": [10, 14, 16, 17, 19, 20, 28], "process": [10, 14, 16, 17, 19, 20, 26, 27, 29], "bypass": [10, 14, 16, 17, 19, 20], "newli": [10, 14, 16, 17, 19, 20, 29], "web_url": [14, 20], "set": [10, 14, 16, 17, 19, 20, 28, 29], "album_id": [14, 19, 20, 29], "singl": [14, 17, 19, 27], "0060254735180": 14, "maximum_bit_depth": [14, 26], "media_count": [14, 26], "albums_count": [14, 26], "slug": [14, 26], "pictur": [14, 19, 20, 26], "role": [14, 20], "released_at": [14, 26], "label": [10, 14, 17, 26], "supplier_id": [14, 26], "qobuz_id": [14, 26], "durat": [14, 17, 19, 20, 26], "parental_warn": [14, 26], "popular": [14, 17, 19, 20, 25, 26, 27], "tracks_count": [14, 26, 29], "color": [14, 16, 20, 26], "maximum_channel_count": [14, 26], "maximum_sampling_r": [14, 26], "articl": [14, 20], "release_date_origin": [14, 26], "release_date_download": [14, 26], "release_date_stream": [14, 26], "purchas": [14, 26], "streamabl": [14, 26], "preview": [14, 20, 26, 27], "sampleabl": [14, 26], "download": [14, 17, 20, 26], "display": [14, 26], "purchasable_at": [14, 26], "streamable_at": [14, 26], "hire": [14, 26], "hires_stream": [14, 26], "award": 14, "description_languag": 14, "goodi": 14, "area": 14, "catchlin": 14, "created_at": [14, 26], "genres_list": 14, "is_offici": 14, "maximum_technical_specif": 14, "product_sales_factors_monthli": 14, "product_sales_factors_weekli": 14, "product_sales_factors_yearli": 14, "product_typ": 14, "product_url": 14, "recording_inform": 14, "relative_url": 14, "release_tag": 14, "release_typ": 14, "subtitl": [14, 20], "offset": [14, 17, 19, 20, 26], "audio_info": [14, 26], "replaygain_track_peak": [14, 26], "float": [10, 14, 17, 20, 23, 24], "replaygain_track_gain": [14, 26], "work": [14, 20, 26], "media_numb": [14, 26], "release_date_purchas": [14, 26], "get_featured_album": 14, "seller": 14, "editor": 14, "pick": 14, "ideal": [14, 26], "discographi": 14, "press": [14, 26], "qobuzissim": 14, "harmonia": 14, "mundi": 14, "univers": 14, "classic": [14, 17], "jazz": 14, "jeuness": 14, "chanson": 14, "index": [14, 17, 20], "get_artist": [14, 17, 19, 20], "artist_id": [14, 19, 20, 29], "extra": 14, "tracks_appears_on": 14, "albums_with_last_releas": 14, "effect": 14, "albums_as_primary_artist_count": 14, "albums_as_primary_composer_count": 14, "medium": [14, 20, 26], "extralarg": [14, 26], "mega": [14, 26], "similar_artist_id": 14, "biographi": [14, 20], "summari": [14, 20], "get_label": 14, "label_id": 14, "1153": 14, "get_playlist": [14, 17, 20, 26, 29], "playlist_id": [14, 17], "15732665": 14, "image_rectangle_mini": 14, "featured_artist": 14, "timestamp_posit": 14, "images300": [14, 26], "updated_at": [14, 26], "percent": 14, "image_rectangl": 14, "owner": [14, 17, 26], "users_count": [14, 26], "images150": [14, 26], "is_collabor": [14, 26, 29], "featured_tag_id": 14, "name_json": 14, "genre_tag": 14, "is_discov": 14, "public_at": [14, 26], "is_publ": [14, 26, 29], "is_featur": [14, 26], "null": 14, "playlist_track_id": [14, 26], "get_featured_playlist": [14, 17], "last": [14, 17, 20, 22, 27, 28, 29], "get_user_playlist": [14, 17, 20, 26, 29], "custom": [14, 17, 28], "favorit": [14, 28], "500": [14, 20, 26], "is_publish": 14, "published_to": [14, 26], "welcom": 14, "published_from": [14, 26], "create_playlist": [14, 17, 20, 26, 28, 29], "collabor": [14, 17, 26, 29], "brief": [14, 20], "update_playlist": [14, 20, 26], "privaci": [14, 20], "own": [10, 14, 17, 20], "17737508": 14, "update_playlist_posit": 14, "from_playlist_id": 14, "to_playlist_id": 14, "organ": [14, 27], "move": [14, 17, 20], "swap": 14, "17737509": 14, "add_playlist_track": [14, 26, 29], "track_id": [14, 16, 19, 20], "duplic": 14, "add": [14, 17, 20, 26, 28, 29], "24393122": 14, "24393138": 14, "ad": [14, 17, 20, 26, 29], "move_playlist_track": 14, "insert_befor": [14, 17], "same": [14, 17, 29], "delete_playlist_track": 14, "delet": [14, 17, 20], "delete_playlist": [14, 20, 26], "favorite_playlist": [14, 20], "subscrib": 14, "unfavorite_playlist": [14, 20], "unsubscrib": 14, "hi_r": [14, 20], "new_releas": 14, "10": [14, 17, 19, 20, 26], "categori": [14, 17, 20, 26], "mainartist": [14, 26], "releasenam": [14, 26], "exact": 14, "phrase": 14, "focu": 14, "name_superbloc": 14, "accroch": 14, "genre_id": 14, "root_categori": 14, "abstract": 14, "image_origin": 14, "category_id": [14, 17], "source_imag": 14, "published_at": 14, "section_slug": 14, "description_short": 14, "display_d": 14, "get_track_perform": 14, "unformat": 14, "call": [14, 26], "filter": [14, 17, 20], "special": 14, "composerlyricist": [14, 26], "lyricist": [14, 20], "featuredartist": 14, "produc": [14, 26], "co": [14, 26], "mixer": 14, "musicpublish": 14, "etc": [14, 20, 29], "dictionari": [14, 17, 19, 20], "contributor": [14, 20, 26], "snake": 14, "get_track_file_url": 14, "format_id": 14, "27": 14, "playback": [14, 17, 20], "hi": [14, 20], "re": [10, 14, 20, 26], "qualiti": [14, 20], "constant": 14, "320": [14, 20, 26], "kbp": [14, 20], "6": [14, 17], "cd": [14, 26], "16": [14, 20, 26, 27], "44": [14, 20, 26], "khz": [14, 20], "7": [14, 26], "24": [14, 20, 26], "96": [14, 20], "192": 14, "mime_typ": 14, "restrict": [14, 17], "sampling_r": 14, "get_curated_track": 14, "weekli": 14, "curat": [14, 20], "baselin": 14, "step_pagin": 14, "graphic": 14, "background": [14, 16], "foreground": 14, "generated_at": 14, "expires_on": 14, "get_track_stream": [14, 20], "mime": [14, 20], "get_collection_stream": [14, 20], "get_profil": [10, 14, 17, 20], "profil": [10, 14, 17, 20, 26], "publicid": 14, "firstnam": [14, 20], "lastnam": [14, 20], "display_nam": [14, 17], "country_cod": [14, 19, 20], "language_cod": 14, "zone": 14, "avatar": 14, "ag": [14, 26], "creation_d": 14, "offer": 14, "start_dat": 14, "end_dat": 14, "is_cancel": 14, "household_size_max": 14, "lossy_stream": 14, "lossless_stream": 14, "hires_purchases_stream": 14, "mobile_stream": 14, "offline_stream": 14, "hfp_purchas": 14, "included_format_group_id": 14, "color_schem": 14, "logo": 14, "short_label": 14, "last_upd": 14, "favorite_album": [14, 20, 29], "favorite_artist": [14, 20, 29], "favorite_track": [14, 20, 28], "store_featur": 14, "editori": 14, "club": 14, "wallet": 14, "weeklyq": 14, "autoplai": 14, "inapp_purchase_subscripton": 14, "opt_in": 14, "music_import": 14, "get_favorit": [14, 29], "get_purchas": 14, "favorite_item": [14, 29], "unfavorite_item": 14, "unfavorit": 14, "sp_dc": [16, 17, 26], "access_token": [10, 16, 17, 19, 20, 26], "expiri": [16, 17, 19, 20, 26], "datetim": [16, 17, 19, 20], "power": [10, 16, 26], "musixmatch": 16, "petitlyr": 16, "japan": 16, "interfac": [10, 16, 25], "so": [16, 17, 19, 20, 26, 27, 28, 29], "develop": [10, 16, 20], "cooki": [16, 17, 26], "either": [10, 16, 17, 19, 20, 26, 28], "spotify_sp_dc": [16, 17, 26], "extract": [16, 20], "local": [16, 17, 27], "storag": [16, 26], "after": [16, 17], "log": [16, 26], "exchang": [16, 17, 20], "recommend": [10, 16, 17, 19, 20, 29, 30], "other": [16, 17, 19, 20, 26, 27], "authent": [16, 17, 19, 26, 28, 29], "relat": [16, 17, 19, 20, 26], "expir": [16, 17, 19, 20, 26], "set_sp_dc": 16, "set_access_token": [10, 16, 17, 19, 20], "former": [16, 17, 19, 20], "relev": [16, 17, 19, 20, 29], "refresh": [16, 17, 19, 20, 26], "8601": [16, 17, 19, 20], "m": [16, 17, 19, 20, 26], "dt": [16, 17, 19, 20], "h": [16, 17, 19, 20], "sz": [16, 17, 19, 20, 26], "user": [16, 17, 19, 26, 28, 29], "reauthent": [16, 17, 19, 20], "lyrics_url": 16, "token_url": [16, 17, 19, 20], "session": [10, 16, 17, 19, 20], "timestamp": [16, 17, 19, 20], "0vjijw4gluzamyd2vxmi3b": 16, "synctyp": 16, "starttimem": 16, "syllabl": 16, "endtimem": 16, "providerlyricsid": [16, 20], "providerdisplaynam": 16, "synclyricsuri": 16, "isdensetypefac": 16, "altern": [16, 17, 29], "isrtllanguag": 16, "fullscreenact": 16, "showupsel": 16, "highlighttext": 16, "hasvocalremov": 16, "client_id": [17, 19, 20, 26], "client_secret": [17, 19, 20, 26], "web_play": 17, "port": [10, 17, 26], "8888": [10, 17, 26], "redirect_uri": [10, 17], "refresh_token": [17, 20, 26], "creation": 17, "interact": [17, 28], "control": 17, "visual": [17, 28], "form": [10, 17], "refer": [17, 19, 23, 24], "without": [10, 17, 20, 26, 27], "proof": [17, 20], "pkce": [17, 20, 26, 29], "These": [17, 20], "oauth": [10, 17, 19, 20], "spotify_client_id": [17, 26], "spotify_client_secret": [17, 26], "guid": [17, 19], "how": [17, 19, 27], "advantag": [10, 17], "function": [10, 17, 19, 20], "redirect": [10, 17, 26], "uri": [10, 17, 20, 26], "localhost": [10, 17, 26], "callback": [10, 17, 20, 26], "where": [10, 17], "approach": [17, 26], "resort": 17, "deprec": 17, "unless": 17, "authorization_cod": 17, "client_credenti": [17, 19, 20], "server": [10, 17, 26, 29], "built": [10, 17], "flask": [10, 17], "get_scop": [17, 26, 29], "possibl": [17, 19, 20], "auth_url": [10, 17, 20], "web_player_token_url": 17, "classmethod": 17, "ugc": 17, "upload": 17, "spotify_connect": 17, "connect": 17, "read": [17, 28], "modifi": 17, "plai": 17, "remot": 17, "follow": [17, 20, 26, 28, 29], "listening_histori": 17, "histori": 17, "substr": 17, "e": [17, 26], "market": 17, "4aawyab9vmqn3uq7fjrgti": 17, "3166": [17, 19, 20], "alpha": [17, 19, 20], "prioriti": 17, "over": 17, "neither": 17, "consid": 17, "album_typ": [17, 26], "total_track": [17, 26, 29], "available_market": [17, 26], "external_url": [17, 26], "href": [17, 26], "height": [17, 19, 20, 26, 28], "width": [17, 19, 20, 26, 28], "release_d": [17, 26], "release_date_precis": [17, 26], "reason": 17, "external_id": [17, 26, 29], "previou": [17, 20, 26, 27], "duration_m": [17, 26], "is_play": 17, "linked_from": 17, "preview_url": [17, 26], "is_loc": [17, 26], "sever": 17, "identifi": [17, 26], "comma": 17, "20": 17, "382obepsp2rxgrnsizn5tx": 17, "1a2gtwgtffwp7ksqtwwoyo": 17, "2norn2aes5aonvsu6iwthc": 17, "get_album_track": 17, "000": [17, 26], "get_saved_album": [17, 29], "added_at": [17, 26], "save_album": [17, 29], "remove_saved_album": 17, "check_saved_album": 17, "check": [10, 17], "alreadi": [17, 20, 26, 27], "arrai": 17, "boolean": 17, "get_new_album": 17, "shown": 17, "brows": 17, "tab": 17, "particular": 17, "omit": 17, "se": [17, 26], "album_group": 17, "uniqu": [17, 27], "0tnoyisbd1xyrbk9myaseg": 17, "2cimqhirsu0mqqyyhq0eox": 17, "57dn52uhvrhoxijzpigu3": 17, "1vcwhac5f2us3yhpwwbia6": 17, "get_artist_album": [17, 19, 20], "include_group": 17, "suppli": 17, "promot": 17, "appears_on": 17, "appear": [17, 20, 27], "main": [17, 19, 26, 29], "get_artist_top_track": [17, 20], "get_related_artist": 17, "similar": [17, 19, 20, 23, 24, 28, 29], "given": [17, 19], "analysi": 17, "commun": 17, "listen": 17, "get_audiobook": 17, "uk": 17, "ireland": 17, "zealand": 17, "australia": 17, "7ihfbu1ypacw6ozpafjtq": 17, "html_descript": 17, "edit": [10, 17, 20, 30], "media_typ": 17, "narrat": 17, "publish": 17, "total_chapt": 17, "chapter": 17, "audio_preview_url": 17, "chapter_numb": 17, "resume_point": 17, "fully_plai": 17, "resume_position_m": 17, "episod": [17, 26], "18yvqkdbdrvs24c0ilj2ci": 17, "1hgw3j3nxzo1tp1bttvhpz": 17, "get_audiobook_chapt": 17, "get_saved_audiobook": 17, "save_audiobook": 17, "remove_saved_audiobook": 17, "check_saved_audiobook": 17, "get_categori": 17, "dinner": 17, "desir": [17, 20], "consist": 17, "639": 17, "join": 17, "american": 17, "es_mx": 17, "spanish": 17, "mexico": 17, "icon": 17, "nformat": 17, "get_chapt": 17, "0d5wendkdwbqlrhoaj9g29": 17, "0isxvp0jmcb2adse338gkk": 17, "3zxb8fkzgu0ehalyx6uczu": 17, "get_episod": 17, "512ojhouo1ktjprkbvckyq": 17, "is_externally_host": 17, "total_episod": 17, "77o6bivlym3msb4mmil1jh": 17, "0q86acnrm6v9gyx55sxkwf": 17, "get_saved_episod": 17, "save_episod": 17, "remove_saved_episod": 17, "check_saved_episod": 17, "get_genre_se": 17, "seed": [17, 28], "get_recommend": [17, 28], "acoust": 17, "afrobeat": 17, "get_market": 17, "br": [17, 26], "IT": [17, 26], "get_playback_st": 17, "additional_typ": 17, "progress": 17, "besid": 17, "introduc": 17, "maintain": [17, 26], "might": 17, "futur": 17, "is_act": 17, "is_private_sess": 17, "is_restrict": 17, "volume_perc": 17, "repeat_st": 17, "shuffle_st": 17, "context": 17, "progress_m": 17, "is_plai": 17, "currently_playing_typ": 17, "action": 17, "interrupting_playback": 17, "paus": 17, "resum": 17, "seek": 17, "skipping_next": 17, "skipping_prev": 17, "toggling_repeat_context": 17, "toggling_shuffl": 17, "toggling_repeat_track": 17, "transferring_playback": 17, "transfer_playback": 17, "device_id": 17, "transfer": [17, 30], "start": [17, 27, 28, 29], "although": 17, "accept": 17, "than": [17, 26, 27], "400": 17, "bad": 17, "74aszwbe4lxaubb36ztrgx": 17, "happen": [17, 27], "get_devic": 17, "get_currently_plai": 17, "start_playback": 17, "context_uri": 17, "position_m": 17, "target": [17, 19, 20], "0d1841b0976bae2a3a310dd74c0f3df354899bc8": 17, "1je1imulbxcx1fz0we7opt": 17, "4iv5w9uyedyuva79axb7rh": 17, "1301wleyt98msxvhpzca6m": 17, "zero": 17, "neg": 17, "repres": 17, "sixth": 17, "millisecond": 17, "pass": [17, 26, 27, 28], "greater": 17, "length": 17, "caus": 17, "pause_playback": 17, "skip_to_next": 17, "skip": [17, 20, 26], "queue": 17, "skip_to_previ": 17, "seek_to_posit": 17, "25000": 17, "set_repeat_mod": 17, "repeat": [17, 27], "mode": [17, 20], "turn": 17, "set_playback_volum": 17, "volum": 17, "100": [17, 20, 26, 28], "inclus": 17, "toggle_playback_shuffl": 17, "toggl": 17, "shuffl": 17, "get_recently_plai": 17, "befor": [17, 26, 27, 29], "doesn": 17, "unix": 17, "cursor": [17, 20], "1484811043508": 17, "played_at": 17, "get_queu": 17, "make": [10, 17, 19, 20, 26, 28], "currently_plai": 17, "add_to_queu": 17, "end": 17, "3ceypja9oz9gipac4ash4n": 17, "dot": [17, 26], "non": 17, "reoccur": 17, "parenthes": 17, "drill": 17, "nest": 17, "prefix": 17, "exclam": 17, "mark": 17, "just": 17, "added_bi": [17, 26], "adder": 17, "snapshot_id": [17, 26], "change_playlist_detail": [17, 26], "detail": [10, 17, 19, 29], "cours": 17, "my": [17, 20, 26], "becom": 17, "abl": 17, "displai": [17, 28], "get_playlist_item": [17, 20, 29], "add_playlist_item": [17, 20, 26, 28, 29], "exce": 17, "bodi": 17, "insert": 17, "order": [17, 20], "third": [17, 29], "snapshot": 17, "update_playlist_item": 17, "range_start": 17, "range_length": 17, "reorder": 17, "depend": [17, 26], "clear": 17, "mutual": 17, "exclus": 17, "togeth": 17, "simpli": [17, 26], "9": 17, "amount": 17, "rang": 17, "begin": 17, "subsequ": 17, "against": 17, "remove_playlist_item": 17, "even": [10, 17, 27], "user_id": [17, 20], "smedjan": 17, "empti": 17, "until": 17, "doe": [17, 20, 26, 27, 29], "coolest": 17, "yyyi": 17, "mm": 17, "ddthh": 17, "ss": 17, "tailor": 17, "dai": [17, 26], "revert": 17, "utc": 17, "2014": 17, "23t09": 17, "00": [17, 26, 27], "whose": [10, 17], "am": [10, 17, 26], "messag": [17, 19, 26], "get_category_playlist": 17, "get_playlist_cover_imag": 17, "dimens": 17, "add_playlist_cover_imag": [17, 28], "base64": [17, 28], "jpeg": 17, "payload": 17, "256": [17, 26], "kb": 17, "narrow": 17, "year": 17, "hipster": 17, "certain": 17, "g": [17, 20], "1955": 17, "1960": 17, "past": [17, 26], "week": 17, "lowest": [17, 27], "remast": 17, "doxi": 17, "mile": 17, "davi": 17, "across": [17, 29], "hit": [17, 26], "both": [17, 20, 26], "get_show": 17, "38bs44xjbvvz3no3byf1dj": 17, "5cfcwki5pz28u0uozxkdh": 17, "5as3akmn2k11yfdddsrvaz": 17, "get_show_episod": 17, "get_saved_show": 17, "save_show": 17, "remove_saved_show": 17, "check_saved_show": 17, "11dfghvxanmlkmjxsncbnl": 17, "7oumywpwj422jrcdaszb7p": 17, "4vqporuhp5edpber92t6lq": 17, "2takcwoaazwixqijphix7b": 17, "get_saved_track": [17, 28], "save_track": 17, "remove_saved_track": 17, "check_saved_track": 17, "analysis_url": 17, "danceabl": 17, "energi": 17, "instrument": 17, "live": 17, "loud": 17, "speechi": 17, "time_signatur": 17, "track_href": 17, "valenc": 17, "get_tracks_audio_featur": 17, "get_track_audio_analysi": 17, "low": [17, 20], "level": 17, "describ": 17, "structur": 17, "rhythm": 17, "pitch": 17, "timbr": 17, "audio_analysi": 17, "meta": 17, "analyzer_vers": 17, "platform": 17, "detailed_statu": 17, "status_cod": 17, "analysis_tim": 17, "input_process": 17, "num_sampl": 17, "sample_md5": 17, "offset_second": 17, "window_second": 17, "analysis_sample_r": 17, "analysis_channel": 17, "end_of_fade_in": 17, "start_of_fade_out": 17, "tempo_confid": 17, "time_signature_confid": 17, "key_confid": 17, "mode_confid": 17, "codestr": 17, "code_vers": 17, "echoprintstr": 17, "echoprint_vers": 17, "synchstr": 17, "synch_vers": 17, "rhythmstr": 17, "rhythm_vers": 17, "bar": 17, "confid": 17, "section": [10, 17, 26], "segment": 17, "loudness_start": 17, "loudness_max": 17, "loudness_max_tim": 17, "loudness_end": 17, "tatum": 17, "seed_artist": 17, "seed_genr": 17, "seed_track": [17, 28], "suffici": 17, "pool": 17, "veri": [17, 27], "obscur": 17, "enough": 17, "train": 17, "machin": 17, "learn": 17, "ai": 17, "model": 17, "4nhqugzhttlfvgf5szeslk": 17, "0c6xiddpze81m2q797orda": 17, "unusu": 17, "imposs": 17, "debug": [17, 26], "tunabl": [17, 28], "afterfilterings": 17, "afterrelinkings": 17, "initialpools": 17, "usernam": [10, 17, 20], "explicit_cont": 17, "filter_en": 17, "filter_lock": 17, "product": [17, 26], "get_top_item": 17, "time_rang": 17, "calcul": 17, "affin": 17, "frame": 17, "long_term": 17, "medium_term": 17, "approxim": 17, "month": 17, "short_term": 17, "get_user_profil": [17, 20], "follow_playlist": 17, "unfollow_playlist": [17, 26], "unfollow": [17, 20], "get_followed_artist": [17, 29], "0i2xqvxqhscxjhhk6ayyr": 17, "follow_peopl": [17, 29], "sent": 17, "unfollow_peopl": 17, "check_followed_peopl": 17, "check_playlist_follow": 17, "jmperezperez": 17, "thelinmichael": 17, "wizzler": 17, "robust": 18, "expos": 19, "build": [10, 19, 27, 28], "tidal_client_id": [19, 26], "tidal_client_secret": [19, 26], "regist": [10, 19, 26], "set_auflow": 19, "251380836": [19, 20], "barcodeid": 19, "released": [19, 20, 26], "imagecov": 19, "videocov": [19, 20, 26], "numberofvolum": [19, 20], "numberoftrack": [19, 20, 26, 29], "numberofvideo": [19, 20, 26], "mediametadata": [19, 20, 26], "275646830": [19, 20], "resourc": [10, 19, 26, 28], "statu": [19, 20, 26], "success": [19, 26], "failur": 19, "get_album_item": [19, 20], "pagin": [19, 20], "artifacttyp": 19, "tracknumb": [19, 20, 26], "volumenumb": [19, 20, 26], "get_album_by_barcode_id": 19, "barcode_id": 19, "barcod": 19, "196589525444": 19, "get_similar_album": [19, 20, 28], "1566": [19, 20], "7804": [19, 20], "get_similar_artist": [19, 20, 28], "251380837": [19, 20], "251380838": [19, 20], "get_track_by_isrc": 19, "usual": 19, "compris": 19, "12": [19, 26], "alphanumer": 19, "ussm12209515": 19, "get_similar_track": [19, 28], "get_video": [19, 20], "video_id": [19, 20], "75623239": [19, 20], "59727844": [19, 20], "beyonc\u00e9": [19, 20], "worldwid": 19, "r_usr": 20, "tidal_private_client_id": 20, "tidal_private_client_secret": 20, "desktop": [10, 20, 26], "device_cod": 20, "manual": [10, 20, 28], "termin": [10, 20], "w_usr": 20, "w_sub": 20, "temporarili": 20, "block": 20, "ip": 20, "too": 20, "quickli": 20, "login_url": 20, "redirect_url": 20, "resources_url": 20, "streamreadi": [20, 26], "adsupportedstreamreadi": [20, 26], "djreadi": [20, 26], "stemreadi": [20, 26], "streamstartd": [20, 26], "allowstream": [20, 26], "premiumstreamingonli": [20, 26], "vibrantcolor": [20, 26], "audioqu": [20, 26], "audiomod": [20, 26], "totalnumberofitem": 20, "replaygain": [20, 26], "peak": [20, 26], "mix": [20, 26, 28], "track_mix": [20, 26], "get_album_credit": 20, "get_album_review": 20, "review": 20, "synopsi": 20, "lastupd": [20, 26], "get_favorite_album": [20, 29], "order_direct": 20, "desc": 20, "direct": 20, "asc": 20, "on_artifact_not_found": 20, "unfavorite_album": 20, "artisttyp": [20, 26], "artistrol": [20, 26], "categoryid": [20, 26], "artist_mix": [20, 26], "subset": 20, "epsandsingl": 20, "get_artist_video": 20, "imagepath": 20, "imageid": 20, "adsurl": 20, "adsprepaywallonli": 20, "get_artist_mix_id": 20, "mix_id": 20, "000ec0b01da1ddd752ec5dee553d48": 20, "get_artist_radio": 20, "inspir": 20, "ident": [10, 20], "get_mix_item": 20, "get_artist_biographi": 20, "biograph": 20, "get_artist_link": 20, "link": 20, "websit": [10, 20], "sitenam": 20, "banner": 20, "relationtyp": 20, "similar_artist": 20, "get_favorite_artist": [20, 29], "unfavorite_artist": 20, "get_blocked_artist": 20, "block_artist": 20, "radio": 20, "unblock_artist": 20, "unblock": 20, "get_country_cod": 20, "get_imag": 20, "uuid": [20, 26, 29], "anim": 20, "d3c4372b": 20, "a652": 20, "40e0": 20, "bdb1": 20, "fc8d032708f6": 20, "userprofil": 20, "get_favorite_mix": 20, "datead": 20, "mixtyp": 20, "subtitletextinfo": 20, "detailimag": 20, "master": 20, "titletextinfo": 20, "lastmodifiedat": 20, "favorite_mix": 20, "000dd748ceabd5508947c6a5d3880a": 20, "unfavorite_mix": 20, "get_album_pag": 20, "device_typ": 20, "phone": 20, "mobil": [10, 20], "smart": 20, "submodul": 20, "get_artist_pag": 20, "get_mix_pag": 20, "get_video_pag": 20, "playlist_uuid": 20, "36ea71a8": 20, "445e": 20, "41a4": 20, "82ab": 20, "6628c581535d": 20, "creator": [20, 26], "publicplaylist": 20, "squareimag": [20, 26], "promotedartist": [20, 26], "lastitemaddedat": [20, 26], "get_playlist_etag": 20, "etag": 20, "1698984074453": 20, "get_playlist_recommend": 20, "folder_id": 20, "root": 20, "4261748a": 20, "4287": 20, "4758": 20, "aaab": 20, "6d5be3e99e52": 20, "folder": 20, "place": 20, "under": 20, "move_playlist": 20, "e09ab9c": 20, "2e87": 20, "41b8": 20, "b404": 20, "3cd712bf706e": 20, "contentbehavior": [20, 26], "sharinglevel": [20, 26], "trn": [20, 26], "followinfo": [20, 26], "nroffollow": [20, 26], "tidalresourcenam": [20, 26], "followtyp": [20, 26], "userid": 20, "get_personal_playlist": 20, "folder_uuid": 20, "itemtyp": 20, "addedat": 20, "parent": [20, 26, 27, 28], "readi": [20, 26], "set_playlist_privaci": [20, 26], "from_playlist_uuid": 20, "on_dupl": 20, "move_playlist_item": 20, "from_index": 20, "to_index": 20, "delete_playlist_item": 20, "get_personal_playlist_fold": 20, "flatten": 20, "include_onli": 20, "date_upd": 20, "createdat": 20, "create_playlist_fold": 20, "delete_playlist_fold": 20, "92b3c1ea": 20, "245a": 20, "4e5a": 20, "a5a4": 20, "c215f7a65b9f": 20, "tophit": 20, "collection_id": 20, "audio_qu": 20, "video_qu": 20, "max_resolut": 20, "2160": 20, "playback_mod": 20, "asset_present": 20, "streaming_session_id": 20, "immers": 20, "hifi": 20, "plan": 20, "price": 20, "dolbi": 20, "atmo": 20, "64": [20, 26], "1411": 20, "9216": 20, "mqa": 20, "audio_onli": 20, "vertic": 20, "offlin": 20, "asset": [20, 26, 28], "present": 20, "30": [20, 27], "get_video_stream": 20, "tommi": 20, "wright": 20, "kelman": 20, "duran": 20, "teriu": 20, "dream": 20, "de": [20, 26], "diamant": 20, "mike": [20, 28], "dean": 20, "trackid": [20, 26], "lyricsprovid": 20, "providercommontrackid": 20, "isrighttoleft": 20, "get_track_mix_id": 20, "tidal_id": 20, "0017159e6a1f34ae3d981792d72ecf": 20, "get_track_playback_info": 20, "hc": 20, "en": 20, "360004255778": 20, "info": 20, "assetpresent": 20, "manifestmimetyp": 20, "manifesthash": 20, "manifest": 20, "albumreplaygain": 20, "albumpeakamplitud": 20, "trackreplaygain": 20, "trackpeakamplitud": 20, "get_track_recommend": 20, "suggested_track": 20, "get_favorite_track": 20, "unfavorite_track": 20, "countrycod": 20, "fullnam": 20, "nicknam": 20, "citi": 20, "postalcod": 20, "usstat": 20, "phonenumb": 20, "birthdai": 20, "channelid": 20, "parentid": 20, "acceptedeula": 20, "facebookuid": 20, "appleuid": 20, "googleuid": 20, "accountlinkcr": 20, "emailverifi": 20, "newus": 20, "get_sess": 20, "sessionid": 20, "partnerid": 20, "authorizedforofflin": 20, "authorizedforofflined": 20, "get_favorite_id": 20, "172311284": 20, "numberoffollow": 20, "prompt": [20, 26], "primari": [20, 22], "secondari": 20, "updatedtim": 20, "supportedcontenttyp": 20, "profiletyp": 20, "get_user_follow": 20, "peopl": [20, 29], "imfollow": 20, "follow_us": 20, "unfollow_us": 20, "get_blocked_us": 20, "block_us": 20, "unblock_us": 20, "get_video_playback_info": 20, "videoid": 20, "streamtyp": 20, "videoqu": 20, "get_favorite_video": 20, "favorite_video": 20, "unfavorite_video": 20, "util": [22, 23, 24, 27], "ndarrai": [23, 24], "levenshtein": [24, 27], "ratio": [23, 24, 27], "measur": [23, 24], "compar": [23, 24], "numpi": [23, 24, 27], "instal": [23, 24], "otherwis": [23, 24, 27], "lightweight": 25, "3": [25, 26, 27, 28], "packag": 26, "pip": 26, "come": [26, 28], "pypi": 26, "conda": 26, "forg": 26, "onc": 26, "pep": 26, "541": 26, "resolv": [26, 27], "grab": 26, "repositori": 26, "git": 26, "clone": 26, "github": 26, "bbye98": 26, "enter": [26, 27], "directori": [26, 27], "virtual": 26, "prevent": 26, "conflict": 26, "requirements_minim": 26, "txt": 26, "env": 26, "f": [26, 27, 28, 29], "yml": 26, "venv": 26, "bin": 26, "posix": 26, "bash": 26, "zsh": 26, "script": 26, "bat": 26, "cmd": 26, "ex": 26, "ps1": 26, "powershel": 26, "alongsid": [10, 26], "step": [26, 29], "r": [26, 27], "virtualenv": 26, "linux": 26, "done": 26, "try": [26, 29], "import": [26, 27, 28, 29], "error": 26, "modulenotfounderror": 26, "No": 26, "rais": 26, "successfulli": 26, "out": [10, 26, 27, 28], "box": 26, "few": 26, "addit": [26, 29], "prerequisit": 26, "cach": 26, "client_itun": [26, 27], "client_qobuz": [26, 29], "protect": 26, "qobuz_email": 26, "qobuz_password": 26, "post": 26, "spawn": 26, "normal": 26, "launch": 26, "find": [10, 26, 28, 29], "chromium": 26, "f12": 26, "devtool": 26, "navig": 26, "firefox": 26, "shift": 26, "f9": 26, "inspector": 26, "nagiv": 26, "client_spotify_lyr": 26, "choic": [26, 28], "spotify_port": 26, "client_spotifi": [26, 27, 28, 29], "scope": [26, 28, 29], "get_authorization_scop": 26, "autom": 26, "click": 26, "agre": 26, "jot": 26, "client_tid": [26, 27, 28, 29], "client_tidal_priv": 26, "proxi": 26, "tool": 26, "intercept": 26, "instruct": 26, "consol": 26, "edm": 26, "group": 26, "galanti": [26, 28], "musicartist": 26, "wrappertyp": 26, "artistnam": [26, 27], "artistlinkurl": 26, "543322169": 26, "uo": 26, "artistid": 26, "amgartistid": 26, "2616267": 26, "primarygenrenam": 26, "danc": 26, "primarygenreid": 26, "17": 26, "static": 26, "8dcf30e5c8e30281ecbb13b0886426c8": 26, "127": 26, "865362": 26, "4stqvofp9vemcemlw50sbu": 26, "3382444": [], "pop": 26, "v1": 26, "640": 26, "scdn": 26, "ab6761610000e5eb7bda087d6fb48d481efd3344": 26, "ab676161000051747bda087d6fb48d481efd3344": 26, "160": 26, "ab6761610000f1787bda087d6fb48d481efd3344": 26, "67": [], "4676988": 26, "a627e21c": 26, "60f7": 26, "4e90": 26, "b2bb": 26, "e50b178c4f0b": 26, "1024x256": 26, "1024": 26, "1080x720": 26, "1080": 26, "720": 26, "160x107": 26, "107": 26, "160x160": 26, "320x214": 26, "214": 26, "320x320": 26, "480x480": 26, "480": 26, "640x428": 26, "428": 26, "750x500": 26, "750": 26, "750x750": 26, "www": [10, 26], "72": 26, "11": [26, 27], "engin": 26, "team": 26, "000202a7e72fd90d0c0df2ed56ddea": 26, "everybodi": 26, "talk": 26, "neon": 26, "tree": 26, "kind": 26, "315816847": [], "collectionid": [26, 27], "578054990": [], "578054997": [], "glee": [], "cast": [], "collectionnam": 26, "season": [], "vol": 26, "tracknam": [26, 27], "collectioncensorednam": 26, "trackcensorednam": 26, "artistviewurl": 26, "collectionviewurl": 26, "trackviewurl": 26, "previewurl": 26, "ssl": 26, "audiopreview125": [], "v4": 26, "86": [], "4b": [], "3f": [], "864b3f23": [], "9155": [], "9ce8": [], "c1c0": [], "fc115a8af80a": [], "mzaf_13828074306318913858": [], "p": 26, "artworkurl30": 26, "is1": 26, "mzstatic": 26, "thumb": 26, "music115": [], "57": [], "6d": [], "4e": [], "576d4e7a": [], "7860": [], "595a": [], "5ccd": [], "05e965413df5": [], "886443746404": [], "30x30bb": 26, "artworkurl60": 26, "60x60bb": 26, "artworkurl100": 26, "100x100bb": 26, "collectionpric": 26, "99": 26, "trackpric": 26, "29": 26, "2012": 26, "05t12": [], "00z": [26, 27], "collectionexplicit": 26, "notexplicit": 26, "trackexplicit": 26, "disccount": 26, "discnumb": 26, "trackcount": 26, "tracktimemilli": 26, "179280": [], "usa": 26, "currenc": [10, 26], "usd": [10, 26], "isstream": 26, "track_qobuz": 26, "2022": [26, 27], "arko": 26, "boom": 26, "todd": 26, "15899504": 26, "fc": 26, "7v": 26, "ilfmuz10e7vfc_230": 26, "ilfmuz10e7vfc_50": 26, "ilfmuz10e7vfc_600": 26, "0859766309663": 26, "1665180000": 26, "4026379": 26, "95": 26, "speedi": 26, "178369185": 26, "536": 26, "133": 26, "0070ef": 26, "hip": 26, "hop": 26, "rap": 26, "ilfmuz10e7vfc": 26, "1689231600": 26, "08": 26, "15899505": 26, "tcagm2280786": 26, "178369187": 26, "track_spotifi": 26, "0rpddszuhfncuwnjxkosji": 26, "au": 26, "AT": 26, "BE": 26, "bo": 26, "bg": 26, "cl": 26, "cr": 26, "cy": 26, "cz": 26, "dk": 26, "ec": 26, "ee": 26, "sv": 26, "fi": 26, "fr": 26, "gr": 26, "gt": 26, "hn": 26, "hk": 26, "hu": 26, "ie": 26, "lv": 26, "lt": 26, "lu": 26, "mt": 26, "nl": 26, "nz": 26, "ni": 26, "NO": 26, "pa": 26, "py": 26, "pe": 26, "ph": 26, "pl": 26, "pt": 26, "sg": 26, "sk": 26, "ch": 26, "tw": 26, "tr": 26, "ui": 26, "gb": 26, "li": [26, 29], "mc": 26, "th": 26, "ro": 26, "il": 26, "za": 26, "sa": 26, "ae": 26, "bh": 26, "qa": 26, "om": 26, "kw": 26, "eg": 26, "tn": 26, "lb": 26, "jo": 26, "IN": 26, "BY": 26, "kz": 26, "md": 26, "ua": 26, "al": 26, "ba": 26, "hr": 26, "mk": 26, "si": 26, "kr": 26, "bd": 26, "pk": 26, "lk": 26, "gh": 26, "ke": 26, "ng": 26, "tz": 26, "ug": 26, "bb": 26, "bz": 26, "bt": 26, "bw": 26, "bf": 26, "cv": 26, "cw": 26, "dm": 26, "fj": 26, "gm": 26, "gd": 26, "gw": 26, "gy": 26, "ht": 26, "jm": 26, "ki": 26, "l": 26, "lr": 26, "mw": 26, "mv": 26, "ml": 26, "mh": 26, "fm": 26, "na": 26, "nr": 26, "ne": 26, "pw": 26, "pg": 26, "w": 26, "st": 26, "sn": 26, "sc": 26, "sl": 26, "sb": 26, "kn": 26, "lc": 26, "vc": 26, "sr": 26, "tl": 26, "TO": 26, "tt": 26, "az": 26, "bn": 26, "bi": 26, "kh": 26, "cm": 26, "td": 26, "km": 26, "gq": 26, "ga": 26, "gn": 26, "kg": 26, "la": 26, "mo": 26, "mr": 26, "mn": 26, "np": [26, 27], "rw": 26, "tg": 26, "uz": 26, "zw": 26, "bj": 26, "mg": 26, "mu": 26, "mz": 26, "ao": 26, "ci": 26, "dj": 26, "zm": 26, "cg": 26, "iq": 26, "tj": 26, "ve": 26, "xk": 26, "0urfz92jmjwdbzbb7hebir": 26, "ab67616d0000b2734a6c0376235e5aa44e59d2c2": 26, "300": 26, "ab67616d00001e024a6c0376235e5aa44e59d2c2": 26, "ab67616d000048514a6c0376235e5aa44e59d2c2": 26, "01": 26, "177280": 26, "usum71119189": 26, "2iumqdfgzchihs3b9e9ewq": 26, "81": [], "14492425": 26, "451": 26, "due": 26, "demand": 26, "right": [26, 29], "holder": 26, "prohibit": 26, "track_tidal_priv": 26, "177": 26, "999969": 26, "17t00": 26, "0000": 26, "55": 26, "mercuri": 26, "2011": 26, "umg": 26, "inc": 26, "stereo": 26, "3665225": 26, "e6f17398": 26, "759e": 26, "45a0": 26, "9673": 26, "6ded6811e199": 26, "14492422": 26, "1c2d7c90": 26, "034e": 26, "485a": 26, "be1f": 26, "24a669c7e6e": 26, "f8af88": 26, "0019768c833a193c29829e5bf473fc": 26, "we": [26, 27, 28, 29], "playlist_qobuz": 26, "ilfmuz10e7vfc_150": 26, "1701053442": [], "ilfmuz10e7vfc_300": 26, "1701053443": [], "18171379": [], "52": [], "3865979203": [], "playlist_spotifi": 26, "3vsxl8ftlyoqgewazcz5d": [], "primary_color": 26, "myw0ndk1ngnlmze0m2e1otbkmtg0otdkn2m4mgi1nmi3zji5ymmxytgz": [], "2023": [26, 27, 28, 29], "27t02": [], "45z": [], "video_thumbnail": 26, "playlist_tidal_priv": 26, "e9f6aff1": [], "f39e": [], "462b": [], "90c4": [], "41686877a555": [], "unrestrict": 26, "8e75fac4": [], "cf24": [], "45c8": [], "8bd2": [], "98ab69f7f74b": [], "eefe947a": [], "5cdb": [], "40ee": [], "8057": [], "213941ff48d5": [], "45": [], "504": [], "46": [], "085": [], "mutagen": 26, "common": 26, "test": [26, 27], "middle_c": 26, "notat": 26, "getattr": 26, "attr": 26, "print": [26, 27], "capit": [26, 27], "middl": 26, "squar": 26, "game": 26, "similarli": 26, "setattr": 26, "261": 26, "63": 26, "forget": [26, 27], "convers": [26, 27], "middle_c_alac": 26, "116kb": 26, "02": [], "930": [], "3kbit": [], "speed": [26, 27], "177x": [], "point": [26, 27], "novemb": [27, 28, 29], "glob": 27, "audio_fil": 27, "suffix": 27, "dive": 27, "def": 27, "print_metadata": 27, "__dict__": 27, "startswith": 27, "upper": 27, "els": 27, "below": [27, 29], "highlight": 27, "involv": 27, "spektrem_shin": 27, "0x7fb5cdaeb790": [], "let": [10, 27], "spektrem": 27, "shine": 27, "count": [10, 27], "1030107": 27, "44100": 27, "had": 27, "pull": 27, "At": 27, "yet": 27, "written": 27, "compat": 27, "1032kb": 27, "09": [], "280": [], "9kbit": [], "68": 26, "5x": [], "With": 27, "280593": 27, "persist": 27, "typic": 27, "accur": 27, "good": [10, 27], "idea": 27, "select": [27, 28, 29], "closest": 27, "choos": 27, "distanc": 27, "levenshtein_ratio": 27, "lower": 27, "itunes_result": 27, "itunes_track": 27, "argmax": 27, "itunes_album": 27, "2013": 27, "gfted": 27, "06t12": 27, "electron": 27, "fill": 27, "By": 27, "set_metadata_us": 27, "spotify_result": 27, "spotify_track": [27, 29], "gb2ld0901581": 27, "128": 27, "correct": [27, 29], "get_track_compo": 27, "tidal_result": 27, "tidal_track": [27, 29], "tidal_compos": 27, "tidal_lyr": 27, "did": 27, "sometim": [27, 29], "tobu_back_to_y": 27, "0x7fb6744afdd0": [], "tobu": 27, "tom": 27, "burkovski": 27, "nc": 27, "06t07": 27, "hous": [27, 28], "gb2ld2210368": 27, "1104053": 27, "poorli": 27, "miss": 27, "fix": 27, "three": 27, "25t12": 27, "98": 27, "voil\u00e0": 27, "twice": 27, "becaus": 27, "There": 27, "eleg": 27, "solut": 27, "problem": 27, "unfortun": [27, 29], "19": [28, 29], "help": 28, "discov": 28, "leverag": 28, "suggest": 28, "b64encod": 28, "random": 28, "ipython": 28, "html": 28, "ifram": 28, "ipywidget": 28, "gridspeclayout": 28, "sure": 28, "0jz9tvoltzjagqiyc4hyzx": 28, "avicii": 28, "0bmb3nzquhbfi6nm4setvu": 28, "cash": 28, "surrend": 28, "1pq8ywty9v2ivzwj7gyxxb": 28, "mako": 28, "our": 28, "70iflb5egla8wufwgxborz": 28, "william": 28, "fallin": 28, "6jspbxzld2yemjtjz2gqot": 28, "passion": 28, "pit": 28, "76b6ljxtolasgxlanjnndr": 28, "sick": 28, "individu": 28, "2v65y3px4dkrhy1djlxd9p": 28, "swedish": 28, "mafia": 28, "worri": 28, "child": 28, "feat": 28, "john": 28, "martin": 28, "1gpf8iwqqj8qoevjhfiidu": 28, "zedd": 28, "matthew": 28, "koma": 28, "miriam": 28, "bryant": 28, "randomli": 28, "recommended_track": 28, "k": 28, "spotify_playlist": [28, 29], "global": 28, "_dh": 28, "minim_mix_smal": 28, "rb": 28, "nifti": 28, "emb": 28, "grid": 28, "len": 28, "enumer": 28, "framebord": 28, "lazi": 28, "152": 28, "510": 28, "divmod": 28, "procedur": [28, 29], "51073951": 28, "62082351": 28, "32553484": 28, "147258423": 28, "109273852": 28, "237059212": 28, "17271290": 28, "27171015": 28, "similar_track": 28, "div": 28, "pad": 28, "bottom": 28, "overflow": 28, "hidden": 28, "max": 28, "src": 28, "layout": 28, "gridifi": 28, "allowfullscreen": 28, "absolut": 28, "left": 28, "1px": 28, "min": 28, "margin": 28, "auto": 28, "tunemymus": 29, "assum": 29, "destin": 29, "challeng": 29, "often": 29, "difficult": 29, "barebon": 29, "pair": [10, 29], "fine": 29, "tune": 29, "complex": 29, "those": 29, "remix": 29, "qobuz_playlist_id": 29, "17865119": 29, "qobuz_playlist": 29, "new_spotify_playlist": 29, "equival": 29, "simpl": 29, "spotify_track_uri": 29, "qobuz_track": 29, "new_tidal_playlist": 29, "confirm": 29, "tidal_track_id": 29, "spotify_playlist_id": 29, "3rw9qy60ceh6dfjauwdxmh": 29, "new_qobuz_playlist": 29, "thankfulli": 29, "qobuz_track_id": 29, "tidal_playlist_uuid": 29, "40052e73": 29, "58d4": 29, "4abb": 29, "bc1c": 29, "abace76d2f15": 29, "tidal_playlist": 29, "tidal_playlist_item": 29, "qobuz_favorit": 29, "qobuz_favorite_album": 29, "qobuz_favorite_artist": 29, "align": 29, "spotify_album_id": 29, "qobuz_album": 29, "spotify_album": 29, "indexerror": 29, "break": 29, "follow_artist": 29, "spotify_artist_id": 29, "qobuz_artist": 29, "spotify_artist": 29, "tidal_album_id": 29, "tidal_album": 29, "lstrip": 29, "tidal_artist_id": 29, "tidal_artist": 29, "spotify_favorite_album": 29, "spotify_favorite_artist": 29, "qobuz_album_id": 29, "qobuz_artist_id": 29, "tidal_favorite_album": 29, "tidal_favorite_artist": 29, "gestalt": 23, "ratcliff": 23, "obershelp": 23, "keyerror": [], "traceback": [], "cell": [], "mnt": [], "benjamin": [], "700": [], "__init__": [], "self": [], "693": [], "config": [], "_name": [], "fallback": [], "695": [], "696": [], "697": [], "698": [], "699": [], "701": [], "1036": [], "1029": [], "_expiri": [], "1030": [], "strptime": [], "1031": [], "isinst": [], "1032": [], "1034": [], "_flow": [], "1035": [], "_sp_dc": [], "_user_id": [], "9108": [], "9054": [], "9055": [], "9056": [], "9103": [], "9104": [], "9106": [], "_check_scop": [], "_get_json": [], "843": [], "823": [], "825": [], "826": [], "827": [], "respons": [], "840": [], "841": [], "_request": [], "912": [], "retri": [], "887": [], "888": [], "construct": [], "889": [], "908": [], "909": [], "911": [], "_refresh_access_token": [], "914": [], "915": [], "299": [], "867": [], "855": [], "client_b64": [], "urlsafe_b64encod": [], "856": [], "_client_id": [], "_client_secret": [], "857": [], "decod": [], "858": [], "859": [], "860": [], "864": [], "basic": 10, "865": [], "bearer": [], "868": [], "_refresh_token": [], "869": [], "870": [], "timedelta": [], "expires_in": [], "126": 26, "3375748": [], "350172836": [], "1443469527": [], "1443469581": [], "audiopreview122": [], "5c": [], "5c29bf6b": [], "ca2c": [], "4e8b": [], "2be6": [], "c51a282c7da": [], "mzaf_1255557534804450018": [], "e3": [], "80e39565": [], "35f9": [], "2496": [], "c6f8": [], "6572490c4a7b": [], "12umgim12509": [], "rgb": [], "19t12": [], "contentadvisoryr": [], "justin": [], "meldal": [], "johnsen": [], "guitar": [], "keyboard": [], "percuss": [], "programm": [], "associatedperform": [], "tim": [], "pagnotta": [], "greg": [], "collin": [], "studiopersonnel": [], "weslei": [], "seidman": [], "asst": [], "tyler": [], "glenn": [], "matt": [], "wigger": [], "bill": [], "bush": [], "470727": [], "42": [], "54": [], "0060252795442_230": [], "0060252795442_50": [], "0060252795442_600": [], "0060252795442": [], "1325372400": [], "17487": [], "774": [], "5653617": [], "2785": [], "112": [], "119": [], "113": [], "indi": [], "alternatif": [], "et": [], "ind": [], "1683529200": [], "583118": [], "5653620": [], "1683702000": [], "0060252795442_150": [], "1699766986": [], "0060252795442_300": [], "1699766987": [], "17864724": [], "31": [], "3775088385": [], "193pq0l1m0ykfekbrb4c1v": [], "myxhzgzkzdk4m2m0ogy2zwvmytuxyweymjawm2mzmde5nze5ndq4ode0": [], "12t05": [], "49z": [], "771dc2db": [], "c763": [], "4e71": [], "9c87": [], "f5d82bfa4153": [], "9412a3c1": [], "7d10": [], "40b3": [], "b9b4": [], "96f0791dee9c": [], "74d8c599": [], "cfbd": [], "464f": [], "8e70": [], "80d51a6482bd": [], "155": 26, "740": [], "161x": [], "0x7f126c60b150": [], "0kb": [26, 27], "1891": [], "2kbit": [], "813x": [], "256kb": [], "89": [], "150": [], "768kb": [], "28": [], "222": [], "1x": [], "281": 27, "1kbit": 27, "28x": [], "attributeerror": [], "8": [], "0x7efd3873e650": [], "3363420": [], "112115157": 26, "583394431": 26, "583394802": 26, "workout": 26, "35": 26, "unmix": 26, "gym": 26, "jog": 26, "run": 26, "cycl": 26, "cardio": 26, "fit": 26, "audiopreview115": 26, "c4": 26, "8d": 26, "c4fc8d9a": 26, "0b75": 26, "55fb": 26, "6413": 26, "6bdbf7d17e65": 26, "mzaf_7998633680287936907": 26, "music114": 26, "b4": 26, "a7": 26, "dc": 26, "b4a7dc27": 26, "6fcd": 26, "22ba": 26, "c9a6": 26, "564166a4c43d": 26, "35tophitswom3_2400": 26, "03t12": 26, "34": 26, "179055": 26, "79": 26, "1703541258": [], "1703541259": [], "18794965": [], "4056401760": [], "0nnctudbv2hxvrsbtw9uvd": [], "miwyywm2ywywymm2otmzmjfiogu1mdi5odjmzwrlndgwn2y5zjazzjyi": [], "25t21": [], "21z": [], "4d1dc535": [], "556c": [], "4368": [], "a6cc": [], "2fa0e373e4da": [], "af52f4df": [], "06f8": [], "40ad": [], "9ebd": [], "4ad993523c39": [], "7b203db1": [], "e8f4": [], "4fbc": [], "a87f": [], "a5032bcdcbd7": [], "21": [], "876": [], "633": [], "577014": [], "32": [], "77": [], "0kbit": [], "92": 26, "1023": 26, "4kbit": 26, "163x": [], "0x7fb2b0648090": [], "652x": [], "83": [], "141": [], "6x": [], "1024kb": [], "279": [], "7kbit": 27, "1703541385": [], "1703541386": [], "18794976": [], "4056413118": [], "3r7m5jqsbyhqraljwmxop5": [], "miwymjgwzmy1ngnhnmeymdcynme4oda0nwfkmmmwzdvjyzjimdq5odc0": [], "56": [], "28z": [], "999521e8": [], "cc89": [], "40e2": [], "b5e4": [], "feef8fc55e2b": [], "9e9beafc": [], "fe9e": [], "41b5": [], "a3e2": [], "2165c7eb9ea5": [], "7be303ac": [], "90c3": [], "461a": [], "9e9c": [], "29b2e9737a93": [], "025": [], "411": [], "143x": [], "0x7f2a63fc6090": [], "773x": [], "146": [], "5kbit": [], "4x": [], "58": [], "228": [], "2x": [], "0x7f2a63fc5150": [], "1703541443": [], "1703541444": [], "18794997": [], "4056419200": [], "6lsdixcynk4tviweun0r2x": [], "miw1zdi0njy3zjzkoddkndm0mjcwyjnkywe4ntk2m2mwymm4nti4yjy4": [], "25z": [], "f7db0333": [], "9032": [], "4410": [], "8092": [], "33e2fd57a9a0": [], "dd039132": [], "45a2": 26, "a7cc": [], "0c5a6de9b202": [], "c951760e": [], "df32": [], "469e": [], "9022": [], "a0f96adbbd51": [], "26": [], "548": [], "131": [], "158x": [], "0x7fa51e606090": [], "746x": [], "223": [], "0x7fa5e9463ed0": [], "1703542953": [], "1703542954": [], "18795217": [], "4056566210": [], "05nxuuwubqkvqkokwts9sf": [], "miwzmwjizdyyzdg3mwizyzmyogq2ogqzmwi5zdc5yta5nmm4y2ywmgjh": [], "25t22": [], "36z": [], "b32ca39": [], "fc75": [], "41e8": [], "8983": [], "ac2c60a343b6": [], "add565f1": [], "aa6d": [], "4ba6": [], "9add": [], "b79766ffebff": [], "320db6de": [], "97ae": [], "499f": [], "bd6f": [], "d5fafed56818": [], "36": [], "519": [], "169x": [], "0x7f3ad3cea410": [], "71x": [], "94": [], "140": [], "221": [], "0x7f3ad38bdb50": [], "1703543032": [], "1703543033": [], "18795231": [], "4056571639": [], "6utaldny4jas8p62xkuob1": [], "miw1ytnmngyxnzblndnmy2fhyzcwnjdinmu4ngjmzgzmmdhmotmxm2rm": [], "23": [], "55z": [], "5ad15881": [], "d24a": [], "431d": [], "8842": [], "e984b14acddd": [], "b51cac5": [], "afda": [], "412e": [], "b776": [], "157cdf14ce72": [], "d8ce78a4": [], "6e66": [], "45b2": [], "b642": [], "3d8ad94ab51a": [], "288": [], "621": [], "151x": [], "0x7f3120028710": [], "688x": [], "62": [], "143": [], "0x7f311f41c450": [], "1703543101": [], "1703543102": [], "18795240": [], "4056579211": [], "7byelnhlxdpl1suxbohdxc": [], "miximge3nmzkztjmnjhimzk3ogfimtcxmgfiowjhyjdkzmnin2qwzgi3": [], "04z": [], "72822fee": [], "3bd8": [], "4e6a": [], "8919": [], "6209622dbfee": [], "b9692a2e": [], "b994": [], "4add": [], "8cd8": [], "d55f713c9d2a": [], "db6c068e": [], "f503": [], "4564": [], "b13f": [], "de4ea788ca77": [], "276": [], "756": [], "157x": [], "0x7f31c2b320d0": [], "872x": [], "0x7f31c2b2e050": [], "1703543295": [], "1703543296": [], "18795266": [], "4056598057": [], "2hevunznshidx5g69qb6zo": [], "mixjmjm2owzkztlkmjaxotq3ytg3mgezy2zknwe3mjvingu1ywfjmwri": [], "17z": [], "19cbbd20": [], "a52a": [], "8a8f": [], "f61363ae06bf": [], "3ee9a69b": [], "8be3": [], "432e": [], "8797": [], "2f37410cfd60": [], "e9540028": [], "d848": [], "4ad4": [], "962d": [], "c15c46517dec": [], "18": [], "304": [], "782": [], "0x7fa22b87db10": [], "895x": [], "149": [], "8kbit": [], "8x": [], "7x": [], "0x7fa22b88ba10": [], "1703543445": [], "18795289": [], "4056613633": [], "519yixsucuo8znb1pid8gr": [], "miw5ntlhyjdjm2y1mtdjyzzhm2u4nwq0ymy3ywziyzjimzvhotlkyji1": [], "48z": [], "635c228f": [], "c946": [], "4243": [], "be68": [], "b26e3f48f64c": [], "5feae44a": [], "9961": [], "4173": [], "a4af": [], "7cdc80a43e95": [], "fbb4cf4e": [], "1268": [], "4adf": [], "be9c": [], "5a0fc14ba600": [], "48": [], "732": [], "49": [], "203": [], "154x": [], "0x7f0bf74f2710": [], "653x": [], "0x7f0bf6ab9510": [], "1703543491": [], "1703543492": [], "18795302": [], "4056619241": [], "65jzri70liabjp3vvmknvc": [], "miwzngy4mwzjody4ymiyyzg0ztixmznlzjvjotvkowrknzu1mtqxmwnh": [], "34z": [], "b464d4a7": [], "4e66": [], "4cc4": [], "aefd": [], "16ab91c81039": [], "21bdd5bd": [], "3daa": [], "45ba": [], "949a": [], "c82b37eeb088": [], "d0198e9e": [], "4fe2": [], "4285": [], "ba25": [], "f77658438440": [], "924": [], "291": [], "146x": [], "0x7fc1867c9710": [], "804x": [], "144": [], "0x7fc185d9d750": [], "1703543652": [], "18795317": [], "4056634586": [], "25thystgggzlzqfhklecqx": [], "mixln2m1m2yyndu1zge1ndmxodeyzgvhyzy1nznimdk1ztgwyzvjmtnh": [], "14z": [], "532c3063": [], "45aa": [], "8781": [], "07f88e6e371b": [], "3bd94903": [], "8ecf": [], "4ac9": [], "8698": [], "9c8ce41fe5dd": [], "319f5bf4": [], "4417": [], "8909": [], "3a532fb33d12": [], "15": [], "008": [], "490": [], "0x7f5d7dc6f710": [], "675x": [], "153": [], "0x7f5e47f61650": [], "discog": 10, "consumer_kei": 10, "consumer_secret": 10, "web_framework": [10, 17, 29], "access_token_secret": 10, "rest": 10, "wantlist": 10, "marketplac": 10, "home": 10, "least": 10, "enjoi": 10, "higher": 10, "consum": 10, "discogs_consumer_kei": 10, "discogs_consumer_secret": 10, "registr": 10, "0a": 10, "view": 10, "discogs_personal_access_token": 10, "undergo": 10, "attach": 10, "access_token_url": 10, "request_token_url": 10, "get_ident": 10, "doubl": 10, "saniti": 10, "correctli": 10, "resource_url": 10, "consumer_nam": 10, "visibl": 10, "num_list": 10, "num_collect": 10, "num_wantlist": 10, "rodneyfool": 10, "wantlist_url": 10, "rank": 10, "num_pend": 10, "num_for_sal": 10, "home_pag": 10, "locat": 10, "collection_folders_url": 10, "collection_fields_url": 10, "releases_contribut": 10, "rating_avg": 10, "releases_r": 10, "inventory_url": 10, "avatar_url": 10, "banner_url": 10, "buyer_r": 10, "buyer_rating_star": 10, "buyer_num_r": 10, "seller_r": 10, "seller_rating_star": 10, "seller_num_r": 10, "curr_abbr": 10, "edit_profil": 10, "real": 10, "nicola": 10, "cage": 10, "geograph": 10, "portland": 10, "biolog": 10, "abbrevi": 10, "gbp": 10, "eur": 10, "cad": 10, "aud": 10, "jpy": 10, "chf": 10, "mxn": 10, "brl": 10, "nzd": 10, "sek": 10, "zar": 10, "get_user_submiss": 10, "per_pag": 10, "get_user_contribut": 10, "sort_ord": 10, "708": [], "703": [], "704": [], "705": [], "706": [], "707": [], "709": [], "1044": [], "1037": [], "1038": [], "1039": [], "1040": [], "1042": [], "1043": [], "9116": [], "9062": [], "9063": [], "9064": [], "9111": [], "9112": [], "9114": [], "851": [], "831": [], "833": [], "834": [], "835": [], "848": [], "849": [], "920": [], "895": [], "896": [], "897": [], "916": [], "917": [], "919": [], "922": [], "923": [], "875": [], "863": [], "866": [], "872": [], "873": [], "877": [], "878": [], "0x7f3294a0e750": [], "1898": 27, "268x": [], "512kb": [], "265": [], "41": [], "0x7f320db6c290": [], "typeerror": [], "got": [], "unexpect": [], "3360776": 26, "1703640723": [], "1703640724": [], "18814004": [], "4066997546": [], "6qcocfmdcnfktgmv2ujar": [], "miw2yzfhyjnhnmqzmge3mdzlmgy2zge0mzi5mmrlm2i5ote0mmywymu0": [], "27t01": 26, "06z": [], "7c0572d8": [], "6a94": [], "4a56": [], "a26": [], "7b7fa6087bca": [], "8b359656": [], "544a": [], "46ec": [], "87eb": [], "0be478d31615": [], "b87d83bd": [], "b77a": [], "45f5": [], "a294": [], "c2dfd542c695": [], "357": [], "518": [], "90": [], "0x7f3937f2ced0": [], "733x": [], "3x": 26, "0x7f393734cb90": [], "1703640810": 26, "1703640811": 26, "18814014": 26, "4067006648": 26, "1bs3bkyqi6g6qbvj4skpkc": 26, "mswxnmnmy2u5ogy4odk4nmrimzlhmda0nzbjnzc4m2rhnju2nmm3mgvm": 26, "33": 26, "32z": 26, "e02223ff": 26, "d067": 26, "41b2": 26, "aa44": 26, "ea5bd0bb14d1": 26, "dc385d5b": 26, "dc19": 26, "4257": 26, "a1a8": 26, "8f3e5d7fa050": 26, "42b6e4c7": 26, "92d7": 26, "80f7": 26, "3199018785bd": 26, "157": 26, "318": 26, "82": 26, "0x7f4b180a9cd0": 27, "566x": 27, "59": 27, "9x": 27, "0x7f4ab6deacd0": 27}, "objects": {"": [[1, 0, 0, "-", "minim"]], "minim": [[2, 0, 0, "-", "audio"], [9, 0, 0, "-", "discogs"], [11, 0, 0, "-", "itunes"], [13, 0, 0, "-", "qobuz"], [15, 0, 0, "-", "spotify"], [18, 0, 0, "-", "tidal"], [21, 0, 0, "-", "utility"]], "minim.audio": [[3, 1, 1, "", "Audio"], [4, 1, 1, "", "FLACAudio"], [5, 1, 1, "", "MP3Audio"], [6, 1, 1, "", "MP4Audio"], [7, 1, 1, "", "OggAudio"], [8, 1, 1, "", "WAVEAudio"]], "minim.audio.Audio": [[3, 2, 1, "", "convert"], [3, 2, 1, "", "set_metadata_using_itunes"], [3, 2, 1, "", "set_metadata_using_qobuz"], [3, 2, 1, "", "set_metadata_using_spotify"], [3, 2, 1, "", "set_metadata_using_tidal"]], "minim.audio.FLACAudio": [[4, 2, 1, "", "convert"], [4, 2, 1, "", "set_metadata_using_itunes"], [4, 2, 1, "", "set_metadata_using_qobuz"], [4, 2, 1, "", "set_metadata_using_spotify"], [4, 2, 1, "", "set_metadata_using_tidal"], [4, 2, 1, "", "write_metadata"]], "minim.audio.MP3Audio": [[5, 2, 1, "", "convert"], [5, 2, 1, "", "set_metadata_using_itunes"], [5, 2, 1, "", "set_metadata_using_qobuz"], [5, 2, 1, "", "set_metadata_using_spotify"], [5, 2, 1, "", "set_metadata_using_tidal"], [5, 2, 1, "", "write_metadata"]], "minim.audio.MP4Audio": [[6, 2, 1, "", "convert"], [6, 2, 1, "", "set_metadata_using_itunes"], [6, 2, 1, "", "set_metadata_using_qobuz"], [6, 2, 1, "", "set_metadata_using_spotify"], [6, 2, 1, "", "set_metadata_using_tidal"], [6, 2, 1, "", "write_metadata"]], "minim.audio.OggAudio": [[7, 2, 1, "", "convert"], [7, 2, 1, "", "set_metadata_using_itunes"], [7, 2, 1, "", "set_metadata_using_qobuz"], [7, 2, 1, "", "set_metadata_using_spotify"], [7, 2, 1, "", "set_metadata_using_tidal"], [7, 2, 1, "", "write_metadata"]], "minim.audio.WAVEAudio": [[8, 2, 1, "", "convert"], [8, 2, 1, "", "set_metadata_using_itunes"], [8, 2, 1, "", "set_metadata_using_qobuz"], [8, 2, 1, "", "set_metadata_using_spotify"], [8, 2, 1, "", "set_metadata_using_tidal"], [8, 2, 1, "", "write_metadata"]], "minim.discogs": [[10, 1, 1, "", "API"]], "minim.discogs.API": [[10, 2, 1, "", "edit_profile"], [10, 2, 1, "", "get_identity"], [10, 2, 1, "", "get_profile"], [10, 2, 1, "", "get_user_contributions"], [10, 2, 1, "", "get_user_submissions"], [10, 2, 1, "", "set_access_token"], [10, 2, 1, "", "set_flow"]], "minim.itunes": [[12, 1, 1, "", "SearchAPI"]], "minim.itunes.SearchAPI": [[12, 2, 1, "", "lookup"], [12, 2, 1, "", "search"]], "minim.qobuz": [[14, 1, 1, "", "PrivateAPI"]], "minim.qobuz.PrivateAPI": [[14, 2, 1, "", "add_playlist_tracks"], [14, 2, 1, "", "create_playlist"], [14, 2, 1, "", "delete_playlist"], [14, 2, 1, "", "delete_playlist_tracks"], [14, 2, 1, "", "favorite_items"], [14, 2, 1, "", "favorite_playlist"], [14, 2, 1, "", "get_album"], [14, 2, 1, "", "get_artist"], [14, 2, 1, "", "get_collection_streams"], [14, 2, 1, "", "get_curated_tracks"], [14, 2, 1, "", "get_favorites"], [14, 2, 1, "", "get_featured_albums"], [14, 2, 1, "", "get_featured_playlists"], [14, 2, 1, "", "get_label"], [14, 2, 1, "", "get_playlist"], [14, 2, 1, "", "get_profile"], [14, 2, 1, "", "get_purchases"], [14, 2, 1, "", "get_track"], [14, 2, 1, "", "get_track_file_url"], [14, 2, 1, "", "get_track_performers"], [14, 2, 1, "", "get_track_stream"], [14, 2, 1, "", "get_user_playlists"], [14, 2, 1, "", "move_playlist_tracks"], [14, 2, 1, "", "search"], [14, 2, 1, "", "set_auth_token"], [14, 2, 1, "", "set_flow"], [14, 2, 1, "", "unfavorite_items"], [14, 2, 1, "", "unfavorite_playlist"], [14, 2, 1, "", "update_playlist"], [14, 2, 1, "", "update_playlist_position"]], "minim.spotify": [[16, 1, 1, "", "PrivateLyricsService"], [17, 1, 1, "", "WebAPI"]], "minim.spotify.PrivateLyricsService": [[16, 2, 1, "", "get_lyrics"], [16, 2, 1, "", "set_access_token"], [16, 2, 1, "", "set_sp_dc"]], "minim.spotify.WebAPI": [[17, 2, 1, "", "add_playlist_cover_image"], [17, 2, 1, "", "add_playlist_items"], [17, 2, 1, "", "add_to_queue"], [17, 2, 1, "", "change_playlist_details"], [17, 2, 1, "", "check_followed_people"], [17, 2, 1, "", "check_playlist_followers"], [17, 2, 1, "", "check_saved_albums"], [17, 2, 1, "", "check_saved_audiobooks"], [17, 2, 1, "", "check_saved_episodes"], [17, 2, 1, "", "check_saved_shows"], [17, 2, 1, "", "check_saved_tracks"], [17, 2, 1, "", "create_playlist"], [17, 2, 1, "", "follow_people"], [17, 2, 1, "", "follow_playlist"], [17, 2, 1, "", "get_album"], [17, 2, 1, "", "get_album_tracks"], [17, 2, 1, "", "get_albums"], [17, 2, 1, "", "get_artist"], [17, 2, 1, "", "get_artist_albums"], [17, 2, 1, "", "get_artist_top_tracks"], [17, 2, 1, "", "get_artists"], [17, 2, 1, "", "get_audiobook"], [17, 2, 1, "", "get_audiobook_chapters"], [17, 2, 1, "", "get_audiobooks"], [17, 2, 1, "", "get_categories"], [17, 2, 1, "", "get_category"], [17, 2, 1, "", "get_category_playlists"], [17, 2, 1, "", "get_chapter"], [17, 2, 1, "", "get_chapters"], [17, 2, 1, "", "get_currently_playing"], [17, 2, 1, "", "get_devices"], [17, 2, 1, "", "get_episode"], [17, 2, 1, "", "get_episodes"], [17, 2, 1, "", "get_featured_playlists"], [17, 2, 1, "", "get_followed_artists"], [17, 2, 1, "", "get_genre_seeds"], [17, 2, 1, "", "get_markets"], [17, 2, 1, "", "get_new_albums"], [17, 2, 1, "", "get_playback_state"], [17, 2, 1, "", "get_playlist"], [17, 2, 1, "", "get_playlist_cover_image"], [17, 2, 1, "", "get_playlist_items"], [17, 2, 1, "", "get_playlists"], [17, 2, 1, "", "get_profile"], [17, 2, 1, "", "get_queue"], [17, 2, 1, "", "get_recently_played"], [17, 2, 1, "", "get_recommendations"], [17, 2, 1, "", "get_related_artists"], [17, 2, 1, "", "get_saved_albums"], [17, 2, 1, "", "get_saved_audiobooks"], [17, 2, 1, "", "get_saved_episodes"], [17, 2, 1, "", "get_saved_shows"], [17, 2, 1, "", "get_saved_tracks"], [17, 2, 1, "", "get_scopes"], [17, 2, 1, "", "get_show"], [17, 2, 1, "", "get_show_episodes"], [17, 2, 1, "", "get_shows"], [17, 2, 1, "", "get_top_items"], [17, 2, 1, "", "get_track"], [17, 2, 1, "", "get_track_audio_analysis"], [17, 2, 1, "", "get_track_audio_features"], [17, 2, 1, "", "get_tracks"], [17, 2, 1, "", "get_tracks_audio_features"], [17, 2, 1, "", "get_user_playlists"], [17, 2, 1, "", "get_user_profile"], [17, 2, 1, "", "pause_playback"], [17, 2, 1, "", "remove_playlist_items"], [17, 2, 1, "", "remove_saved_albums"], [17, 2, 1, "", "remove_saved_audiobooks"], [17, 2, 1, "", "remove_saved_episodes"], [17, 2, 1, "", "remove_saved_shows"], [17, 2, 1, "", "remove_saved_tracks"], [17, 2, 1, "", "save_albums"], [17, 2, 1, "", "save_audiobooks"], [17, 2, 1, "", "save_episodes"], [17, 2, 1, "", "save_shows"], [17, 2, 1, "", "save_tracks"], [17, 2, 1, "", "search"], [17, 2, 1, "", "seek_to_position"], [17, 2, 1, "", "set_access_token"], [17, 2, 1, "", "set_flow"], [17, 2, 1, "", "set_playback_volume"], [17, 2, 1, "", "set_repeat_mode"], [17, 2, 1, "", "skip_to_next"], [17, 2, 1, "", "skip_to_previous"], [17, 2, 1, "", "start_playback"], [17, 2, 1, "", "toggle_playback_shuffle"], [17, 2, 1, "", "transfer_playback"], [17, 2, 1, "", "unfollow_people"], [17, 2, 1, "", "unfollow_playlist"], [17, 2, 1, "", "update_playlist_items"]], "minim.tidal": [[19, 1, 1, "", "API"], [20, 1, 1, "", "PrivateAPI"]], "minim.tidal.API": [[19, 2, 1, "", "get_album"], [19, 2, 1, "", "get_album_by_barcode_id"], [19, 2, 1, "", "get_album_items"], [19, 2, 1, "", "get_albums"], [19, 2, 1, "", "get_artist"], [19, 2, 1, "", "get_artist_albums"], [19, 2, 1, "", "get_artists"], [19, 2, 1, "", "get_similar_albums"], [19, 2, 1, "", "get_similar_artists"], [19, 2, 1, "", "get_similar_tracks"], [19, 2, 1, "", "get_track"], [19, 2, 1, "", "get_track_by_isrc"], [19, 2, 1, "", "get_tracks"], [19, 2, 1, "", "get_video"], [19, 2, 1, "", "get_videos"], [19, 2, 1, "", "search"], [19, 2, 1, "", "set_access_token"], [19, 2, 1, "", "set_flow"]], "minim.tidal.PrivateAPI": [[20, 2, 1, "", "add_playlist_items"], [20, 2, 1, "", "block_artist"], [20, 2, 1, "", "block_user"], [20, 2, 1, "", "create_playlist"], [20, 2, 1, "", "create_playlist_folder"], [20, 2, 1, "", "delete_playlist"], [20, 2, 1, "", "delete_playlist_folder"], [20, 2, 1, "", "delete_playlist_item"], [20, 2, 1, "", "favorite_albums"], [20, 2, 1, "", "favorite_artists"], [20, 2, 1, "", "favorite_mixes"], [20, 2, 1, "", "favorite_playlists"], [20, 2, 1, "", "favorite_tracks"], [20, 2, 1, "", "favorite_videos"], [20, 2, 1, "", "follow_user"], [20, 2, 1, "", "get_album"], [20, 2, 1, "", "get_album_credits"], [20, 2, 1, "", "get_album_items"], [20, 2, 1, "", "get_album_page"], [20, 2, 1, "", "get_album_review"], [20, 2, 1, "", "get_artist"], [20, 2, 1, "", "get_artist_albums"], [20, 2, 1, "", "get_artist_biography"], [20, 2, 1, "", "get_artist_links"], [20, 2, 1, "", "get_artist_mix_id"], [20, 2, 1, "", "get_artist_page"], [20, 2, 1, "", "get_artist_radio"], [20, 2, 1, "", "get_artist_top_tracks"], [20, 2, 1, "", "get_artist_videos"], [20, 2, 1, "", "get_blocked_artists"], [20, 2, 1, "", "get_blocked_users"], [20, 2, 1, "", "get_collection_streams"], [20, 2, 1, "", "get_country_code"], [20, 2, 1, "", "get_favorite_albums"], [20, 2, 1, "", "get_favorite_artists"], [20, 2, 1, "", "get_favorite_ids"], [20, 2, 1, "", "get_favorite_mixes"], [20, 2, 1, "", "get_favorite_tracks"], [20, 2, 1, "", "get_favorite_videos"], [20, 2, 1, "", "get_image"], [20, 2, 1, "", "get_mix_items"], [20, 2, 1, "", "get_mix_page"], [20, 2, 1, "", "get_personal_playlist_folders"], [20, 2, 1, "", "get_personal_playlists"], [20, 2, 1, "", "get_playlist"], [20, 2, 1, "", "get_playlist_etag"], [20, 2, 1, "", "get_playlist_items"], [20, 2, 1, "", "get_playlist_recommendations"], [20, 2, 1, "", "get_profile"], [20, 2, 1, "", "get_session"], [20, 2, 1, "", "get_similar_albums"], [20, 2, 1, "", "get_similar_artists"], [20, 2, 1, "", "get_track"], [20, 2, 1, "", "get_track_composers"], [20, 2, 1, "", "get_track_contributors"], [20, 2, 1, "", "get_track_credits"], [20, 2, 1, "", "get_track_lyrics"], [20, 2, 1, "", "get_track_mix_id"], [20, 2, 1, "", "get_track_playback_info"], [20, 2, 1, "", "get_track_recommendations"], [20, 2, 1, "", "get_track_stream"], [20, 2, 1, "", "get_user_followers"], [20, 2, 1, "", "get_user_following"], [20, 2, 1, "", "get_user_playlist"], [20, 2, 1, "", "get_user_playlists"], [20, 2, 1, "", "get_user_profile"], [20, 2, 1, "", "get_video"], [20, 2, 1, "", "get_video_page"], [20, 2, 1, "", "get_video_playback_info"], [20, 2, 1, "", "get_video_stream"], [20, 2, 1, "", "move_playlist"], [20, 2, 1, "", "move_playlist_item"], [20, 2, 1, "", "search"], [20, 2, 1, "", "set_access_token"], [20, 2, 1, "", "set_flow"], [20, 2, 1, "", "set_playlist_privacy"], [20, 2, 1, "", "unblock_artist"], [20, 2, 1, "", "unblock_user"], [20, 2, 1, "", "unfavorite_albums"], [20, 2, 1, "", "unfavorite_artists"], [20, 2, 1, "", "unfavorite_mixes"], [20, 2, 1, "", "unfavorite_playlist"], [20, 2, 1, "", "unfavorite_tracks"], [20, 2, 1, "", "unfavorite_videos"], [20, 2, 1, "", "unfollow_user"], [20, 2, 1, "", "update_playlist"]], "minim.utility": [[22, 3, 1, "", "format_multivalue"], [23, 3, 1, "", "gestalt_ratio"], [24, 3, 1, "", "levenshtein_ratio"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "function", "Python function"]}, "titleterms": {"minim": [1, 25, 26], "audio": [2, 3, 26, 27], "file": [2, 26, 27], "object": 2, "softwar": [3, 4, 5, 6, 7, 8], "depend": [3, 4, 5, 6, 7, 8], "flacaudio": 4, "mp3audio": 5, "mp4audio": 6, "oggaudio": 7, "waveaudio": 8, "itun": [11, 26], "searchapi": [12, 26], "qobuz": [13, 26, 29], "privateapi": [14, 20, 26], "sampl": [10, 14, 16, 17, 19, 20], "respons": [14, 16, 17, 19, 20], "user": [10, 14, 20, 30], "authent": [10, 14, 20], "subscript": [14, 20], "spotifi": [15, 26, 28, 29], "privatelyricsservic": [16, 26], "webapi": [17, 26], "author": [17, 20], "scope": [17, 20], "tidal": [18, 26, 28, 29], "api": [10, 19, 26, 27], "util": 21, "function": [21, 27], "levenshtein_ratio": 24, "multivalue_formatt": [], "get": [26, 28], "start": 26, "instal": 26, "usag": 26, "music": [26, 29], "servic": 26, "search": 26, "privat": 26, "lyric": 26, "web": 26, "exampl": 26, "artist": 26, "track": 26, "creat": 26, "modifi": 26, "delet": 26, "person": 26, "playlist": [26, 29], "handler": 26, "load": 26, "edit": [26, 27], "convert": [26, 27], "between": 26, "format": 26, "metadata": 27, "setup": 27, "instanti": 27, "client": 27, "find": 27, "defin": 27, "helper": 27, "tag": 27, "an": 27, "exist": 27, "recommend": 28, "transfer": 29, "librari": 29, "prerequisit": 29, "move": 29, "from": 29, "To": 29, "synchron": 29, "favorit": 29, "guid": 30, "format_multivalu": 22, "gestalt_ratio": 23, "discog": 9}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.viewcode": 1, "sphinx": 60}, "alltitles": {"minim": [[1, "module-minim"]], "audio": [[2, "module-minim.audio"]], "Audio file objects": [[2, "audio-file-objects"]], "utility": [[21, "module-minim.utility"]], "Utility functions": [[21, "utility-functions"]], "gestalt_ratio": [[23, "gestalt-ratio"]], "format_multivalue": [[22, "format-multivalue"]], "User Guide": [[30, "user-guide"]], "discogs": [[9, "module-minim.discogs"]], "Discogs": [[9, "id1"]], "itunes": [[11, "module-minim.itunes"]], "iTunes": [[11, "id1"]], "API": [[10, "api"], [19, "api"]], "User authentication": [[10, null], [10, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [20, null]], "Sample": [[10, null], [10, null], [10, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null]], "Audio": [[3, "audio"]], "Software dependency": [[3, null], [4, null], [5, null], [6, null], [7, null], [8, null]], "FLACAudio": [[4, "flacaudio"]], "MP3Audio": [[5, "mp3audio"]], "MP4Audio": [[6, "mp4audio"]], "OggAudio": [[7, "oggaudio"]], "WAVEAudio": [[8, "waveaudio"]], "SearchAPI": [[12, "searchapi"]], "qobuz": [[13, "module-minim.qobuz"]], "Qobuz": [[13, "id1"]], "PrivateAPI": [[14, "privateapi"], [20, "privateapi"]], "Sample response": [[14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [16, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null]], "Subscription": [[14, null], [14, null], [14, null]], "PrivateLyricsService": [[16, "privatelyricsservice"]], "WebAPI": [[17, "webapi"]], "Authorization scope": [[17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null]], "spotify": [[15, "module-minim.spotify"]], "Spotify": [[15, "id1"], [28, "spotify"]], "tidal": [[18, "module-minim.tidal"]], "TIDAL": [[18, "id1"], [28, "tidal"]], "User authentication and authorization scope": [[20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null]], "User authentication, authorization scope, and\n subscription": [[20, null], [20, null], [20, null], [20, null], [20, null]], "User authentication and subscription": [[20, null]], "Minim": [[25, "minim"]], "levenshtein_ratio": [[24, "levenshtein-ratio"]], "Getting Started": [[26, "getting-started"]], "Installation": [[26, "installation"]], "Usage": [[26, "usage"]], "Music service APIs": [[26, "music-service-apis"]], "iTunes Search API (minim.itunes.SearchAPI)": [[26, "itunes-search-api-minim-itunes-searchapi"]], "Private Qobuz API (minim.qobuz.PrivateAPI)": [[26, "private-qobuz-api-minim-qobuz-privateapi"]], "Private Spotify Lyrics Service (minim.spotify.PrivateLyricsService)": [[26, "private-spotify-lyrics-service-minim-spotify-privatelyricsservice"]], "Spotify Web API (minim.spotify.WebAPI)": [[26, "spotify-web-api-minim-spotify-webapi"]], "TIDAL API (minim.tidal.API)": [[26, "tidal-api-minim-tidal-api"]], "Private TIDAL API (minim.tidal.PrivateAPI)": [[26, "private-tidal-api-minim-tidal-privateapi"]], "Examples": [[26, "examples"], [26, "id9"]], "Searching for artists": [[26, "searching-for-artists"]], "iTunes Search API": [[26, "itunes-search-api"], [26, "id1"]], "Private Qobuz API": [[26, "private-qobuz-api"], [26, "id2"], [26, "id6"]], "Spotify Web API": [[26, "spotify-web-api"], [26, "id3"], [26, "id7"]], "TIDAL API": [[26, "tidal-api"], [26, "id4"]], "Private TIDAL API": [[26, "private-tidal-api"], [26, "id5"], [26, "id8"]], "Searching for tracks": [[26, "searching-for-tracks"]], "Creating, modifying, and deleting a personal playlist": [[26, "creating-modifying-and-deleting-a-personal-playlist"]], "Audio file handlers": [[26, "audio-file-handlers"]], "Loading and editing audio files": [[26, "loading-and-editing-audio-files"]], "Converting between audio formats": [[26, "converting-between-audio-formats"]], "Getting Recommendations": [[28, "getting-recommendations"]], "Editing Audio Metadata": [[27, "editing-audio-metadata"]], "Setup": [[27, "setup"]], "Instantiating API clients": [[27, "instantiating-api-clients"]], "Finding audio files": [[27, "finding-audio-files"]], "Defining helper functions": [[27, "defining-helper-functions"]], "Converting and tagging an audio file with no metadata": [[27, "converting-and-tagging-an-audio-file-with-no-metadata"]], "Tagging an audio file with existing metadata": [[27, "tagging-an-audio-file-with-existing-metadata"]], "Transferring Music Libraries": [[29, "transferring-music-libraries"]], "Prerequisites": [[29, "prerequisites"]], "Moving playlists": [[29, "moving-playlists"]], "From Qobuz": [[29, "from-qobuz"], [29, "id4"]], "To Spotify": [[29, "to-spotify"], [29, "id3"], [29, "id5"], [29, "id12"]], "To TIDAL": [[29, "to-tidal"], [29, "id1"], [29, "id6"], [29, "id9"]], "From Spotify": [[29, "from-spotify"], [29, "id7"]], "To Qobuz": [[29, "to-qobuz"], [29, "id2"], [29, "id8"], [29, "id11"]], "From TIDAL": [[29, "from-tidal"], [29, "id10"]], "Synchronizing favorites": [[29, "synchronizing-favorites"]]}, "indexentries": {"minim": [[1, "module-minim"]], "module": [[1, "module-minim"], [2, "module-minim.audio"], [9, "module-minim.discogs"], [11, "module-minim.itunes"], [13, "module-minim.qobuz"], [15, "module-minim.spotify"], [18, "module-minim.tidal"], [21, "module-minim.utility"]], "minim.audio": [[2, "module-minim.audio"]], "audio (class in minim.audio)": [[3, "minim.audio.Audio"]], "convert() (minim.audio.audio method)": [[3, "minim.audio.Audio.convert"]], "set_metadata_using_itunes() (minim.audio.audio method)": [[3, "minim.audio.Audio.set_metadata_using_itunes"]], "set_metadata_using_qobuz() (minim.audio.audio method)": [[3, "minim.audio.Audio.set_metadata_using_qobuz"]], "set_metadata_using_spotify() (minim.audio.audio method)": [[3, "minim.audio.Audio.set_metadata_using_spotify"]], "set_metadata_using_tidal() (minim.audio.audio method)": [[3, "minim.audio.Audio.set_metadata_using_tidal"]], "flacaudio (class in minim.audio)": [[4, "minim.audio.FLACAudio"]], "convert() (minim.audio.flacaudio method)": [[4, "minim.audio.FLACAudio.convert"]], "set_metadata_using_itunes() (minim.audio.flacaudio method)": [[4, "minim.audio.FLACAudio.set_metadata_using_itunes"]], "set_metadata_using_qobuz() (minim.audio.flacaudio method)": [[4, "minim.audio.FLACAudio.set_metadata_using_qobuz"]], "set_metadata_using_spotify() (minim.audio.flacaudio method)": [[4, "minim.audio.FLACAudio.set_metadata_using_spotify"]], "set_metadata_using_tidal() (minim.audio.flacaudio method)": [[4, "minim.audio.FLACAudio.set_metadata_using_tidal"]], "write_metadata() (minim.audio.flacaudio method)": [[4, "minim.audio.FLACAudio.write_metadata"]], "mp3audio (class in minim.audio)": [[5, "minim.audio.MP3Audio"]], "convert() (minim.audio.mp3audio method)": [[5, "minim.audio.MP3Audio.convert"]], "set_metadata_using_itunes() (minim.audio.mp3audio method)": [[5, "minim.audio.MP3Audio.set_metadata_using_itunes"]], "set_metadata_using_qobuz() (minim.audio.mp3audio method)": [[5, "minim.audio.MP3Audio.set_metadata_using_qobuz"]], "set_metadata_using_spotify() (minim.audio.mp3audio method)": [[5, "minim.audio.MP3Audio.set_metadata_using_spotify"]], "set_metadata_using_tidal() (minim.audio.mp3audio method)": [[5, "minim.audio.MP3Audio.set_metadata_using_tidal"]], "write_metadata() (minim.audio.mp3audio method)": [[5, "minim.audio.MP3Audio.write_metadata"]], "mp4audio (class in minim.audio)": [[6, "minim.audio.MP4Audio"]], "convert() (minim.audio.mp4audio method)": [[6, "minim.audio.MP4Audio.convert"]], "set_metadata_using_itunes() (minim.audio.mp4audio method)": [[6, "minim.audio.MP4Audio.set_metadata_using_itunes"]], "set_metadata_using_qobuz() (minim.audio.mp4audio method)": [[6, "minim.audio.MP4Audio.set_metadata_using_qobuz"]], "set_metadata_using_spotify() (minim.audio.mp4audio method)": [[6, "minim.audio.MP4Audio.set_metadata_using_spotify"]], "set_metadata_using_tidal() (minim.audio.mp4audio method)": [[6, "minim.audio.MP4Audio.set_metadata_using_tidal"]], "write_metadata() (minim.audio.mp4audio method)": [[6, "minim.audio.MP4Audio.write_metadata"]], "oggaudio (class in minim.audio)": [[7, "minim.audio.OggAudio"]], "convert() (minim.audio.oggaudio method)": [[7, "minim.audio.OggAudio.convert"]], "set_metadata_using_itunes() (minim.audio.oggaudio method)": [[7, "minim.audio.OggAudio.set_metadata_using_itunes"]], "set_metadata_using_qobuz() (minim.audio.oggaudio method)": [[7, "minim.audio.OggAudio.set_metadata_using_qobuz"]], "set_metadata_using_spotify() (minim.audio.oggaudio method)": [[7, "minim.audio.OggAudio.set_metadata_using_spotify"]], "set_metadata_using_tidal() (minim.audio.oggaudio method)": [[7, "minim.audio.OggAudio.set_metadata_using_tidal"]], "write_metadata() (minim.audio.oggaudio method)": [[7, "minim.audio.OggAudio.write_metadata"]], "waveaudio (class in minim.audio)": [[8, "minim.audio.WAVEAudio"]], "convert() (minim.audio.waveaudio method)": [[8, "minim.audio.WAVEAudio.convert"]], "set_metadata_using_itunes() (minim.audio.waveaudio method)": [[8, "minim.audio.WAVEAudio.set_metadata_using_itunes"]], "set_metadata_using_qobuz() (minim.audio.waveaudio method)": [[8, "minim.audio.WAVEAudio.set_metadata_using_qobuz"]], "set_metadata_using_spotify() (minim.audio.waveaudio method)": [[8, "minim.audio.WAVEAudio.set_metadata_using_spotify"]], "set_metadata_using_tidal() (minim.audio.waveaudio method)": [[8, "minim.audio.WAVEAudio.set_metadata_using_tidal"]], "write_metadata() (minim.audio.waveaudio method)": [[8, "minim.audio.WAVEAudio.write_metadata"]], "minim.discogs": [[9, "module-minim.discogs"]], "api (class in minim.discogs)": [[10, "minim.discogs.API"]], "edit_profile() (minim.discogs.api method)": [[10, "minim.discogs.API.edit_profile"]], "get_identity() (minim.discogs.api method)": [[10, "minim.discogs.API.get_identity"]], "get_profile() (minim.discogs.api method)": [[10, "minim.discogs.API.get_profile"]], "get_user_contributions() (minim.discogs.api method)": [[10, "minim.discogs.API.get_user_contributions"]], "get_user_submissions() (minim.discogs.api method)": [[10, "minim.discogs.API.get_user_submissions"]], "set_access_token() (minim.discogs.api method)": [[10, "minim.discogs.API.set_access_token"]], "set_flow() (minim.discogs.api method)": [[10, "minim.discogs.API.set_flow"]], "minim.itunes": [[11, "module-minim.itunes"]], "searchapi (class in minim.itunes)": [[12, "minim.itunes.SearchAPI"]], "lookup() (minim.itunes.searchapi method)": [[12, "minim.itunes.SearchAPI.lookup"]], "search() (minim.itunes.searchapi method)": [[12, "minim.itunes.SearchAPI.search"]], "minim.qobuz": [[13, "module-minim.qobuz"]], "privateapi (class in minim.qobuz)": [[14, "minim.qobuz.PrivateAPI"]], "add_playlist_tracks() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.add_playlist_tracks"]], "create_playlist() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.create_playlist"]], "delete_playlist() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.delete_playlist"]], "delete_playlist_tracks() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.delete_playlist_tracks"]], "favorite_items() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.favorite_items"]], "favorite_playlist() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.favorite_playlist"]], "get_album() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_album"]], "get_artist() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_artist"]], "get_collection_streams() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_collection_streams"]], "get_curated_tracks() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_curated_tracks"]], "get_favorites() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_favorites"]], "get_featured_albums() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_featured_albums"]], "get_featured_playlists() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_featured_playlists"]], "get_label() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_label"]], "get_playlist() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_playlist"]], "get_profile() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_profile"]], "get_purchases() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_purchases"]], "get_track() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_track"]], "get_track_file_url() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_track_file_url"]], "get_track_performers() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_track_performers"]], "get_track_stream() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_track_stream"]], "get_user_playlists() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.get_user_playlists"]], "move_playlist_tracks() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.move_playlist_tracks"]], "search() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.search"]], "set_auth_token() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.set_auth_token"]], "set_flow() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.set_flow"]], "unfavorite_items() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.unfavorite_items"]], "unfavorite_playlist() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.unfavorite_playlist"]], "update_playlist() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.update_playlist"]], "update_playlist_position() (minim.qobuz.privateapi method)": [[14, "minim.qobuz.PrivateAPI.update_playlist_position"]], "minim.spotify": [[15, "module-minim.spotify"]], "privatelyricsservice (class in minim.spotify)": [[16, "minim.spotify.PrivateLyricsService"]], "get_lyrics() (minim.spotify.privatelyricsservice method)": [[16, "minim.spotify.PrivateLyricsService.get_lyrics"]], "set_access_token() (minim.spotify.privatelyricsservice method)": [[16, "minim.spotify.PrivateLyricsService.set_access_token"]], "set_sp_dc() (minim.spotify.privatelyricsservice method)": [[16, "minim.spotify.PrivateLyricsService.set_sp_dc"]], "webapi (class in minim.spotify)": [[17, "minim.spotify.WebAPI"]], "add_playlist_cover_image() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.add_playlist_cover_image"]], "add_playlist_items() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.add_playlist_items"]], "add_to_queue() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.add_to_queue"]], "change_playlist_details() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.change_playlist_details"]], "check_followed_people() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.check_followed_people"]], "check_playlist_followers() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.check_playlist_followers"]], "check_saved_albums() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.check_saved_albums"]], "check_saved_audiobooks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.check_saved_audiobooks"]], "check_saved_episodes() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.check_saved_episodes"]], "check_saved_shows() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.check_saved_shows"]], "check_saved_tracks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.check_saved_tracks"]], "create_playlist() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.create_playlist"]], "follow_people() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.follow_people"]], "follow_playlist() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.follow_playlist"]], "get_album() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_album"]], "get_album_tracks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_album_tracks"]], "get_albums() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_albums"]], "get_artist() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_artist"]], "get_artist_albums() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_artist_albums"]], "get_artist_top_tracks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_artist_top_tracks"]], "get_artists() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_artists"]], "get_audiobook() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_audiobook"]], "get_audiobook_chapters() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_audiobook_chapters"]], "get_audiobooks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_audiobooks"]], "get_categories() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_categories"]], "get_category() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_category"]], "get_category_playlists() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_category_playlists"]], "get_chapter() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_chapter"]], "get_chapters() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_chapters"]], "get_currently_playing() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_currently_playing"]], "get_devices() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_devices"]], "get_episode() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_episode"]], "get_episodes() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_episodes"]], "get_featured_playlists() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_featured_playlists"]], "get_followed_artists() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_followed_artists"]], "get_genre_seeds() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_genre_seeds"]], "get_markets() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_markets"]], "get_new_albums() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_new_albums"]], "get_playback_state() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_playback_state"]], "get_playlist() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_playlist"]], "get_playlist_cover_image() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_playlist_cover_image"]], "get_playlist_items() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_playlist_items"]], "get_playlists() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_playlists"]], "get_profile() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_profile"]], "get_queue() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_queue"]], "get_recently_played() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_recently_played"]], "get_recommendations() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_recommendations"]], "get_related_artists() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_related_artists"]], "get_saved_albums() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_saved_albums"]], "get_saved_audiobooks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_saved_audiobooks"]], "get_saved_episodes() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_saved_episodes"]], "get_saved_shows() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_saved_shows"]], "get_saved_tracks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_saved_tracks"]], "get_scopes() (minim.spotify.webapi class method)": [[17, "minim.spotify.WebAPI.get_scopes"]], "get_show() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_show"]], "get_show_episodes() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_show_episodes"]], "get_shows() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_shows"]], "get_top_items() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_top_items"]], "get_track() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_track"]], "get_track_audio_analysis() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_track_audio_analysis"]], "get_track_audio_features() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_track_audio_features"]], "get_tracks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_tracks"]], "get_tracks_audio_features() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_tracks_audio_features"]], "get_user_playlists() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_user_playlists"]], "get_user_profile() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.get_user_profile"]], "pause_playback() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.pause_playback"]], "remove_playlist_items() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.remove_playlist_items"]], "remove_saved_albums() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.remove_saved_albums"]], "remove_saved_audiobooks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.remove_saved_audiobooks"]], "remove_saved_episodes() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.remove_saved_episodes"]], "remove_saved_shows() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.remove_saved_shows"]], "remove_saved_tracks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.remove_saved_tracks"]], "save_albums() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.save_albums"]], "save_audiobooks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.save_audiobooks"]], "save_episodes() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.save_episodes"]], "save_shows() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.save_shows"]], "save_tracks() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.save_tracks"]], "search() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.search"]], "seek_to_position() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.seek_to_position"]], "set_access_token() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.set_access_token"]], "set_flow() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.set_flow"]], "set_playback_volume() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.set_playback_volume"]], "set_repeat_mode() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.set_repeat_mode"]], "skip_to_next() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.skip_to_next"]], "skip_to_previous() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.skip_to_previous"]], "start_playback() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.start_playback"]], "toggle_playback_shuffle() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.toggle_playback_shuffle"]], "transfer_playback() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.transfer_playback"]], "unfollow_people() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.unfollow_people"]], "unfollow_playlist() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.unfollow_playlist"]], "update_playlist_items() (minim.spotify.webapi method)": [[17, "minim.spotify.WebAPI.update_playlist_items"]], "minim.tidal": [[18, "module-minim.tidal"]], "api (class in minim.tidal)": [[19, "minim.tidal.API"]], "get_album() (minim.tidal.api method)": [[19, "minim.tidal.API.get_album"]], "get_album_by_barcode_id() (minim.tidal.api method)": [[19, "minim.tidal.API.get_album_by_barcode_id"]], "get_album_items() (minim.tidal.api method)": [[19, "minim.tidal.API.get_album_items"]], "get_albums() (minim.tidal.api method)": [[19, "minim.tidal.API.get_albums"]], "get_artist() (minim.tidal.api method)": [[19, "minim.tidal.API.get_artist"]], "get_artist_albums() (minim.tidal.api method)": [[19, "minim.tidal.API.get_artist_albums"]], "get_artists() (minim.tidal.api method)": [[19, "minim.tidal.API.get_artists"]], "get_similar_albums() (minim.tidal.api method)": [[19, "minim.tidal.API.get_similar_albums"]], "get_similar_artists() (minim.tidal.api method)": [[19, "minim.tidal.API.get_similar_artists"]], "get_similar_tracks() (minim.tidal.api method)": [[19, "minim.tidal.API.get_similar_tracks"]], "get_track() (minim.tidal.api method)": [[19, "minim.tidal.API.get_track"]], "get_track_by_isrc() (minim.tidal.api method)": [[19, "minim.tidal.API.get_track_by_isrc"]], "get_tracks() (minim.tidal.api method)": [[19, "minim.tidal.API.get_tracks"]], "get_video() (minim.tidal.api method)": [[19, "minim.tidal.API.get_video"]], "get_videos() (minim.tidal.api method)": [[19, "minim.tidal.API.get_videos"]], "search() (minim.tidal.api method)": [[19, "minim.tidal.API.search"]], "set_access_token() (minim.tidal.api method)": [[19, "minim.tidal.API.set_access_token"]], "set_flow() (minim.tidal.api method)": [[19, "minim.tidal.API.set_flow"]], "privateapi (class in minim.tidal)": [[20, "minim.tidal.PrivateAPI"]], "add_playlist_items() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.add_playlist_items"]], "block_artist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.block_artist"]], "block_user() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.block_user"]], "create_playlist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.create_playlist"]], "create_playlist_folder() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.create_playlist_folder"]], "delete_playlist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.delete_playlist"]], "delete_playlist_folder() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.delete_playlist_folder"]], "delete_playlist_item() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.delete_playlist_item"]], "favorite_albums() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.favorite_albums"]], "favorite_artists() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.favorite_artists"]], "favorite_mixes() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.favorite_mixes"]], "favorite_playlists() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.favorite_playlists"]], "favorite_tracks() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.favorite_tracks"]], "favorite_videos() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.favorite_videos"]], "follow_user() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.follow_user"]], "get_album() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_album"]], "get_album_credits() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_album_credits"]], "get_album_items() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_album_items"]], "get_album_page() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_album_page"]], "get_album_review() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_album_review"]], "get_artist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist"]], "get_artist_albums() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist_albums"]], "get_artist_biography() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist_biography"]], "get_artist_links() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist_links"]], "get_artist_mix_id() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist_mix_id"]], "get_artist_page() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist_page"]], "get_artist_radio() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist_radio"]], "get_artist_top_tracks() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist_top_tracks"]], "get_artist_videos() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_artist_videos"]], "get_blocked_artists() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_blocked_artists"]], "get_blocked_users() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_blocked_users"]], "get_collection_streams() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_collection_streams"]], "get_country_code() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_country_code"]], "get_favorite_albums() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_favorite_albums"]], "get_favorite_artists() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_favorite_artists"]], "get_favorite_ids() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_favorite_ids"]], "get_favorite_mixes() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_favorite_mixes"]], "get_favorite_tracks() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_favorite_tracks"]], "get_favorite_videos() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_favorite_videos"]], "get_image() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_image"]], "get_mix_items() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_mix_items"]], "get_mix_page() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_mix_page"]], "get_personal_playlist_folders() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_personal_playlist_folders"]], "get_personal_playlists() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_personal_playlists"]], "get_playlist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_playlist"]], "get_playlist_etag() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_playlist_etag"]], "get_playlist_items() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_playlist_items"]], "get_playlist_recommendations() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_playlist_recommendations"]], "get_profile() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_profile"]], "get_session() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_session"]], "get_similar_albums() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_similar_albums"]], "get_similar_artists() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_similar_artists"]], "get_track() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track"]], "get_track_composers() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track_composers"]], "get_track_contributors() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track_contributors"]], "get_track_credits() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track_credits"]], "get_track_lyrics() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track_lyrics"]], "get_track_mix_id() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track_mix_id"]], "get_track_playback_info() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track_playback_info"]], "get_track_recommendations() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track_recommendations"]], "get_track_stream() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_track_stream"]], "get_user_followers() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_user_followers"]], "get_user_following() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_user_following"]], "get_user_playlist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_user_playlist"]], "get_user_playlists() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_user_playlists"]], "get_user_profile() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_user_profile"]], "get_video() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_video"]], "get_video_page() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_video_page"]], "get_video_playback_info() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_video_playback_info"]], "get_video_stream() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.get_video_stream"]], "move_playlist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.move_playlist"]], "move_playlist_item() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.move_playlist_item"]], "search() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.search"]], "set_access_token() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.set_access_token"]], "set_flow() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.set_flow"]], "set_playlist_privacy() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.set_playlist_privacy"]], "unblock_artist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unblock_artist"]], "unblock_user() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unblock_user"]], "unfavorite_albums() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unfavorite_albums"]], "unfavorite_artists() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unfavorite_artists"]], "unfavorite_mixes() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unfavorite_mixes"]], "unfavorite_playlist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unfavorite_playlist"]], "unfavorite_tracks() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unfavorite_tracks"]], "unfavorite_videos() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unfavorite_videos"]], "unfollow_user() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.unfollow_user"]], "update_playlist() (minim.tidal.privateapi method)": [[20, "minim.tidal.PrivateAPI.update_playlist"]], "minim.utility": [[21, "module-minim.utility"]], "format_multivalue() (in module minim.utility)": [[22, "minim.utility.format_multivalue"]], "gestalt_ratio() (in module minim.utility)": [[23, "minim.utility.gestalt_ratio"]], "levenshtein_ratio() (in module minim.utility)": [[24, "minim.utility.levenshtein_ratio"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["api", "api/minim", "api/minim.audio", "api/minim.audio.Audio", "api/minim.audio.FLACAudio", "api/minim.audio.MP3Audio", "api/minim.audio.MP4Audio", "api/minim.audio.OggAudio", "api/minim.audio.WAVEAudio", "api/minim.discogs", "api/minim.discogs.API", "api/minim.itunes", "api/minim.itunes.SearchAPI", "api/minim.qobuz", "api/minim.qobuz.PrivateAPI", "api/minim.spotify", "api/minim.spotify.PrivateLyricsService", "api/minim.spotify.WebAPI", "api/minim.tidal", "api/minim.tidal.API", "api/minim.tidal.PrivateAPI", "api/minim.utility", "api/minim.utility.format_multivalue", "api/minim.utility.gestalt_ratio", "api/minim.utility.levenshtein_ratio", "index", "notebooks/getting_started", "notebooks/user_guide/editing_audio_metadata", "notebooks/user_guide/getting_recommendations", "notebooks/user_guide/transferring_music_libraries", "user_guide"], "filenames": ["api.rst", "api/minim.rst", "api/minim.audio.rst", "api/minim.audio.Audio.rst", "api/minim.audio.FLACAudio.rst", "api/minim.audio.MP3Audio.rst", "api/minim.audio.MP4Audio.rst", "api/minim.audio.OggAudio.rst", "api/minim.audio.WAVEAudio.rst", "api/minim.discogs.rst", "api/minim.discogs.API.rst", "api/minim.itunes.rst", "api/minim.itunes.SearchAPI.rst", "api/minim.qobuz.rst", "api/minim.qobuz.PrivateAPI.rst", "api/minim.spotify.rst", "api/minim.spotify.PrivateLyricsService.rst", "api/minim.spotify.WebAPI.rst", "api/minim.tidal.rst", "api/minim.tidal.API.rst", "api/minim.tidal.PrivateAPI.rst", "api/minim.utility.rst", "api/minim.utility.format_multivalue.rst", "api/minim.utility.gestalt_ratio.rst", "api/minim.utility.levenshtein_ratio.rst", "index.rst", "notebooks/getting_started.ipynb", "notebooks/user_guide/editing_audio_metadata.ipynb", "notebooks/user_guide/getting_recommendations.ipynb", "notebooks/user_guide/transferring_music_libraries.ipynb", "user_guide.rst"], "titles": ["<no title>", "minim", "audio", "Audio", "FLACAudio", "MP3Audio", "MP4Audio", "OggAudio", "WAVEAudio", "discogs", "API", "itunes", "SearchAPI", "qobuz", "PrivateAPI", "spotify", "PrivateLyricsService", "WebAPI", "tidal", "API", "PrivateAPI", "utility", "format_multivalue", "gestalt_ratio", "levenshtein_ratio", "Minim", "Getting Started", "Editing Audio Metadata", "Getting Recommendations", "Transferring Music Libraries", "User Guide"], "terms": {"thi": [2, 3, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 26, 27, 28, 29], "modul": [2, 3, 11, 13, 15, 18, 21, 26], "provid": [2, 3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 22, 26, 27, 29], "conveni": [2, 14, 20, 27], "python": [2, 25, 26], "keep": [2, 17], "track": [2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 27, 28, 29], "handl": [2, 29], "metadata": [2, 3, 4, 5, 6, 7, 8, 17, 19, 20, 25, 26, 29, 30], "convert": [2, 3, 4, 5, 6, 7, 8, 25], "between": [2, 3, 4, 5, 6, 7, 8, 12, 17, 25, 29], "differ": [2, 17, 26], "format": [2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 25, 27], "class": [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 26, 27, 28, 29], "minim": [3, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16, 17, 19, 20, 22, 23, 24, 27, 28, 29], "arg": [3, 4, 5, 6, 7, 8], "kwarg": [3, 4, 5, 6, 7, 8, 17], "sourc": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 23, 24, 26, 29], "base": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 28], "object": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 27, 28], "gener": [3, 17, 27, 28, 29], "file": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 25, 28], "handler": [3, 4, 5, 6, 7, 8, 27], "subclass": 3, "specif": [3, 17, 26, 27], "contain": [3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 26, 27], "includ": [3, 10, 12, 17, 20, 27], "flacaudio": [3, 5, 6, 7, 8, 26, 27], "encod": [3, 12, 17, 20, 26], "us": [3, 4, 5, 6, 7, 8, 10, 12, 14, 15, 16, 17, 19, 20, 22, 26, 27, 28, 29], "free": [3, 29], "lossless": [3, 4, 5, 6, 7, 8, 14, 20, 26], "codec": [3, 4, 5, 6, 7, 8, 20, 26, 27], "flac": [3, 4, 5, 6, 7, 8, 14, 20, 26, 27], "mp3audio": [3, 26, 27], "store": [3, 10, 12, 14, 16, 17, 19, 20, 26, 27, 28, 29], "mpeg": 3, "layer": 3, "iii": [3, 20], "mp3": [3, 4, 5, 6, 7, 8, 14, 20, 26, 27], "mp4audio": [3, 4, 5, 7, 8, 26], "advanc": 3, "code": [3, 4, 5, 6, 7, 8, 12, 14, 17, 19, 20, 26], "aac": [3, 4, 5, 6, 7, 8, 20, 26], "appl": [3, 12, 26, 27], "alac": [3, 4, 5, 6, 7, 8, 20, 26], "4": [3, 17, 26], "part": 3, "14": [3, 26], "mp4": [3, 4, 5, 6, 7, 8, 20, 26], "m4a": [3, 4, 5, 6, 7, 8, 26], "oggaudio": [3, 26], "opu": [3, 4, 5, 6, 7, 8, 26], "vorbi": [3, 4, 5, 6, 7, 8, 26], "an": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 28], "ogg": [3, 4, 5, 6, 7, 8], "waveaudio": [3, 26], "linear": 3, "puls": 3, "lpcm": [3, 4, 5, 6, 7, 8, 26], "waveform": 3, "wave": [3, 4, 5, 6, 7, 8, 26], "can": [3, 10, 14, 16, 17, 19, 20, 25, 26, 27, 28, 29], "instanti": [3, 10, 14, 16, 17, 19, 20, 26, 28, 29], "from": [3, 4, 5, 6, 7, 8, 12, 14, 16, 17, 19, 20, 26, 27, 28], "list": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 22, 23, 24, 28], "abov": [3, 17, 26, 27, 28, 29], "examin": 3, "its": [3, 12, 14, 16, 17, 19, 20, 26, 27, 29], "extens": [3, 4, 5, 6, 7, 8, 20], "howev": [3, 10, 27, 29], "mai": [3, 17, 20, 29], "instanc": 3, "when": [3, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 29], "detect": [3, 14, 26], "fail": [3, 20], "especi": [3, 29], "combin": [3, 14, 17], "i": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 22, 23, 24, 25, 26, 27, 28, 29], "rare": 3, "seen": 3, "As": [3, 14, 16, 20, 26, 27], "alwai": [3, 27], "best": [3, 4, 5, 6, 7, 8, 14, 29], "directli": [3, 20, 27, 29], "one": [3, 16, 17, 19, 20, 26, 27], "creat": [3, 10, 12, 14, 17, 20, 27, 28, 29], "your": [3, 12, 16, 17, 20, 26, 27, 28], "ar": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 28, 29], "known": [3, 26, 27], "paramet": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 23, 24], "str": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 23, 24, 26, 27], "pattern": [3, 4, 5, 6, 7, 8, 27], "tupl": [3, 4, 5, 6, 7, 8, 14, 20, 22], "keyword": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 28], "onli": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 28, 29], "option": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26], "regular": [3, 4, 5, 6, 7, 8, 27], "express": [3, 4, 5, 6, 7, 8, 27], "search": [3, 4, 5, 6, 7, 8, 11, 12, 14, 17, 19, 20, 27, 29], "correspond": [3, 4, 5, 6, 7, 8, 17, 27, 29], "field": [3, 4, 5, 6, 7, 8, 10, 17, 22, 27], "": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 29], "valid": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20], "valu": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 22, 27], "The": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 27, 28, 29], "support": [3, 4, 5, 6, 7, 8, 12, 17, 20, 22, 26, 29], "artist": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 27, 28, 29], "titl": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 26, 27, 29], "track_numb": [3, 4, 5, 6, 7, 8, 14, 17, 26], "number": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 27, 28, 29], "exampl": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 27, 28, 29], "match": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20, 27, 29], "filenam": [3, 4, 5, 6, 7, 8, 20, 26, 27], "like": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27, 29], "taylor": [3, 4, 5, 6, 7, 8], "swift": [3, 4, 5, 6, 7, 8], "cruel": 3, "summer": 3, "d": [3, 4, 5, 6, 7, 8], "04": [3, 5, 6, 26], "man": 3, "13": [3, 12, 19], "you": [3, 4, 5, 8, 10, 12, 14, 16, 17, 20, 26, 27, 28], "need": [3, 17, 26, 27], "calm": 3, "down": [3, 17, 26], "multivalu": [3, 4, 5, 6, 7, 8, 22], "bool": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22], "determin": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 22, 27], "whether": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22], "tag": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20, 22, 26], "If": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 23, 24, 26, 27, 28], "fals": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 22, 26, 27, 28], "item": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 22, 26, 27, 28, 29], "concaten": [3, 4, 5, 6, 7, 8, 22], "separ": [3, 4, 5, 6, 7, 8, 17, 22, 27], "specifi": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27, 28], "sep": [3, 4, 5, 6, 7, 8, 22], "default": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22, 26, 27], "all": [3, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 18, 19, 20, 22, 26, 27, 29], "first": [3, 4, 5, 6, 7, 8, 12, 14, 17, 20, 22, 26, 27, 28, 29], "n": [3, 4, 5, 6, 7, 8, 26], "1": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 26, 27, 28, 29], "second": [3, 4, 5, 6, 7, 8, 20, 22, 27], "append": [3, 4, 5, 6, 7, 8, 17, 22, 29], "final": [3, 4, 5, 6, 7, 8, 22, 27, 28, 29], "attribut": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 28], "album": [3, 4, 5, 6, 7, 8, 12, 14, 17, 19, 20, 26, 27, 28, 29], "album_artist": 3, "artwork": [3, 4, 5, 6, 7, 8, 27], "byte": [3, 14, 17, 20, 27], "represent": 3, "url": [3, 10, 12, 14, 16, 17, 19, 20, 26], "lead": 3, "cover": [3, 4, 5, 6, 7, 8, 17, 20, 26, 27, 28], "bit_depth": [3, 14, 26], "int": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20], "bit": [3, 4, 5, 6, 7, 8, 14, 20, 26, 27], "per": [3, 10], "sampl": [3, 26, 27, 29], "bitrat": [3, 14, 26, 27], "b": [3, 4, 5, 6, 7, 8, 26], "channel_count": 3, "channel": [3, 27], "comment": [3, 4, 5, 6, 7, 8, 27], "compil": [3, 4, 5, 6, 7, 8, 17, 20, 27], "song": [3, 12, 14, 17, 26], "variou": [3, 29], "compos": [3, 4, 5, 6, 7, 8, 14, 20, 26, 27], "lyric": [3, 4, 5, 6, 7, 8, 15, 16, 20, 27], "writer": [3, 14], "copyright": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20, 26, 27], "inform": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 26, 27, 28, 29], "date": [3, 14, 17, 20, 27], "releas": [3, 10, 14, 17, 26], "disc_numb": [3, 17, 26], "disc": [3, 4, 5, 6, 7, 8, 27], "disc_count": 3, "total": [3, 14, 17, 19, 20, 26, 29], "genr": [3, 10, 14, 17, 26, 27, 28], "isrc": [3, 14, 17, 19, 20, 26, 27, 29], "intern": 3, "standard": 3, "record": [3, 12, 14, 26], "sample_r": 3, "rate": [3, 10, 27], "hz": [3, 26], "tempo": [3, 4, 5, 6, 7, 8, 17, 27], "beat": [3, 17], "minut": 3, "bpm": [3, 26], "track_count": [3, 14], "method": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 27], "none": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 26, 27], "preserv": [3, 4, 5, 6, 7, 8], "true": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27, 29], "current": [3, 4, 5, 6, 7, 8, 14, 17, 20, 26, 29], "anoth": [3, 4, 5, 6, 7, 8, 10, 27, 28], "requir": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26], "ffmpeg": [3, 4, 5, 6, 7, 8, 26], "automat": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27], "updat": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 25, 26, 27, 28, 29], "reflect": [3, 4, 5, 6, 7, 8], "new": [3, 4, 5, 6, 7, 8, 14, 16, 17, 19, 20, 26, 27, 28, 29], "For": [3, 4, 5, 6, 7, 8, 10, 12, 14, 17, 19, 20, 26, 27, 29], "chang": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27], "mp4a": [3, 4, 5, 6, 7, 8], "lossi": [3, 4, 5, 6, 7, 8], "wav": [3, 4, 5, 6, 7, 8, 26], "which": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27, 28], "command": [3, 4, 5, 6, 7, 8, 26], "line": [3, 4, 5, 6, 7, 8, 16, 28], "exclud": [3, 4, 5, 6, 7, 8, 17], "input": [3, 4, 5, 6, 7, 8], "output": [3, 4, 5, 6, 7, 8, 28], "y": [3, 4, 5, 6, 7, 8, 16, 17, 19, 20], "flag": [3, 4, 5, 6, 7, 8, 12], "overwrit": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 27], "c": [3, 4, 5, 6, 7, 8, 26], "v": [3, 4, 5, 6, 7, 8], "copi": [3, 4, 5, 6, 7, 8, 20, 26], "argument": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27, 28], "art": [3, 4, 5, 6, 7, 8, 20, 27, 28], "256k": [3, 4, 5, 6, 7, 8], "libfdk_aac": [3, 4, 5, 6, 7, 8], "wa": [3, 4, 5, 6, 7, 8, 17, 20], "enabl": [3, 4, 5, 6, 7, 8, 10, 14, 17], "libfdk": [3, 4, 5, 6, 7, 8], "libmp3lam": [3, 4, 5, 6, 7, 8], "q": [3, 4, 5, 6, 7, 8, 17], "0": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20, 26, 27, 28, 29], "libopu": [3, 4, 5, 6, 7, 8], "vn": [3, 4, 5, 6, 7, 8, 26], "strict": [3, 4, 5, 6, 7, 8, 14, 26], "experiment": [3, 4, 5, 6, 7, 8], "libvorbi": [3, 4, 5, 6, 7, 8], "pcm_s16le": [3, 4, 5, 6, 7, 8], "pcm_s24le": [3, 4, 5, 6, 7, 8], "depth": [3, 4, 5, 6, 7, 8, 14, 26, 27], "origin": [3, 4, 5, 6, 7, 8, 17, 27], "appropri": [3, 4, 5, 6, 7, 8, 28], "kept": [3, 4, 5, 6, 7, 8, 17], "set_metadata_using_itun": [3, 4, 5, 6, 7, 8, 27], "data": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26, 27, 28, 29], "dict": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 27], "ani": [3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 17, 19, 20, 22], "album_data": [3, 4, 5, 6, 7, 8, 27], "artwork_s": [3, 4, 5, 6, 7, 8], "1400": [3, 4, 5, 6, 7, 8], "artwork_format": [3, 4, 5, 6, 7, 8], "jpg": [3, 4, 5, 6, 7, 8, 20, 26, 28], "popul": [3, 4, 5, 6, 7, 8, 27], "retriev": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26, 27], "itun": [3, 4, 5, 6, 7, 8, 12, 25, 27], "api": [3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 17, 18, 20, 25, 28, 29], "about": [3, 4, 5, 6, 7, 8, 10, 14, 17, 20, 26, 27, 28, 29], "json": [3, 4, 5, 6, 7, 8, 10, 12, 17, 27], "obtain": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26], "via": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26, 27], "searchapi": [3, 4, 5, 6, 7, 8, 27], "lookup": [3, 4, 5, 6, 7, 8, 12, 27, 29], "unavail": [3, 4, 5, 6, 7, 8, 17, 26], "resiz": [3, 4, 5, 6, 7, 8], "size": [3, 4, 5, 6, 7, 8, 17, 19, 20, 26, 27], "pixel": [3, 4, 5, 6, 7, 8, 20], "raw": [3, 4, 5, 6, 7, 8], "uncompress": [3, 4, 5, 6, 7, 8], "high": [3, 4, 5, 6, 7, 8, 14, 20], "resolut": [3, 4, 5, 6, 7, 8, 14, 20], "imag": [3, 4, 5, 6, 7, 8, 10, 14, 17, 19, 20, 26], "regardless": [3, 4, 5, 6, 7, 8], "png": [3, 4, 5, 6, 7, 8], "take": [3, 4, 5, 6, 7, 8, 10, 17, 27], "preced": [3, 4, 5, 6, 7, 8], "exist": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20], "should": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 22], "overwritten": [3, 4, 5, 6, 7, 8], "set_metadata_using_spotifi": [3, 4, 5, 6, 7, 8, 27], "audio_featur": [3, 4, 5, 6, 7, 8, 17, 27], "spotifi": [3, 4, 5, 6, 7, 8, 16, 17, 20, 25, 27], "web": [3, 4, 5, 6, 7, 8, 10, 14, 15, 16, 17, 20, 27, 28, 29], "servic": [3, 4, 5, 6, 7, 8, 15, 16, 17, 20, 25, 27, 29], "webapi": [3, 4, 5, 6, 7, 8, 27, 28, 29], "get_track": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20], "featur": [3, 4, 5, 6, 7, 8, 14, 17, 27, 29], "get_track_audio_featur": [3, 4, 5, 6, 7, 8, 17, 27], "time": [3, 4, 5, 6, 7, 8, 10, 14, 16, 17, 19, 20, 26, 27], "sync": [3, 4, 5, 6, 7, 8, 16, 20], "privatelyricsservic": [3, 4, 5, 6, 7, 8], "get_lyr": [3, 4, 5, 6, 7, 8, 16], "set_metadata_using_tid": [3, 4, 5, 6, 7, 8, 27], "1280": [3, 4, 5, 6, 7, 8], "tidal": [3, 4, 5, 6, 7, 8, 14, 19, 20, 25, 27], "privateapi": [3, 4, 5, 6, 7, 8, 27, 29], "get_album": [3, 4, 5, 6, 7, 8, 14, 17, 19, 20], "maximum": [3, 4, 5, 6, 7, 8, 14, 17, 20], "80": [3, 4, 5, 6, 7, 8], "get_track_compos": [3, 4, 5, 6, 7, 8, 20, 27], "get_track_contributor": [3, 4, 5, 6, 7, 8, 20], "get_track_credit": [3, 4, 5, 6, 7, 8, 20], "songwrit": [3, 4, 5, 6, 7, 8, 20, 26, 27], "credit": [3, 4, 5, 6, 7, 8, 14, 20, 27], "get_track_lyr": [3, 4, 5, 6, 7, 8, 20, 27], "descript": [3, 4, 5, 6, 7, 8, 10, 14, 17, 20, 26, 29], "set_metadata_using_qobuz": [3, 4, 5, 6, 7, 8], "larg": [3, 4, 5, 6, 7, 8, 14, 17, 20, 26], "qobuz": [3, 4, 5, 6, 7, 8, 14, 25], "small": [3, 4, 5, 6, 7, 8, 14, 17, 20, 26], "thumbnail": [3, 4, 5, 6, 7, 8, 14, 26], "audio": [4, 5, 6, 7, 8, 12, 14, 17, 20, 25, 30], "_vorbiscom": [4, 7], "full": [4, 5, 6, 7, 8, 10, 14, 17, 20], "see": [4, 5, 6, 7, 8, 10, 12, 17, 19, 20, 27, 28, 29], "pathlib": [4, 5, 6, 7, 8, 20, 26, 27], "path": [4, 5, 6, 7, 8, 14, 20, 26, 27], "fearless": 4, "03": [4, 7, 27], "love": 4, "stori": [4, 6, 14, 28], "06": [4, 5, 7, 8, 26, 27], "belong": 4, "me": [4, 8, 26], "write_metadata": [4, 5, 6, 7, 8, 26, 27], "write": [4, 5, 6, 7, 8, 26, 27], "_id3": [5, 8], "red": 5, "knew": 5, "were": [5, 17], "troubl": [5, 28], "22": [5, 20], "mine": 6, "speak": 6, "now": [6, 26, 27], "07": [6, 27], "u": [6, 12, 17, 19, 20, 26, 27, 28], "blank": 7, "space": [7, 12], "style": [7, 10, 28], "shake": 7, "It": [7, 10, 12, 16, 17, 19, 20], "off": [7, 17], "don": [8, 26, 27, 28], "t": [8, 17, 26, 27, 28], "blame": 8, "05": [8, 20, 26], "delic": 8, "look": [8, 12, 20, 27, 29], "what": [8, 17], "made": [8, 10, 17, 26, 28], "do": [8, 26, 27, 29], "complet": [11, 14, 15, 17, 18, 27], "implement": [10, 11, 13, 15, 17, 18, 26, 29], "endpoint": [10, 11, 14, 15, 16, 17, 18, 19, 20, 26, 27], "client": [10, 12, 14, 16, 17, 19, 20, 26, 28, 29], "allow": [12, 14, 17, 20, 27, 29], "varieti": 12, "content": [12, 14, 17, 19, 20], "app": [12, 14, 17, 26], "ibook": 12, "movi": 12, "podcast": [12, 17], "music": [12, 17, 20, 25, 27, 28, 30], "video": [10, 12, 19, 20], "audiobook": [12, 17], "tv": [12, 20, 26], "show": [12, 17, 26, 27], "within": [12, 17], "mac": 12, "also": [10, 12, 14, 16, 17, 19, 20, 26, 27], "id": [10, 12, 14, 16, 17, 19, 20, 26, 27, 28, 29], "request": [10, 12, 14, 16, 17, 19, 20, 26], "map": 12, "librari": [12, 17, 25, 27, 28, 30], "digit": 12, "catalog": [12, 14, 17, 19, 20, 27, 29], "more": [10, 12, 17, 18, 19, 20, 28, 29], "document": [12, 14, 16, 20], "api_url": [10, 12, 14, 17, 19, 20], "term": [12, 14, 16, 20], "countri": [10, 12, 14, 17, 19, 20, 26], "media": [12, 14, 20, 26, 29], "entiti": [12, 17, 20, 26, 29], "limit": [10, 12, 14, 17, 19, 20, 26, 28, 29], "lang": 12, "version": [12, 14, 20, 26, 29], "explicit": [12, 17, 20, 26], "text": [12, 16, 17, 20], "string": [12, 14, 17, 23, 24, 27], "replac": [12, 17, 26, 27], "plu": [12, 20, 26], "charact": [12, 19], "except": [12, 22, 27, 29], "letter": 12, "period": [12, 14], "dash": 12, "underscor": [12, 17], "_": [12, 26, 27], "asterisk": 12, "jack": 12, "johnson": 12, "two": [12, 17, 27, 28], "want": [10, 12, 17, 27, 28], "front": 12, "iso": [12, 16, 17, 19, 20], "obp": 12, "type": [10, 12, 14, 17, 19, 20, 26, 27, 29], "musicvideo": 12, "shortfilm": 12, "tvshow": 12, "softwar": [12, 20], "ebook": 12, "result": [10, 12, 14, 17, 19, 20, 26, 27, 29], "return": [10, 12, 14, 16, 17, 19, 20, 22, 23, 24, 26, 27, 29], "rel": [12, 28], "avail": [10, 12, 14, 16, 17, 19, 20, 27, 28, 29], "tabl": 12, "2": [12, 17, 19, 20, 26, 27, 28], "associ": [10, 12, 14, 16, 17, 19, 20], "movieartist": 12, "name": [10, 12, 14, 17, 19, 20, 26, 27, 29], "allartist": 12, "allartistterm": 12, "Then": [12, 28, 29], "maroon": 12, "5": [12, 14, 17, 28, 29], "instead": [12, 17, 20, 26, 28], "who": [10, 12], "have": [10, 12, 14, 16, 17, 20, 26, 27, 29], "ever": 12, "word": [12, 14, 16], "must": [10, 12, 14, 16, 17, 19, 20, 29], "200": [12, 19, 26], "50": [12, 14, 17, 20, 26, 28], "languag": [12, 14, 16, 17], "english": [12, 17], "japanes": 12, "five": 12, "codenam": 12, "en_u": 12, "ja_jp": 12, "kei": [10, 12, 14, 17, 20], "receiv": 12, "back": [12, 14, 27], "A": [12, 14, 17, 19, 20, 26, 27], "indic": [12, 17], "ye": 12, "To": [10, 12, 14, 17, 19, 20, 26, 27], "short": 12, "film": 12, "25": [12, 14, 27], "jim": 12, "jone": 12, "canada": 12, "ca": [12, 17, 26], "applic": [10, 12, 14, 17, 19, 20, 26, 28], "yelp": 12, "unit": 12, "state": [12, 17], "amg_artist_id": 12, "amg_album_id": 12, "amg_video_id": 12, "bundle_id": 12, "upc": [12, 14, 17, 19, 20, 26, 29], "isbn": 12, "sort": [10, 12, 20], "amg": 12, "ean": [12, 17, 19], "faster": 12, "fewer": 12, "posit": [12, 14, 17, 20, 26, 28], "bundl": 12, "appli": [12, 17, 19], "recent": [12, 14, 17], "up": [12, 14, 17, 20, 28, 29], "909253": 12, "284910350": 12, "468749": 12, "multipl": [12, 17, 19, 29], "5723": 12, "get": [10, 12, 14, 16, 17, 19, 20, 27, 29, 30], "each": [12, 17, 20, 26], "top": [12, 17, 20, 26, 28], "most": [12, 14, 26, 27], "720642462928": 12, "15175": 12, "15176": 12, "15177": 12, "15178": 12, "15183": 12, "15184": 12, "15187": 12, "15190": 12, "15191": 12, "15195": 12, "15197": 12, "15198": 12, "17120": 12, "book": 12, "9780316069359": 12, "com": [10, 12, 20, 26, 28], "yelpiphon": 12, "minimum": [13, 17, 18], "privat": [10, 13, 14, 15, 17, 18, 20, 27, 28, 29], "app_id": [14, 26], "app_secret": [14, 26], "flow": [10, 14, 17, 19, 20, 26, 29], "browser": [10, 14, 16, 20, 26, 29], "user_ag": [14, 20], "email": [10, 14, 17, 20, 26], "password": [14, 26, 29], "auth_token": [14, 26], "save": [10, 14, 16, 17, 19, 20], "collect": [10, 14, 17, 20, 21], "playlist": [14, 17, 20, 28], "perform": [10, 14, 20, 26, 29], "queri": [14, 17, 19, 20, 27], "them": [14, 17, 20, 26, 28, 29], "offici": [14, 17, 20], "been": [14, 16, 17, 20, 26, 27], "watch": [14, 16, 20], "http": [10, 14, 16, 17, 20, 26, 28, 29], "network": [14, 16, 20], "traffic": [14, 16, 20, 26], "design": [14, 16, 17, 20], "publicli": [14, 16, 20], "access": [10, 14, 16, 17, 19, 20, 26, 28, 29], "disabl": [10, 14, 16, 17, 19, 20], "remov": [14, 16, 17, 20, 26], "ensur": [10, 14, 16, 17, 20], "complianc": [14, 16, 20], "while": [14, 17, 20, 27], "necessari": [14, 17, 20, 26, 29], "public": [10, 14, 17, 18, 20, 26, 28, 29], "person": [10, 14, 17, 20], "stream": [14, 17, 20, 29], "activ": [14, 17, 20, 26], "In": [14, 16, 17, 19, 20, 28, 29], "latter": [14, 20], "case": [14, 16, 17, 19, 20, 26, 29], "accompani": [10, 14, 16, 17, 19, 20, 26], "token": [10, 14, 16, 17, 19, 20, 26], "header": [14, 16, 17, 19, 20], "grant": [14, 17], "inher": 14, "unsaf": 14, "sinc": [14, 17, 28], "ha": [14, 26, 27], "mechan": 14, "multifactor": 14, "brute": 14, "forc": 14, "attack": 14, "highli": [14, 17], "encourag": 14, "yourself": 14, "through": [14, 17], "player": [14, 16, 17, 20, 26, 27], "android": [14, 20, 26], "io": [14, 20, 26], "maco": [14, 20, 26], "window": [14, 20, 26], "secret": [10, 14, 17, 19, 20], "constructor": [10, 14, 16, 17, 19, 20, 26, 27, 28], "credenti": [10, 14, 17, 19, 20, 26, 28, 29], "qobuz_private_app_id": 14, "qobuz_private_app_secret": 14, "oper": [10, 14, 16, 17, 19, 20, 25], "system": [10, 14, 16, 17, 19, 20, 28], "environ": [10, 14, 16, 17, 19, 20, 26, 28, 29], "variabl": [10, 14, 16, 17, 19, 20, 26, 28, 29], "thei": [14, 17, 26, 28, 29], "set_flow": [10, 14, 17, 19, 20], "set_auth_token": 14, "respect": [10, 14, 16, 17, 19, 20, 23, 24, 26, 27, 28, 29], "manag": [10, 14, 16, 17, 19, 20], "properti": [10, 14, 16, 17, 19, 20, 27], "acquir": [10, 14, 16, 17, 19, 20], "configur": [10, 14, 16, 17, 19, 20, 28], "load": [10, 14, 16, 17, 19, 20, 27, 28], "next": [10, 14, 16, 17, 19, 20, 26, 27], "behavior": [10, 14, 16, 17, 19, 20, 27], "secur": [10, 14, 16, 17, 19, 20], "concern": [10, 14, 16, 17, 19, 20], "comput": [10, 14, 16, 17, 19, 20, 23, 24], "being": [10, 14, 16, 17, 19, 20], "share": [10, 14, 16, 17, 19, 20], "devic": [10, 14, 16, 17, 19, 20, 26, 28, 29], "author": [10, 14, 19, 26], "open": [10, 14, 17, 20, 26, 28, 29], "login": [14, 26], "page": [10, 14, 17, 19, 20, 26], "playwright": [10, 14, 17, 20], "framework": [10, 14, 17, 20, 26], "microsoft": [10, 14, 17, 20], "account": [10, 14, 17, 20, 26], "agent": [14, 20], "send": [10, 14, 16, 17, 19, 20], "address": [14, 20], "here": [10, 14, 16, 17, 19, 20, 26], "found": [10, 14, 16, 17, 19, 20, 28], "process": [10, 14, 16, 17, 19, 20, 26, 27, 29], "bypass": [10, 14, 16, 17, 19, 20], "newli": [10, 14, 16, 17, 19, 20, 29], "web_url": [14, 20], "set": [10, 14, 16, 17, 19, 20, 28, 29], "album_id": [14, 19, 20, 29], "singl": [14, 17, 19, 27], "0060254735180": 14, "maximum_bit_depth": [14, 26], "media_count": [14, 26], "albums_count": [14, 26], "slug": [14, 26], "pictur": [14, 19, 20, 26], "role": [10, 14, 20], "released_at": [14, 26], "label": [10, 14, 17, 26], "supplier_id": [14, 26], "qobuz_id": [14, 26], "durat": [10, 14, 17, 19, 20, 26], "parental_warn": [14, 26], "popular": [14, 17, 19, 20, 25, 26, 27], "tracks_count": [14, 26, 29], "color": [14, 16, 20, 26], "maximum_channel_count": [14, 26], "maximum_sampling_r": [14, 26], "articl": [14, 20], "release_date_origin": [14, 26], "release_date_download": [14, 26], "release_date_stream": [14, 26], "purchas": [14, 26], "streamabl": [14, 26], "preview": [14, 20, 26, 27], "sampleabl": [14, 26], "download": [14, 17, 20, 26], "display": [14, 26], "purchasable_at": [14, 26], "streamable_at": [14, 26], "hire": [14, 26], "hires_stream": [14, 26], "award": 14, "description_languag": 14, "goodi": 14, "area": 14, "catchlin": 14, "created_at": [14, 26], "genres_list": 14, "is_offici": 14, "maximum_technical_specif": 14, "product_sales_factors_monthli": 14, "product_sales_factors_weekli": 14, "product_sales_factors_yearli": 14, "product_typ": 14, "product_url": 14, "recording_inform": 14, "relative_url": 14, "release_tag": 14, "release_typ": 14, "subtitl": [14, 20], "offset": [14, 17, 19, 20, 26], "audio_info": [14, 26], "replaygain_track_peak": [14, 26], "float": [10, 14, 17, 20, 23, 24], "replaygain_track_gain": [14, 26], "work": [14, 20, 26], "media_numb": [14, 26], "release_date_purchas": [14, 26], "get_featured_album": 14, "seller": 14, "editor": 14, "pick": 14, "ideal": [14, 26], "discographi": 14, "press": [14, 26], "qobuzissim": 14, "harmonia": 14, "mundi": 14, "univers": 14, "classic": [14, 17], "jazz": 14, "jeuness": 14, "chanson": 14, "index": [14, 17, 20], "get_artist": [14, 17, 19, 20], "artist_id": [14, 19, 20, 29], "extra": 14, "tracks_appears_on": 14, "albums_with_last_releas": 14, "effect": 14, "albums_as_primary_artist_count": 14, "albums_as_primary_composer_count": 14, "medium": [14, 20, 26], "extralarg": [14, 26], "mega": [14, 26], "similar_artist_id": 14, "biographi": [14, 20], "summari": [14, 20], "get_label": 14, "label_id": 14, "1153": 14, "get_playlist": [14, 17, 20, 26, 29], "playlist_id": [14, 17], "15732665": 14, "image_rectangle_mini": 14, "featured_artist": 14, "timestamp_posit": 14, "images300": [14, 26], "updated_at": [14, 26], "percent": 14, "image_rectangl": 14, "owner": [14, 17, 26], "users_count": [14, 26], "images150": [14, 26], "is_collabor": [14, 26, 29], "featured_tag_id": 14, "name_json": 14, "genre_tag": 14, "is_discov": 14, "public_at": [14, 26], "is_publ": [14, 26, 29], "is_featur": [14, 26], "null": 14, "playlist_track_id": [14, 26], "get_featured_playlist": [14, 17], "last": [14, 17, 20, 22, 27, 28, 29], "get_user_playlist": [14, 17, 20, 26, 29], "custom": [14, 17, 28], "favorit": [14, 28], "500": [14, 20, 26], "is_publish": 14, "published_to": [14, 26], "welcom": 14, "published_from": [14, 26], "create_playlist": [14, 17, 20, 26, 28, 29], "collabor": [14, 17, 26, 29], "brief": [14, 20], "update_playlist": [14, 20, 26], "privaci": [14, 20], "own": [10, 14, 17, 20], "17737508": 14, "update_playlist_posit": 14, "from_playlist_id": 14, "to_playlist_id": 14, "organ": [14, 27], "move": [14, 17, 20], "swap": 14, "17737509": 14, "add_playlist_track": [14, 26, 29], "track_id": [14, 16, 19, 20], "duplic": 14, "add": [14, 17, 20, 26, 28, 29], "24393122": 14, "24393138": 14, "ad": [10, 14, 17, 20, 26, 29], "move_playlist_track": 14, "insert_befor": [14, 17], "same": [14, 17, 29], "delete_playlist_track": 14, "delet": [14, 17, 20], "delete_playlist": [14, 20, 26], "favorite_playlist": [14, 20], "subscrib": 14, "unfavorite_playlist": [14, 20], "unsubscrib": 14, "hi_r": [14, 20], "new_releas": 14, "10": [14, 17, 19, 20, 26], "categori": [14, 17, 20, 26], "mainartist": [14, 26], "releasenam": [14, 26], "exact": 14, "phrase": 14, "focu": 14, "name_superbloc": 14, "accroch": 14, "genre_id": 14, "root_categori": 14, "abstract": 14, "image_origin": 14, "category_id": [14, 17], "source_imag": 14, "published_at": 14, "section_slug": 14, "description_short": 14, "display_d": 14, "get_track_perform": 14, "unformat": 14, "call": [14, 26], "filter": [14, 17, 20], "special": 14, "composerlyricist": [14, 26], "lyricist": [14, 20], "featuredartist": 14, "produc": [14, 26], "co": [14, 26], "mixer": 14, "musicpublish": 14, "etc": [14, 20, 29], "dictionari": [14, 17, 19, 20], "contributor": [10, 14, 20, 26], "snake": 14, "get_track_file_url": 14, "format_id": 14, "27": 14, "playback": [14, 17, 20], "hi": [14, 20], "re": [10, 14, 20, 26], "qualiti": [14, 20], "constant": 14, "320": [14, 20, 26], "kbp": [14, 20], "6": [14, 17], "cd": [14, 26], "16": [14, 20, 26, 27], "44": [14, 20, 26], "khz": [14, 20], "7": [14, 26], "24": [14, 20, 26], "96": [14, 20], "192": 14, "mime_typ": 14, "restrict": [14, 17], "sampling_r": 14, "get_curated_track": 14, "weekli": 14, "curat": [14, 20], "baselin": 14, "step_pagin": 14, "graphic": 14, "background": [14, 16], "foreground": 14, "generated_at": 14, "expires_on": 14, "get_track_stream": [14, 20], "mime": [14, 20], "get_collection_stream": [14, 20], "get_profil": [10, 14, 17, 20], "profil": [10, 14, 17, 20, 26], "publicid": 14, "firstnam": [14, 20], "lastnam": [14, 20], "display_nam": [14, 17], "country_cod": [14, 19, 20], "language_cod": 14, "zone": 14, "avatar": 14, "ag": [14, 26], "creation_d": 14, "offer": 14, "start_dat": 14, "end_dat": 14, "is_cancel": 14, "household_size_max": 14, "lossy_stream": 14, "lossless_stream": 14, "hires_purchases_stream": 14, "mobile_stream": 14, "offline_stream": 14, "hfp_purchas": 14, "included_format_group_id": 14, "color_schem": 14, "logo": 14, "short_label": 14, "last_upd": 14, "favorite_album": [14, 20, 29], "favorite_artist": [14, 20, 29], "favorite_track": [14, 20, 28], "store_featur": 14, "editori": 14, "club": 14, "wallet": 14, "weeklyq": 14, "autoplai": 14, "inapp_purchase_subscripton": 14, "opt_in": 14, "music_import": 14, "get_favorit": [14, 29], "get_purchas": 14, "favorite_item": [14, 29], "unfavorite_item": 14, "unfavorit": 14, "sp_dc": [16, 17, 26], "access_token": [10, 16, 17, 19, 20, 26], "expiri": [16, 17, 19, 20, 26], "datetim": [16, 17, 19, 20], "power": [10, 16, 26], "musixmatch": 16, "petitlyr": 16, "japan": 16, "interfac": [10, 16, 25], "so": [16, 17, 19, 20, 26, 27, 28, 29], "develop": [10, 16, 20], "cooki": [16, 17, 26], "either": [10, 16, 17, 19, 20, 26, 28], "spotify_sp_dc": [16, 17, 26], "extract": [16, 20], "local": [16, 17, 27], "storag": [16, 26], "after": [16, 17], "log": [16, 26], "exchang": [16, 17, 20], "recommend": [10, 16, 17, 19, 20, 29, 30], "other": [16, 17, 19, 20, 26, 27], "authent": [16, 17, 19, 26, 28, 29], "relat": [16, 17, 19, 20, 26], "expir": [16, 17, 19, 20, 26], "set_sp_dc": 16, "set_access_token": [10, 16, 17, 19, 20], "former": [16, 17, 19, 20], "relev": [16, 17, 19, 20, 29], "refresh": [16, 17, 19, 20, 26], "8601": [16, 17, 19, 20], "m": [16, 17, 19, 20, 26], "dt": [16, 17, 19, 20], "h": [16, 17, 19, 20], "sz": [16, 17, 19, 20, 26], "user": [16, 17, 19, 26, 28, 29], "reauthent": [16, 17, 19, 20], "lyrics_url": 16, "token_url": [16, 17, 19, 20], "session": [10, 16, 17, 19, 20], "timestamp": [16, 17, 19, 20], "0vjijw4gluzamyd2vxmi3b": 16, "synctyp": 16, "starttimem": 16, "syllabl": 16, "endtimem": 16, "providerlyricsid": [16, 20], "providerdisplaynam": 16, "synclyricsuri": 16, "isdensetypefac": 16, "altern": [16, 17, 29], "isrtllanguag": 16, "fullscreenact": 16, "showupsel": 16, "highlighttext": 16, "hasvocalremov": 16, "client_id": [17, 19, 20, 26], "client_secret": [17, 19, 20, 26], "web_play": 17, "port": [10, 17, 26], "8888": [10, 17, 26], "redirect_uri": [10, 17], "refresh_token": [17, 20, 26], "creation": 17, "interact": [17, 28], "control": 17, "visual": [17, 28], "form": [10, 17], "refer": [17, 19, 23, 24], "without": [10, 17, 20, 26, 27], "proof": [17, 20], "pkce": [17, 20, 26, 29], "These": [17, 20], "oauth": [10, 17, 19, 20], "spotify_client_id": [17, 26], "spotify_client_secret": [17, 26], "guid": [17, 19], "how": [17, 19, 27], "advantag": [10, 17], "function": [10, 17, 19, 20], "redirect": [10, 17, 26], "uri": [10, 17, 20, 26], "localhost": [10, 17, 26], "callback": [10, 17, 20, 26], "where": [10, 17], "approach": [17, 26], "resort": 17, "deprec": 17, "unless": 17, "authorization_cod": 17, "client_credenti": [17, 19, 20], "server": [10, 17, 26, 29], "built": [10, 17], "flask": [10, 17], "get_scop": [17, 26, 29], "possibl": [17, 19, 20], "auth_url": [10, 17, 20], "web_player_token_url": 17, "classmethod": 17, "ugc": 17, "upload": 17, "spotify_connect": 17, "connect": 17, "read": [17, 28], "modifi": 17, "plai": 17, "remot": 17, "follow": [17, 20, 26, 28, 29], "listening_histori": 17, "histori": 17, "substr": 17, "e": [17, 26], "market": 17, "4aawyab9vmqn3uq7fjrgti": 17, "3166": [17, 19, 20], "alpha": [17, 19, 20], "prioriti": 17, "over": 17, "neither": 17, "consid": 17, "album_typ": [17, 26], "total_track": [17, 26, 29], "available_market": [17, 26], "external_url": [17, 26], "href": [17, 26], "height": [10, 17, 19, 20, 26, 28], "width": [10, 17, 19, 20, 26, 28], "release_d": [17, 26], "release_date_precis": [17, 26], "reason": 17, "external_id": [17, 26, 29], "previou": [17, 20, 26, 27], "duration_m": [17, 26], "is_play": 17, "linked_from": 17, "preview_url": [17, 26], "is_loc": [17, 26], "sever": 17, "identifi": [17, 26], "comma": 17, "20": 17, "382obepsp2rxgrnsizn5tx": 17, "1a2gtwgtffwp7ksqtwwoyo": 17, "2norn2aes5aonvsu6iwthc": 17, "get_album_track": 17, "000": [17, 26], "get_saved_album": [17, 29], "added_at": [17, 26], "save_album": [17, 29], "remove_saved_album": 17, "check_saved_album": 17, "check": [10, 17], "alreadi": [17, 20, 26, 27], "arrai": 17, "boolean": 17, "get_new_album": 17, "shown": 17, "brows": 17, "tab": 17, "particular": [10, 17], "omit": 17, "se": [17, 26], "album_group": 17, "uniqu": [17, 27], "0tnoyisbd1xyrbk9myaseg": 17, "2cimqhirsu0mqqyyhq0eox": 17, "57dn52uhvrhoxijzpigu3": 17, "1vcwhac5f2us3yhpwwbia6": 17, "get_artist_album": [17, 19, 20], "include_group": 17, "suppli": 17, "promot": 17, "appears_on": 17, "appear": [17, 20, 27], "main": [17, 19, 26, 29], "get_artist_top_track": [17, 20], "get_related_artist": 17, "similar": [17, 19, 20, 23, 24, 28, 29], "given": [17, 19], "analysi": 17, "commun": [10, 17], "listen": 17, "get_audiobook": 17, "uk": 17, "ireland": 17, "zealand": 17, "australia": 17, "7ihfbu1ypacw6ozpafjtq": 17, "html_descript": 17, "edit": [10, 17, 20, 30], "media_typ": 17, "narrat": 17, "publish": 17, "total_chapt": 17, "chapter": 17, "audio_preview_url": 17, "chapter_numb": 17, "resume_point": 17, "fully_plai": 17, "resume_position_m": 17, "episod": [17, 26], "18yvqkdbdrvs24c0ilj2ci": 17, "1hgw3j3nxzo1tp1bttvhpz": 17, "get_audiobook_chapt": 17, "get_saved_audiobook": 17, "save_audiobook": 17, "remove_saved_audiobook": 17, "check_saved_audiobook": 17, "get_categori": 17, "dinner": 17, "desir": [17, 20], "consist": 17, "639": 17, "join": [10, 17], "american": 17, "es_mx": 17, "spanish": 17, "mexico": 17, "icon": 17, "nformat": 17, "get_chapt": 17, "0d5wendkdwbqlrhoaj9g29": 17, "0isxvp0jmcb2adse338gkk": 17, "3zxb8fkzgu0ehalyx6uczu": 17, "get_episod": 17, "512ojhouo1ktjprkbvckyq": 17, "is_externally_host": 17, "total_episod": 17, "77o6bivlym3msb4mmil1jh": 17, "0q86acnrm6v9gyx55sxkwf": 17, "get_saved_episod": 17, "save_episod": 17, "remove_saved_episod": 17, "check_saved_episod": 17, "get_genre_se": 17, "seed": [17, 28], "get_recommend": [17, 28], "acoust": 17, "afrobeat": 17, "get_market": 17, "br": [17, 26], "IT": [17, 26], "get_playback_st": 17, "additional_typ": 17, "progress": 17, "besid": 17, "introduc": 17, "maintain": [17, 26], "might": 17, "futur": 17, "is_act": 17, "is_private_sess": 17, "is_restrict": 17, "volume_perc": 17, "repeat_st": 17, "shuffle_st": 17, "context": 17, "progress_m": 17, "is_plai": 17, "currently_playing_typ": 17, "action": 17, "interrupting_playback": 17, "paus": 17, "resum": 17, "seek": 17, "skipping_next": 17, "skipping_prev": 17, "toggling_repeat_context": 17, "toggling_shuffl": 17, "toggling_repeat_track": 17, "transferring_playback": 17, "transfer_playback": 17, "device_id": 17, "transfer": [17, 30], "start": [17, 27, 28, 29], "although": 17, "accept": 17, "than": [17, 26, 27], "400": 17, "bad": 17, "74aszwbe4lxaubb36ztrgx": 17, "happen": [17, 27], "get_devic": 17, "get_currently_plai": 17, "start_playback": 17, "context_uri": 17, "position_m": 17, "target": [17, 19, 20], "0d1841b0976bae2a3a310dd74c0f3df354899bc8": 17, "1je1imulbxcx1fz0we7opt": 17, "4iv5w9uyedyuva79axb7rh": 17, "1301wleyt98msxvhpzca6m": 17, "zero": 17, "neg": 17, "repres": 17, "sixth": 17, "millisecond": 17, "pass": [17, 26, 27, 28], "greater": 17, "length": 17, "caus": 17, "pause_playback": 17, "skip_to_next": 17, "skip": [17, 20, 26], "queue": 17, "skip_to_previ": 17, "seek_to_posit": 17, "25000": 17, "set_repeat_mod": 17, "repeat": [17, 27], "mode": [17, 20], "turn": 17, "set_playback_volum": 17, "volum": 17, "100": [17, 20, 26, 28], "inclus": 17, "toggle_playback_shuffl": 17, "toggl": 17, "shuffl": 17, "get_recently_plai": 17, "befor": [17, 26, 27, 29], "doesn": 17, "unix": 17, "cursor": [17, 20], "1484811043508": 17, "played_at": 17, "get_queu": 17, "make": [10, 17, 19, 20, 26, 28], "currently_plai": 17, "add_to_queu": 17, "end": 17, "3ceypja9oz9gipac4ash4n": 17, "dot": [17, 26], "non": 17, "reoccur": 17, "parenthes": 17, "drill": 17, "nest": 17, "prefix": 17, "exclam": 17, "mark": 17, "just": 17, "added_bi": [17, 26], "adder": 17, "snapshot_id": [17, 26], "change_playlist_detail": [17, 26], "detail": [10, 17, 19, 29], "cours": 17, "my": [17, 20, 26], "becom": 17, "abl": 17, "displai": [17, 28], "get_playlist_item": [17, 20, 29], "add_playlist_item": [17, 20, 26, 28, 29], "exce": 17, "bodi": 17, "insert": 17, "order": [10, 17, 20], "third": [17, 29], "snapshot": 17, "update_playlist_item": 17, "range_start": 17, "range_length": 17, "reorder": 17, "depend": [17, 26], "clear": 17, "mutual": 17, "exclus": 17, "togeth": 17, "simpli": [17, 26], "9": 17, "amount": 17, "rang": 17, "begin": 17, "subsequ": 17, "against": 17, "remove_playlist_item": 17, "even": [10, 17, 27], "user_id": [17, 20], "smedjan": 17, "empti": 17, "until": 17, "doe": [17, 20, 26, 27, 29], "coolest": 17, "yyyi": 17, "mm": 17, "ddthh": 17, "ss": 17, "tailor": 17, "dai": [17, 26], "revert": 17, "utc": 17, "2014": 17, "23t09": 17, "00": [17, 26, 27], "whose": [10, 17], "am": [10, 17, 26], "messag": [17, 19, 26], "get_category_playlist": 17, "get_playlist_cover_imag": 17, "dimens": 17, "add_playlist_cover_imag": [17, 28], "base64": [17, 28], "jpeg": 17, "payload": 17, "256": [17, 26], "kb": 17, "narrow": 17, "year": [10, 17], "hipster": 17, "certain": 17, "g": [17, 20], "1955": 17, "1960": 17, "past": [17, 26], "week": 17, "lowest": [17, 27], "remast": 17, "doxi": 17, "mile": 17, "davi": 17, "across": [17, 29], "hit": [17, 26], "both": [17, 20, 26], "get_show": 17, "38bs44xjbvvz3no3byf1dj": 17, "5cfcwki5pz28u0uozxkdh": 17, "5as3akmn2k11yfdddsrvaz": 17, "get_show_episod": 17, "get_saved_show": 17, "save_show": 17, "remove_saved_show": 17, "check_saved_show": 17, "11dfghvxanmlkmjxsncbnl": 17, "7oumywpwj422jrcdaszb7p": 17, "4vqporuhp5edpber92t6lq": 17, "2takcwoaazwixqijphix7b": 17, "get_saved_track": [17, 28], "save_track": 17, "remove_saved_track": 17, "check_saved_track": 17, "analysis_url": 17, "danceabl": 17, "energi": 17, "instrument": 17, "live": 17, "loud": 17, "speechi": 17, "time_signatur": 17, "track_href": 17, "valenc": 17, "get_tracks_audio_featur": 17, "get_track_audio_analysi": 17, "low": [17, 20], "level": 17, "describ": 17, "structur": 17, "rhythm": 17, "pitch": 17, "timbr": 17, "audio_analysi": 17, "meta": 17, "analyzer_vers": 17, "platform": 17, "detailed_statu": 17, "status_cod": 17, "analysis_tim": 17, "input_process": 17, "num_sampl": 17, "sample_md5": 17, "offset_second": 17, "window_second": 17, "analysis_sample_r": 17, "analysis_channel": 17, "end_of_fade_in": 17, "start_of_fade_out": 17, "tempo_confid": 17, "time_signature_confid": 17, "key_confid": 17, "mode_confid": 17, "codestr": 17, "code_vers": 17, "echoprintstr": 17, "echoprint_vers": 17, "synchstr": 17, "synch_vers": 17, "rhythmstr": 17, "rhythm_vers": 17, "bar": 17, "confid": 17, "section": [10, 17, 26], "segment": 17, "loudness_start": 17, "loudness_max": 17, "loudness_max_tim": 17, "loudness_end": 17, "tatum": 17, "seed_artist": 17, "seed_genr": 17, "seed_track": [17, 28], "suffici": 17, "pool": 17, "veri": [17, 27], "obscur": 17, "enough": 17, "train": 17, "machin": 17, "learn": 17, "ai": 17, "model": 17, "4nhqugzhttlfvgf5szeslk": 17, "0c6xiddpze81m2q797orda": 17, "unusu": 17, "imposs": 17, "debug": [17, 26], "tunabl": [17, 28], "afterfilterings": 17, "afterrelinkings": 17, "initialpools": 17, "usernam": [10, 17, 20], "explicit_cont": 17, "filter_en": 17, "filter_lock": 17, "product": [17, 26], "get_top_item": 17, "time_rang": 17, "calcul": 17, "affin": 17, "frame": 17, "long_term": 17, "medium_term": 17, "approxim": 17, "month": 17, "short_term": 17, "get_user_profil": [17, 20], "follow_playlist": 17, "unfollow_playlist": [17, 26], "unfollow": [17, 20], "get_followed_artist": [17, 29], "0i2xqvxqhscxjhhk6ayyr": 17, "follow_peopl": [17, 29], "sent": 17, "unfollow_peopl": 17, "check_followed_peopl": 17, "check_playlist_follow": 17, "jmperezperez": 17, "thelinmichael": 17, "wizzler": 17, "robust": 18, "expos": 19, "build": [10, 19, 27, 28], "tidal_client_id": [19, 26], "tidal_client_secret": [19, 26], "regist": [10, 19, 26], "set_auflow": 19, "251380836": [19, 20], "barcodeid": 19, "released": [19, 20, 26], "imagecov": 19, "videocov": [19, 20, 26], "numberofvolum": [19, 20], "numberoftrack": [19, 20, 26, 29], "numberofvideo": [19, 20, 26], "mediametadata": [19, 20, 26], "275646830": [19, 20], "resourc": [10, 19, 26, 28], "statu": [10, 19, 20, 26], "success": [19, 26], "failur": 19, "get_album_item": [19, 20], "pagin": [10, 19, 20], "artifacttyp": 19, "tracknumb": [19, 20, 26], "volumenumb": [19, 20, 26], "get_album_by_barcode_id": 19, "barcode_id": 19, "barcod": 19, "196589525444": 19, "get_similar_album": [19, 20, 28], "1566": [19, 20], "7804": [19, 20], "get_similar_artist": [19, 20, 28], "251380837": [19, 20], "251380838": [19, 20], "get_track_by_isrc": 19, "usual": 19, "compris": 19, "12": [19, 26], "alphanumer": 19, "ussm12209515": 19, "get_similar_track": [19, 28], "get_video": [19, 20], "video_id": [19, 20], "75623239": [19, 20], "59727844": [19, 20], "beyonc\u00e9": [19, 20], "worldwid": 19, "r_usr": 20, "tidal_private_client_id": 20, "tidal_private_client_secret": 20, "desktop": [10, 20, 26], "device_cod": 20, "manual": [10, 20, 28], "termin": [10, 20], "w_usr": 20, "w_sub": 20, "temporarili": 20, "block": 20, "ip": 20, "too": 20, "quickli": 20, "login_url": 20, "redirect_url": 20, "resources_url": 20, "streamreadi": [20, 26], "adsupportedstreamreadi": [20, 26], "djreadi": [20, 26], "stemreadi": [20, 26], "streamstartd": [20, 26], "allowstream": [20, 26], "premiumstreamingonli": [20, 26], "vibrantcolor": [20, 26], "audioqu": [20, 26], "audiomod": [20, 26], "totalnumberofitem": 20, "replaygain": [20, 26], "peak": [20, 26], "mix": [20, 26, 28], "track_mix": [20, 26], "get_album_credit": 20, "get_album_review": 20, "review": 20, "synopsi": 20, "lastupd": [20, 26], "get_favorite_album": [20, 29], "order_direct": 20, "desc": [10, 20], "direct": 20, "asc": [10, 20], "on_artifact_not_found": 20, "unfavorite_album": 20, "artisttyp": [20, 26], "artistrol": [20, 26], "categoryid": [20, 26], "artist_mix": [20, 26], "subset": 20, "epsandsingl": 20, "get_artist_video": 20, "imagepath": 20, "imageid": 20, "adsurl": 20, "adsprepaywallonli": 20, "get_artist_mix_id": 20, "mix_id": 20, "000ec0b01da1ddd752ec5dee553d48": 20, "get_artist_radio": 20, "inspir": 20, "ident": [10, 20], "get_mix_item": 20, "get_artist_biographi": 20, "biograph": 20, "get_artist_link": 20, "link": 20, "websit": [10, 20], "sitenam": 20, "banner": 20, "relationtyp": 20, "similar_artist": 20, "get_favorite_artist": [20, 29], "unfavorite_artist": 20, "get_blocked_artist": 20, "block_artist": 20, "radio": 20, "unblock_artist": 20, "unblock": 20, "get_country_cod": 20, "get_imag": 20, "uuid": [20, 26, 29], "anim": 20, "d3c4372b": 20, "a652": 20, "40e0": 20, "bdb1": 20, "fc8d032708f6": 20, "userprofil": 20, "get_favorite_mix": 20, "datead": 20, "mixtyp": 20, "subtitletextinfo": 20, "detailimag": 20, "master": 20, "titletextinfo": 20, "lastmodifiedat": 20, "favorite_mix": 20, "000dd748ceabd5508947c6a5d3880a": 20, "unfavorite_mix": 20, "get_album_pag": 20, "device_typ": 20, "phone": 20, "mobil": [10, 20], "smart": 20, "submodul": 20, "get_artist_pag": 20, "get_mix_pag": 20, "get_video_pag": 20, "playlist_uuid": 20, "36ea71a8": 20, "445e": 20, "41a4": 20, "82ab": 20, "6628c581535d": 20, "creator": [20, 26], "publicplaylist": 20, "squareimag": [20, 26], "promotedartist": [20, 26], "lastitemaddedat": [20, 26], "get_playlist_etag": 20, "etag": 20, "1698984074453": 20, "get_playlist_recommend": 20, "folder_id": 20, "root": 20, "4261748a": 20, "4287": 20, "4758": 20, "aaab": 20, "6d5be3e99e52": 20, "folder": 20, "place": 20, "under": 20, "move_playlist": 20, "e09ab9c": 20, "2e87": 20, "41b8": 20, "b404": 20, "3cd712bf706e": 20, "contentbehavior": [20, 26], "sharinglevel": [20, 26], "trn": [20, 26], "followinfo": [20, 26], "nroffollow": [20, 26], "tidalresourcenam": [20, 26], "followtyp": [20, 26], "userid": 20, "get_personal_playlist": 20, "folder_uuid": 20, "itemtyp": 20, "addedat": 20, "parent": [20, 26, 27, 28], "readi": [20, 26], "set_playlist_privaci": [20, 26], "from_playlist_uuid": 20, "on_dupl": 20, "move_playlist_item": 20, "from_index": 20, "to_index": 20, "delete_playlist_item": 20, "get_personal_playlist_fold": 20, "flatten": 20, "include_onli": 20, "date_upd": 20, "createdat": 20, "create_playlist_fold": 20, "delete_playlist_fold": 20, "92b3c1ea": 20, "245a": 20, "4e5a": 20, "a5a4": 20, "c215f7a65b9f": 20, "tophit": 20, "collection_id": 20, "audio_qu": 20, "video_qu": 20, "max_resolut": 20, "2160": 20, "playback_mod": 20, "asset_present": 20, "streaming_session_id": 20, "immers": 20, "hifi": 20, "plan": 20, "price": 20, "dolbi": 20, "atmo": 20, "64": [20, 26], "1411": 20, "9216": 20, "mqa": 20, "audio_onli": 20, "vertic": 20, "offlin": 20, "asset": [20, 26, 28], "present": 20, "30": [20, 27], "get_video_stream": 20, "tommi": 20, "wright": 20, "kelman": 20, "duran": 20, "teriu": 20, "dream": 20, "de": [20, 26], "diamant": 20, "mike": [20, 28], "dean": 20, "trackid": [20, 26], "lyricsprovid": 20, "providercommontrackid": 20, "isrighttoleft": 20, "get_track_mix_id": 20, "tidal_id": 20, "0017159e6a1f34ae3d981792d72ecf": 20, "get_track_playback_info": 20, "hc": 20, "en": 20, "360004255778": 20, "info": 20, "assetpresent": 20, "manifestmimetyp": 20, "manifesthash": 20, "manifest": 20, "albumreplaygain": 20, "albumpeakamplitud": 20, "trackreplaygain": 20, "trackpeakamplitud": 20, "get_track_recommend": 20, "suggested_track": 20, "get_favorite_track": 20, "unfavorite_track": 20, "countrycod": 20, "fullnam": 20, "nicknam": 20, "citi": 20, "postalcod": 20, "usstat": 20, "phonenumb": 20, "birthdai": 20, "channelid": 20, "parentid": 20, "acceptedeula": 20, "facebookuid": 20, "appleuid": 20, "googleuid": 20, "accountlinkcr": 20, "emailverifi": 20, "newus": 20, "get_sess": 20, "sessionid": 20, "partnerid": 20, "authorizedforofflin": 20, "authorizedforofflined": 20, "get_favorite_id": 20, "172311284": 20, "numberoffollow": 20, "prompt": [20, 26], "primari": [20, 22], "secondari": 20, "updatedtim": 20, "supportedcontenttyp": 20, "profiletyp": 20, "get_user_follow": 20, "peopl": [20, 29], "imfollow": 20, "follow_us": 20, "unfollow_us": 20, "get_blocked_us": 20, "block_us": 20, "unblock_us": 20, "get_video_playback_info": 20, "videoid": 20, "streamtyp": 20, "videoqu": 20, "get_favorite_video": 20, "favorite_video": 20, "unfavorite_video": 20, "util": [22, 23, 24, 27], "ndarrai": [23, 24], "levenshtein": [24, 27], "ratio": [23, 24, 27], "measur": [23, 24], "compar": [23, 24], "numpi": [23, 24, 27], "instal": [23, 24], "otherwis": [23, 24, 27], "lightweight": 25, "3": [25, 26, 27, 28], "packag": 26, "pip": 26, "come": [26, 28], "pypi": 26, "conda": 26, "forg": 26, "onc": 26, "pep": 26, "541": 26, "resolv": [26, 27], "grab": 26, "repositori": 26, "git": 26, "clone": 26, "github": 26, "bbye98": 26, "enter": [26, 27], "directori": [26, 27], "virtual": 26, "prevent": 26, "conflict": 26, "requirements_minim": 26, "txt": 26, "env": 26, "f": [26, 27, 28, 29], "yml": 26, "venv": 26, "bin": 26, "posix": 26, "bash": 26, "zsh": 26, "script": 26, "bat": 26, "cmd": 26, "ex": 26, "ps1": 26, "powershel": 26, "alongsid": [10, 26], "step": [26, 29], "r": [26, 27], "virtualenv": 26, "linux": 26, "done": 26, "try": [10, 26, 29], "import": [26, 27, 28, 29], "error": 26, "modulenotfounderror": 26, "No": 26, "rais": 26, "successfulli": 26, "out": [10, 26, 27, 28], "box": 26, "few": 26, "addit": [26, 29], "prerequisit": 26, "cach": 26, "client_itun": [26, 27], "client_qobuz": [26, 29], "protect": 26, "qobuz_email": 26, "qobuz_password": 26, "post": 26, "spawn": 26, "normal": 26, "launch": 26, "find": [10, 26, 28, 29], "chromium": 26, "f12": 26, "devtool": 26, "navig": 26, "firefox": 26, "shift": 26, "f9": 26, "inspector": 26, "nagiv": 26, "client_spotify_lyr": 26, "choic": [26, 28], "spotify_port": 26, "client_spotifi": [26, 27, 28, 29], "scope": [26, 28, 29], "get_authorization_scop": 26, "autom": 26, "click": 26, "agre": 26, "jot": 26, "client_tid": [26, 27, 28, 29], "client_tidal_priv": 26, "proxi": 26, "tool": 26, "intercept": 26, "instruct": 26, "consol": 26, "edm": 26, "group": 26, "galanti": [26, 28], "musicartist": 26, "wrappertyp": 26, "artistnam": [26, 27], "artistlinkurl": 26, "543322169": 26, "uo": 26, "artistid": 26, "amgartistid": 26, "2616267": 26, "primarygenrenam": 26, "danc": 26, "primarygenreid": 26, "17": 26, "static": 26, "8dcf30e5c8e30281ecbb13b0886426c8": 26, "127": 26, "865362": 26, "4stqvofp9vemcemlw50sbu": 26, "3382444": [], "pop": 26, "v1": 26, "640": 26, "scdn": 26, "ab6761610000e5eb7bda087d6fb48d481efd3344": 26, "ab676161000051747bda087d6fb48d481efd3344": 26, "160": 26, "ab6761610000f1787bda087d6fb48d481efd3344": 26, "67": [], "4676988": 26, "a627e21c": 26, "60f7": 26, "4e90": 26, "b2bb": 26, "e50b178c4f0b": 26, "1024x256": 26, "1024": 26, "1080x720": 26, "1080": 26, "720": 26, "160x107": 26, "107": 26, "160x160": 26, "320x214": 26, "214": 26, "320x320": 26, "480x480": 26, "480": 26, "640x428": 26, "428": 26, "750x500": 26, "750": 26, "750x750": 26, "www": [10, 26], "72": 26, "11": [26, 27], "engin": 26, "team": 26, "000202a7e72fd90d0c0df2ed56ddea": 26, "everybodi": 26, "talk": 26, "neon": 26, "tree": 26, "kind": 26, "315816847": [], "collectionid": [26, 27], "578054990": [], "578054997": [], "glee": [], "cast": [], "collectionnam": 26, "season": [], "vol": 26, "tracknam": [26, 27], "collectioncensorednam": 26, "trackcensorednam": 26, "artistviewurl": 26, "collectionviewurl": 26, "trackviewurl": 26, "previewurl": 26, "ssl": 26, "audiopreview125": [], "v4": 26, "86": [], "4b": [], "3f": [], "864b3f23": [], "9155": [], "9ce8": [], "c1c0": [], "fc115a8af80a": [], "mzaf_13828074306318913858": [], "p": 26, "artworkurl30": 26, "is1": 26, "mzstatic": 26, "thumb": [10, 26], "music115": [], "57": [], "6d": [], "4e": [], "576d4e7a": [], "7860": [], "595a": [], "5ccd": [], "05e965413df5": [], "886443746404": [], "30x30bb": 26, "artworkurl60": 26, "60x60bb": 26, "artworkurl100": 26, "100x100bb": 26, "collectionpric": 26, "99": 26, "trackpric": 26, "29": 26, "2012": 26, "05t12": [], "00z": [26, 27], "collectionexplicit": 26, "notexplicit": 26, "trackexplicit": 26, "disccount": 26, "discnumb": 26, "trackcount": 26, "tracktimemilli": 26, "179280": [], "usa": 26, "currenc": [10, 26], "usd": [10, 26], "isstream": 26, "track_qobuz": 26, "2022": [26, 27], "arko": 26, "boom": 26, "todd": 26, "15899504": 26, "fc": 26, "7v": 26, "ilfmuz10e7vfc_230": 26, "ilfmuz10e7vfc_50": 26, "ilfmuz10e7vfc_600": 26, "0859766309663": 26, "1665180000": 26, "4026379": 26, "95": 26, "speedi": 26, "178369185": 26, "536": 26, "133": 26, "0070ef": 26, "hip": 26, "hop": 26, "rap": 26, "ilfmuz10e7vfc": 26, "1689231600": 26, "08": 26, "15899505": 26, "tcagm2280786": 26, "178369187": 26, "track_spotifi": 26, "0rpddszuhfncuwnjxkosji": 26, "au": 26, "AT": 26, "BE": 26, "bo": 26, "bg": 26, "cl": 26, "cr": 26, "cy": 26, "cz": 26, "dk": 26, "ec": 26, "ee": 26, "sv": 26, "fi": 26, "fr": 26, "gr": 26, "gt": 26, "hn": 26, "hk": 26, "hu": 26, "ie": 26, "lv": 26, "lt": 26, "lu": 26, "mt": 26, "nl": 26, "nz": 26, "ni": 26, "NO": 26, "pa": 26, "py": 26, "pe": 26, "ph": 26, "pl": 26, "pt": 26, "sg": 26, "sk": 26, "ch": 26, "tw": 26, "tr": 26, "ui": 26, "gb": 26, "li": [26, 29], "mc": 26, "th": 26, "ro": 26, "il": 26, "za": 26, "sa": 26, "ae": 26, "bh": 26, "qa": 26, "om": 26, "kw": 26, "eg": 26, "tn": 26, "lb": 26, "jo": 26, "IN": 26, "BY": 26, "kz": 26, "md": 26, "ua": 26, "al": 26, "ba": 26, "hr": 26, "mk": 26, "si": 26, "kr": 26, "bd": 26, "pk": 26, "lk": 26, "gh": 26, "ke": 26, "ng": 26, "tz": 26, "ug": 26, "bb": 26, "bz": 26, "bt": 26, "bw": 26, "bf": 26, "cv": 26, "cw": 26, "dm": 26, "fj": 26, "gm": 26, "gd": 26, "gw": 26, "gy": 26, "ht": 26, "jm": 26, "ki": 26, "l": 26, "lr": 26, "mw": 26, "mv": 26, "ml": 26, "mh": 26, "fm": 26, "na": 26, "nr": 26, "ne": 26, "pw": 26, "pg": 26, "w": 26, "st": 26, "sn": 26, "sc": 26, "sl": 26, "sb": 26, "kn": 26, "lc": 26, "vc": 26, "sr": 26, "tl": 26, "TO": 26, "tt": 26, "az": 26, "bn": 26, "bi": 26, "kh": 26, "cm": 26, "td": 26, "km": 26, "gq": 26, "ga": 26, "gn": 26, "kg": 26, "la": 26, "mo": 26, "mr": 26, "mn": 26, "np": [26, 27], "rw": 26, "tg": 26, "uz": 26, "zw": 26, "bj": 26, "mg": 26, "mu": 26, "mz": 26, "ao": 26, "ci": 26, "dj": 26, "zm": 26, "cg": 26, "iq": 26, "tj": 26, "ve": 26, "xk": 26, "0urfz92jmjwdbzbb7hebir": 26, "ab67616d0000b2734a6c0376235e5aa44e59d2c2": 26, "300": 26, "ab67616d00001e024a6c0376235e5aa44e59d2c2": 26, "ab67616d000048514a6c0376235e5aa44e59d2c2": 26, "01": 26, "177280": 26, "usum71119189": 26, "2iumqdfgzchihs3b9e9ewq": 26, "81": [], "14492425": 26, "451": 26, "due": 26, "demand": 26, "right": [26, 29], "holder": 26, "prohibit": 26, "track_tidal_priv": 26, "177": 26, "999969": 26, "17t00": 26, "0000": 26, "55": 26, "mercuri": 26, "2011": 26, "umg": 26, "inc": 26, "stereo": 26, "3665225": 26, "e6f17398": 26, "759e": 26, "45a0": 26, "9673": 26, "6ded6811e199": 26, "14492422": 26, "1c2d7c90": 26, "034e": 26, "485a": 26, "be1f": 26, "24a669c7e6e": 26, "f8af88": 26, "0019768c833a193c29829e5bf473fc": 26, "we": [26, 27, 28, 29], "playlist_qobuz": 26, "ilfmuz10e7vfc_150": 26, "1701053442": [], "ilfmuz10e7vfc_300": 26, "1701053443": [], "18171379": [], "52": [], "3865979203": [], "playlist_spotifi": 26, "3vsxl8ftlyoqgewazcz5d": [], "primary_color": 26, "myw0ndk1ngnlmze0m2e1otbkmtg0otdkn2m4mgi1nmi3zji5ymmxytgz": [], "2023": [26, 27, 28, 29], "27t02": [], "45z": [], "video_thumbnail": 26, "playlist_tidal_priv": 26, "e9f6aff1": [], "f39e": [], "462b": [], "90c4": [], "41686877a555": [], "unrestrict": 26, "8e75fac4": [], "cf24": [], "45c8": [], "8bd2": [], "98ab69f7f74b": [], "eefe947a": [], "5cdb": [], "40ee": [], "8057": [], "213941ff48d5": [], "45": [], "504": [], "46": [], "085": [], "mutagen": 26, "common": 26, "test": [26, 27], "middle_c": 26, "notat": 26, "getattr": 26, "attr": 26, "print": [26, 27], "capit": [26, 27], "middl": 26, "squar": 26, "game": 26, "similarli": 26, "setattr": 26, "261": 26, "63": 26, "forget": [26, 27], "convers": [26, 27], "middle_c_alac": 26, "116kb": 26, "02": [], "930": [], "3kbit": [], "speed": [26, 27], "177x": [], "point": [26, 27], "novemb": [27, 28, 29], "glob": 27, "audio_fil": 27, "suffix": 27, "dive": 27, "def": 27, "print_metadata": 27, "__dict__": 27, "startswith": 27, "upper": 27, "els": 27, "below": [27, 29], "highlight": 27, "involv": 27, "spektrem_shin": 27, "0x7fb5cdaeb790": [], "let": [10, 27], "spektrem": 27, "shine": 27, "count": [10, 27], "1030107": 27, "44100": 27, "had": 27, "pull": 27, "At": 27, "yet": 27, "written": 27, "compat": 27, "1032kb": 27, "09": [], "280": [], "9kbit": [], "68": 26, "5x": [], "With": 27, "280593": 27, "persist": 27, "typic": 27, "accur": 27, "good": [10, 27], "idea": 27, "select": [27, 28, 29], "closest": 27, "choos": 27, "distanc": 27, "levenshtein_ratio": 27, "lower": 27, "itunes_result": 27, "itunes_track": 27, "argmax": 27, "itunes_album": 27, "2013": 27, "gfted": 27, "06t12": 27, "electron": 27, "fill": 27, "By": 27, "set_metadata_us": 27, "spotify_result": 27, "spotify_track": [27, 29], "gb2ld0901581": 27, "128": 27, "correct": [27, 29], "get_track_compo": 27, "tidal_result": 27, "tidal_track": [27, 29], "tidal_compos": 27, "tidal_lyr": 27, "did": 27, "sometim": [27, 29], "tobu_back_to_y": 27, "0x7fb6744afdd0": [], "tobu": 27, "tom": 27, "burkovski": 27, "nc": 27, "06t07": 27, "hous": [27, 28], "gb2ld2210368": 27, "1104053": 27, "poorli": 27, "miss": 27, "fix": 27, "three": 27, "25t12": 27, "98": 27, "voil\u00e0": 27, "twice": 27, "becaus": 27, "There": 27, "eleg": 27, "solut": 27, "problem": 27, "unfortun": [27, 29], "19": [28, 29], "help": 28, "discov": 28, "leverag": 28, "suggest": 28, "b64encod": 28, "random": 28, "ipython": 28, "html": 28, "ifram": 28, "ipywidget": 28, "gridspeclayout": 28, "sure": 28, "0jz9tvoltzjagqiyc4hyzx": 28, "avicii": 28, "0bmb3nzquhbfi6nm4setvu": 28, "cash": 28, "surrend": 28, "1pq8ywty9v2ivzwj7gyxxb": 28, "mako": 28, "our": 28, "70iflb5egla8wufwgxborz": 28, "william": 28, "fallin": 28, "6jspbxzld2yemjtjz2gqot": 28, "passion": 28, "pit": 28, "76b6ljxtolasgxlanjnndr": 28, "sick": 28, "individu": 28, "2v65y3px4dkrhy1djlxd9p": 28, "swedish": 28, "mafia": 28, "worri": 28, "child": 28, "feat": 28, "john": 28, "martin": 28, "1gpf8iwqqj8qoevjhfiidu": 28, "zedd": 28, "matthew": 28, "koma": 28, "miriam": 28, "bryant": 28, "randomli": 28, "recommended_track": 28, "k": 28, "spotify_playlist": [28, 29], "global": 28, "_dh": 28, "minim_mix_smal": 28, "rb": 28, "nifti": 28, "emb": [10, 28], "grid": 28, "len": 28, "enumer": 28, "framebord": 28, "lazi": 28, "152": 28, "510": 28, "divmod": 28, "procedur": [28, 29], "51073951": 28, "62082351": 28, "32553484": 28, "147258423": 28, "109273852": 28, "237059212": 28, "17271290": 28, "27171015": 28, "similar_track": 28, "div": 28, "pad": 28, "bottom": 28, "overflow": 28, "hidden": 28, "max": 28, "src": 28, "layout": 28, "gridifi": 28, "allowfullscreen": 28, "absolut": 28, "left": 28, "1px": 28, "min": 28, "margin": 28, "auto": 28, "tunemymus": 29, "assum": 29, "destin": 29, "challeng": 29, "often": 29, "difficult": 29, "barebon": 29, "pair": [10, 29], "fine": 29, "tune": 29, "complex": 29, "those": 29, "remix": 29, "qobuz_playlist_id": 29, "17865119": 29, "qobuz_playlist": 29, "new_spotify_playlist": 29, "equival": 29, "simpl": 29, "spotify_track_uri": 29, "qobuz_track": 29, "new_tidal_playlist": 29, "confirm": 29, "tidal_track_id": 29, "spotify_playlist_id": 29, "3rw9qy60ceh6dfjauwdxmh": 29, "new_qobuz_playlist": 29, "thankfulli": 29, "qobuz_track_id": 29, "tidal_playlist_uuid": 29, "40052e73": 29, "58d4": 29, "4abb": 29, "bc1c": 29, "abace76d2f15": 29, "tidal_playlist": 29, "tidal_playlist_item": 29, "qobuz_favorit": 29, "qobuz_favorite_album": 29, "qobuz_favorite_artist": 29, "align": 29, "spotify_album_id": 29, "qobuz_album": 29, "spotify_album": 29, "indexerror": 29, "break": 29, "follow_artist": 29, "spotify_artist_id": 29, "qobuz_artist": 29, "spotify_artist": 29, "tidal_album_id": 29, "tidal_album": 29, "lstrip": 29, "tidal_artist_id": 29, "tidal_artist": 29, "spotify_favorite_album": 29, "spotify_favorite_artist": 29, "qobuz_album_id": 29, "qobuz_artist_id": 29, "tidal_favorite_album": 29, "tidal_favorite_artist": 29, "gestalt": 23, "ratcliff": 23, "obershelp": 23, "keyerror": [], "traceback": [], "cell": [], "mnt": [], "benjamin": [], "700": [], "__init__": [], "self": [], "693": [], "config": [], "_name": [], "fallback": [], "695": [], "696": [], "697": [], "698": [], "699": [], "701": [], "1036": [], "1029": [], "_expiri": [], "1030": [], "strptime": [], "1031": [], "isinst": [], "1032": [], "1034": [], "_flow": [], "1035": [], "_sp_dc": [], "_user_id": [], "9108": [], "9054": [], "9055": [], "9056": [], "9103": [], "9104": [], "9106": [], "_check_scop": [], "_get_json": [], "843": [], "823": [], "825": [], "826": [], "827": [], "respons": [], "840": [], "841": [], "_request": [], "912": [], "retri": [], "887": [], "888": [], "construct": [], "889": [], "908": [], "909": [], "911": [], "_refresh_access_token": [], "914": [], "915": [], "299": [], "867": [], "855": [], "client_b64": [], "urlsafe_b64encod": [], "856": [], "_client_id": [], "_client_secret": [], "857": [], "decod": [], "858": [], "859": [], "860": [], "864": [], "basic": 10, "865": [], "bearer": [], "868": [], "_refresh_token": [], "869": [], "870": [], "timedelta": [], "expires_in": [], "126": 26, "3375748": [], "350172836": [], "1443469527": [], "1443469581": [], "audiopreview122": [], "5c": [], "5c29bf6b": [], "ca2c": [], "4e8b": [], "2be6": [], "c51a282c7da": [], "mzaf_1255557534804450018": [], "e3": [], "80e39565": [], "35f9": [], "2496": [], "c6f8": [], "6572490c4a7b": [], "12umgim12509": [], "rgb": [], "19t12": [], "contentadvisoryr": [], "justin": [], "meldal": [], "johnsen": [], "guitar": [], "keyboard": [], "percuss": [], "programm": [], "associatedperform": [], "tim": [], "pagnotta": [], "greg": [], "collin": [], "studiopersonnel": [], "weslei": [], "seidman": [], "asst": [], "tyler": [], "glenn": [], "matt": [], "wigger": [], "bill": [], "bush": [], "470727": [], "42": [], "54": [], "0060252795442_230": [], "0060252795442_50": [], "0060252795442_600": [], "0060252795442": [], "1325372400": [], "17487": [], "774": [], "5653617": [], "2785": [], "112": [], "119": [], "113": [], "indi": [], "alternatif": [], "et": [], "ind": [], "1683529200": [], "583118": [], "5653620": [], "1683702000": [], "0060252795442_150": [], "1699766986": [], "0060252795442_300": [], "1699766987": [], "17864724": [], "31": [], "3775088385": [], "193pq0l1m0ykfekbrb4c1v": [], "myxhzgzkzdk4m2m0ogy2zwvmytuxyweymjawm2mzmde5nze5ndq4ode0": [], "12t05": [], "49z": [], "771dc2db": [], "c763": [], "4e71": [], "9c87": [], "f5d82bfa4153": [], "9412a3c1": [], "7d10": [], "40b3": [], "b9b4": [], "96f0791dee9c": [], "74d8c599": [], "cfbd": [], "464f": [], "8e70": [], "80d51a6482bd": [], "155": 26, "740": [], "161x": [], "0x7f126c60b150": [], "0kb": [26, 27], "1891": [], "2kbit": [], "813x": [], "256kb": [], "89": [], "150": [], "768kb": [], "28": [], "222": [], "1x": 27, "281": 27, "1kbit": 27, "28x": [], "attributeerror": [], "8": [], "0x7efd3873e650": [], "3363420": [], "112115157": 26, "583394431": 26, "583394802": 26, "workout": 26, "35": 26, "unmix": 26, "gym": 26, "jog": 26, "run": 26, "cycl": 26, "cardio": 26, "fit": 26, "audiopreview115": 26, "c4": 26, "8d": 26, "c4fc8d9a": 26, "0b75": 26, "55fb": 26, "6413": 26, "6bdbf7d17e65": 26, "mzaf_7998633680287936907": 26, "music114": 26, "b4": 26, "a7": 26, "dc": 26, "b4a7dc27": 26, "6fcd": 26, "22ba": 26, "c9a6": 26, "564166a4c43d": 26, "35tophitswom3_2400": 26, "03t12": 26, "34": 26, "179055": 26, "79": 26, "1703541258": [], "1703541259": [], "18794965": [], "4056401760": [], "0nnctudbv2hxvrsbtw9uvd": [], "miwyywm2ywywymm2otmzmjfiogu1mdi5odjmzwrlndgwn2y5zjazzjyi": [], "25t21": [], "21z": [], "4d1dc535": [], "556c": [], "4368": [], "a6cc": [], "2fa0e373e4da": [], "af52f4df": [], "06f8": [], "40ad": [], "9ebd": [], "4ad993523c39": [], "7b203db1": [], "e8f4": [], "4fbc": [], "a87f": [], "a5032bcdcbd7": [], "21": [], "876": [], "633": [], "577014": [], "32": 26, "77": [], "0kbit": [], "92": 26, "1023": 26, "4kbit": 26, "163x": [], "0x7fb2b0648090": [], "652x": [], "83": [], "141": [], "6x": [], "1024kb": [], "279": [], "7kbit": 27, "1703541385": [], "1703541386": [], "18794976": [], "4056413118": [], "3r7m5jqsbyhqraljwmxop5": [], "miwymjgwzmy1ngnhnmeymdcynme4oda0nwfkmmmwzdvjyzjimdq5odc0": [], "56": [], "28z": [], "999521e8": [], "cc89": [], "40e2": [], "b5e4": [], "feef8fc55e2b": [], "9e9beafc": [], "fe9e": [], "41b5": [], "a3e2": [], "2165c7eb9ea5": [], "7be303ac": [], "90c3": [], "461a": [], "9e9c": [], "29b2e9737a93": [], "025": [], "411": [], "143x": [], "0x7f2a63fc6090": [], "773x": [], "146": [], "5kbit": [], "4x": [], "58": [], "228": [], "2x": [], "0x7f2a63fc5150": [], "1703541443": [], "1703541444": [], "18794997": [], "4056419200": [], "6lsdixcynk4tviweun0r2x": [], "miw1zdi0njy3zjzkoddkndm0mjcwyjnkywe4ntk2m2mwymm4nti4yjy4": [], "25z": [], "f7db0333": [], "9032": [], "4410": [], "8092": [], "33e2fd57a9a0": [], "dd039132": [], "45a2": [], "a7cc": [], "0c5a6de9b202": [], "c951760e": [], "df32": [], "469e": [], "9022": [], "a0f96adbbd51": [], "26": 26, "548": [], "131": [], "158x": [], "0x7fa51e606090": [], "746x": [], "223": [], "0x7fa5e9463ed0": [], "1703542953": [], "1703542954": [], "18795217": [], "4056566210": [], "05nxuuwubqkvqkokwts9sf": [], "miwzmwjizdyyzdg3mwizyzmyogq2ogqzmwi5zdc5yta5nmm4y2ywmgjh": [], "25t22": [], "36z": [], "b32ca39": [], "fc75": [], "41e8": [], "8983": [], "ac2c60a343b6": [], "add565f1": [], "aa6d": [], "4ba6": [], "9add": [], "b79766ffebff": [], "320db6de": [], "97ae": [], "499f": [], "bd6f": [], "d5fafed56818": [], "36": [], "519": [], "169x": [], "0x7f3ad3cea410": [], "71x": [], "94": [], "140": [], "221": [], "0x7f3ad38bdb50": [], "1703543032": [], "1703543033": [], "18795231": [], "4056571639": [], "6utaldny4jas8p62xkuob1": [], "miw1ytnmngyxnzblndnmy2fhyzcwnjdinmu4ngjmzgzmmdhmotmxm2rm": [], "23": [], "55z": [], "5ad15881": [], "d24a": [], "431d": [], "8842": [], "e984b14acddd": [], "b51cac5": [], "afda": [], "412e": [], "b776": [], "157cdf14ce72": [], "d8ce78a4": [], "6e66": [], "45b2": [], "b642": [], "3d8ad94ab51a": [], "288": [], "621": [], "151x": [], "0x7f3120028710": [], "688x": [], "62": 27, "143": [], "0x7f311f41c450": [], "1703543101": [], "1703543102": [], "18795240": [], "4056579211": [], "7byelnhlxdpl1suxbohdxc": [], "miximge3nmzkztjmnjhimzk3ogfimtcxmgfiowjhyjdkzmnin2qwzgi3": [], "04z": [], "72822fee": [], "3bd8": [], "4e6a": [], "8919": [], "6209622dbfee": [], "b9692a2e": [], "b994": [], "4add": [], "8cd8": [], "d55f713c9d2a": [], "db6c068e": [], "f503": [], "4564": [], "b13f": [], "de4ea788ca77": [], "276": [], "756": [], "157x": [], "0x7f31c2b320d0": [], "872x": [], "0x7f31c2b2e050": [], "1703543295": [], "1703543296": [], "18795266": [], "4056598057": [], "2hevunznshidx5g69qb6zo": [], "mixjmjm2owzkztlkmjaxotq3ytg3mgezy2zknwe3mjvingu1ywfjmwri": [], "17z": [], "19cbbd20": [], "a52a": [], "8a8f": [], "f61363ae06bf": [], "3ee9a69b": [], "8be3": [], "432e": [], "8797": [], "2f37410cfd60": [], "e9540028": [], "d848": [], "4ad4": [], "962d": [], "c15c46517dec": [], "18": [], "304": [], "782": [], "0x7fa22b87db10": [], "895x": [], "149": [], "8kbit": [], "8x": [], "7x": [], "0x7fa22b88ba10": [], "1703543445": [], "18795289": [], "4056613633": [], "519yixsucuo8znb1pid8gr": [], "miw5ntlhyjdjm2y1mtdjyzzhm2u4nwq0ymy3ywziyzjimzvhotlkyji1": [], "48z": [], "635c228f": [], "c946": [], "4243": [], "be68": [], "b26e3f48f64c": [], "5feae44a": [], "9961": [], "4173": [], "a4af": [], "7cdc80a43e95": [], "fbb4cf4e": [], "1268": [], "4adf": [], "be9c": [], "5a0fc14ba600": [], "48": [], "732": [], "49": [], "203": [], "154x": [], "0x7f0bf74f2710": [], "653x": [], "0x7f0bf6ab9510": [], "1703543491": [], "1703543492": [], "18795302": [], "4056619241": [], "65jzri70liabjp3vvmknvc": [], "miwzngy4mwzjody4ymiyyzg0ztixmznlzjvjotvkowrknzu1mtqxmwnh": [], "34z": [], "b464d4a7": [], "4e66": [], "4cc4": [], "aefd": [], "16ab91c81039": [], "21bdd5bd": [], "3daa": [], "45ba": [], "949a": [], "c82b37eeb088": [], "d0198e9e": [], "4fe2": [], "4285": [], "ba25": [], "f77658438440": [], "924": [], "291": [], "146x": [], "0x7fc1867c9710": [], "804x": [], "144": [], "0x7fc185d9d750": [], "1703543652": [], "18795317": [], "4056634586": [], "25thystgggzlzqfhklecqx": [], "mixln2m1m2yyndu1zge1ndmxodeyzgvhyzy1nznimdk1ztgwyzvjmtnh": [], "14z": [], "532c3063": [], "45aa": [], "8781": [], "07f88e6e371b": [], "3bd94903": [], "8ecf": [], "4ac9": [], "8698": [], "9c8ce41fe5dd": [], "319f5bf4": [], "4417": [], "8909": [], "3a532fb33d12": [], "15": [], "008": [], "490": [], "0x7f5d7dc6f710": [], "675x": [], "153": [], "0x7f5e47f61650": [], "discog": 10, "consumer_kei": 10, "consumer_secret": 10, "web_framework": [10, 17, 29], "access_token_secret": 10, "rest": 10, "wantlist": 10, "marketplac": 10, "home": 10, "least": 10, "enjoi": 10, "higher": 10, "consum": 10, "discogs_consumer_kei": 10, "discogs_consumer_secret": 10, "registr": 10, "0a": 10, "view": 10, "discogs_personal_access_token": [], "undergo": 10, "attach": 10, "access_token_url": 10, "request_token_url": 10, "get_ident": 10, "doubl": 10, "saniti": 10, "correctli": 10, "resource_url": 10, "consumer_nam": 10, "visibl": 10, "num_list": 10, "num_collect": 10, "num_wantlist": 10, "rodneyfool": 10, "wantlist_url": 10, "rank": 10, "num_pend": 10, "num_for_sal": 10, "home_pag": 10, "locat": 10, "collection_folders_url": 10, "collection_fields_url": 10, "releases_contribut": 10, "rating_avg": 10, "releases_r": 10, "inventory_url": 10, "avatar_url": 10, "banner_url": 10, "buyer_r": 10, "buyer_rating_star": 10, "buyer_num_r": 10, "seller_r": 10, "seller_rating_star": 10, "seller_num_r": 10, "curr_abbr": 10, "edit_profil": 10, "real": 10, "nicola": 10, "cage": 10, "geograph": 10, "portland": 10, "biolog": 10, "abbrevi": 10, "gbp": 10, "eur": 10, "cad": 10, "aud": 10, "jpy": 10, "chf": 10, "mxn": 10, "brl": 10, "nzd": 10, "sek": 10, "zar": 10, "get_user_submiss": 10, "per_pag": 10, "get_user_contribut": 10, "sort_ord": 10, "708": [], "703": [], "704": [], "705": [], "706": [], "707": [], "709": [], "1044": [], "1037": [], "1038": [], "1039": [], "1040": [], "1042": [], "1043": [], "9116": [], "9062": [], "9063": [], "9064": [], "9111": [], "9112": [], "9114": [], "851": [], "831": [], "833": [], "834": [], "835": [], "848": [], "849": [], "920": [], "895": [], "896": [], "897": [], "916": [], "917": [], "919": [], "922": [], "923": [], "875": [], "863": [], "866": [], "872": [], "873": [], "877": [], "878": [], "0x7f3294a0e750": [], "1898": 27, "268x": [], "512kb": [], "265": [], "41": [], "0x7f320db6c290": [], "typeerror": [], "got": [], "unexpect": [], "3360776": [], "1703640723": [], "1703640724": [], "18814004": [], "4066997546": [], "6qcocfmdcnfktgmv2ujar": [], "miw2yzfhyjnhnmqzmge3mdzlmgy2zge0mzi5mmrlm2i5ote0mmywymu0": [], "27t01": [], "06z": [], "7c0572d8": [], "6a94": [], "4a56": [], "a26": [], "7b7fa6087bca": [], "8b359656": [], "544a": [], "46ec": [], "87eb": [], "0be478d31615": [], "b87d83bd": [], "b77a": [], "45f5": [], "a294": [], "c2dfd542c695": [], "357": [], "518": [], "90": [], "0x7f3937f2ced0": [], "733x": [], "3x": [], "0x7f393734cb90": [], "1703640810": [], "1703640811": [], "18814014": [], "4067006648": [], "1bs3bkyqi6g6qbvj4skpkc": [], "mswxnmnmy2u5ogy4odk4nmrimzlhmda0nzbjnzc4m2rhnju2nmm3mgvm": [], "33": 26, "32z": 26, "e02223ff": [], "d067": [], "41b2": [], "aa44": [], "ea5bd0bb14d1": [], "dc385d5b": [], "dc19": [], "4257": [], "a1a8": [], "8f3e5d7fa050": [], "42b6e4c7": [], "92d7": [], "80f7": [], "3199018785bd": [], "157": [], "318": [], "82": [], "0x7f4b180a9cd0": [], "566x": 27, "59": [], "9x": [], "0x7f4ab6deacd0": [], "submiss": 10, "fetch": 10, "shooezgirl": 10, "data_qu": 10, "namevari": 10, "releases_url": 10, "anv": 10, "averag": 10, "submitt": 10, "compani": 10, "date_ad": 10, "date_chang": 10, "estimated_weight": 10, "format_quant": 10, "qty": 10, "uri150": 10, "catno": 10, "entity_typ": 10, "master_id": 10, "master_url": 10, "note": 10, "released_format": 10, "seri": 10, "contribut": 10, "0x7f32a73529d0": [], "285x": [], "0x7f32a7353450": [], "3360524": 26, "1703696805": [], "1703696806": [], "18825699": [], "4072825591": [], "3xgm65vvklhkb1wvr6hhb6": [], "mswzzjk5zdnhmgrmmmnkyjm5nta0mgiyotnhyjm3ymzknzmwzmrjnjm5": [], "27t17": [], "cf693fb2": [], "7e90": [], "41a7": [], "92e7": [], "9f45179d6b6a": [], "2cad7241": [], "6d60": [], "4f7e": [], "aaa4": [], "a38677f91bb8": [], "2ee97ca": [], "dcb6": [], "40ec": [], "9f07": [], "7031e7ee0d83": [], "702": [], "387": [], "0x7f06d4ff2390": [], "471x": [], "226": [], "0x7f06d50b8250": [], "0x7f3b70212ad0": [], "553x": [], "58x": [], "0x7f3b70bb81d0": [], "1703712390": 26, "18831593": 26, "4074552535": 26, "2nijcg6e6ze8qv7aeckwnz": 26, "miw4ote4m2fkyznlzjlhmdjhywvinwnkmzuxyzawymmwyju2mgq1y2zl": 26, "27t21": 26, "c133107f": 26, "bf42": 26, "4fa0": 26, "8f7f": 26, "48b2fee31ec2": 26, "33dc107d": 26, "321e": 26, "4127": 26, "a0": 26, "9ed7723d1d60": 26, "f1293b2d": 26, "b657": 26, "40af": 26, "8961": 26, "0865891ac3cb": 26, "986": 26, "147": 26, "70x": 26, "0x7fa4c8389e50": 27, "0x7fa4c8433ed0": 27}, "objects": {"": [[1, 0, 0, "-", "minim"]], "minim": [[2, 0, 0, "-", "audio"], [9, 0, 0, "-", "discogs"], [11, 0, 0, "-", "itunes"], [13, 0, 0, "-", "qobuz"], [15, 0, 0, "-", "spotify"], [18, 0, 0, "-", "tidal"], [21, 0, 0, "-", "utility"]], "minim.audio": [[3, 1, 1, "", "Audio"], [4, 1, 1, "", "FLACAudio"], [5, 1, 1, "", "MP3Audio"], [6, 1, 1, "", "MP4Audio"], [7, 1, 1, "", "OggAudio"], [8, 1, 1, "", "WAVEAudio"]], "minim.audio.Audio": [[3, 2, 1, "", "convert"], [3, 2, 1, "", "set_metadata_using_itunes"], [3, 2, 1, "", "set_metadata_using_qobuz"], [3, 2, 1, "", "set_metadata_using_spotify"], [3, 2, 1, "", "set_metadata_using_tidal"]], "minim.audio.FLACAudio": [[4, 2, 1, "", "convert"], [4, 2, 1, "", "set_metadata_using_itunes"], [4, 2, 1, "", "set_metadata_using_qobuz"], [4, 2, 1, "", "set_metadata_using_spotify"], [4, 2, 1, "", "set_metadata_using_tidal"], [4, 2, 1, "", "write_metadata"]], "minim.audio.MP3Audio": [[5, 2, 1, "", "convert"], [5, 2, 1, "", "set_metadata_using_itunes"], [5, 2, 1, "", "set_metadata_using_qobuz"], [5, 2, 1, "", "set_metadata_using_spotify"], [5, 2, 1, "", "set_metadata_using_tidal"], [5, 2, 1, "", "write_metadata"]], "minim.audio.MP4Audio": [[6, 2, 1, "", "convert"], [6, 2, 1, "", "set_metadata_using_itunes"], [6, 2, 1, "", "set_metadata_using_qobuz"], [6, 2, 1, "", "set_metadata_using_spotify"], [6, 2, 1, "", "set_metadata_using_tidal"], [6, 2, 1, "", "write_metadata"]], "minim.audio.OggAudio": [[7, 2, 1, "", "convert"], [7, 2, 1, "", "set_metadata_using_itunes"], [7, 2, 1, "", "set_metadata_using_qobuz"], [7, 2, 1, "", "set_metadata_using_spotify"], [7, 2, 1, "", "set_metadata_using_tidal"], [7, 2, 1, "", "write_metadata"]], "minim.audio.WAVEAudio": [[8, 2, 1, "", "convert"], [8, 2, 1, "", "set_metadata_using_itunes"], [8, 2, 1, "", "set_metadata_using_qobuz"], [8, 2, 1, "", "set_metadata_using_spotify"], [8, 2, 1, "", "set_metadata_using_tidal"], [8, 2, 1, "", "write_metadata"]], "minim.discogs": [[10, 1, 1, "", "API"]], "minim.discogs.API": [[10, 2, 1, "", "edit_profile"], [10, 2, 1, "", "get_identity"], [10, 2, 1, "", "get_profile"], [10, 2, 1, "", "get_user_contributions"], [10, 2, 1, "", "get_user_submissions"], [10, 2, 1, "", "set_access_token"], [10, 2, 1, "", "set_flow"]], "minim.itunes": [[12, 1, 1, "", "SearchAPI"]], "minim.itunes.SearchAPI": [[12, 2, 1, "", "lookup"], [12, 2, 1, "", "search"]], "minim.qobuz": [[14, 1, 1, "", "PrivateAPI"]], "minim.qobuz.PrivateAPI": [[14, 2, 1, "", "add_playlist_tracks"], [14, 2, 1, "", "create_playlist"], [14, 2, 1, "", "delete_playlist"], [14, 2, 1, "", "delete_playlist_tracks"], [14, 2, 1, "", "favorite_items"], [14, 2, 1, "", "favorite_playlist"], [14, 2, 1, "", "get_album"], [14, 2, 1, "", "get_artist"], [14, 2, 1, "", "get_collection_streams"], [14, 2, 1, "", "get_curated_tracks"], [14, 2, 1, "", "get_favorites"], [14, 2, 1, "", "get_featured_albums"], [14, 2, 1, "", "get_featured_playlists"], [14, 2, 1, "", "get_label"], [14, 2, 1, "", "get_playlist"], [14, 2, 1, "", "get_profile"], [14, 2, 1, "", "get_purchases"], [14, 2, 1, "", "get_track"], [14, 2, 1, "", "get_track_file_url"], [14, 2, 1, "", "get_track_performers"], [14, 2, 1, "", "get_track_stream"], [14, 2, 1, "", "get_user_playlists"], [14, 2, 1, "", "move_playlist_tracks"], [14, 2, 1, "", "search"], [14, 2, 1, "", "set_auth_token"], [14, 2, 1, "", "set_flow"], [14, 2, 1, "", "unfavorite_items"], [14, 2, 1, "", "unfavorite_playlist"], [14, 2, 1, "", "update_playlist"], [14, 2, 1, "", "update_playlist_position"]], "minim.spotify": [[16, 1, 1, "", "PrivateLyricsService"], [17, 1, 1, "", "WebAPI"]], "minim.spotify.PrivateLyricsService": [[16, 2, 1, "", "get_lyrics"], [16, 2, 1, "", "set_access_token"], [16, 2, 1, "", "set_sp_dc"]], "minim.spotify.WebAPI": [[17, 2, 1, "", "add_playlist_cover_image"], [17, 2, 1, "", "add_playlist_items"], [17, 2, 1, "", "add_to_queue"], [17, 2, 1, "", "change_playlist_details"], [17, 2, 1, "", "check_followed_people"], [17, 2, 1, "", "check_playlist_followers"], [17, 2, 1, "", "check_saved_albums"], [17, 2, 1, "", "check_saved_audiobooks"], [17, 2, 1, "", "check_saved_episodes"], [17, 2, 1, "", "check_saved_shows"], [17, 2, 1, "", "check_saved_tracks"], [17, 2, 1, "", "create_playlist"], [17, 2, 1, "", "follow_people"], [17, 2, 1, "", "follow_playlist"], [17, 2, 1, "", "get_album"], [17, 2, 1, "", "get_album_tracks"], [17, 2, 1, "", "get_albums"], [17, 2, 1, "", "get_artist"], [17, 2, 1, "", "get_artist_albums"], [17, 2, 1, "", "get_artist_top_tracks"], [17, 2, 1, "", "get_artists"], [17, 2, 1, "", "get_audiobook"], [17, 2, 1, "", "get_audiobook_chapters"], [17, 2, 1, "", "get_audiobooks"], [17, 2, 1, "", "get_categories"], [17, 2, 1, "", "get_category"], [17, 2, 1, "", "get_category_playlists"], [17, 2, 1, "", "get_chapter"], [17, 2, 1, "", "get_chapters"], [17, 2, 1, "", "get_currently_playing"], [17, 2, 1, "", "get_devices"], [17, 2, 1, "", "get_episode"], [17, 2, 1, "", "get_episodes"], [17, 2, 1, "", "get_featured_playlists"], [17, 2, 1, "", "get_followed_artists"], [17, 2, 1, "", "get_genre_seeds"], [17, 2, 1, "", "get_markets"], [17, 2, 1, "", "get_new_albums"], [17, 2, 1, "", "get_playback_state"], [17, 2, 1, "", "get_playlist"], [17, 2, 1, "", "get_playlist_cover_image"], [17, 2, 1, "", "get_playlist_items"], [17, 2, 1, "", "get_playlists"], [17, 2, 1, "", "get_profile"], [17, 2, 1, "", "get_queue"], [17, 2, 1, "", "get_recently_played"], [17, 2, 1, "", "get_recommendations"], [17, 2, 1, "", "get_related_artists"], [17, 2, 1, "", "get_saved_albums"], [17, 2, 1, "", "get_saved_audiobooks"], [17, 2, 1, "", "get_saved_episodes"], [17, 2, 1, "", "get_saved_shows"], [17, 2, 1, "", "get_saved_tracks"], [17, 2, 1, "", "get_scopes"], [17, 2, 1, "", "get_show"], [17, 2, 1, "", "get_show_episodes"], [17, 2, 1, "", "get_shows"], [17, 2, 1, "", "get_top_items"], [17, 2, 1, "", "get_track"], [17, 2, 1, "", "get_track_audio_analysis"], [17, 2, 1, "", "get_track_audio_features"], [17, 2, 1, "", "get_tracks"], [17, 2, 1, "", "get_tracks_audio_features"], [17, 2, 1, "", "get_user_playlists"], [17, 2, 1, "", "get_user_profile"], [17, 2, 1, "", "pause_playback"], [17, 2, 1, "", "remove_playlist_items"], [17, 2, 1, "", "remove_saved_albums"], [17, 2, 1, "", "remove_saved_audiobooks"], [17, 2, 1, "", "remove_saved_episodes"], [17, 2, 1, "", "remove_saved_shows"], [17, 2, 1, "", "remove_saved_tracks"], [17, 2, 1, "", "save_albums"], [17, 2, 1, "", "save_audiobooks"], [17, 2, 1, "", "save_episodes"], [17, 2, 1, "", "save_shows"], [17, 2, 1, "", "save_tracks"], [17, 2, 1, "", "search"], [17, 2, 1, "", "seek_to_position"], [17, 2, 1, "", "set_access_token"], [17, 2, 1, "", "set_flow"], [17, 2, 1, "", "set_playback_volume"], [17, 2, 1, "", "set_repeat_mode"], [17, 2, 1, "", "skip_to_next"], [17, 2, 1, "", "skip_to_previous"], [17, 2, 1, "", "start_playback"], [17, 2, 1, "", "toggle_playback_shuffle"], [17, 2, 1, "", "transfer_playback"], [17, 2, 1, "", "unfollow_people"], [17, 2, 1, "", "unfollow_playlist"], [17, 2, 1, "", "update_playlist_items"]], "minim.tidal": [[19, 1, 1, "", "API"], [20, 1, 1, "", "PrivateAPI"]], "minim.tidal.API": [[19, 2, 1, "", "get_album"], [19, 2, 1, "", "get_album_by_barcode_id"], [19, 2, 1, "", "get_album_items"], [19, 2, 1, "", "get_albums"], [19, 2, 1, "", "get_artist"], [19, 2, 1, "", "get_artist_albums"], [19, 2, 1, "", "get_artists"], [19, 2, 1, "", "get_similar_albums"], [19, 2, 1, "", "get_similar_artists"], [19, 2, 1, "", "get_similar_tracks"], [19, 2, 1, "", "get_track"], [19, 2, 1, "", "get_track_by_isrc"], [19, 2, 1, "", "get_tracks"], [19, 2, 1, "", "get_video"], [19, 2, 1, "", "get_videos"], [19, 2, 1, "", "search"], [19, 2, 1, "", "set_access_token"], [19, 2, 1, "", "set_flow"]], "minim.tidal.PrivateAPI": [[20, 2, 1, "", "add_playlist_items"], [20, 2, 1, "", "block_artist"], [20, 2, 1, "", "block_user"], [20, 2, 1, "", "create_playlist"], [20, 2, 1, "", "create_playlist_folder"], [20, 2, 1, "", "delete_playlist"], [20, 2, 1, "", "delete_playlist_folder"], [20, 2, 1, "", "delete_playlist_item"], [20, 2, 1, "", "favorite_albums"], [20, 2, 1, "", "favorite_artists"], [20, 2, 1, "", "favorite_mixes"], [20, 2, 1, "", "favorite_playlists"], [20, 2, 1, "", "favorite_tracks"], [20, 2, 1, "", "favorite_videos"], [20, 2, 1, "", "follow_user"], [20, 2, 1, "", "get_album"], [20, 2, 1, "", "get_album_credits"], [20, 2, 1, "", "get_album_items"], [20, 2, 1, "", "get_album_page"], [20, 2, 1, "", "get_album_review"], [20, 2, 1, "", "get_artist"], [20, 2, 1, "", "get_artist_albums"], [20, 2, 1, "", "get_artist_biography"], [20, 2, 1, "", "get_artist_links"], [20, 2, 1, "", "get_artist_mix_id"], [20, 2, 1, "", "get_artist_page"], [20, 2, 1, "", "get_artist_radio"], [20, 2, 1, "", "get_artist_top_tracks"], [20, 2, 1, "", "get_artist_videos"], [20, 2, 1, "", "get_blocked_artists"], [20, 2, 1, "", "get_blocked_users"], [20, 2, 1, "", "get_collection_streams"], [20, 2, 1, "", "get_country_code"], [20, 2, 1, "", "get_favorite_albums"], [20, 2, 1, "", "get_favorite_artists"], [20, 2, 1, "", "get_favorite_ids"], [20, 2, 1, "", "get_favorite_mixes"], [20, 2, 1, "", "get_favorite_tracks"], [20, 2, 1, "", "get_favorite_videos"], [20, 2, 1, "", "get_image"], [20, 2, 1, "", "get_mix_items"], [20, 2, 1, "", "get_mix_page"], [20, 2, 1, "", "get_personal_playlist_folders"], [20, 2, 1, "", "get_personal_playlists"], [20, 2, 1, "", "get_playlist"], [20, 2, 1, "", "get_playlist_etag"], [20, 2, 1, "", "get_playlist_items"], [20, 2, 1, "", "get_playlist_recommendations"], [20, 2, 1, "", "get_profile"], [20, 2, 1, "", "get_session"], [20, 2, 1, "", "get_similar_albums"], [20, 2, 1, "", "get_similar_artists"], [20, 2, 1, "", "get_track"], [20, 2, 1, "", "get_track_composers"], [20, 2, 1, "", "get_track_contributors"], [20, 2, 1, "", "get_track_credits"], [20, 2, 1, "", "get_track_lyrics"], [20, 2, 1, "", "get_track_mix_id"], [20, 2, 1, "", "get_track_playback_info"], [20, 2, 1, "", "get_track_recommendations"], [20, 2, 1, "", "get_track_stream"], [20, 2, 1, "", "get_user_followers"], [20, 2, 1, "", "get_user_following"], [20, 2, 1, "", "get_user_playlist"], [20, 2, 1, "", "get_user_playlists"], [20, 2, 1, "", "get_user_profile"], [20, 2, 1, "", "get_video"], [20, 2, 1, "", "get_video_page"], [20, 2, 1, "", "get_video_playback_info"], [20, 2, 1, "", "get_video_stream"], [20, 2, 1, "", "move_playlist"], [20, 2, 1, "", "move_playlist_item"], [20, 2, 1, "", "search"], [20, 2, 1, "", "set_access_token"], [20, 2, 1, "", "set_flow"], [20, 2, 1, "", "set_playlist_privacy"], [20, 2, 1, "", "unblock_artist"], [20, 2, 1, "", "unblock_user"], [20, 2, 1, "", "unfavorite_albums"], [20, 2, 1, "", "unfavorite_artists"], [20, 2, 1, "", "unfavorite_mixes"], [20, 2, 1, "", "unfavorite_playlist"], [20, 2, 1, "", "unfavorite_tracks"], [20, 2, 1, "", "unfavorite_videos"], [20, 2, 1, "", "unfollow_user"], [20, 2, 1, "", "update_playlist"]], "minim.utility": [[22, 3, 1, "", "format_multivalue"], [23, 3, 1, "", "gestalt_ratio"], [24, 3, 1, "", "levenshtein_ratio"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "function", "Python function"]}, "titleterms": {"minim": [1, 25, 26], "audio": [2, 3, 26, 27], "file": [2, 26, 27], "object": 2, "softwar": [3, 4, 5, 6, 7, 8], "depend": [3, 4, 5, 6, 7, 8], "flacaudio": 4, "mp3audio": 5, "mp4audio": 6, "oggaudio": 7, "waveaudio": 8, "itun": [11, 26], "searchapi": [12, 26], "qobuz": [13, 26, 29], "privateapi": [14, 20, 26], "sampl": [10, 14, 16, 17, 19, 20], "respons": [14, 16, 17, 19, 20], "user": [10, 14, 20, 30], "authent": [10, 14, 20], "subscript": [14, 20], "spotifi": [15, 26, 28, 29], "privatelyricsservic": [16, 26], "webapi": [17, 26], "author": [17, 20], "scope": [17, 20], "tidal": [18, 26, 28, 29], "api": [10, 19, 26, 27], "util": 21, "function": [21, 27], "levenshtein_ratio": 24, "multivalue_formatt": [], "get": [26, 28], "start": 26, "instal": 26, "usag": 26, "music": [26, 29], "servic": 26, "search": 26, "privat": 26, "lyric": 26, "web": 26, "exampl": 26, "artist": 26, "track": 26, "creat": 26, "modifi": 26, "delet": 26, "person": 26, "playlist": [26, 29], "handler": 26, "load": 26, "edit": [26, 27], "convert": [26, 27], "between": 26, "format": 26, "metadata": 27, "setup": 27, "instanti": 27, "client": 27, "find": 27, "defin": 27, "helper": 27, "tag": 27, "an": 27, "exist": 27, "recommend": 28, "transfer": 29, "librari": 29, "prerequisit": 29, "move": 29, "from": 29, "To": 29, "synchron": 29, "favorit": 29, "guid": 30, "format_multivalu": 22, "gestalt_ratio": 23, "discog": 9}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.viewcode": 1, "sphinx": 60}, "alltitles": {"audio": [[2, "module-minim.audio"]], "Audio file objects": [[2, "audio-file-objects"]], "minim": [[1, "module-minim"]], "gestalt_ratio": [[23, "gestalt-ratio"]], "utility": [[21, "module-minim.utility"]], "Utility functions": [[21, "utility-functions"]], "format_multivalue": [[22, "format-multivalue"]], "User Guide": [[30, "user-guide"]], "itunes": [[11, "module-minim.itunes"]], "iTunes": [[11, "id1"]], "MP4Audio": [[6, "mp4audio"]], "Software dependency": [[6, null], [8, null], [7, null], [3, null], [4, null], [5, null]], "WAVEAudio": [[8, "waveaudio"]], "OggAudio": [[7, "oggaudio"]], "Audio": [[3, "audio"]], "FLACAudio": [[4, "flacaudio"]], "MP3Audio": [[5, "mp3audio"]], "User authentication": [[14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [20, null], [10, null], [10, null]], "PrivateAPI": [[14, "privateapi"], [20, "privateapi"]], "Sample response": [[14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [14, null], [16, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null], [19, null]], "Subscription": [[14, null], [14, null], [14, null]], "qobuz": [[13, "module-minim.qobuz"]], "Qobuz": [[13, "id1"]], "SearchAPI": [[12, "searchapi"]], "PrivateLyricsService": [[16, "privatelyricsservice"]], "Sample": [[17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [10, null], [10, null], [10, null], [10, null], [10, null]], "WebAPI": [[17, "webapi"]], "Authorization scope": [[17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [17, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null]], "spotify": [[15, "module-minim.spotify"]], "Spotify": [[15, "id1"], [28, "spotify"]], "User authentication and authorization scope": [[20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null], [20, null]], "User authentication, authorization scope, and\n subscription": [[20, null], [20, null], [20, null], [20, null], [20, null]], "User authentication and subscription": [[20, null]], "API": [[19, "api"], [10, "api"]], "tidal": [[18, "module-minim.tidal"]], "TIDAL": [[18, "id1"], [28, "tidal"]], "Minim": [[25, "minim"]], "levenshtein_ratio": [[24, "levenshtein-ratio"]], "Getting Started": [[26, "getting-started"]], "Installation": [[26, "installation"]], "Usage": [[26, "usage"]], "Music service APIs": [[26, "music-service-apis"]], "iTunes Search API (minim.itunes.SearchAPI)": [[26, "itunes-search-api-minim-itunes-searchapi"]], "Private Qobuz API (minim.qobuz.PrivateAPI)": [[26, "private-qobuz-api-minim-qobuz-privateapi"]], "Private Spotify Lyrics Service (minim.spotify.PrivateLyricsService)": [[26, "private-spotify-lyrics-service-minim-spotify-privatelyricsservice"]], "Spotify Web API (minim.spotify.WebAPI)": [[26, "spotify-web-api-minim-spotify-webapi"]], "TIDAL API (minim.tidal.API)": [[26, "tidal-api-minim-tidal-api"]], "Private TIDAL API (minim.tidal.PrivateAPI)": [[26, "private-tidal-api-minim-tidal-privateapi"]], "Examples": [[26, "examples"], [26, "id9"]], "Searching for artists": [[26, "searching-for-artists"]], "iTunes Search API": [[26, "itunes-search-api"], [26, "id1"]], "Private Qobuz API": [[26, "private-qobuz-api"], [26, "id2"], [26, "id6"]], "Spotify Web API": [[26, "spotify-web-api"], [26, "id3"], [26, "id7"]], "TIDAL API": [[26, "tidal-api"], [26, "id4"]], "Private TIDAL API": [[26, "private-tidal-api"], [26, "id5"], [26, "id8"]], "Searching for tracks": [[26, "searching-for-tracks"]], "Creating, modifying, and deleting a personal playlist": [[26, "creating-modifying-and-deleting-a-personal-playlist"]], "Audio file handlers": [[26, "audio-file-handlers"]], "Loading and editing audio files": [[26, "loading-and-editing-audio-files"]], "Converting between audio formats": [[26, "converting-between-audio-formats"]], "Editing Audio Metadata": [[27, "editing-audio-metadata"]], "Setup": [[27, "setup"]], "Instantiating API clients": [[27, "instantiating-api-clients"]], "Finding audio files": [[27, "finding-audio-files"]], "Defining helper functions": [[27, "defining-helper-functions"]], "Converting and tagging an audio file with no metadata": [[27, "converting-and-tagging-an-audio-file-with-no-metadata"]], "Tagging an audio file with existing metadata": [[27, "tagging-an-audio-file-with-existing-metadata"]], "Getting Recommendations": [[28, "getting-recommendations"]], "Transferring Music Libraries": [[29, "transferring-music-libraries"]], "Prerequisites": [[29, "prerequisites"]], "Moving playlists": [[29, "moving-playlists"]], "From Qobuz": [[29, "from-qobuz"], [29, "id4"]], "To Spotify": [[29, "to-spotify"], [29, "id3"], [29, "id5"], [29, "id12"]], "To TIDAL": [[29, "to-tidal"], [29, "id1"], [29, "id6"], [29, "id9"]], "From Spotify": [[29, "from-spotify"], [29, "id7"]], "To Qobuz": [[29, "to-qobuz"], [29, "id2"], [29, "id8"], [29, "id11"]], "From TIDAL": [[29, "from-tidal"], [29, "id10"]], "Synchronizing favorites": [[29, "synchronizing-favorites"]], "discogs": [[9, "module-minim.discogs"]], "Discogs": [[9, "id1"]]}, "indexentries": {"minim": [[1, "module-minim"]], "module": [[1, "module-minim"], [9, "module-minim.discogs"]], "minim.discogs": [[9, "module-minim.discogs"]], "api (class in minim.discogs)": [[10, "minim.discogs.API"]], "edit_profile() (minim.discogs.api method)": [[10, "minim.discogs.API.edit_profile"]], "get_identity() (minim.discogs.api method)": [[10, "minim.discogs.API.get_identity"]], "get_profile() (minim.discogs.api method)": [[10, "minim.discogs.API.get_profile"]], "get_user_contributions() (minim.discogs.api method)": [[10, "minim.discogs.API.get_user_contributions"]], "get_user_submissions() (minim.discogs.api method)": [[10, "minim.discogs.API.get_user_submissions"]], "set_access_token() (minim.discogs.api method)": [[10, "minim.discogs.API.set_access_token"]], "set_flow() (minim.discogs.api method)": [[10, "minim.discogs.API.set_flow"]]}}) \ No newline at end of file diff --git a/src/minim/discogs.py b/src/minim/discogs.py index 9d5fb70..44b8d27 100644 --- a/src/minim/discogs.py +++ b/src/minim/discogs.py @@ -92,13 +92,11 @@ class API: To view and make changes to account information and resources, users must either provide a personal access token to this class's - constructor as a keyword argument or store it as - :code:`DISCOGS_PERSONAL_ACCESS_TOKEN` in the operating system's - environment variables, or undergo the OAuth 1.0a flow, which require - valid client credentials, using Minim. If an existing OAuth access - token/secret pair is available, it can be provided to this class's - constructor as keyword arguments to bypass the access token - retrieval process. + constructor as a keyword argument or undergo the OAuth 1.0a flow, + which require valid client credentials, using Minim. If an existing + OAuth access token/secret pair is available, it can be provided to + this class's constructor as keyword arguments to bypass the access + token retrieval process. .. tip:: @@ -350,7 +348,7 @@ def set_access_token( ) -> None: """ - Set the Discogs API personal or OAuth access token. + Set the Discogs API personal or OAuth access token (and secret). Parameters ---------- @@ -486,8 +484,6 @@ def _callback() -> str: } elif self._flow == "discogs": - access_token = \ - access_token or os.environ.get("DISCOGS_PERSONAL_ACCESS_TOKEN") if access_token is None: if self._consumer_key is None or self._consumer_secret is None: emsg = "Discogs API client credentials not provided." @@ -619,7 +615,7 @@ def get_identity(self) -> dict[str, Any]: .. code:: { - "id": , + "id": , "username": , "resource_url": , "consumer_name": @@ -651,7 +647,7 @@ def get_profile(self, username: str = None) -> dict[str, Any]: ---------- username : `str`, optional The username of whose profile you are requesting. If not - specified, the profile of the authenticated user is used. + specified, the username of the authenticated user is used. **Example**: :code:`"rodneyfool"`. @@ -670,7 +666,7 @@ def get_profile(self, username: str = None) -> dict[str, Any]: "wantlist_url": , "rank": , "num_pending": , - "id": , + "id": , "num_for_sale": , "home_page": , "location": , @@ -765,7 +761,7 @@ def edit_profile( .. code:: { - "id": , + "id": , "username": , "name": , "email": , @@ -793,6 +789,16 @@ def edit_profile( self._check_authentication("edit_profile") + if curr_abbr and curr_abbr not in ( + CURRENCIES := { + "USD", "GBP", "EUR", "CAD", "AUD", "JPY", + "CHF", "MXN", "BRL", "NZD", "SEK", "ZAR" + } + ): + emsg = (f"Invalid currency abbreviation ({curr_abbr=}). " + f"Valid values: {', '.join(CURRENCIES)}.") + raise ValueError(emsg) + return self._request( "post", f"{self.API_URL}/users/{self._username}", @@ -806,24 +812,361 @@ def edit_profile( ).json() def get_user_submissions( - self, username: str, *, page: int = None, per_page: int = None - ) -> dict[str, Any]: + self, username: str = None, *, page: int = None, + per_page: int = None) -> dict[str, Any]: """ + `User Identity > User Submissions `_: Retrieve a user's + submissions (edits made to releases, labels, and artists) by + username. + + Parameters + ---------- + username : `str`, optional + The username of the submissions you are trying to fetch. If + not specified, the username of the authenticated user is + used. + **Example**: :code:`"shooezgirl"`. + + page : `int`, keyword-only, optional + Page of results to fetch. + + per_page : `int`, keyword-only, optional + Number of results per page. + + Returns + ------- + submissions : `dict` + Submissions made by the user. + + .. admonition:: Sample + :class: dropdown + + .. code:: + + { + "pagination": { + "items": , + "page": , + "pages": , + "per_page": , + "urls": {} + }, + "submissions": { + "artists": [ + { + "data_quality": , + "id": , + "name": , + "namevariations": [], + "releases_url": , + "resource_url": , + "uri": + } + ], + "labels": [], + "releases": [ + { + "artists": [ + { + "anv": , + "id": , + "join": , + "name": , + "resource_url": , + "role": , + "tracks": + } + ], + "community": { + "contributors": [ + { + "resource_url": , + "username": + }, + { + "resource_url": , + "username": + } + ], + "data_quality": , + "have": , + "rating": { + "average": , + "count": + }, + "status": , + "submitter": { + "resource_url": , + "username": + }, + "want": + }, + "companies": [], + "country": , + "data_quality": , + "date_added": , + "date_changed": , + "estimated_weight": , + "format_quantity": , + "formats": [ + { + "descriptions": [], + "name": , + "qty": + } + ], + "genres": [], + "id": , + "images": [ + { + "height": , + "resource_url": , + "type": , + "uri": , + "uri150": , + "width": + }, + { + "height": , + "resource_url": , + "type": , + "uri": , + "uri150": , + "width": + } + ], + "labels": [ + { + "catno": , + "entity_type": , + "id": , + "name": , + "resource_url": + } + ], + "master_id": , + "master_url": , + "notes": , + "released": , + "released_formatted": , + "resource_url": , + "series": [], + "status": , + "styles": [], + "thumb": , + "title": , + "uri": , + "videos": [ + { + "description": , + "duration": , + "embed": , + "title": , + "uri": + }, + { + "description": , + "duration": , + "embed": , + "title": , + "uri": + }, + { + "description": , + "duration": , + "embed": , + "title": , + "uri": + } + ], + "year": + } + ] + } + } """ - pass + if username is None: + if hasattr(self, "_username"): + username = self._username + else: + raise ValueError("No username provided.") + + return self._get_json( + f"{self.API_URL}/users/{username}/submissions", + params={"page": page, "per_page": per_page} + ) def get_user_contributions( - self, username: str, *, page: int = None, per_page: int = None, - sort: str = None, sort_order: str = None) -> dict[str, Any]: + self, username: str = None, *, page: int = None, + per_page: int = None, sort: str = None, sort_order: str = None + ) -> dict[str, Any]: """ + `User Identity > User Contributions `_: Retrieve a user's + contributions (releases, labels, artists) by username. + Parameters + ---------- + username : `str`, optional + The username of the contributions you are trying to fetch. + If not specified, the username of the authenticated user is + used. + + **Example**: :code:`"shooezgirl"`. + + page : `int`, keyword-only, optional + Page of results to fetch. + + per_page : `int`, keyword-only, optional + Number of results per page. + + sort : `str`, keyword-only, optional + Sort items by this field. + + **Valid values**: :code:`"label"`, :code:`"artist"`, + :code:`"title"`, :code:`"catno"`, :code:`"format"`, + :code:`"rating"`, :code:`"year"`, and :code:`"added"`. + + sort_order : `str`, keyword-only, optional + Sort items in a particular order. + + **Valid values**: :code:`"asc"` and :code:`"desc"`. + + Returns + ------- + contributions : `dict` + Contributions made by the user. + + .. admonition:: Sample + :class: dropdown + + .. code:: + + { + "pagination": { + "items": , + "page": , + "pages": , + "per_page": , + "urls": {} + }, + "contributions": [ + { + "artists": [ + { + "anv": , + "id": , + "join": , + "name": , + "resource_url": , + "role": , + "tracks": + } + ], + "community": { + "contributors": [ + { + "resource_url": , + "username": + }, + { + "resource_url": , + "username": + } + ], + "data_quality": , + "have": , + "rating": { + "average": , + "count": + }, + "status": , + "submitter": { + "resource_url": , + "username": + }, + "want": + }, + "companies": [], + "country": , + "data_quality": , + "date_added": , + "date_changed": , + "estimated_weight": , + "format_quantity": , + "formats": [ + { + "descriptions": [], + "name": , + "qty": + } + ], + "genres": [], + "id": , + "images": [ + { + "height": , + "resource_url": , + "type": , + "uri": , + "uri150": , + "width": + } + ], + "labels": [ + { + "catno": , + "entity_type": , + "id": , + "name": , + "resource_url": + } + ], + "master_id": , + "master_url": , + "notes": , + "released": , + "released_formatted": , + "resource_url": , + "series": [], + "status": , + "styles": [], + "thumb": , + "title": , + "uri": , + "videos": [ + { + "description": , + "duration": , + "embed": , + "title": , + "uri": + } + ], + "year": + } + ] + } """ - - pass + + if username is None: + if hasattr(self, "_username"): + username = self._username + else: + raise ValueError("No username provided.") + + return self._get_json( + f"{self.API_URL}/users/{username}/contributions", + params={"page": page, "per_page": per_page, "sort": sort, + "sort_order": sort_order} + ) ### USER COLLECTION #######################################################