[PLUGIN] 80s80s & 90s90s radio

Many thanks for your help.

I will stop here with this plugin and using it as it is. Just engoy the music.

Hello,
I have continued to improve this plugin over last few days and now it behaves better, it’s working on raspberrypi with Volumio2.7x. I modified 3 files:
config.json: ā€˜number’ for the apiDelay variable (it was ā€˜string’).
radio_stations.json: update of urls streams (in ā€˜m3u’ as Volumio does in its radio plugin) and apidata urls, in https.
index.js: I changed logic to form track infos, it’s more simple, I fixed functions that crashed the ā€˜frontend’ using play / pause / vol + / vol- / mute, duration of song is now a number, because badly formed, it was the cause of ā€˜currentSeek’ uncontrolled increase value and the 100% cpu after a while …
The ā€˜setTimeout missed’ error comes from slowness of the 80s80s radio streams server to respond to mpd requests when it synchronizes its state : CoreStateMachine function of Volumio then assigns duration of song to ā€˜currentSeek’ and displays 2 ā€˜error’ lines in the satus of Volumio, these are more info than errors and are not blocking.
The plugin only has a marginal role in this: the duration of song has to be a number like ā€˜currentSeek’.
80s80s.zip (3.6 MB)

Hi,
Thanks for your update.
I have Ʈnstalled in buter beta but nothing happens on I press play.
@balbuze could you pls review the plugin and maybe you have an ideea why is not working on buster beta, because seems to be great.

Edit : I have restarted the pi and it is ok. I will test a few days and let you know. It will be great to uploaded. To be an oficial plugin.
@Fybrox my best regards :).
Thanks

Hi,
Please find what I have seen during testing.

  1. The plugin install ok.
  2. No more ui hanging from phone. Seek value is not anymore concatenated.
  3. If I press play, the radio station starts to play and sound is routed to the speakers.
  4. After a few minutes the sound is stopped , the screen is set to paused but when I check the volumio status is says: play . Even if the music is not heard on speakers the album art is changing on the display .
    From the next log it can be observed that I have stopped the radio the screen saver is activated but after a while the display is on , music appear as playing but it not played … then I press play again , the music is started then after a while music is stopped again
    http://logs.volumio.org/volumiobuster/bbHKYuP.html

@balbuze Maybe you can help here if on volumio 2.x is working but not on buster beta . @Fybrox Kindly pls confirm that on V2.x this is not reproduced .

Edit : updated to v 3.074 and I am listening for 3 hours and issue is not reproduced.

Regards ,
Florin

Hi,
I experienced the same probleme.
Suddenly the music is stop but the volumio status shows as playing. No more sound on speakers and the spectrum is not shown on mpd oled display. It is not stopped because the watch is not shown.
Ǝn order to fix this I need to ssh and do volumio stop the volumio play.
This is caused by plugin or mpd?
Regards

Hi @Lintbf,
Here is a 30min extract of the status of Volumio from the radio selection in the library, you will notice that the behavior of the plugin is not the same as on your log. logs.txt (59.8 KB)
I have no sound cutting problem, it’s smooth on a Volumio in v2.714 on raspberrypi and on another in v2.773 on x86, they produce the same logs.
I just found that pausing song was shifting metadata, here is the updated file to fixes that. index.zip (4.4 KB)
I’m sorry for you, maybe you should test in v2.x if you want to have this plugin while waiting for the release of Volumio v3.

Hi fybrox,
You do not need to be Sory :).
I am glad that I can test and I found also some bugs :).
Regarding the drops, it did not happen much last week but I have observed something :%, when the drops appear I press the ā€œnextā€ icon, the music is stopped completely meaning that in volumio status I see stop, then if I press play again the radio station is started. I do not need to change to another radio.
@balbuze. I will include the updated files and post the zip file. Pls uploaded it.
Regards

Can you send a PR on github? Thanks

I do not know how to use github, I do not have an account. Sorry.

[ edited ] had the same issue the last days… can confirm @Lintbf issue

My 0.2 cents – most of us here (@balbuze and me) are doing the best they can in their free time, so don’t expect us to do the heavy lifting for things that don’t directly appeal to us :wink:

I would implore everyone to use these opportunities to learn new skills, it will come in handy in the long run – after all you are spending quite some time tinkering around with Volumio! Github has some great documentation if you are willing to give it a shot…
https://docs.github.com/en/github/getting-started-with-github/quickstart/fork-a-repo

As the old adage says,
ā€œGive a man a fishplugin and you feedoccupy him for a day. Teach a man to fishgit and you feed keep him occupied him for a lifetimeā€

Thanks ash,
I will do an account and try to use github.

I have attached the zip file with the fix from Fybrox included ,
80s80s.zip (3.6 MB)
Regards

2 Likes

Hello guys, welcome all!
I wanted to ask one question under this topic.
Just installed the 80s80s plugin and found that artworks are not following the songs in the Volumio portal. Artworks are chanking much later and with random frequency- even 2 songs after.
This is happening under different RPis, like RPi 4B/8GB or even RPi 5/8GB, so performance should not be the issue.
Any clue on how to improve that?
Regards

Hello everyone,

I accidentally discovered that www.80s80s.de has many more radio stations than the plugin. I started to figure it out. The ā€œ80s80s Radioā€ plugin has a radio_stations.json file,
which contains the desired JSON list of radio stations in the following format:

{
ā€œtitleā€:ā€œ80s80s Depeche Modeā€,
ā€œuriā€:ā€œwebeighties/6ā€,
ā€œurlā€:ā€œhttp://streams.80s80s.de/dm/mp3-192/volumioā€,
ā€œcoverā€:ā€œ/albumart?sourceicon=music_service/80s80s/images/80s80s-dm-cover.pngā€,
ā€œapiā€:ā€œhttp://iris-80s80s.loverad.io/flow.json?station=87ā€
}

Thus, it is easy to substitute the desired station in ā€œurlā€ and ā€œcoverā€ - just write the name of the station there. For example, for Dark Wave it turned out like this:

{
ā€œtitleā€:ā€œ80s80s Dark Waveā€,
ā€œuriā€:ā€œwebeighties/12ā€,
ā€œurlā€:ā€œhttp://streams.80s80s.de/darkwave/mp3-192/volumioā€,
ā€œcoverā€:ā€œ/albumart?sourceicon=music_service/80s80s/images/80s80s-darkwave-cover.pngā€,
ā€œapiā€:ā€œhttp://iris-80s80s.loverad.io/flow.json?station=672ā€
}

But with the ā€œapiā€ attribute it’s trickier. The link specified there should give a description of the song being played in JSON format, but guessing the station number out of 1000 is quite difficult.
So I pressed Claudius to make a program that would scan stations in the specified range and give out where it finds them. Thus, it was possible to determine all the numbers of these stations, except for ā€œIn the mixā€ - not a single artist could be found for it.

Those who want to add other channels from www.80s80s.de to search for a station number for api - write to me in a personal message, I will give a link to the tool.

The attached file contains additional stations Dark Wave, Alternative, Queen, Breakdance, Neo, Reggae, Rock, WGT (Wave-Gotik-Treffen). It must be placed in /data/plugins/music_service/80s80s/. Reload the plugins or the entire Volumio after that.

New radio_stations.json is here: radio_stations.json — ЯнГекс Š”иск

Claude AI generated tool:

1 Like

Hi @Abagian ,
I currently need the exact same tool, but just for RadioBOB.
It hast the same URLs only with 80s80s replaced by bob. So ā€œiris-80s80sā€ for radio bob is ā€œiris-bobā€ Unfortunately, I’m not able to write you a pm over here. Maybe my account is too new for that?

Hi!
When I wrote this plugin 7 years ago I never thought that it would be in use for such a long time. Unfortunately I haven’t used Volumio in years. Maybe I should give it another try.

Concerning your question: you can just open the web developer tools in your browser and then navigate to the 80s80s homepage and start the needed channel. This way it’s quite easy to find the channel number and api endpoint URL. For ā€œIn the mixā€, it’s this one:

https://iris-80s80s.loverad.io/flow.json?station=558&offset=1&count=1&ts=1744105992560

The ā€œIn the mixā€ channel doesn’t have detailled track information, it’s basically always something like ā€œ80s80s-Beatmix xxā€.

What’s the current state of my plugin? Is everything working as it should, except that some stations are missing?

Thank you for the information. I already was aware of this option. But at the moment I have the problem the other way around.
I know that station ID 2 exists, because I get the live data. But I’m not able to find the corresponding stream name.
You could also chose station ID 2 on 80s80s. Just replace the 558 in the link you have posted to 2 an you’ll get information on a current running track but I think there is no stream on the website 80s80s that is refering to those metadata, right?
And like that I found dozens of undocumented station IDs with live metatdata.

Hi Marco,

Thank you, this method is really more easy. But not so funny!

The plugin is mostly OK, the only problem is it renews artist data much later than it should. It could be delayed to the whole song duration.

I kindly asked the RadioBOB! team and they answered. There is even an easier way to get stream urls aswell as the station ids.
They even gave me the URLs for 80s80s and asked me to forward those to the devs of the 80s80s plugin:

https://stream-service.loverad.io/v4/80s80s
https://stream-service.loverad.io/v4/80s80s_mv

So with that json response, we can directly auto-generate the radio_stations.json so every new station can be added automatically. The only thing to remember is, that old ā€œdeadā€ streams are listed too. But it should be easy to find which stations are live.
And we should remember to change ā€œ/homepageā€ to ā€œ/volumioā€ like you already did in the plugin.

But they also told me, that this API will only be active up to the end of the year. But they want to provide an alternitive.