# AudioPlayer

## 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` will not work :-(
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](https://www.xspf.org/jspf) version off XSPF.
Each Category has its own folder in the *Playlist* folder.
You can create categories as you like.
Every category 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.
Raw data
{
"_id": null,
"home_page": null,
"name": "tui-audioplayer",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.13",
"maintainer_email": null,
"keywords": "textual, cli, WebRadio, command line, console",
"author": "Alfredo Cubitos",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/bd/d8/a38a6316aa18e11ae2c4edb48fcd8aacd9dc619d65fd7675536f5287d24e/tui_audioplayer-0.1.4.tar.gz",
"platform": null,
"description": "# AudioPlayer\n\n\n## A textual.app for playing online radio streams\nThe app was actually developed for the Raspberry Pi to provide a simple but attractive interface for a Raspi LCD display.\nHowever, the app works in principle on all Linux distributions that meet the following requirements:\n\n* a terminal which supports Rich Python library\n* can run a VLC-Player\n* uses ALSA soundsystem (also pipewire with ALSA)\n\nYou can run the app also remote with *ssh*.\n\nThe app can also be controlled in a browser. \nTo do so go into the `src/tui_audioplayer` directory and run `python3 server.py`\n\n## Installation\nyou can install the app with ```pip install tui_audioplayer``` \n`pipx` will not work :-(\n\nYou can also clone the repository \ngo into te *src* folder and run ```python3 -m tui_audioplayer```\n\n### On Raspi\nIf you want to install the package on a Raspi, you will possibly get an error.\nThe problem is the `pyalsa` package. This package has to be installed with `sudo apt install python3-pyalsa`\nThen run `pip install tui_audioplayer` again.\n\n## Playlist\nThe Playlist is the [JSON](https://www.xspf.org/jspf) version off XSPF. \n\nEach Category has its own folder in the *Playlist* folder.\nYou can create categories as you like.\n\nEvery category folder contains a playlist file (.jspf). The playlist file has the same name in lower case as the category e.g.:\ncategory *Jazz* playlist file name *jazz.jspf*.\n\nThe playlist entries -the radio stations- are organized in *tracks* as followed:\n\n* **location**: the url (in []) where the music comes from\n* **title**: the radio station name\n* **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.\n \nTo open and close the Playlist press the *p* key\n\n\n\n## Issues\n* Key events are ignored for changing the volume, so changing the volume works only with mouse scrolling up or down.",
"bugtrack_url": null,
"license": null,
"summary": "TUI WebRadio player",
"version": "0.1.4",
"project_urls": {
"Homepage": "https://github.com/AlfredoCubitos/tui_audioplayer"
},
"split_keywords": [
"textual",
" cli",
" webradio",
" command line",
" console"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "e8d645e614aedead17fcd4c4d21456eb0ee0737ed6214f08333b0aa014210ed5",
"md5": "5516437b088794d29529bfcafbd3bae5",
"sha256": "0b2eceff2c99e2443e5949f91a30078f38cf3081a18c7286149b0ef3fe7d2842"
},
"downloads": -1,
"filename": "tui_audioplayer-0.1.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5516437b088794d29529bfcafbd3bae5",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.13",
"size": 7693738,
"upload_time": "2025-09-07T11:11:01",
"upload_time_iso_8601": "2025-09-07T11:11:01.517931Z",
"url": "https://files.pythonhosted.org/packages/e8/d6/45e614aedead17fcd4c4d21456eb0ee0737ed6214f08333b0aa014210ed5/tui_audioplayer-0.1.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "bdd8a38a6316aa18e11ae2c4edb48fcd8aacd9dc619d65fd7675536f5287d24e",
"md5": "d6e7f28e28cae942737f5b1753448e02",
"sha256": "3e5595782902d59673d74df4cf7b65ef6bfa9292b356634611fb395593c25a23"
},
"downloads": -1,
"filename": "tui_audioplayer-0.1.4.tar.gz",
"has_sig": false,
"md5_digest": "d6e7f28e28cae942737f5b1753448e02",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.13",
"size": 7669440,
"upload_time": "2025-09-07T11:11:10",
"upload_time_iso_8601": "2025-09-07T11:11:10.577203Z",
"url": "https://files.pythonhosted.org/packages/bd/d8/a38a6316aa18e11ae2c4edb48fcd8aacd9dc619d65fd7675536f5287d24e/tui_audioplayer-0.1.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-07 11:11:10",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "AlfredoCubitos",
"github_project": "tui_audioplayer",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "tui-audioplayer"
}