[PLUGIN] Mixcloud

Hi everyone,

Mixcloud plugin available for testing. You can find it here:

https://github.com/patrickkfkan/volumio-mixcloud

Volumio 3

Plugin submitted to Volumio 3 plugin store. If you do not see it there, enable “Plugins Test Mode” in http://<volumio_address>/dev. If you still do not see it, that means the plugin has not yet been accepted and you are advised to wait.

Volumio 2.x

The plugin requires manual installation, instructions for which you can find in the volumio-2.x branch of the Github repo:

https://github.com/patrickkfkan/volumio-mixcloud/tree/volumio-2.x

Follow the instructions there to install it.

Some screenshots:

And no, this plugin does not support user login, so it will only give you publicly-accessible stuff. It doesn’t support Live shows as well – haven’t figured out how to do that :frowning:

You can report issues here and suggestions are welcome.

Regards,
Patrick

@patrickkfkan it plays but every time i play some mix it cut off the sound at random points

@dvo, how long does it play for before cutting off? I don’t have this problem on my side…

What’s your Volumio version? MPD version?

it’s not 1 point in 10 minutes you will have it … if i go back to a spot without sound and start
from there again i have sound again… but cuts off again … the cuts seem to be random.
i had it from 1.35 till 7.28 between that i have seen the cutt off of the sound stream still
running but no sound… 3.015 …ash …Music Player Daemon 0.21.5
creating live log at the moment for you : it’s saying a lot of:



Starting Live Log...
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: CoreCommandRouter::volumioGetState
info: CoreCommandRouter::volumioGetQueue
info: CoreStateMachine::getQueue
info: CorePlayQueue::getQueue
info: CoreCommandRouter::executeOnPlugin: system , getHwuuid
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: CALLMETHOD: system_controller system enableLiveLog true
info: CoreCommandRouter::executeOnPlugin: system , enableLiveLog
info: Launching a new LiveLog session
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: CoreCommandRouter::volumioSeek
info: CoreStateMachine::seek
info: CorePlayQueue::getTrack 0
info: TRACKBLOCK {"service":"mixcloud","uri":"mixcloud/cloudcast@cloudcastId=Q2xvdWRjYXN0OjIxNTI1MDE2MzE%3D@owner=tombauminista","type":"track","albumart":"https://thumbnailer.mixcloud.com/unsafe/600x600/extaudio/3/1/0/c/61c8-76c5-4c98-af5b-3afab66e7277","artist":"Tom Bauminista","album":"","name":"Dub Conference #295 (2021/02/28) never sell out","title":"Dub Conference #295 (2021/02/28) never sell out"}
info: CoreStateMachine::startPlaybackTimer
info: CorePlayQueue::getTrack 0
info: CoreStateMachine::setConsumeUpdateService mpd
info: ControllerMpd::seek
info: CoreStateMachine::pushState
info: CoreCommandRouter::volumioPushState
info: CoreCommandRouter::executeOnPlugin: volumiodiscovery , saveDeviceInfo
error: null
info:
---------------------------- MPD announces state update: player
info: ControllerMpd::getState




info: ControllerMpd::pushState
info: CoreCommandRouter::servicePushState
info: CorePlayQueue::getTrack 0


info: CoreStateMachine::syncState   stateService play
info: CoreStateMachine::syncState   currentStatus play
info: Received an update from plugin. extracting info from payload
info: CoreStateMachine::pushState
info: CoreCommandRouter::volumioPushState
info: CoreCommandRouter::executeOnPlugin: volumiodiscovery , saveDeviceInfo
info: CoreStateMachine::pushState
info: CoreCommandRouter::volumioPushState
info: CoreCommandRouter::executeOnPlugin: volumiodiscovery , saveDeviceInfo
info: ------------------------------ 28ms
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Starting auth flow...
info: CoreCommandRouter::getUIConfigOnPlugin
info: CoreCommandRouter::getUIConfigOnPlugin
info: [youtube2-auth] Start polling for access token...
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s
info: [youtube2-auth] Access token not obtained. Will try again in 6s

The “Access token not obtained” messages were from the YouTube plugin, not this. Nothing in the log indicates what happened at the point of cut-off.

Would have to wait till other testers report if they have the same issue.

This is the show you’re testing with, right?

I’m playing it now. Volumio 2.853 + MPD 0.21.6 (the one I compiled) on rPi 3b

it will cutt around 7 min i picked random things… this is one of them…
shall i do a mpd update to 21.6?

I don’t think it will make a difference.

In SSH, when the cut-off occurs, type:

$ mpc

Tom Bauminista - Dub Conference #295 (2021/02/28) never sell out
[playing] #1/1   9:33/127:33 (7%)
volume: 40%   repeat: off   random: off   single: off   consume: off

Do this a few times. See if there’s an error and whether the time / percentage increases. As you can see, I’m now at 9:33 minutes into the show and it’s still playing.

nope it stays like this:
volumio@volumio:~$ mpc
Tom Bauminista - Dub Conference #295 (2021/02/28) never sell out
[playing] #1/1 4:10/127:33 (3%)
volume: 78% repeat: off random: off single: off consume: off
volumio@volumio:~$
it stopped at 4.10 and repeating mpc makes no changes…

Tom Bauminista - Dub Conference #295 (2021/02/28) never sell out
[playing] #1/1   4:10/127:33 (3%)
volume: 78%   repeat: off   random: off   single: off   consume: off
volumio@volumio:~$ mpc
Tom Bauminista - Dub Conference #295 (2021/02/28) never sell out
[playing] #1/1   4:10/127:33 (3%)
volume: 78%   repeat: off   random: off   single: off   consume: off
volumio@volumio:~$ mpc
Tom Bauminista - Dub Conference #295 (2021/02/28) never sell out
[playing] #1/1   4:10/127:33 (3%)
volume: 78%   repeat: off   random: off   single: off   consume: off
volumio@volumio:~$ mpc
Tom Bauminista - Dub Conference #295 (2021/02/28) never sell out
[playing] #1/1   4:10/127:33 (3%)
volume: 78%   repeat: off   random: off   single: off   consume: off
volumio@volumio:~$

player still running at 9 min now no sound...mpc doesn't show that...

I see.

Not sure if it’s the network connection dropping at that point or something else…I would have to test with Volumio 3 beta (weekend).

shall i test the new beta release? with it? that’s not the releases of ash …

You better wait for me to test it first. I’m not even sure you can install plugins with that version (as reported in the YouTube2 post).

oke we will keep the versions of ash to test and skip the new beta release

@patrickkfkan
still testing that song :
if i put seek past 10 min and start playing it…it will play it full ( 127.33 min ) without any cuts.
could this be the preview playing? instead of the full session.
it looks like some ( prev ) timer is triggered in the first 10 min…

No. I am able to play the full length right from the beginning. It’s either ‘exclusive’ (cannot be played at all) or ‘fully playable’.

i tested it twice with a reboot in the middle trigger seems to be there
after 10min i can play it till the end. it looks like a trigger in the first 10 min. that is what i could say…

@dvo, I’m investigating this ‘10min cut-off’ issue. Will report when I have progress.

oke it’s more variable cut off it’d different with any song btw tested sound cloud runs oke

Another user reported this on my Github. I’m asking what version he’s on so maybe I can reproduce it and see what’s going on…

3.015 rpi4/4 mpd 21.50 tested … same cut off
3.010 rpi4/4 mpd 21.50 tested … same cut off
2.861 rpi2/? mpd 20.18 tested … same cut off

I reported the issue via github today.

I’m on Volumio v. 2.861, no MPD modification, Raspberry pi 2.

Investigating volumio logs, the cut off occurs on a MPD update:

info:
---------------------------- MPD announces state update: player
info: ControllerMpd::getState
�
�
info: ControllerMpd::pushState
info: CoreCommandRouter::servicePushState
info: CoreStateMachine::pushState
info: CoreCommandRouter::volumioPushState
info: CoreCommandRouter::executeOnPlugin: volumiodiscovery , saveDeviceInfo
info: CorePlayQueue::getTrack 0
�
�
info: CoreStateMachine::syncState   stateService stop
info: CoreStateMachine::syncState   currentStatus play
info: CoreCommandRouter::volumioPushState
info: CoreCommandRouter::executeOnPlugin: volumiodiscovery , saveDeviceInfo
info: CoreStateMachine::stPlaybackTimer
info: ------------------------------ 15ms

what is your mpd version? oke mpd 0.21.5 i have on both …