Skip to main content

AudioPlayer

New in this Version

-- 28.12.2025 --

  • New category/genre unsorted added
  • After entering a title and a url in Play Url this value are stored automatically in unsorted
  • Newly added items appear after a restart in the Unsorted playlist
  • Pipx installation works when pyalsa is installed before with your package manager (see Installation)

-- 23.12.2025 --

  • Play URL added. Now you can enter an url to play it

-- 21.12.2025 --

  • Small design changes
  • Playlist items can now be played by hiting enter key or mouse click
  • Prepared for playlist editing - but still not working

A textual.app for playing online radio streams

The app was actually developed for the Raspberry Pi to provide a simple but attractive interface for a Raspi LCD display. However, the app works in principle on all Linux distributions that meet the following requirements:

  • a terminal which supports Rich Python library
  • can run a VLC-Player
  • uses ALSA soundsystem (also pipewire with ALSA)

You can run the app also remote with ssh.

The app can also be controlled in a browser.
To do so go into the src/tui_audioplayer directory and run python3 server.py

Installation

you can install the app with pip install tui_audioplayer

Pipx

pipx will work when pyalsa is installed manually

I could not manage to install pyalsa via pip, so I tried the following steps, which works for me:

  • first install pyalsa with your package manager
  • Create a softlink from the pyalsa directory to the pipx venv-directory

Typically pyalsa is installed in /usr/lib64/python3.13/site-packages
After installing tui_audioplayer with pipx, the pipx venv for tui_audioplayer is located in $HOME./local/share/pipx/venvs/tui-audioplayer/lib/python3.13/site-packages/

> cd $HOME./local/share/pipx/venvs/tui-audioplayer/lib/python3.13/site-packages/
> ln -s pyalsa /usr/lib64/python3.13/site-packages/pyalsa

You can also clone the repository
go into te src folder and run python3 -m tui_audioplayer

On Raspi

If you want to install the package on a Raspi, you will possibly get an error. The problem is the pyalsa package. This package has to be installed with sudo apt install python3-pyalsa Then run pip install tui_audioplayer again.

Playlist

The Playlist is the JSON version off XSPF.

Each Category/Genre has its own folder in the Playlist folder. You can create categories as you like.

Every category/genre folder contains a playlist file (.jspf). The playlist file has the same name in lower case as the category e.g.: category Jazz playlist file name jazz.jspf.

The playlist entries -the radio stations- are organized in tracks as followed:

  • location: the url (in []) where the music comes from
  • title: the radio station name
  • image: the file name for the image of the radio station. The image is a 400x400 png in the same folder of the playlist. Please avoid spaces in file names.

To open and close the Playlist press the p key

Issues

  • Key events are ignored for changing the volume, so changing the volume works only with mouse scrolling up or down.

Metadata

Release files for tui-audioplayer 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tui-audioplayer 0.1.7
File Size Uploaded
tui_audioplayer-0.1.7.tar.gz 7.7 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for tui-audioplayer 0.1.7
File Interpreter ABI Platform
tui_audioplayer-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 15.4 MB

Release files / tui_audioplayer-0.1.7.tar.gz

Download URL tui_audioplayer-0.1.7.tar.gz
Size 7.7 MB
Tags Source
SHA-256 checksum
How to use checksums
ab5ed34e229f5d2b2094a59a9f377618223ae0677c0c98642bc17bdd6013bd72
BLAKE2b-256 checksum
How to use checksums
1233f8f6390f9253e910dde98e701830192f35a4ab2cf692824d7ed48b1e2666
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"openSUSE Tumbleweed","version":"20251225","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / tui_audioplayer-0.1.7-py3-none-any.whl

Download URL tui_audioplayer-0.1.7-py3-none-any.whl
Size 7.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
ca5ea1eb2cf02c1e10afd34a1abd248d18c94b78e49d3919dcabb152f2dccf69
BLAKE2b-256 checksum
How to use checksums
7990b12bf5dcfefe52ac40b32e23c7ca9dd79dbd556e6986edf715ff603c5872
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"openSUSE Tumbleweed","version":"20251225","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release 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