[REL] Shoutcast2017


#1

Hello,

Shoutcast2017 is a fork of mikedm139’s Shoutcast.bundle.

I have added the stream-test-functions of TuneIn2017, so the most stations should works.
Unfortunately the new plugin requires one klick more to play a station. But the listing of the stations works fast as the original.

Options:

  • Search: “for Stations”, “Now Playing”
  • Listing: “By Genre”, “Top 500 Stations”
  • Settings for bitrate and sorting
  • Radionomy addon
  • Favourites-Option (only local)
  • Updater-Modul

Hints:

  • Tested: Web Player (linux), Web Player + Media Player (windows). An Updatemodul is integrated.
  • Issues with PHT (plays no station, search fails) are in process. Edit: fixed

Download:

INSTALLATION:

/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017

Web Player - favourites and Radionomy addon activated

Open PHT


#2

Added here, even though not pinged :disappointed:
forums.plex.tv/discussion/200017

And do hope for a PR towards UAS :wink:


#3

And now part of UAS, so please update intro post to reflect that :wink:


#4

Update v0.1.7 - Favourites

use plugin-updater or UAS in Webtools

Favourite-Option added.
Unfortunately the Shoutcast-service doesn’t supports favourites, so the favourites saved by plugin are only used locally.

Hints:

  • The option can be switched in Preferences (see pic).
  • if any favourites exists the Main-Menu shows an additional button (see pic).

/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017

Settings:

Main-Menu with Favourites-Button:

Buttons add / remove:


#5

Dear rols1,

Thanks so much for sharing your work.

At first run, I encountered an issue, with the following error log:

CRITICAL (runtime:889) - Exception (most recent call last):
  File "/usr/lib/plexmediaserver/Resources/Plug-ins-f54242b6b/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/runtime.py", line 843, in handle_request
    result = f(**d)
  File "/media/efb21158-4fba-4614-ac00-83bb7423a2c7/plexdata/Library/Application Support/Plex Media Server/Plug-ins/Shoutcast2017.bundle/Contents/Code/__init__.py", line 100, in MainMenu
    Log('Favourites: ' + str(len(Dict['Favourites'])))
TypeError: object of type 'NoneType' has no len()

I removed line 100, launched the channel, created a favorite, and moved the line back again… Now it is working.

[Set up: Debian 8.10, Plex Media Server 1.10.1.4602]


#6

@“perrin.benoit” said:

I removed line 100, launched the channel, created a favorite, and moved the line back again… Now it is working.

Many thanks for your hint. I will fix this stupid error as soon as possible. Maybe the plugin TuneIn2017 is also affected.
/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017


#7

I just installed TuneIn2017 on my server (nice plugin by the way), and I had no issue there.


#8

Thanks again - yes, that’s right. I see now, that numbers of Favourites are not logged by TuneIn2017 (because they are mantained by tunein, not by the plugin).

Fixed Shoutcast2017.bundle is available on Github.
/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017


#9

Every stream I play I get the following error.
Not enough bandwidth for any playback of this item. Cannot convert to below minimum bandwidth of 49kbps.

Any idea why?


#10

@cliff1970
Could this help? https://forums.plex.tv/discussion/comment/1514920/#Comment_1514920
/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017, Plex-Plugin-ZDFmobile


#11

Hey I am having a problem. some of the stations work fine but a lot of them don’t. I keep getting error “Uh-oh! Something went wrong playing your media. please try again.” This mainly happens with links like Three Days Grace Fanloop. I am not sure if the links are just dead, but if the developer can’t update them why can’t the person developing the plugin remove that section of the code? Hopefully the developer can update those links.


#12

@jcilley97 said:
Hey I am having a problem. some of the stations work fine but a lot of them don’t. I keep getting error “Uh-oh! Something went wrong playing your media. please try again.” This mainly happens with links like Three Days Grace Fanloop. I am not sure if the links are just dead, but if the developer can’t update them why can’t the person developing the plugin remove that section of the code? Hopefully the developer can update those links.

I tried to play Three Days Grace Fanloop in Web Player and VLC. Both get a streamlink and receives data but plays no music - see pics. Seems to be a problem on the sender side.

I can’t explain your error-message. What client / app are you using?
/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017, Plex-Plugin-ZDFmobile

Web Player

VLC


#13

I am using the Plex app on iOS 11.2.1 on an iPhone 5s and running Plex Media Server on Windows 10.

Update: I just played Three Days Grace Fanloop on the Plex Server on Windows 10 and it loaded but like you said it was muted. Same thing with Third Eye Blind Fanloop. Do all the fanloops have this issue? I also noticed that some streams say they will only play with the radionomy.com app or on a computer running the radionomy website. do you plan on scripting a work around for radionomy?


#14

@jcilley97
unfortunately I don’t have any experience with the apple continuum. Maybe your app is able to detect silence on the received stream and reacts with error.

Anyway - the plugin have no chance to reject this stream currently . As you can see in the logfile (com.plexapp.plugins.shoutcast2017.log) it finds meta data like bitrate and song title at the header of this stream (http://listen.radionomy.com:80/ThreeDaysGraceFanLoopRadio) - so for the plugin the stream seems OK.

It might be also a problem with the codec. I will take a look at it and give feedback if find a workaround.

/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017, Plex-Plugin-ZDFmobile


#15

@jcilley97 said:
. do you plan on scripting a work around for radionomy?
Sorry, no - my focus is on my german plugins and TuneIn2017. But if there’s any time left, I’ll check out radionomy.
/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017, Plex-Plugin-ZDFmobile


#16

okay thanks for your help anyway. hopefully you will have the time to check out radionomy and fix the streams and also fix the fanloop streams.


#17

@jcilley97
the current update to V0.2.1 don’t solves the fanloops-problem. It only improves detection of song titles.
/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017, Plex-Plugin-ZDFmobile


#18

@jcilley97 : bad and good news:

1. Fanloop radio - only zombies on air
I have googled “fanloop radio” and didn’t find any working link. The Fanloop-listings of http://www.radiosure.com (etc. http://www.radiosure.com/rsdbms/details.php?id=61600, updated 2015-04-11) contains some Fanloop stations. The given Website ist rejected with http error 404 (not available) and the give source directs to muted stream (as we’ve already seen). For me: no chance for reanimation :frowning:

2. Radionomy
the website don’t have an API for browsing and searching but is suitable enough to be integrated in Shoutcast2017. SHOUTcast was taken over by Radionomy S.A. a few years ago (https://en.wikipedia.org/wiki/Radionomy).
A first editon will come next days :slight_smile:
/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017, Plex-Plugin-ZDFmobile


#19

Update V0.2.7: Radionomy addon

use plugin-updater or UAS in Webtools

to use this addon activate it in preferences.
Favourites are used in combination with Shoutcast2017 (only local).

For radionamy I have added some filters for not available streamlinks. Please let me know, if a stream doesn’t works in plugin but works in Webbrowser (https://www.radionomy.com).

Todo: Scrolling (if you cannot find a station, please use the search-function in addon) - done in V0.3.0
/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017, Plex-Plugin-ZDFmobile

Preferences:

Radionomy button in main menu:

Radionomy entry side:

Favourites combinated:


#20

Update V0.3.0: Browsing for Radionomy addon

use plugin-updater or UAS in Webtools

First time I used http-requests with POST. In radionomy it’s required to load further stations.
This might be helpful for programmers in similar cases:
on the radionomy-Website you get more radio stations automatically by scrolling down. Near the page bottom a javascript-function is activated by scroll-event and loads the next stations. To emulate this in plugin we need HTTP-POST requests and we need reusing the opened HTTP-session.

A few hints how it done in plugin:

  • modul keepalive added (more info see import statement in init.py). The request-Modul would be more comfortable but too great for a single plugin (keepalive 21 kb).
  • HTTP-sessions are initiated with urllib2.build_opener. For Radionomy we need HTTPCookieProcessor, HTTPSHandler and the header ‘X-Requested-With’, ‘XMLHttpRequest’.
  • session is stored in a global var. For multi sessions this var gets unique keys produdes by a random function.
  • after a user-klick at More-button the session-object is restored and send a HTTP-POST request with the current offset.

Edit: Pardon, this version contained an accidently inserted line and couldn’t start (line 31 in init.py - picture-link from forum). Fixed in V0.3.1.

/R


######Plugins: ARDMediathek2016, Plex-Plugin-KIKA_und_tivi, Plex-Plugin-3Sat_Mediathek, Plex-Plugin-Flickr, Plex-Plugin-TagesschauXL, Plex-Plugin-Phoenix_Mediathek, TuneIn2017, Shoutcast2017, Plex-Plugin-ZDFmobile

Browsing: SubGenre stations with More button