1

I'm partial to listening to Digitally Imported's channels on a variety of devices (all mp3 streaming).

I generally access these by pointing players at e.g http://listen.di.fm/public3/trance.pls , and this is still what's linked from the mp3 links at http://www.di.fm/

What seems to have changed in the last week or two is that instead of the .pls file containing URLs of directly playable .mp3 streams (invariably with the urls containing something like scfire...stream.aol.com, as I remember it but it's been a while since I looked), the pls file now contains URLs linking to more .pls files!

e.g the first URL referenced by http://listen.di.fm/public3/trance.pls is currently http://stream-19.shoutcast.com:80/listen.pls?sid=1 and when you retrieve that (with or without the ?sid=1 bit) only then do you get something containing stream URLS e.g things like http://stream-19.shoutcast.com:80/trance_difm_mp3_96kbps or http://scfire-ntc-aa01.stream.aol.com:80/stream/1003

This is confusing my various players (audacious on Linux, winamp on Windows, some old Roku devices) greatly. Not sure if this sort of .pls file nesting/recursion is widely used, part of the .pls "standard" (if there is such a thing) or I just need to update my players (unfortunately a couple of them are Pinnacle's version of the Roku Soundbridge so this may not be feasible for them).

For now a workround is to change presets/bookmarks from e.g http://listen.di.fm/public3/trance.pls to http://stream-19.shoutcast.com:80/listen.pls but it's not clear to me how stable that URL will be (maybe one day I'll find it suddenly serving ghastly easy-listening pan-pipe music there instead).

Would greatly appreciate a pointer to what's going on and how best to deal with it.

1

2 Answers 2

2

The site admins changed the service back-end. Instead of streaming files directly, they changed to using shoutcast (or other streams). They did this probably because of performance issues with the old streaming back-end. There is no way to deal with it as there is nothing to deal with. Point your browser at the URL and listen.

If your aim is to avoid changing bookmarks in your player, you could add those links to a playlist file on your computer and change that instead of the bookmarks in the player whenever the address changes.

If your players/devices are coded poorly in that they rely on file extension to detect the format of the stream, then a possible solution would be to proxy the streams locally, renaming it to http://lanhost/electronic.mp3.

As for playlists containing playlists, that should not be a problem. They just point to locations containing playable media. The player should know to open another playlist and not try to play it as an mp3 if a playlist contains another playlist. Contact the author of the software or the hardware manufacturer if that does not happen for you.

3

Got it!

  • Install firebug ( or use wireshark if you prefer ) to catch the url requested when you hit "Play".
    • Here is an example: (I chose to hide my listenerid, they can retrieve my IP from that)

http://pub5.di.fm/di_electrohouse_aac?type=.flv&listenerid=################################&awparams=companionAds%3Atrue

  • now just remove all the GET parameters:

http://pub5.di.fm/di_electrohouse_aac

  • use mplayer from terminal:

mplayer "http://pub5.di.fm/di_electrohouse_aac"

This should work for you.

PS:
Your link should be "http://pub2.di.fm/di_trance_aac"
Happy listening :)

4
  • Ah I assume this is with reference to the more recent (than the original question) DI.fm changes ie the links to pls files for mp3, aac streams etc have vanished from the site (although my Rokus are still picking up their presets fine) and been replaced with an embedded player. Thanks; useful information!
    – timday
    May 29, 2013 at 18:51
  • I note an alternative "way in" is to find and play the channel on shoutcast, pop-out the player, copy the "embed code" and extracting yp.shoutcast.com/sbin/tunein-station.pls?id=35124 gets a pls full of 96k mp3 streams (of course you then discover few players deal with the above style of link and you have to wget it and rename it trance.pls or something).
    – timday
    May 29, 2013 at 19:03
  • 3
    There is an easier way. Visit pub7.di.fm for a public list :) You can try pub1, pub2, ..., pub7 in this address.
    – Jabba
    Jun 6, 2013 at 18:01
  • I came up with a super lean Perl/SQLite script that that can automagically fetch all current DI.FM streams and play them with MPlayer. gist.github.com/techouse/42836b4753fb412bf05c May 10, 2015 at 11:47

Not the answer you're looking for? Browse other questions tagged .