librespot-python/docs/index.md

94 lines
2.5 KiB
Markdown
Raw Normal View History

2021-05-15 04:10:47 +02:00
![](https://img.shields.io/github/license/kokarare1212/librespot-python.svg)
![](https://img.shields.io/github/stars/kokarare1212/librespot-python.svg)
![](https://img.shields.io/github/forks/kokarare1212/librespot-python.svg)
[![](https://deepsource.io/gh/kokarare1212/librespot-python.svg/?label=active+issues&show_trend=true)](https://deepsource.io/gh/kokarare1212/librespot-python/?ref=repository-badge)
2021-05-17 05:58:04 +02:00
2021-05-15 04:09:03 +02:00
# Get Started
2021-05-17 05:58:04 +02:00
2021-05-16 01:08:54 +02:00
## Contents
2021-05-17 05:58:04 +02:00
2021-05-17 06:45:34 +02:00
* [Get Started](index.md)
2021-05-16 01:08:54 +02:00
* [Supported Futures](supported.md)
* [API Reference](api.md)
2021-05-17 05:58:04 +02:00
2021-05-15 04:09:03 +02:00
## What's librespot-python?
2021-05-17 05:58:04 +02:00
librespot-python is a python port of Spotify's open source client library [librespot](https://github.com/librespot-org/librespot).
It was created to play Spotify on various platforms and devices.
2021-05-15 04:09:03 +02:00
## What do you need?
2021-05-17 05:58:04 +02:00
In order to develop with this library, you need to use Python.
Python can be downloaded from [the official website here](https://python.org/).
2021-05-15 04:09:03 +02:00
## Disclaimer
2021-05-17 05:58:04 +02:00
Please keep in mind that this library is not like Spotify approved.
Therefore, the worst that can happen is that you will be banned from Spotify.
Also, please keep in mind that this library is in alpha and may behave in unintended ways.
2021-05-15 04:09:03 +02:00
## Installation
2021-05-17 05:58:04 +02:00
You can download this library in the following way.
Stable Version ***still not working.**
2021-05-15 04:09:03 +02:00
```commandline
pip install librespot
```
2021-05-17 05:58:04 +02:00
Snapshot Version ***Recommended**
2021-05-15 04:09:03 +02:00
```commandline
pip install git+https://github.com/kokarare1212/librespot-python
```
2021-05-17 05:58:04 +02:00
2021-05-15 04:09:03 +02:00
## Usage
2021-05-17 05:58:04 +02:00
2021-05-15 04:09:03 +02:00
### Get Spotify's OAuth token
2021-05-17 05:58:04 +02:00
2021-05-15 04:09:03 +02:00
```python
from librespot.core import Session
session = Session.Builder() \
.user_pass("Username", "Password") \
.create()
aceess_token = session.tokens().get("playlist-read")
```
2021-05-17 05:58:04 +02:00
2021-05-15 04:09:03 +02:00
### Get Music Stream
2021-05-17 05:58:04 +02:00
*Currently, music streaming is supported, but it may cause unintended behavior.
2021-05-15 04:09:03 +02:00
```python
from librespot.core import Session
from librespot.metadata import TrackId
from librespot.player.codecs import AudioQuality, VorbisOnlyAudioQuality
session = Session.Builder() \
.user_pass("Username", "Password") \
.create()
track_id = TrackId.from_uri("spotify:track:xxxxxxxxxxxxxxxxxxxxxx")
stream = session.content_feeder().load(track_id, VorbisOnlyAudioQuality(AudioQuality.AudioQuality.VERY_HIGH), False, None)
# stream.input_stream.stream().read() to get one byte of the music stream.
# ex: 1 (If there is no more voice data, -1 is received as the result.)
```
2021-05-17 05:58:04 +02:00
2021-05-15 04:09:03 +02:00
## Debug
2021-05-17 05:58:04 +02:00
To display the debug information, you need to inject the following code at the top of the code.
2021-05-15 04:09:03 +02:00
```python
import logging
logging.basicConfig(level=logging.DEBUG)
```