Last Updated on September 3, 2020
I’ve put a few internet radio station players through their paces in recent weeks.
I was fairly positive about odio, even though it’s not released under an open source license and consumes massive globs of memory. But the developer is beavering away on a new release and intends to open source the code. I’ll definitely write an updated review when/if that happens. I’ve also covered Shortwave, a GTK3 based radio player written in Rust. My favorites to date are Radiotray-NG and PyRadio.
This time, I’m putting StreamTuner2 under the microscope. StreamTuner2 is a GUI for browsing internet radio directories, music collections, and video services – grouped by genres or categories. It runs your preferred audio player or streamripper for recording.
StreamTuner2 is an independent rewrite of StreamTuner1. Whereas the original was developed in C, the rewrite is coded in Python. If you ever used the original StreamTuner 0.99 software, you’ll be familiar with StreamTuner2’s interface, as both share many similarities. The software is released into the public domain, so you can do anything you like with the source code.
Installation
The developer provides official, albeit rudimentary, packages for Debian / Ubuntu, and Fedora distributions. There are also packages available for Arch Linux, openSUSE, Pardus Linux, Lighthouse / Pippy, Mandriva, and Lubuntu. Alternatively, you can grab the source code.
The source code for the latest version (at the time of writing this is version 2.2.1) can be downloaded from the project’s website, https://milki.include-once.org/streamtuner2/. You’ll need to uncompress the txz file and install the st2.py file.
$ xz -d < streamtuner2-2.2.1.src.txz | tar xvf -
$ cd streamtuner2/
All you need to do is install the st2.py file by typing at a shell:
$ sudo make install
This installs the software to /usr/share/streamtuner2. If you prefer the software in a different directory, edit the DEST line of the Makefile.
I’ve listed below the files that are installed.
mkdir -p /usr/share/streamtuner2/channels mkdir -p /usr/share/doc/streamtuner2/help/img install -m 755 bin /usr/bin/streamtuner2 install -m 644 *py -t /usr/share/streamtuner2 install -m 644 gtk3* -t /usr/share/streamtuner2 install -m 644 channels/*py -t /usr/share/streamtuner2/channels install -m 644 help/*page -t /usr/share/doc/streamtuner2/help install -m 644 help/img/* -t /usr/share/doc/streamtuner2/help/img install -m 644 CREDITS -t /usr/share/streamtuner2 install -m 644 README -t /usr/share/doc/streamtuner2 install -m 644 *.desktop -t /usr/share/applications/ install -m 644 icon.png /usr/share/pixmaps/streamtuner2.png install -m 644 help/str*2.1 -t /usr/share/man/man1/
Your system needs Python 2, PyGTK, LXML, PyQuery, PIL/Python-Imaging, Python-pyquery, python-requests, and Python-Keybinder installed.
Next page: Page 2 – Configuration
Pages in this article:
Page 1 – Introduction / Installation
Page 2 – Configuration
Page 3 – In Operation
Page 4 – Other Features
Page 5 – Summary
Yeah, who haven’t used stream tuner. Pity the second iteration crashes a little too much for my taste. At least on Debian
Debian (11) user here, too — Streamtuner2 works flawlessly.
Thanks for the review, I’d never heard of StreamTuner2. Works pretty well on Fedora from a couple of hours usage.
What a Python re-write means is that it will fail to install in some significant percentage of attempts due to installed differences in python installations. As “new, kewl” paradigms in python rise, working installations will mysteriously fail.
What truly amazes me is that members of the python community were some of the MOST vocal about dependency hell
More or less a well accepted solution is to put Python, dependencies and the app into a userland and run it in a container. It gives freedom, flexibility, repeated environments – one of the reason why Docker and Kubernetes are so popular.