All GUI programs are based/use streamripper.
no gui/bash/terminal version:
hostnamectl; # tested with Operating System: Debian GNU/Linux 10 (buster) Kernel: Linux 4.19.0-8-amd64 Architecture: x86-64 su - root; # become root apt update; apt install streamripper; Ctrl+D; # logoff root # get the pls playliset wget https://100xr.com/listen/100xr-he-aac.pls # look what is inside cat 100xr-he-aac.pls numberofentries=1 File1=http://stream.100xr.com:80/aac Title1=100 XR - The Net's #1 Rock Station!!! HE-AAC stream Length1=-1 Version=2 # make the dir mkdir -p /home/user/Music/WebRadio/ # start recording the stream streamripper http://stream.100xr.com:80/aac -d /home/user/Music/WebRadio/ -o larger -t -u "FreeAmp/2.x"
there is no pre compiled package for Centos7 / Redhat, so you will have to compile it yourself, but because you are a pro you can do it.
1. get the latest version of the source from https://sourceforge.net/projects/streamripper/files/streamripper%20%28current%29/
and unpack e.g. into /software/WebRadio
yum install glib2-devel ./configure make sudo make install; # will need root rights to install binary to system # where is the binary? which streamripper /usr/local/bin/streamripper # test run streamripper -v Streamripper 1.64.6 # HOORAY :) streamripper Usage: streamripper URL [OPTIONS] Opts: -h - Print this listing -v - Print version info and quit -a [file] - Rip to single file, default name is timestamped -A - Don't write individual tracks -d dir - The destination directory -D pattern - Write files using specified pattern -s - Don't create a directory for each stream -r [[ip:]port] - Create relay server on base ip:port, default port 8000 -R #connect - Max connections to relay, default 1, -R 0 is no limit -L file - Create a relay playlist file -z - Don't scan for free ports if base port is not avail -p url - Use HTTP proxy server at -o (always|never|larger|version) - When to write tracks in complete -t - Don't overwrite tracks in incomplete -c - Don't auto-reconnect -l seconds - Number of seconds to run, otherwise runs forever -M megabytes - Stop ripping after this many megabytes -q [start] - Add sequence number to output file -u useragent - Use a different UserAgent than "Streamripper" -w rulefile - Parse metadata using rules in file. -m timeout - Number of seconds before force-closing stalled conn -k count - Leave tracks in incomplete -I interface - Rip from specified interface (e.g. eth0) -T - Truncate duplicated tracks in incomplete -E command - Run external command to fetch metadata --quiet - Don't print ripping status to console --stderr - Print ripping status to stderr (old behavior) --debug - Save debugging trace ID3 opts (mp3/aac/nsv): [The default behavior is adding ID3V2.3 only] -i - Don't add any ID3 tags to output file --with-id3v1 - Add ID3V1 tags to output file --without-id3v2 - Don't add ID3V2 tags to output file Splitpoint opts (mp3 only): --xs-none - Don't search for silence --xs-offset=num - Shift relative to metadata (msec) --xs-padding=num:num - Add extra to prev:next track (msec) --xs-search-window=num:num - Search window relative to metadata (msec) --xs-silence-length=num - Expected length of silence (msec) --xs2 - Use new algorithm for silence detection Codeset opts: --codeset-filesys=codeset - Specify codeset for the file system --codeset-id3=codeset - Specify codeset for id3 tags --codeset-metadata=codeset - Specify codeset for metadata --codeset-relay=codeset - Specify codeset for the relay stream # example webradio stream ripping streamripper http://s8.myradiostream.com:58238/listen.pls?sid=1 -d /home/user/Music/WebRadio/ -o larger -t -u "FreeAmp/2.x" # the pls contains
NumberOfEntries=1 File1=http://s8.myradiostream.com:58238/; Title1=Greatest Hits Non-Stop Length1=-1
with gui: to fire it up
- one will need some form of javaruntime installed
- java did crossos support quiet nicely, so you can run this on OSX, Windows and Linux, not a problem
yum list installed |grep java abrt-java-connector.x86_64 1.0.6-12.el7 @base java-1.8.0-openjdk.x86_64 1:22.214.171.124-0.b14.el7_4 @updates java-1.8.0-openjdk-headless.x86_64 1:126.96.36.199-0.b14.el7_4 @updates # download StreamRipStar https://sourceforge.net/projects/stripper/ # the sha512sum should be b80fb56697ee046087379bcb85bbf41054e26e08047ac2911fb4c426d6e2b759ce5587ec513db1d740512e07732cd4404935ba46b483b4a34904f8698063b82b StreamRipStar-0.6.10.jar java -jar /home/user/software/WebRadio/StreamRipStar-0.6.9.jar; # start it up
now all you need is a cool webradio station to tune in such as:
hit the red record button and off you go 🙂
GREAT WORK GUYS! 🙂
THANKS A LOT!
This thing does it all:
thank you http://Mario.include-once.org
“Microsoft is the Empire. Apple is the Rebels. We are the Ewoks.”
# tested on cat /etc/debian_version 8.6 uname -a Linux debian 3.16.0-4-686-pae #1 SMP Debian 3.16.36-1+deb8u1 (2016-09-03) i686 GNU/Linux # had a little trouble installing it under Debian8 because it is not in the main repositories # but basically what you do sudo bash; # become root mkdir /software/webradio; # this is to keep some order cd /software/webradio; # use what we just created wget http://milki.include-once.org/streamtuner2/streamtuner2-2.1.9.deb; # download dpkg -i streamtuner2-2.1.9.deb; # and realize it fails with some python dependencies aptitude install streamtuner2; # let it complete the job :) # and while we are at it, if you want to do the recording you will need streamripper as well apt-get install streamripper; # install streamripper wget http://www.100xr.com/listen/100xr-he-aac.pls; # download webradio playlist file cat 100xr-he-aac.pls; # check for ip:port/url File1=http://188.8.131.52:8000 streamripper http://184.108.40.206:8000; # start recording # THANKS TO ALL INVOLVED! IT'S INCREDIBLE! # 100 XR - The Net's #1 Rock Station!!! HE-AAC stream ROCKSSS!
How to add your own stations:
it is actually DRAG AND DROP MY FRIEND 😀
is an internet radio browser. It looks up the
categorized music stations from various directory services:
- Xiph.org (utilizing a faster caching service)
- Jamendo (radios, genres, albums and playlists)
- MyOggRadio (open source stream directory project)
- Youtube (for Music videos)
- SurfMusik (International listings)
DMOZ/Google stations MusicGoal
basic.ch DJ mixes
Meanwhile it works mostly stable and most functions are implemented. It
isn’t optimized for speed however. Also it will always consume more
memory than the original C implementation. And Pygtk makes it slightly
Unlike the original it loads favicons for music stations, and gives a friendlier
overview. The station lists and table columns are less configurable currently.
It’s supposed to support a wider array of audio formats and players. For station
recording it still chains to streamripper. While some lists (DMOZ) only have
homepage links at the moment, others (like modarchive) provide direct download
The long awaited console-only mode is there, which allows to start playing individual
radios without invoking the GUI, and also supports exporting the station lists as JSON.
An experimental yp.shoutcast wrapper module for streamtuner1 is also there.
You can just download the installer,
extract and run the application as-is on most BSD/Linux systems. On Windows
it requires manual installation of Python+Gtk
(use this 33MB pkg: sf.net/win32pyngtk.exe…)
first, and is not guaranteed to run.
The application is released into the Public Domain. It’s open source,
no strings attached.
Streamtuner2 has already been properly packaged for a few distributions. You
should rather use these packages than the autogenerated .deb/.rpms:
Revision history (source control management) is kept in a fossil repository.
- only together we can create a truly free world
- plz support dwaves to keep it up & running!
- (yes the info on the internet is (mostly) free but beer is still not free (still have to work on that))
- really really hate advertisement
- contribute: whenever a solution was found, blog about it for others to find!
- talk about, recommend & link to this blog and articles
- thanks to all who contribute!