Audio sinks¶
- class spotify.AlsaSink(session, device='default')[source]¶
Audio sink for systems using ALSA, e.g. most Linux systems.
This audio sink requires pyalsaaudio. pyalsaaudio is probably packaged in your Linux distribution.
For example, on Debian/Ubuntu you can install it from APT:
sudo apt-get install python-alsaaudio
Or, if you want to install pyalsaaudio inside a virtualenv, install the ALSA development headers from APT, then pyalsaaudio:
sudo apt-get install libasound2-dev pip install pyalsaaudio
The
device
keyword argument is passed on toalsaaudio.PCM
. Please refer to the pyalsaaudio documentation for details.Example:
>>> import spotify >>> session = spotify.Session() >>> audio = spotify.AlsaSink(session) >>> loop = spotify.EventLoop(session) >>> loop.start() # Login, etc... >>> track = session.get_track('spotify:track:3N2UhXZI4Gf64Ku3cCjz2g') >>> track.load() >>> session.player.load(track) >>> session.player.play() # Listen to music...
- class spotify.PortAudioSink(session)[source]¶
Audio sink for PortAudio.
PortAudio is available for many platforms, including Linux, macOS, and Windows. This audio sink requires PyAudio. PyAudio is probably packaged in your Linux distribution.
On Debian/Ubuntu you can install PyAudio from APT:
sudo apt-get install python-pyaudio
Or, if you want to install PyAudio inside a virtualenv, install the PortAudio development headers from APT, then PyAudio:
sudo apt-get install portaudio19-dev pip install --allow-unverified=pyaudio pyaudio
On macOS you can install PortAudio using Homebrew:
brew install portaudio pip install --allow-unverified=pyaudio pyaudio
For an example of how to use this class, see the
AlsaSink
example. Just replaceAlsaSink
withPortAudioSink
.