• 1(current)
  • 2
  • 3
  • 4
  • 5
  • 8
  •   
Beta Streaming radio helper
#1
In our house we listen to a lot of streaming radio via Kodi. It's always bugged me that skins can't show artist and track information separately because it's all fed to kodi as a track title.

I wrote this to attempt to address that. I'm putting it on here because I can't be the only one who's OCD is disturbed by this and I figured someone else might be interested enough to try it out.

It can turn this, where all the info is on one line and there is no station name

Image

into this, where artist and track are on separate lines and the name of the station appears next to the genre

Image

which I think is much better.

It also supports artist logos from your music library and can turn this

Image

into this

Image

It can also look up artist logos online which it caches for future re-use, turning this

Image

into this

Image

All screenshots are from Angelinas mod of MarcusQui's Aeon MQ6 which is providing the cd-art via the skin helper service.

Full instructions on how to set up the script, trigger it in the MusicVisualisation screen etc are in the readme.

You can download the zip from https://github.com/the-black-eagle/scrip...ing.helper

I have tested this on Linux and Win 10, Kodi 16.0 & 16.1 with Angelinas mod of Aeon MQ6 but the skin mods required will be the same for any other skin. Feedback, issues etc are welcome even if it's just to ask why I bothered in the first place Big Grin

There are bound to be some bugs. Although I have tested this against various radio streams there are bound to be some with strange formats that I have missed. If this is the case, or you don't see a station, artist or track name when you think you should, stick kodi in debug, grab a debug log (wiki) while the script is running (music vis is full screen) and post the lines starting with 'Streaming Radio Helper'
to pastebin or wherever and link it back to the thread and I'll try and help.
Learning Linux the hard way !!
Reply
#2
It works great. Thx for sharing.
Reply
#3
Glad its of use to you Smile
Learning Linux the hard way !!
Reply
#4
Shameless bump Rofl

I have now updated this to look up album and year data from theaudiodb and set skin properties accordingly. Details of all the properties set by the script are in the README.md file on github

Script now caches all tracks and lookups and uses local data if available to avoid hitting theaudiodb multiple times for the same track. Cached data is refreshed every seven days. Data stored is track name, album (if available), year (if available) and date of lookup. Logos still work the same as before.

Script caches data in memory, but writes it out to disk (in addon_data) every 15 minutes whilst the add-on is running.

Example screenshots in the readme are from AeonMQ7 by MarcosQui. The modded version for the script is available here.
Learning Linux the hard way !!
Reply
#5
Useful bumb, I lost your script. I will test in my systems.
Reply
#6
Thanks. Feedback (good or bad) is welcome.
Learning Linux the hard way !!
Reply
#7
Tweaks aplenty !! Nod

Script now only updates its cached data for a track if there is either no album or year data. This is still if the data is older than seven days. If a track is associated with an album and the album is associated with a year, no re-checking is done. It is possible however, by creating a file in the add-ons data directory named refreshdata (just that, no extension) to re-fetch all the data in the cache regardless of age or completeness.

Most of the logging is now moved to Kodi's debug log apart from some setup info when the script first loads. Putting kodi in debug mode will automatically turn on this logging. The addon also now has a 'debug to Kodi log' setting. If this is enabled, the debug output will be written to Kodi's standard logfile. This is handy if you only want to see the debug info from this addon without a lot of other stuff cluttering it up.

MQ7's music visualisation has had a bit more tweaking. If a track plays on a streaming station and the addon matches it to an album, if you have that album in you local collection, the skin will display the album cover instead of the radio station logo. This works in all three views that MQ7 offers in it's full screen music visualisation screen. Art can be named either 'cover.jpg' or 'folder.jpg'.
In the event of their being no matching album, the radio station logo (if available) will be displayed. If it's not available, it will fall back to the skins default audio cover. If you use the rad.io addon, station logos are generally displayed correctly.

This is a screenshot of a track playing on Planet Rock that I have the album for.

Image

And a track for which I don't have the album.

Image

Add-on download : https://github.com/the-black-eagle/scrip...ing.helper

MQ7 Vis mod download : https://github.com/the-black-eagle/MQ7-M...sation.mod

This is as close as I can get streaming stations to look as good as locally played tracks.
Learning Linux the hard way !!
Reply
#8
@Black eagle:

with the new kodi v17 krypton (estuary skin) i dont get metadata (artist+song) if i play a webstream. only the name of the radio station is displayed. is this normal, i dont have this behaviour with kodi 16/confluence? thats why i tested your addon but without succes...
Reply
#9
Funnily enough, I have built Krypton from source this afternoon so I will test this later for you Smile
Learning Linux the hard way !!
Reply
#10
Right, I have done some testing with Krypton and several streams that I know supply metadata. I have tried 6 different skins (not including Estuary) and I can't get any metadata from the streams in any of them. Further, calling the jsonrpc to get the stream details does not return the same info as it does in V16.

My conclusion, based on these tests, is that V17 does not parse metadata from ICY streams in the same way that V16.x does.

Currently, V17 is in feature freeze so this isn't going to change. Much as I would like the improvements to the music db in V17, I think that unless I can patch V16 with them, I'll stay on this version for now....
Learning Linux the hard way !!
Reply
#11
i would not call metadata a "feature". since kodi is a mediacenter i would call missing metadata a "bug".
Reply
#12
(2016-10-01, 20:28)Ed76 Wrote: i would not call metadata a "feature". since kodi is a mediacenter i would call missing metadata a "bug".

Yes, I agree. I have asked (in a new thread) whether this is by design or accident, and where exactly this occurs (ffmpeg or kodi core).

Hopefully a kodi team member will be able to answer this and then we can look at getting metadata included for streaming radio - this is (for me at any rate) a necessity.
Learning Linux the hard way !!
Reply
#13
Great. Had the same problems with the newer kodi 17 builds. Hopefully it will be fixed soon.
Reply
#14
Well, Krypton (V17) is in beta now which means it's in 'feature freeze' so I doubt that it'll be fixed for this release. Best we can hope for is that it gets sorted for V18. I'm going to look through all the pull requests for 17 to see if I can spot where this happened (assuming it's in core and not in ffmpeg). If I can find it, it should be possible to just revert that commit and build a version that supports ICY stream parsing but still has all the other V17 stuff.

Dunno.....I'll give it a go though as currently I'm not at all impressed by Kryptons handling of radio streams.
Learning Linux the hard way !!
Reply
#15
http://trac.kodi.tv/ticket/16948

i dont think this cant be fixed with kodi v17 because of "feature freeze". i would guess in this context "feature" means "a new function" within kodi that was never there bevor. but metadata-support for webstreams was always there and working up to kodi 16. it seems metadata support for web-streams got broken from v16 to v17 because of whatever, so its a "bug" (and not a feature) that can be fixed for kodi v17 (if a developer is (hopefully) willing and able to do this).
Reply
  • 1(current)
  • 2
  • 3
  • 4
  • 5
  • 8
  •   
 
Thread Rating:
  • 2 Vote(s) - 5 Average



Logout Mark Read Team Forum Stats Members Help
Streaming radio helper52