[RELEASE] Icecast (Music Plugin) Addon - Free internet radio alternative to SHOUTcast

  Thread Rating:
  • 2 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
assen Offline
Member
Posts: 54
Joined: Sep 2008
Reputation: 0
Thumbs Up  [RELEASE] Icecast (Music Plugin) Addon - Free internet radio alternative to SHOUTcast
Post: #1
Hi all,

Frustrated at AOL for taking SHOUTcast away from us, I took the original SHOUTcast add-on and modified it a little to work with Icecast.

URL: http://bilbo.online.bg/~assen/plugin.aud...0.1.tar.gz

A note on genres: with IceCast, each server lists one or more words as its "genre". Two approaches are possible:

- Treat each string as a whole category name; I don't like this, because "pop rock" and "rock pop" will appear as two different genres

- Split each string into words and use each word as a separate category; this way, "pop" and "rock" will appear only once, but most stations will appear in more than one genre. This is the current behaviour.

TODO:

1. Check some UTF-8 names which seem broken - this may be plugin's (i.e. my) fault, or may be broken strings from the streaming server.

2. Create a local cache for the XML file and use it when browsing the categories and servers instead of downloading the XML file each time from the network.

3. Sort radio stations by name inside a genre.

4. Write client-side search (as server-side seems unavailable with IceCast).

INSTALL

Move the "plugin.audio.icecast" directory into your "addons" directory. Restart XBMC.

DISCLAIMER

Please note, this is my first Python attempt (I'm much more into C/Perl system programming), so feel free to send your suggestions on code and functionality.

WWell,
(This post was last modified: 2010-12-23 00:10 by assen.)
find quote
assen Offline
Member
Posts: 54
Joined: Sep 2008
Reputation: 0
Post: #2
Hi all,

A second version with the first three points of the TODO completed is available here:

http://bilbo.online.bg/~assen/icecast-addon/

WWell,
find quote
marv_el Offline
Senior Member
Posts: 131
Joined: Aug 2009
Reputation: 0
Post: #3
didn't know of icecast before, but seems a very good substitution for shoutcast.
unfortunately it doesn't work yet. script error when accessing the station list.

regards,
marv_el
find quote
assen Offline
Member
Posts: 54
Joined: Sep 2008
Reputation: 0
Post: #4
Hi,

The scripts works. Please, check the xbmc.log and feel free to post here the Pyhton error you see or email/PM it to me.

In the meanwhile, next version, 0.0.3 is out - it now adds the search as promised by the (now completed) TODO list:

http://bilbo.online.bg/~assen/icecast-addon/

WWell,
find quote
amet Offline
How do ya like them apples?
Posts: 4,099
Joined: Jul 2009
Reputation: 39
Location: Novi Sad / Dubai
Post: #5
heh, I started working on this but you were faster than me Smile

let us know on a ML when you are ready and want us to include it in the official repo

good work

Cheers,
amet

edit: default.py line 28 (__settings__ = xbmcaddon.Addon(id='plugin.audio.shoutcast')) should be "__settings__ = xbmcaddon.Addon(id='plugin.audio.icecast')"


Always read the XBMC_Online_Manual,Frequently_Asked_Questions and search the forum before posting.
For troubleshooting and bug reporting use -> Log_file.
(This post was last modified: 2010-12-25 22:21 by amet.)
find quote
Govnah Offline
Member
Posts: 85
Joined: Nov 2010
Reputation: 0
Post: #6
Any ideas...permissions?

17:05:41 T:2909076336 M:1960378368 NOTICE: -->Python Interpreter Initialized<--
17:05:56 T:2909076336 M:1847255040 ERROR: Error Type: exceptions.IOError
17:05:56 T:2909076336 M:1847255040 ERROR: Error Contents: (13, 'Permission denied', 'icecast.cache')
17:05:56 T:2909076336 M:1847255040 ERROR: Traceback (most recent call last):
File "/home/guyp/.xbmc/addons/plugin.audio.icecast/default.py", line 250, in ?
writeLocalXML(xml)
File "/home/guyp/.xbmc/addons/plugin.audio.icecast/default.py", line 67, in writeLocalXML
f = open('icecast.cache','w')
IOError: (13, 'Permission denied', 'icecast.cache')
17:05:56 T:3077883776 M:1850048512 ERROR: GetDirectory - Error getting plugin://plugin.audio.icecast/?initial=list
17:05:56 T:3077883776 M:1850048512 ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.audio.icecast/?initial=list) failed
(This post was last modified: 2010-12-26 01:08 by Govnah.)
find quote
assen Offline
Member
Posts: 54
Joined: Sep 2008
Reputation: 0
Post: #7
Hi,

Oops - figured that out, we should not assume the addon directory is writeable; your obviously is not. Moved the cache into userdata directory.

Please, try the 0.0.4 version from here: http://bilbo.online.bg/~assen/icecast-addon/

Thanks in advance,

Assen
find quote
The-Boxhead Offline
Donor
Posts: 958
Joined: May 2005
Reputation: 17
Location: Norway
Post: #8
EDIT: IT Started working, i just had to let it sit there and think for a while Wink

Debug log file here: (from line 159)
http://pastebin.com/H0URm1qg

If i try to either select list all stations or search stations
it just takes forever working but nothing happens. Though it does not hang
i can abort by pressing cancel just fine.

Im on Linux Karmic running dharma 10 final.

This happened on both the 03 and 04 version you jsut uploaded.

Also could you in the future keep the download file as a regular zip ?
if you keep it as zip it's just to download it and from xbmc GUI go into addons and install from zip file. works just fine. But i now have to unpack tha tar file and repack it as zip Smile It's easier and faster to install it from within
xbmc than to manually copy it.

PointOfView Nvidia ION Atom 330 - TRANSCEND 2GB DDR2 DIMM 800MHz - G.SKILL 64GB SSD 2.5
Open Elec Beta4 1.95.4
XBMC Online Manual - HOW-TO post about a problem in a useful manner - Create/View Bug Report
Setup/Fix correct resolution on XBMC/Ubuntu - Usefull linux terminal commands
(This post was last modified: 2010-12-26 20:50 by The-Boxhead.)
find quote
assen Offline
Member
Posts: 54
Joined: Sep 2008
Reputation: 0
Post: #9
Hi,

Thanks for the ZIP file proposal - you can now get the addon as either ZIP or TAR+GZIP. Also, version 0.0.5 uploaded last night with some visual enhancements (like bitrate display, sort by bitrate etc.). Fetch it here: http://bilbo.online.bg/~assen/icecast-addon/

As of the download time - yes., it takes quite some time indeed, because Icecast feeds all data in a single XML file of several megabytes, which needs some time to download and then some more time to process. The local cache helps with the download time, but the search always requests a fresh copy from the Internet. I may tweak it a little bit further, but still the main reason will remain. Version 0.0.5 will help a little with the waiting - it show progress as it works on the file.

Sorry to say, but the SHOUTcast API seems designed better as it can separately feed only genre names, only servers in a specific genre etc. making it really faster. Maybe we could help the Icecast guys with their API? I'm OK to do so.

WWell,
find quote
assen Offline
Member
Posts: 54
Joined: Sep 2008
Reputation: 0
Post: #10
Hi,

The addon is now available through the official XBMC repo.

WWell,
find quote
SiHa Offline
Junior Member
Posts: 9
Joined: Jan 2010
Reputation: 0
Post: #11
Hey,

I've just come back to XBMC after a break, and have discovered this great add-on!

I have a problem, however. A station I like to listen to never comes up in any Icecast searches, I have to manually add a URL.

Can you ll me the location of the file I should edit to add the URL for this feed please?

Cheers,

Simon
find quote
assen Offline
Member
Posts: 54
Joined: Sep 2008
Reputation: 0
Post: #12
Hi, Simon,

The idea of the add-on is to work with the list of servers supplied by the Icecast YP listing. There is no easy way to add it manually to the cache file, because the cache will be overwritten pretty soon (by default, its time-to-live is only 1 day).

It might be that:
- Your favourite server does not register with the Icecast YP, or
- It is on the YP, but the ad-on does not find it (for whatever reason).

Could you provide the URL (or PM it) so that I can check whether it is on the YP? Alternatively, open http://dir.xiph.org/yp.xml (it's a few megs, takes some time to load) and see if your URL is there.

If your favourite station is not on the YP listing, we'll probably come up with some suitable solution.

WWell,

Assen
find quote
linuxluemmel Offline
Donor
Posts: 870
Joined: Jun 2009
Reputation: 0
Location: Lucern / Switzerland
Post: #13
I used the SHOUTCAST addon allmost every day and this addon is IMHO a very nice replacement for it ,-)
I used since it yesterday and works like a charm ;-)
find quote
elitegamer360 Offline
Posting Freak
Posts: 832
Joined: Feb 2007
Reputation: 14
Location: London, UK
Post: #14
Addon works great! Thank you Smile

Cheers,
EG.

[Image: elitegamer360.jpg]
[Image: newsigxbox05_3.png]
find quote
borhes Offline
Junior Member
Posts: 3
Joined: Jul 2011
Reputation: 0
Post: #15
Hi!

First of all thanks for the plugin.Works Great!!!

I hope you are still supporting it.

I found the following problem while trying to play the stations from Android XBMC remote application

My setup:
Zotac ID11, OpenElec 0.99.5
Android XBMC remote app

In android remote application i can get inside the following menu Music->Addons->Icecast and see the list of genres and channels without the need to turn on TV.
When trying to play a station from this menu - remote hangs and cannot receive control commands until i restart xbmc.bin process
The following request is sent from Application:
I/Connection( 5346): "192.168.1.107:80/xbmcCmds/xbmcHttp?command=PlayFile(plugin://plugin.audio.icecast/?play=http://ogg2.as34763.net:80/a9160.ogg")


But the Android XBMC Application has another mode: Control Only - for which i need the TV to be turned on, and when i browse channels using (UP/DOWN/SELECT) everything works like a charm !

The following request is sent from Application:
sendButton(R1,"select",nongrep,down)

It looks like a plugin or xbmc player issue.
Can you please comment on that? Or if any other info is needed i can provide.

Regards,
Boris
(This post was last modified: 2011-07-23 10:14 by borhes.)
find quote
Post Reply