[RELEASE] Icecast (Music Plugin) Addon - Free internet radio alternative to SHOUTcast
#1
Thumbs Up 
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,
Reply
#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,
Reply
#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
Reply
#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,
Reply
#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')"
Reply
#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
Reply
#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
Reply
#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
Reply
#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,
Reply
#10
Hi,

The addon is now available through the official XBMC repo.

WWell,
Reply
#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
Reply
#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
Reply
#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 ;-)
Reply
#14
Addon works great! Thank you Smile

Cheers,
EG.
Image
Image
Reply
#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
Reply

Logout Mark Read Team Forum Stats Members Help
[RELEASE] Icecast (Music Plugin) Addon - Free internet radio alternative to SHOUTcast2