How does one play radio stations with Listen Live links, like Radio1 on CBC ?
http://www.cbc.ca/radio/
One could open the stream (and player) on a local machine and stream the audio to the music box via the pulse audio UPNP streaming service on the client. That works for a linux client, but it doesn’t work for a Windows or Apple OS.
I need a simple way to do this for my wife. She has a Windows laptop and an iPhone.
CBC RadioOne has a TuneIn entry, but it doesn’t appear in MusicBox.
http://tunein.com/radio/stations/CBC-a33788/
Ditto for another unrelated radio station with the same Listen Live button.
I did some digging on this topic as it is the lone hurdle that prevents me from implementing modipy as our house audio server solution.
I was able to get the pls file for CBC Radio One two different ways.
- I followed the instructions here. http://www.dudek.org/blog/253 I didn’t use wireshark, I somehow figured out the call sign for the station. I’d like to say that I right clicked the Listen Live button and selected Save Link As but I can’t reproduce it. It all happened so fast I didn’t pay attention.
Then http://13583.live.streamtheworld.com/CBC_R1_CGY_H.pls, which gave me the .pls file. I opened that with a text editor (kate) and got a list of URLs to play the various streams. (http://5903.live.streamtheworld.com:80/CBC_R1_CGY_H_SC) I pasted that into the stream field and it plays.
- There is a link on the page (See what is playing on all streams) that has the direct URLs for each of the streams. Very handy.
As good as that is, I can’t get the second radio station stream to play properly.
I looked at the page source for the the player and found a manifset.f4m file as well as an m3u8 file. I was able to download the m3u8 file. I opened it with a text editor (kate).
===============================================================
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=48000,CODECS="mp4a.40.2"
http://radio_cfac-lh.akamaihd.net/i/CAL960_1@191905/index_48_a-p.m3u8?sd=10&rebase=on
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=48000,CODECS="mp4a.40.2"
http://radio_cfac-lh.akamaihd.net/i/CAL960_1@191905/index_48_a-b.m3u8?sd=10&rebase=on
If I paste one of these URLs in the stream field, it plays for about 15 seconds and then quits. If I press play again, it plays again and then quits again.
I haven’t tried this with an MPD client yet.
Would be nice if there was a way to open a local m3u or pls file on my computer and play the stream(s) inside them or place them in the play list. Am I missing something ?
Would it be worth my time to add this to the app ?
I don’t follow. If you’ve opened them on your computer, how are they then sent to musicbox? How would it work?
In theory you can play internet streams on a player on a dektop/laptop and then stream the output of the desktop to Musicbox with either airplay or DLNA, but that is unnecessarily complicated as you could have the pimusicbox handle the playing of the stream. Most stream web pages work so that there is a js player and you can see the link to the stream. And this link is often a web adress to a playlist, that you can open and find the direct link to the stream.
However, many sites do their best to hide the actual address. You can sometimes find these with google, however. Like here:
http://www.cbc.ca/listen/includes/directr1.html
Choose one and save the .pls to the computer. Then open it in a text editor. So I saved the Edmonton file and opened it:
[playlist] File1=http://13723.live.streamtheworld.com:80/CBC_R1_EDM_H_SC File2=http://13723.live.streamtheworld.com:443/CBC_R1_EDM_H_SC File3=http://13723.live.streamtheworld.com:3690/CBC_R1_EDM_H_SC File4=http://13773.live.streamtheworld.com:80/CBC_R1_EDM_H_SC File5=http://13773.live.streamtheworld.com:443/CBC_R1_EDM_H_SC File6=http://13773.live.streamtheworld.com:3690/CBC_R1_EDM_H_SC File7=http://13763.live.streamtheworld.com:80/CBC_R1_EDM_H_SC File8=http://13763.live.streamtheworld.com:443/CBC_R1_EDM_H_SC File9=http://13763.live.streamtheworld.com:3690/CBC_R1_EDM_H_SC File10=http://9433.live.streamtheworld.com:80/CBC_R1_EDM_H_SC File11=http://9433.live.streamtheworld.com:3690/CBC_R1_EDM_H_SC File12=http://9433.live.streamtheworld.com:443/CBC_R1_EDM_H_SC Title1=CBC_R1_EDM_H_SC Title2=CBC_R1_EDM_H_SC-Bak Length1=-1 NumberOfEntries=12 Version=2
I copy pasted the first URL into the pimusicbox webclient page “streams” and pressed play. Now I am listening to the stream.
tot_rispekt: I found the same links for CBC. They play, no problem.
It is the second radio station that I am having problems with. Please show me how to play the content from the m3u8 file I provided.
Thanks
So in the case of the 2 examples I provided here, I was able to obtain a play list file, pls or m3u8 and store it locally on my client computer.
However, the modipy web interface has no way to do anything with a playlist file. It can only play URLs. So the user must open the play list file with a text editor and manually extract a URL in order to play it. Unfortunately, this process is too technical to teach people in my house to do.
There are a couple ways to deal with this.
-
The interface could allow the user to open the local playlist and select a URL from it to play.
-
The interface could allow the user to open a play list to replace the current playlist. It should then allow the current play list to be exported to a local playlist file. I think this would be VERY handy to allow playlist sharing between multiple clients in a multi zone environment.
-
The interface could allow the user to add the URLs from the local playlist file to the playlist.
I understand that the modipy web interface isn’t meant to be the “be all, end all” mpd client. Having said that, I think it will be very useful in my particular installation.
It’s ‘Mopidy’ not ‘modipy’.
There are numerous web interfaces for Mopidy but I presume you are talking about Mopidy-Musicbox-Webclient. These are not MPD clients.
Sorry, I don’t see which stream you are having problems with, I only see the CBC one which is working if you use @tot_rispekt’s link.
isn’t 3 already covered by mopidy-musicbox-webclient when you add them one by one via the streams page.
LOL about the name. Lots going on here, I’m distracted.
re:“isn’t 3 already covered by mopidy-musicbox-webclient when you add them one by one via the streams page.” How does one open a pls file stored locally on the client using the web client ?
I realized the webclient wasn’t a true MPD client. I was using “mpd client” in a general sense, like it was a substitute for a true mpd client. I should have called it an interface.
I understood your number 3) as the user manually adding each URL from the playlist. But now I see, that like all the options, you want something to parse the playlist for you. I’m not sure parsing of playlists like this belongs in a web client.
You store the file locally, then extract the URL and paste it into the webpage section “streams”.
I am answering to
how does one open a pls file stored locally on the client using the web client ?
But, apparently what you are after is automatic parsing (as per @kingosticks) . You need to write a script for that.
It isn’t about parsing the playlist file, it is about playing the content from it. Yes, you would have to parse the file to get the content out. With the web client there is no way to share play lists between client computers.
As far as what doesn’t play properly, I would like to send you the playlist for the second radio station. It is the one I’m having trouble with. However, I’m only allowed to attach jpegs.
So, is this what you want to listen to or not? That is CBC Radio 1? Is this the same thing?
http://www.cbc.ca/listen/streams.html#radio1
I looked at the m3u8 playlist that you sent and it contains some .ts streams which did not work using VLC, so I am going to assume that these are temporary streams, that is streams that are usable only at a certain time (perhaps every day at some time or maybe even use once links). I don’t even know if mopidy supports them and whether you need to purchase the codec, since they apparently are containers for MPEG-2
When you want to share a stream to other clients you can use streamuris.js. This file is located at /boot/config/streamuris.js and the file itself contains instructions for editing it (inside).