Moode Forum

Full Version: Radio Paradise
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5
(05-19-2020, 06:56 PM)mtnbrit Wrote: [ -> ]Radio Paradise FLAC stream now includes track metadata. Hopefully this will qualify it for consideration to be included by default in moode's radio stations.

(it shouldn't be this hard, RP is already one of the most popular high quality streaming radios out there, plus there are plenty of other stations in moode with no metadata, cough JB cough)

lol, guilty as charged ;-)
Bitrate according to MPD is also 0 for JB radio 2 FLAC. Very odd.
[attachment=1349][attachment=1350]
Initially when I setup these stations there was no meta data at all, not sure exactly when/how that changed.

These stations show as having a VBR, and Audio Info of 16/44.1 .flac so not the same as their lossy streams.

I borrowed the station logos from elsewhere, and they look pixelated.
I requested stream icons on the RP forum a while back. I ended up making my own, nothing fancy.

Im guessing the FLAC metadata now works due to a feature update to icecast. If the stream is really VBR, then 0 is probably the only valid value for bitrate.
Compressed formats like flac inherently use VBR encoding. I'd expect to see the bitrate of the stream at something around 800K.

MPD's bitrate status element represents a snapshot of the rate in kbps of the incoming stream. It's probably obtained from CURL. The snapshot is taken each time certain MPD idle timeouts happen. That's why it's very odd that it remains 0 during playback of these Flac streams. Normally if the first snapshot comes back 0 or undefined it will be updated with a valid value next time song changes or some other event that causes MPD idle timeout. MPD also reports 0 bps for the JB Radio 2 Flac stream. Must be something about flac format streams.

The RP flac streams have another oddity tho. They cause MPD idle timeout every 4 or 5 secs due to the "elapsed" MPD status element being updated. This element only applies to song files and not streams. Elapsed should be 0 for streams.

It won't be visible on the client but you can see the behavior of the RP stream it by turning on verbose logging in MPD config and then tail -f /var/log/mpd/log

Here's some debug from the client showing the "elapsed" element being updated.
Code:
[Log] engineMpd: success branch: data=({"volume":"10","repeat":"0","random":"0","single":"0","consume":"0","playlist":"538","playlistlength":"61","mixrampdb":"0.000000","state":"play","song":"59","songid":"62","time":"0","elapsed":"136","bitrate":"","audio":"44100:16:2","nextsong":"60","nextsongid":"63","song_percent":"0","audio_sample_rate":"44.1","audio_sample_depth":"16","audio_channels":"Stereo","file":"http:\/\/stream.radioparadise.com\/flac","track":null,"date":null,"composer":null,"cover_art_hash":1879569972,"encoded":"VBR","artist":"Radio station","title":"The Clash - Clampdown","album":"AAA New station","station_name":"AAA New station","coverurl":"images\/radio-logos\/AAA New station.jpg"}) (playerlib.min.js, line 24)

[Log] engineMpd: success branch: data=({"volume":"10","repeat":"0","random":"0","single":"0","consume":"0","playlist":"539","playlistlength":"61","mixrampdb":"0.000000","state":"play","song":"59","songid":"62","time":"0","elapsed":"138","bitrate":"","audio":"44100:16:2","nextsong":"60","nextsongid":"63","song_percent":"0","audio_sample_rate":"44.1","audio_sample_depth":"16","audio_channels":"Stereo","idle_timeout_event":"changed: playlist","file":"http:\/\/stream.radioparadise.com\/flac","track":null,"date":null,"composer":null,"cover_art_hash":187175884,"encoded":"VBR","artist":"Radio station","title":"The Clash - Clampdown","album":"AAA New station","station_name":"AAA New station","coverurl":"images\/radio-logos\/AAA New station.jpg"}) (playerlib.min.js, line 24)

[Log] engineMpd: success branch: data=({"volume":"10","repeat":"0","random":"0","single":"0","consume":"0","playlist":"540","playlistlength":"61","mixrampdb":"0.000000","state":"play","song":"59","songid":"62","time":"0","elapsed":"143","bitrate":"","audio":"44100:16:2","nextsong":"60","nextsongid":"63","song_percent":"0","audio_sample_rate":"44.1","audio_sample_depth":"16","audio_channels":"Stereo","idle_timeout_event":"changed: playlist","file":"http:\/\/stream.radioparadise.com\/flac","track":null,"date":null,"composer":null,"cover_art_hash":1216097015,"encoded":"VBR","artist":"Radio station","title":"The Clash - Clampdown","album":"AAA New station","station_name":"AAA New station","coverurl":"images\/radio-logos\/AAA New station.jpg"}) (playerlib.min.js, line 24)

[Log] engineMpd: success branch: data=({"volume":"10","repeat":"0","random":"0","single":"0","consume":"0","playlist":"541","playlistlength":"61","mixrampdb":"0.000000","state":"play","song":"59","songid":"62","time":"0","elapsed":"147","bitrate":"","audio":"44100:16:2","nextsong":"60","nextsongid":"63","song_percent":"0","audio_sample_rate":"44.1","audio_sample_depth":"16","audio_channels":"Stereo","idle_timeout_event":"changed: playlist","file":"http:\/\/stream.radioparadise.com\/flac","track":null,"date":null,"composer":null,"cover_art_hash":569758706,"encoded":"VBR","artist":"Radio station","title":"The Clash - Clampdown","album":"AAA New station","station_name":"AAA New station","coverurl":"images\/radio-logos\/AAA New station.jpg"}) (playerlib.min.js, line 24)
So it appears they split off the streams with metadata to separate URLs from the regular FLAC streams, as its not stable for some. Metadata streams perfectly stable for me on Moode \o/

https://radioparadise.com/listen/stream-links
I'll check them out :-)
(05-29-2020, 08:10 PM)mtnbrit Wrote: [ -> ]So it appears they split off the streams with metadata to separate URLs from the regular FLAC streams, as its not stable for some. Metadata streams perfectly stable for me on Moode \o/

https://radioparadise.com/listen/stream-links

Hi,

My 2 cents on the matter (sorry when this has been reported already): the Radio Paradise Flac stations WITH metadate (covers, titles, logo etc.) have slightly different url's. They look like this:

Main Mix FLAC (with metadata) (http://stream.radioparadise.com/flacm)
Mellow Mix FLAC (with metadata) (http://stream.radioparadise.com/mellow-flacm)
Rock Mix FLAC (with metadata) (http://stream.radioparadise.com/rock-flacm)
World/Etc Mix FLAC (with metadata) (http://stream.radioparadise.com/world-etc-flacm)

The only difference is the addition of an "m" suffix right at the end. I tried them with MoOde but MoOde can't handle them, I think. Strangely though, there's no mention of one other stream: Eclectic Mix FLAC (http://stream.radioparadise.com/eclectic-flac).

The streams without metadata play fine, on 6.5.2 in the Radio section of MoOde, I'm happy to report. But no station icon, sadly.

Cheers,
Marco
It seems that Radio Paradise keeps adding/changing streams. These .flacm streams are new. Of them, their website says "Like everything about FLAC streaming, this is still somewhat experimental."

They play, mostly, in VLC but with occasional glitches and dropouts just like their website warns. I don't see any artwork, only an "artist - track" string which is exactly the metadata their website calls "song title info". What app are you using to see covers and logos?

Regards,
Kent
Those flacm streams play fine on my end but there are occasional glitches :-0 

The main issue though is that there is some anomaly in the metadata thats causing MPD to trigger a "changed: playlist" idle timeout every 5 seconds. This percolates up to the UI if it's running and results in renderUI() even though there is nothing new to render.

Here is some log output while playing the Main Mix flacm stream. I don't see this behavior with other streams.[url=http://stream.radioparadise.com/flacm][/url]

Code:
20200604 084616 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084621 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084626 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084631 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084636 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084640 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084646 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084650 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084655 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084701 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084706 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084711 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084716 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084716 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084722 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084727 engine-mpd: Idle timeout event=(changed: playlist)
20200604 084732 engine-mpd: Idle timeout event=(changed: playlist)

If you want to log this yourself then edit /var/www/engine-mpd.php

Change:

Code:
debugLog('engine-mpd: Idle timeout event=(' . $event . ')')

To:

Code:
workerLog('engine-mpd: Idle timeout event=(' . $event . ')')

Then refresh Browser a couple of times and monitor the Moode log using moodeutl -t

-Tim
Pages: 1 2 3 4 5