mopidy-tunein
Mopidy extension for playing music from TuneIn. Listen to the world's radio with 70,000 stations of music, sports and news streaming from every continent.
This product uses TuneIn but is not endorsed, certified or otherwise approved in any way by TuneIn. TuneIn is the registered trade mark of TuneIn Inc.
Installation
Install by running:
python3 -m pip install mopidy-tunein
See https://mopidy.com/ext/tunein/ for alternative installation methods.
Most stations stream MP3, which the GStreamer plugins that Mopidy already
needs can decode. Some stations only stream AAC. To play those, install
gstreamer1.0-plugins-bad or gstreamer1.0-libav, or the packages that hold
these GStreamer plugin sets on your system. If you do not want the AAC
stations at all, see the tunein/formats config value below.
Configuration
The extension is enabled by default when it is installed. Configuration is not required, but you can add this to your Mopidy configuration file:
[tunein]
timeout = 5000
formats = mp3, aac
The following configuration values are available:
tunein/enabled: If the TuneIn extension should be enabled or not. Defaults totrue.tunein/filter: Limit the search results tostationorprogram. Leave it blank to turn off filtering. Defaults to blank.tunein/timeout: Milliseconds before giving up waiting for results. Defaults to5000.tunein/formats: The stream formats to ask TuneIn for, as a comma separated list. TuneIn leaves out the stations that it cannot give you in any of these formats. Defaults tomp3, aac. Set it tomp3if you do not have the GStreamer plugins for AAC. Mopidy plays the MP3 stream of a station when there is one, and uses AAC only for the stations that have no MP3 stream.tunein/location: The place to use for the "Local Radio" category, as a comma separated latitude and longitude pair, e.g.51.5,-0.13. Leave it blank to let TuneIn choose the place from your IP address.
Usage
Browse the "TuneIn" directory to find stations by category, by location, or among the ones that are popular now. TuneIn gives 25 stations at a time, so a category that holds more ends with a "More stations" entry that opens the next 25.
Known issues
The following functionality is not implemented:
- User login and access to saved stations.
Project resources
Development
Set up development environment
Clone the repo using, e.g. using gh:
gh repo clone mopidy/mopidy-tunein
Enter the directory, and install dependencies using uv:
cd mopidy-tunein/
uv sync
Running tests
To run all tests and linters in isolated environments, use tox:
tox
To only run tests, use pytest:
pytest
To format the code, use ruff:
ruff format .
To check for lints with ruff, run:
ruff check .
To check for type errors, use pyright:
pyright .
Making a release
To make a release to PyPI, go to the project's GitHub releases page and click the "Draft a new release" button.
In the "choose a tag" dropdown, select the tag you want to release or create a
new tag, e.g. v0.1.0. Add a title, e.g. v0.1.0, and a description of the changes.
Decide if the release is a pre-release (alpha, beta, or release candidate) or should be marked as the latest release, and click "Publish release".
Once the release is created, the release.yml GitHub Action will automatically
build and publish the release to
PyPI.
Credits
- Original author: Nick Steel
- Current maintainer: Nick Steel
- Contributors
Thanks to Marius Wyss for the original version of this extension, and to Brian Hornsby's XBMC plugin, which it was based on.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mopidy_tunein-2.0.0.tar.gz.
File metadata
- Download URL: mopidy_tunein-2.0.0.tar.gz
- Upload date:
- Size: 30.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f74683ca63c7d59852f24b3661afa31303fdbdc1af5d115529fc4003e4fd47a3
|
|
| MD5 |
97e8f58789028dcd5951bf45d07ef0fe
|
|
| BLAKE2b-256 |
09dcde365d2853799de5fde818bdef77d4bdfc4fd0d518d7ba3b3af612a6c4a2
|
Provenance
The following attestation bundles were made for mopidy_tunein-2.0.0.tar.gz:
Publisher:
release.yml on mopidy/mopidy-tunein
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mopidy_tunein-2.0.0.tar.gz -
Subject digest:
f74683ca63c7d59852f24b3661afa31303fdbdc1af5d115529fc4003e4fd47a3 - Sigstore transparency entry: 2835760998
- Sigstore integration time:
-
Permalink:
mopidy/mopidy-tunein@a12326304bbdcfe80b99fcdfd941442e47ae2c2c -
Branch / Tag:
refs/tags/v2.0.0 - Owner: https://github.com/mopidy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a12326304bbdcfe80b99fcdfd941442e47ae2c2c -
Trigger Event:
release
-
Statement type:
File details
Details for the file mopidy_tunein-2.0.0-py3-none-any.whl.
File metadata
- Download URL: mopidy_tunein-2.0.0-py3-none-any.whl
- Upload date:
- Size: 21.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
781262ef7fdcab337f94ca3d0a710a88b5aabb8c17afddcd0df59889c9814aa3
|
|
| MD5 |
55888bdba78f81600efced0ccd967496
|
|
| BLAKE2b-256 |
f911f8178b14ca3b8eacad4a3f792077291bdb765a1b2a74175e0279eea49f76
|
Provenance
The following attestation bundles were made for mopidy_tunein-2.0.0-py3-none-any.whl:
Publisher:
release.yml on mopidy/mopidy-tunein
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mopidy_tunein-2.0.0-py3-none-any.whl -
Subject digest:
781262ef7fdcab337f94ca3d0a710a88b5aabb8c17afddcd0df59889c9814aa3 - Sigstore transparency entry: 2835761130
- Sigstore integration time:
-
Permalink:
mopidy/mopidy-tunein@a12326304bbdcfe80b99fcdfd941442e47ae2c2c -
Branch / Tag:
refs/tags/v2.0.0 - Owner: https://github.com/mopidy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a12326304bbdcfe80b99fcdfd941442e47ae2c2c -
Trigger Event:
release
-
Statement type: