Fails to build with GCC 14
I am trying out latest Streamripper , Windows version with Winamp. there is a tutorial how to use Streamripper with Winamp 2 & 3 , however I have Winamp v5.8. Clicking on a stream in Shouthcast does not bring up Winamp nor Streamripper. Could some one provide some help how to make it actually work and perhaps update the tutorial? Thank You !
I am trying out latest Streamripper , Windows version with Winamp. there is a tutorial how to use Streamripper with Winamp 2 & 3 , however I have Winamp v5.8. Clicking on a stream in Shouthcast does not bring up Winamp nor Streamripper. Could some one provide some help how to make it actually work ? Thank You !
This appears to be a bug with UTF encoding in the tags, which streamripper doesn't handle. Unfortunately, this results in loss of all the metadata since gibberish info is written to the cue.
I am trying to use "streamripper" package from ENTWARE/OPTWARE to record a Shoutcast stream However, getting an error message: Access forbidden, try to changing the User Agent My research revealed, that "streamripper" suppose to work fine together with Winamp/Xmms/VLC/etc...by using their User Agent......however they do not exist in Entware/Optware Any suggestion how to make this work ? Thanks!
I am trying to use "streamripper" package from ENTWARE/OPTWARE to record a Shoutcast stream However, getting an error message: Access forbidden, try to changing the User Agent My research revealed, that "streamripper" suppose to work fine together with Winamp/Xmms/VLC/etc... by using their User Agent......however they do not exist in Entware/Optware Any suggestion how to make this work ? Thanks!
hi, the Problem is that the said stream redirects http to https, but streamripper is not https capable so attempts the redirect on port 80 again and is thus stuck in and endless loop. It can be seen from the debug output in gcs.txt: Redirecting: https://icecast.bkwsu.eu/radio-eyesee.mp3 ***** URL = https://icecast.bkwsu.eu/radio-eyesee.mp3 ***** http_sc_connect(): calling http_parse_url http_parse_url: https://icecast.bkwsu.eu/radio-eyesee.mp3 Branch 2 (icecast.bkwsu.eu/radio-eyesee.mp3) http_sc_connect():...
hi, the Problem is that the said stream redirects http to https, but streamripper is not https capable so attempts the redirect on port 80 again and is thus stuck in and endless loop. One workaround may be to create a transparent socks proxy via socat or alike that handles https traffic transparently. Streamripper doesnt support https at all, and since the project is unmaintained i dont think this fact will change any time soon. I think a proper way would be to port lib/http.c to CURL.
system specs
Segfaulting 1.64.6 on MX Linux Bullseye
I confirm this workaround works. I used Okteta and used Find > CHAR to search for HTTP/1 to search for the HTTP/1.1 inside /usr/bin/streamripper which I changed into HTTP/1.0. This workaround is safer than downloading a patch from unvalidated sources.
Hello, can someone explain to me how to use the patch-file? That would be very kind of you.
Is there a web page that has Now Playing data with the artist and song name?
This is a PHP script that can download several streams at the same time. The streams are stored in a plain txt file with one URL per line. This was written for Windows. Requires: PHP, PsExec64, streamripper.exe, streams.txt. Update the "-d d:/music/test/" to be your output folder where streams will be saved. <?php exec('D:/PsExec64.exe -i 0 -d taskkill /f /im streamripper.exe', $output, $return); print_r($output,true); $streams = file_get_contents('D:/music/streams.txt'); $streams = explode("\r\n",...
Hello all. Here's a PHP script which can rename the files saved by streamripper. Tested on Windows. <?php ob_start(); echo time().'<br>'; $folder = 'D:/music/RADIOM/'; // your mp3 folder here $files = scandir($folder); echo '<pre>'.print_r($files,true).'</pre>'; foreach($files as $filename){ if(is_file($folder.$filename) && pathinfo($folder.$filename, PATHINFO_EXTENSION) == 'mp3'){ $replacement = mb_convert_encoding($filename,'Windows-1252','UTF-8'); $replacement = str_replace("?","_", $replacement);...
Hello all. Here's a PHP script which can rename the files saved by streamripper. Tested on Windows. <?php ob_start(); echo time().'<br>'; $folder = 'D:/music/RADIOM/'; // your mp3 folder here $files = scandir($folder); echo '<pre>'.print_r($files,true).'</pre>'; foreach($files as $filename){ if(is_file($folder.$filename) && pathinfo($folder.$filename, PATHINFO_EXTENSION) == 'mp3'){ $replacement = mb_convert_encoding($filename,'Windows-1252','UTF-8'); $replacement = str_replace("?","_", $replacement);...
Greetings. I'm using StreamRiper on Winamp and I'm missing support for the "105Dance90" WebRadio. The exact address is this: https://icy.unitedradio.it/105Dance90.mp3 It would be nice to be able to download the songs from this address too. Thank you
Support for "105Dance90"
Hey @Pete. For the past few months, Streamripper started giving me a "cant parse pls". Since you are also using that type of URL, I wanted to see if you have also had this issue and/or have found a solution.
Hi I'm running on Win 10 and still have the same problem... I just reinstall all my PC, but still had the issue before it. I saw your post but I'm pretty bad to understand it, could you explain how to apply your patch to a newbie? ^^ Thanks
Hi I'm running on Win 10 and still have the same problem... I just reinstall all my PC, but still had the issue before it. I saw your post but I'm pretty bad to understand it, could you explain how to apply your patch to a newbie? ^^ Thanks
Hi I'm running on Win 10 and still have the same problem... I just reinstall all my PC, but still had the issue before it. I saw your post but I'm pretty bad to understand it, could you explain how to apply your patch to a newbie? ^^ Thanks
Instead of downloading the patch in the blog, compiling, etc; an alternative is directly editing a copy of the binary file using a tool such as ghex! Although, I do dabble in compiling from source code, upon seeing what the patch was, I decided to rely on a hacking trick I employed some decades ago; for this situation .. sudo cp /usr/bin/streamripper /usr/bin/streamripper-HTTP1.0 sudo chown [user]:[user] /usr/bin/streamripper-HTTP1.0 Change [user]:[user] to match your user id and group id. sudo aptitude...
Even with this HTTP 1.0 patch still some streams do not work. Not sure what it causes exactly, but it seems still related with dash (chuncked) streams, creating loads of files in the output directory. My guess: One file for each chunk. On Windows machines you can best use Streamwriter. It is a GUI with schedule options. Used it for many years while my machine was on for 24/7. But right now I rather use a less powerconsuming option, like a remote VPS or (local) Rasp.Pi. For commandline Linux I would...
Even with this HTTP 1.0 patch still some streams do not work. Not sure what it causes exactly, but it seems still related with dash (chuncked) streams, creating loads of files in the output directory. My guess: One file for each chunk. On Windows machines you can best use Streamwriter. It is a GUI with schedule options. Used it for many years while my machine was on for 24/7. But right now I rather use a less powerconsuming option, like a remote VPS or (local) Rasp.Pi. For commandline Linux I would...
Even with this HTTP 1.0 patch still some streams do not work. Not sure what it causes exactly, but it seems still related with dash (chuncked) streams, creating loads of files in the output directory. My guess: One file for each chunk. On Windows machines you can best use Streamwriter. It is a GUI with schedule options. Used it for many years while my machine was on for 24/7. But right now I rather use a less powerconsuming option, like a remote VPS or (local) Rasp.Pi. For commandline Linux I would...
Even with this HTTP 1.0 patch still some streams do not work. Not sure what it causes exactly, but it seems still related with dash (chuncked) streams, creating loads of files in the output directory. My guess: One file for each chunk. On Windows machines you can best use Streamwriter. It is a GUI with schedule options. Used it for many years while my machine was on for 24/7. But right now I rather use a less powerconsuming option, like a remote VPS or (local) Rasp.Pi. For commandline Linux I would...
thanks a lot ! A REALLY BIG THANK YOU
So crap that this is not maintained. I hacked the binary, too lazy to compile everything from source. It works for me on Ubuntu. Be sure to give the file eXecution rights. I hacked the original /bin/streamripper (Ubuntu 22.04)
So crap that this is not maintained. I hacked the binary, too lazy to compile everything from source. It works for me on Ubuntu.
How do I apply this patch file? I am running this on Debian and still feel pretty noobish. Basically i have not clue what to do with it...
Or if the options don't allow this, is there someone who could help modify the source to achieve this? i could compensate for work. thanks!
hi- i am trying to take the following stream containing radio transmissions and split it into separate clips (separated by silence). i don't believe there is any metadata. can i configure streamripper to ignore all metadata and simply break the stream into chunks (separated by silence)? thanks for any help!
A radio program I've been time-delaying for convenient listening for years, just recently broke with this error. I have streamripper recording simultaneously on geographically independent machines, and they all broke at once, so I knew it was a source change. (I tried installing a Windows version on my desktop, it's broken as well.) I'm running v1.64.6 on FreeBSD. The good news, is that I applied the fix above and it worked. Instructions: su (password) cd /usr/ports/audio/streamripper ./configure...
Can you merge in the fix to master?
Can't connect to internet radio
I second this! Thank you @Pete
just: --codeset-filesys=UTF-8 --codeset-id3=UTF-8 --codeset-metadata=UTF-8
just: --codeset-filesys=UTF-8 --codeset-id3=UTF-8 --codeset-metadata=UTF-8
Just was struggling for same and its perhaps not help author but someone who will come there will see such: streamripper $url -d $output_dir -a $output_filename --codeset-filesys=UTF-8 --codeset-id3=UTF-8 --codeset-metadata=UTF-8
Just was struggling for same and its perhaps not help author but someone who will come there will see such: streamripper $url -d $output_dir -a $output_filename --codeset-filesys=UTF-8 --codeset-id3=UTF-8 --codeset-metadata=UTF-8
I'm using streamripper to record weekly broadcasts and these are being found in the incomplete directory with (1),(2) added to the name. Example: Ron O'Quinn - Ron O'Quinn's Rewind hr 1.mp3 Ron O'Quinn - Ron O'Quinn's Rewind hr 2.mp3 Ron O'Quinn - Ron O'Quinn's Rewind hr 1(1).mp3 Ron O'Quinn - Ron O'Quinn's Rewind hr 2(1).mp3 Ron O'Quinn - Ron O'Quinn's Rewind hr 1(2).mp3 Ron O'Quinn - Ron O'Quinn's Rewind hr 2(2).mp3 By using the -D "%A/%T/%D" option in the following line /usr/local/bin/streamripper...
Thanks for letting me know! I tried this and it is working now!
I might have figured out a workaround? I record multiple stations and some had the issue while others were fine. The ones that were fine were using the url layout http://provisioning.streamtheworld.com/pls/XYZ.pls where XYZ represents the station's letters, or probably whatever you were using before .pls I've tested it for a few minutes and it seems to be saving properly now. I'll update you if it changes!
I've been having the same issues! I can open the stream fine in VLC, but it's been saving thousands of 0 bit files for me since about the same time. Have you figured out a workaround?
As of August 21, 2021, streamripper will not connect to stream the world. It creates thousands of 0 bit .aac files and never begins the recording. It has been working for months before this recent issue. Anyone having this issue? Any resolution?
any way to patch streamripper on OSX (the version installed via homebrew in terminal)?
Have you found a solution? I've noticed this, as well. I started using get_iplayer and just gave up on streamripper, until I found a podcast, recently, that is "not available in your country", even though I'm pretty sure I can play it live. Now, I can't figure out the proper url for Radio 4.
Anyone on Windows facing this can modify streamripper 1.64.6's streamripper.dll and patch HTTP/1.1 to HTTP/1.0. Good luck!
Wondering if anyone has come accross this, i record BBC radio 1 2 and 4 to pick out shows later, for some reason on the 4th March, the streams stopped working. I can play the stream in VLC but i want to record in streamripper. WHen i try to run command it just stays on Skipping.... all the time and never does any file.. command i use is - streamripper http://bbcmedia.ic.llnwd.net/stream/bbcmedia_radio4fm_mf_p -a -A -d /media/radiotemp_pi/BBCRadio/radio4/ -l 43200;
I see what happened to cause this. I thought it had come from stream source, but it was a configuration error. I was using the Windows GUI version, wstreamripper.exe. In the Options the Pattern tab was configured incorrectly. It had %S /%A - %T which has an extra space in the folder name part. Need a trap for this.
Streamripper creates folder with invalid name
Hello, If I want to access ripped songs with another program, SR needs to run for a certain time, ripping a certain amount of songs or bytes, and then those songs can be fed to another program. What I want to do is make this processing parallel by making SR give some sort of signal after each song it downloaded, so that the next program can already start to proceed with the freshly downloaded song, while SR continues to rip the next one. I guess, some sort of pipe is what I need. Is this doable....
Hello, how to patch streamrupper (on linux, ubuntu)?
For now StreamRipper doesn't support HTTPS. It was requested a long time ago (see the tickets) but still nobody to implement it.
I see this was sorted out years ago but I am experiencing it with one of the stations I am seeing to capture. The command line I'm using is: streamripper https://war.streamguys1.com:7883/wdiy_7880 -a %d" WDIY Swing Sunday" -l 180 -A -d "Music/WDIY Swing Sunday" This type of configuration works with nearly all stations I am trying to stream, except this one. Is this a problem at the server end? Thanks - Richard
Hi Richard, I raised another topic on this. My mp3 sounds a bit different, but I suspect a similar issue. I did not get any response either. Did you manage to find a solution for your problem? Cheers, Csongor
Ripped audio unclear continuous skipping
Hi Guys, I set up streamripper on my raspberry pi 3, and the audio I am getting out is very interrupted, it sounds like there is a lot of skipping and missing bits in the audio. My command line is something like this: streamripper http://mr-stream.mediaconnect.hu/4742/mr3hq.mp3 -d /home/pi/rec/ -l 60 -a test.mp3 -o always I am using Streamripper 1.64.6 on Raspbian GNU/Linux 8.0 (jessie) Is it possible that the Pi 3 is just not strong enough for this job? My output looks like this: Connecting... stream:...
Do you see in the console anything like this Connecting... stream: Cool radio server name: SHOUTcast/ declared bitrate: 256 meta interval: 16000 relay port: 8000 [getting track name... ] [skipping... ] - Nouvelle Vague/In a Manner of Speaking [ 2,31M] [ripping... ] - Bebo Best & The Super Lounge Orchestra/Baise Mo [ 8,19M] ? If yes, try this URL "localhost:8008" on any browser
Do you see in the console anything like this streamripper http://some_radio_station --codeset-filesys=utf-8 --codeset-metadata=utf-8 -u Mozilla/5.0 -r Connecting... stream: Cool radio server name: SHOUTcast/ declared bitrate: 256 meta interval: 16000 relay port: 8000 [getting track name... ] [skipping... ] - Nouvelle Vague/In a Manner of Speaking [ 2,31M] [ripping... ] - Bebo Best & The Super Lounge Orchestra/Baise Mo [ 8,19M] If yes, try this URL "localhost:8008" on any browser
Hello I use my Raspberry pi and I get at every mp3 file following permission: -rw-r--r-- 1 pi pi 70401610 Mar 3 11:55 FileName.mp3 Is it possible to change group permission to read and write? I use this command: streamripper http://......... -d /media/HDD/ -l 3600 Thank you for the help.
SR_ERROR_PARSE_FAILURE
Hi, could you fix the SR_ERROR_PARSE_FAILURE in my Streamripper for Winamp of Windows, because it's very important for me? Regards, Ann
I made an extra match rule for this: m/^[\@*-+][[:space:]](.?[^-[:space:]])[[:space:]]+-[[:space:]]+(.)[[:space:]][\@*-+]$/A1T2 This rule must be before the standard match rule(s) in the parse_rules.txt file you are using. Substitution rules that remove these characters (at the beginning and end) do not work as expected. (see a post of mine). The problem that stays in the radionomy stream is that the artist and title sometimes are reversed (anoying indeed). I don't see an easy workaround for that....
I am trying to use a substitution parse rule. I expected this to work: 's/a/b/' or 's/a/b/g' (change a to b). That is not the case: the resultstring is gibberish after the substituted b. Am I doing something wrong or is this a bug in streamripper? Apart from this, a very nice program. I use it together with streamtuner2. A pity that the radio providers are doing everything they can to force you to do all kinds of "after" work to get the tags right.
Update: got debug output, the strange looking part is: METADATA TITLE 53 74 72 65 61 6d 54 69 74 6c 65 3d 27 50 69 70 70 6f 20 50 6f 6c 6c 69 6e 61 20 2d 20 4c 61 20 70 69 6f 67 67 69 61 20 64 69 20 56 61 6e 63 6f 75 76 65 72 20 28 43 48 29 27 3b 0 0 0 0 0 S t r e a m T i t l e = ' P i p p o P o l l i n a - L a p i o g g i a d i V a n c o u v e r ( C H ) ' ; gnamebuf (stripped) = Pippo Pollina - La pioggia di Vancouver (CH) Converting query string to wide g_iconv_open returned zero Error converting...
Greetings, thanks for this great program. Unfortunatelly I dont' seem to be skilled enough to use it, would appreciate some help. I'm trying to ripp Swiss Jazz radio: streamripper http://www.radioswissjazz.ch/live/aacp.m3u SR reports: Connecting... stream: Radio Swiss Jazz server name: Icecast 2.4.0-kh4 declared bitrate: 96 meta interval: 16000 And then keeps "skipping" for tens of minutes (havn't waited for longer than that). Opening the same stream in VLC player (no matter at what point, whether...
Note that you don't need a specific user agent as pointed out by Eugene Adell , you can use: streamripper http://107.182.233.214:8010/ -u " "
Note that you don't need a specific user agent as pointe out by Eugene Adell , you can use: streamripper http://107.182.233.214:8010/ -u " "
Thank you very much.
Thank you once again, good suggestion.
Good work you too Eugene, I wouldn't figure that out by myself.
Thank you very much. Can you please submit a patch for this? I think it will help even if its small.
OK, I commented both bugs.
Streamripper can not correctly deal with HTTPS URLs. HTTPS URLs are handled the same way like HTTP URLs. The problem with the example URL is, that https://hirschmilch.de/psytrance/listen.pls is transformed to http://hirschmilch.de/psytrance/listen.pls within Streamripper. But the server issues a redirect to the secure URL (Location: https://hirschmilch.de/psytrance/listen.pls). Streamripper follows the redirect, but to the unencrypted URL http://hirschmilch.de/psytrance/listen.pls. As a result Streamripper...
This problem is caused by the user-agent. If you use for instance VLC ("VLC/2.2.6 LibVLC/2.2.6"), the stream works: streamripper http://107.182.233.214:8010/ -u "VLC/2.2.6 LibVLC/2.2.6" Even if the problem can be solved here with changing the user-agent, I found that the misleading error message "error -6 [SR_ERROR_CANT_RESOLVE_HOSTNAME]" comes from the following sequence: Streamripper tries to connect to http://107.182.233.214:8010/ with the wrong user-agent the server disallows the Streamripper...
It's working with an empty User-Agent ( -u " " ) It means there is some kind of server limitation to redirect to an HTML page when the User-Agent is a browser I agree the error should not be SR_ERROR_CANT_RESOLVE_HOSTNAME
Here's a simple way to get a list of https radio stations if the one in my example expire: wget "http://www.radio-browser.info/webservice/pls/stations/bytagexact/university radio" -O university_radio.pls grep https university_radio.pls
I opened a separate bug for the SSL issue: HTTPS error - https://sourceforge.net/p/streamripper/bugs/224/
See also: HTTPS error - https://sourceforge.net/p/streamripper/bugs/224/
Another related bug: HTTPS error - https://sourceforge.net/p/streamripper/bugs/224/
Can you please have a look at SR_ERROR_CANT_RESOLVE_HOSTNAME - https://sourceforge.net/p/streamripper/bugs/223/ and report the cause of it if you find it?
HTTPS error - https://sourceforge.net/p/streamripper/bugs/224/
HTTPS error
On 2017-08-27 12:45, nephylim wrote: hello, I posted a patch for this a long ago.
On 2017-08-27 12:45, nephylim wrote: hello, I posted a patch for this a long ago : https://sourceforge.net/p/streamripper/discussion/19083/thread/d92cae6b/
Can you please have a look at https://sourceforge.net/p/streamripper/bugs/223/ and report the cause of it if you find it?
Thanks.
Do you know, if new versions of streamripper are planned? It is probably not so hard to write a HTTP/1.1 chunked parser, but it will be useless if nobody includes the patch into a new streamripper version.
It is nearly the same problem which I discovered. Your radio station sends HTTP/1.1 content with chunked encoding and streamripper does not understand the chunked encoding: GET /proxy/jrn_beat?mp=/stream HTTP/1.1 User-Agent: agent-string Accept: */* Accept-Encoding: identity Host: star.jointil.net Connection: Keep-Alive HTTP/1.1 200 OK Server: cc-web/1.6.3 Date: Thu, 21 Sep 2017 20:04:40 GMT Content-Type: audio/mpeg Transfer-Encoding: chunked But with my patch you can downgrade streamripper to HTTP/1.0...
And https://sourceforge.net/p/streamripper/bugs/193/
Can you please look at https://sourceforge.net/p/streamripper/bugs/223/ ?
SR_ERROR_CANT_RESOLVE_HOSTNAME
Joint Radio Beat cannot be used with streamripper: $ streamripper -v Streamripper 1.64.6 $ streamripper http://star.jointil.net/proxy/jrn_beat?mp=/stream -u "Mozilla/5.0+(Windows+NT+5.1;+WOW64;+x64;+rv:52.0)+Gecko/20100101+Firefox/52.0" Connecting... stream: Joint Radio Beat server name: SHOUTcast/ declared bitrate: 192 meta interval: 8192 [skipping... ] - [ 1kb] error -28 [SR_ERROR_INVALID_METADATA] bye.. shutting down Adding --debug didn't output anything extra.
$ streamripper -v Streamripper 1.64.6 $ streamripper http://star.jointil.net/proxy/jrn_beat?mp=/stream -u "Mozilla/5.0+(Windows+NT+5.1;+WOW64;+x64;+rv:52.0)+Gecko/20100101+Firefox/52.0" Connecting... stream: Joint Radio Beat server name: SHOUTcast/ declared bitrate: 192 meta interval: 8192 [skipping... ] - [ 1kb] error -28 [SR_ERROR_INVALID_METADATA] bye.. shutting down Adding --debug didn't output anything extra.
Is your patch https://sourceforge.net/p/streamripper/discussion/19083/thread/d92cae6b/ for to allow streamripper to user https? Should the title of this bug be changed from "Streamripper doesn't work with redirect URLs" to "Streamripper doesn't work with HTTPS" or should I open a new bug?