Skip to main content

mopidy-tunein

Latest PyPI version CI build status Test coverage

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 to true.
  • tunein/filter: Limit the search results to station or program. Leave it blank to turn off filtering. Defaults to blank.
  • tunein/timeout: Milliseconds before giving up waiting for results. Defaults to 5000.
  • 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 to mp3, aac. Set it to mp3 if 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

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

mopidy_tunein-2.0.0.tar.gz (30.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mopidy_tunein-2.0.0-py3-none-any.whl (21.4 kB view details)

Uploaded Python 3

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

Hashes for mopidy_tunein-2.0.0.tar.gz
Algorithm Hash digest
SHA256 f74683ca63c7d59852f24b3661afa31303fdbdc1af5d115529fc4003e4fd47a3
MD5 97e8f58789028dcd5951bf45d07ef0fe
BLAKE2b-256 09dcde365d2853799de5fde818bdef77d4bdfc4fd0d518d7ba3b3af612a6c4a2

See more details on using hashes here.

Provenance

The following attestation bundles were made for mopidy_tunein-2.0.0.tar.gz:

Publisher: release.yml on mopidy/mopidy-tunein

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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

Hashes for mopidy_tunein-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 781262ef7fdcab337f94ca3d0a710a88b5aabb8c17afddcd0df59889c9814aa3
MD5 55888bdba78f81600efced0ccd967496
BLAKE2b-256 f911f8178b14ca3b8eacad4a3f792077291bdb765a1b2a74175e0279eea49f76

See more details on using hashes here.

Provenance

The following attestation bundles were made for mopidy_tunein-2.0.0-py3-none-any.whl:

Publisher: release.yml on mopidy/mopidy-tunein

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 files

1.1.0

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

0.4.1

2 files

0.4.0

2 files

0.3.0

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

1 file

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page