[PLUGIN] YouTube Cast Receiver

is this a fresh install? or old install?

Iā€™ll take care of this later today (working now)

1 Like

Hello patrickkfkan,

short update from me.
I have a Volumio with the latest version freshly installed.
Got everything set up and started installing my previous plugins.
The first thing I installed was the plugin System Info:

https://github.com/balbuze/volumio-plugins/tree/master/plugins/miscellanea/Systeminfo

Here I saw a lot of npm infos during the installation.
This plugin probably works excessively with it.
Tried to install Yt-Cast right after that and got the error right away.
After a new reinstallation and skipping the Systeminfo plugin I was finally able to install this plugin.

Thanks again for the help.

@balbuze could it be that system info does that? Ė„Ė„

@sthan21 , you are experiencing the crash because the the plugin failed to start properly. This is also why you didnā€™t see Volumio as a cast device in the YouTube app / website. We need to identify the root cause of why the plugin failed to start in the first place. Could you go to the plugin settings and turn on Verbose Logging, then view the log as before with sudo journalctl -f -u volumio. Then deactivate the plugin, followed by reactivating it. This time, I would be interested in knowing the log corresponding to the plugin activation part (or you can just capture the whole log and send it to me as a text file through PM). I know this is quite troublesome, but I donā€™t see an easier way to debug thisā€¦

@sthan21,

I got your PM with the output of sudo systemctl status mpd. I think it would be better to move the conversation back here as this could help others with similar issues.

The output of sudo systemctl status mpd on your Volumio shows this line:

This means that MPD failed to start due to a missing library. This should not happen on a stock Volumio installation, so I suspect you may have performed a dist-upgrade (e.g. apt-get upgrade) which is known to break Volumio.

With MPD broken on your system, a lot of the plugins wonā€™t work.

@patrickkfkan
i think i figured it out when you told me about ifconfig.
i saw that i had the wifi on on the one rasberry not connected because i m using the ethernet. I dont know how that was effecting only the browser visibilityā€¦

@giorgosperi , could you give me the IP addresses of the WIFI and Ethernet interfaces? I want to know if they are on the same subnet and can try to reproduce this issue so I can see what can be done about it. Theoretically speaking, if they are both on the same subnet, then the receiver should be visible on the desktop as wellā€¦unless the desktop detects the receiver is broadcasting through two IP addresses and decides to ignore it totally.

Perhaps it would be a good idea to add an option to bind to just one interface in the plugin settings. This could be a workaroundā€¦

@patrickkfkan
the wifi wasnt connect on my wifi i just had it on as a backup if i lose somehow connection to connect on the volumio hotspot and check and i forgot it the switch on on the one device so i guess since this interface had no ip was conflicting the detection? i dont know why it was happening only from the browser. mobile was working fineā€¦

@giorgosperi , just to confirm that I am able to reproduce this issue. Will see what I can do about it when I have time.

@patrickkfkan
it is not a big deal just was weird until i realize it.
thanks for your effort

Thanks @ patrickkfkan!
It works flawless on my RPi3b - Volumio 2.882 with updated MPD.
:+1:

1 Like

With my new volumio installation (on RPi) I canā€™t run this pluginā€¦
On mobile app (Android) YouTube hangs in ā€œConnecting with volumioā€¦ā€ state and on debug console I see

[yt-cast-receiver.YouTubeApp] Launching...
[yt-cast-receiver.YouTubeApp] Generated screen Id: vhm4r49qootqis3f7558ekfe9d
[yt-cast-receiver.YouTubeApp] Obtained lounge token: AGdO5p-1BSQGYNtJw1g6y2wOxiM4_rOlgLcvMSJDlZ7CX3RGhB2yYSYbQG3W8aWCfun_czh2CtTQv3MOyt0jxuwfqT27sYbZ2sEedi7xHrqjZq5e9rwVXG4
[yt-cast-receiver.YouTubeApp] Initiate binding...
[yt-cast-receiver.YouTubeApp] Processing initial bind data...
[yt-cast-receiver.YouTubeApp] Command #0 - c received with the following data:
[ 'B428845D11AA1143', '', 8 ]
[yt-cast-receiver.YouTubeApp] Setting SID to B428845D11AA1143
[yt-cast-receiver.YouTubeApp] Command #1 - S received with the following data (gsessionid):
xTT1SbJ0Pz2WfQrOf33EN0WWOK3gVbD0
[yt-cast-receiver.YouTubeApp] Command #2 - loungeStatus received but not going to be handled. Skipping...
Unhandled data:
{ devices: '[{"app":"yt-cast-receiver","capabilities":"que,atp,mus","clientName":"unknown","experiments":"","name":"YouTube Cast Receiver","id":"c8277ac4-ke86-4f8b-8fe2-1236bef43397","type":"LOUNGE_SCREEN","hasCc":"true","receiverIdentityMatchStatus":"IS_RECEIVER"}]',
connectionEventDetails: '{"deviceId":"c8277ac4-ke86-4f8b-8fe2-1236bef43397"}' }
[yt-cast-receiver.YouTubeApp] Command #3 - getNowPlaying received. Report 'now playing'...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '1', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 1)
[yt-cast-receiver.YouTubeApp] Registering pairing code with the following data:
URLSearchParams {
'access_type' => 'permanent',
'app' => 'y    t-cast-receiver',
'pairing_code' => 'ec53d55f-9b5e-4793-a868-3b67ad6df0e4',
'screen_id' => 'vhm4r49qootqis3f7558ekfe9d',
'screen_name' => 'YouTube Cast Receiver' }
[yt-cast-receiver.YouTubeApp] Registered pairing code: ec53d55f-9b5e-4793-a868-3b67ad6df0e4
[yt-cast-receiver.CommandListener] Started
[yt-cast-receiver.CommandListener] Listening to: https://www.youtube.com/api/lounge/bc/bind?AID=3&CI=0&CVER=1&RID=rpc&SID=B428845D11AA1143&TYPE=xmlhttp&VER=8&app=yt-cast-receiver&capabilities=que%2Catp%2Cmus&device=LOUNGE_SCREEN&gsessionid=xTT1SbJ0Pz2WfQrOf33EN0WWOK3gVbD0&id=c8277ac4-ke86-4f8b-8fe2-1236bef43397&loungeIdToken=AGdO5p-1BSQGYNtJw1g6y2wOxiM4_rOlgLcvMSJDlZ7CX3RGhB2yYSYbQG3W8aWCfun_czh2CtTQv3MOyt0jxuwfqT27sYbZ2sEedi7xHrqjZq5e9rwVXG4&mdxVersion=2&name=YouTube%20Cast%20Receiver&t=1&theme=cl&v=2&zx=xxxxxxxxxxxx
[yt-cast-receiver.YouTubeApp] Launched
dial: returning pid 826b3c04-1bd5-4fc5-a993-42005a9d78d5
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '2', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 2)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '3', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 3)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '4', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 4)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '5', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 5)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '6', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 6)

The same behavior I have when Iā€™m trying to run YT from my PC and webbrowser.

Details about my system

mpd

$ sudo systemctl status mpd 
ā— mpd.service - Music Player Daemon
   Loaded: loaded (/opt/mpd-0.21.16_20191227/lib/systemd/system/mpd.service; enabled)
   Active: active (running) since Wed 2021-06-16 19:36:15 UTC; 1min 40s ago
     Docs: man:mpd(1)
           man:mpd.conf(5)
 Main PID: 655 (mpd)
   CGroup: /system.slice/mpd.service
           ā””ā”€655 /opt/mpd-0.21.16_20191227/bin/mpd --no-daemon

Jun 16 19:36:14 volumio mpd[655]: config_file: config parameter "gapless_mp3_playback" on line 19 is deprecated
Jun 16 19:36:14 volumio mpd[655]: config_file: config parameter "buffer_before_play" on line 85 is deprecated
Jun 16 19:36:14 volumio mpd[655]: config_file: config parameter "id3v1_encoding" on line 99 is deprecated
Jun 16 19:36:14 volumio mpd[655]: Jun 16 19:36 : exception: Decoder plugin 'wildmidi' is unavailable: config...ty.cfg
Jun 16 19:36:14 volumio mpd[655]: Jun 16 19:36 : exception: Input plugin 'tidal' is unavailable: No Tidal ap...igured
Jun 16 19:36:14 volumio mpd[655]: Jun 16 19:36 : exception: Input plugin 'qobuz' is unavailable: No Qobuz ap...igured
Jun 16 19:36:15 volumio systemd[1]: Started Music Player Daemon.
Hint: Some lines were ellipsized, use -l to show in full.

volumio-ytcr commit: d4c996eca5089061d14ef8607e634e6f5c9e6bf3

i got still a clean system i will test
first i run a backupā€¦
what version of volumio are you using?
and what is installed plugins ect.

what version of volumio are you using?

itā€™s 2.882

and what is installed plugins ect.

Itā€™s completely new installation. So now I have only one plugin ā€œYouTube Cast Receiver 0.1.0a-20210419ā€.

@patrickkfkan
letā€™s wait for patrick maybe he can shine his light on thisā€¦

1 Like

Iā€™ve made this same test on volumio 3.074 + YouTube Cast Receiver (but without mpd update) and still behavior is the same

[yt-cast-receiver.YouTubeApp] Launching...
[yt-cast-receiver.YouTubeApp] Generated screen Id: mmif6fh0f4i2fsg979epfc0hko
[yt-cast-receiver.YouTubeApp] Obtained lounge token: AGdO5p9UOm0sDDd2WVsHIja83DxMELDiTd0JhmsN29llCa8tpBQxxcUEvCpnFPVD-lZXBA5k9c3th8CAkc6H_xr5k0AFwGsMpTIVW8mhsknhDPDlTQxrAb8
[yt-cast-receiver.YouTubeApp] Initiate binding...
[yt-cast-receiver.YouTubeApp] Processing initial bind data...
[yt-cast-receiver.YouTubeApp] Command #0 - c received with the following data:
[ '8092FCD37FA26B66', '', 8 ]
[yt-cast-receiver.YouTubeApp] Setting SID to 8092FCD37FA26B66
[yt-cast-receiver.YouTubeApp] Command #1 - S received with the following data (gsessionid):
Jo0smdabawPdnTNdRfp_wJw5unSxc9Qw
[yt-cast-receiver.YouTubeApp] Command #2 - loungeStatus received but not going to be handled. Skipping...
Unhandled data:
{
  devices: '[{"app":"yt-cast-receiver","capabilities":"que,atp,mus","clientName":"unknown","experiments":"","name":"YouTube Cast Receiver","id":"c8277ac4-ke86-4f8b-8fe2-1236bef43397","type":"LOUNGE_SCREEN","hasCc":"true","receiverIdentityMatchStatus":"IS_RECEIVER"}]',
  connectionEventDetails: '{"deviceId":"c8277ac4-ke86-4f8b-8fe2-1236bef43397"}'
}
[yt-cast-receiver.YouTubeApp] Command #3 - getNowPlaying received. Report 'now playing'...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '1', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 1)
[yt-cast-receiver.YouTubeApp] Registering pairing code with the following data:
URLSearchParams {
  'access_type' => 'permanent',
  'app' => 'yt-cast-receiver',
  'pairing_code' => '70c6da22-e207-4ea3-bb1c-693c2d276362',
  'screen_id' => 'mmif6fh0f4i2fsg979epfc0hko',
  'screen_name' => 'YouTube Cast Receiver' }
[yt-cast-receiver.YouTubeApp] Registered pairing code: 70c6da22-e207-4ea3-bb1c-693c2d276362
[yt-cast-receiver.CommandListener] Started
[yt-cast-receiver.CommandListener] Listening to: https://www.youtube.com/api/lounge/bc/bind?AID=3&CI=0&CVER=1&RID=rpc&SID=8092FCD37FA26B66&TYPE=xmlhttp&VER=8&app=yt-cast-receiver&capabilities=que%2Catp%2Cmus&device=LOUNGE_SCREEN&gsessionid=Jo0smdabawPdnTNdRfp_wJw5unSxc9Qw&id=c8277ac4-ke86-4f8b-8fe2-1236bef43397&loungeIdToken=AGdO5p9UOm0sDDd2WVsHIja83DxMELDiTd0JhmsN29llCa8tpBQxxcUEvCpnFPVD-lZXBA5k9c3th8CAkc6H_xr5k0AFwGsMpTIVW8mhsknhDPDlTQxrAb8&mdxVersion=2&name=YouTube%20Cast%20Receiver&t=1&theme=cl&v=2&zx=xxxxxxxxxxxx
[yt-cast-receiver.YouTubeApp] Launched
dial: returning pid b355f49f-07f8-4480-9c00-dd1ebeaaa4bd
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '2', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 2)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '3', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 3)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '4', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 4)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '5', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 5)
 volumio : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/sbin/ifconfig eth0
pam_unix(sudo:session): session opened for user root by (uid=0)
pam_unix(sudo:session): session closed for user root
 volumio : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/sbin/ifconfig wlan0
pam_unix(sudo:session): session opened for user root by (uid=0)
pam_unix(sudo:session): session closed for user root
info: CoreCommandRouter::volumioGetState
info: CorePlayQueue::getTrack 0
info: CoreCommandRouter::executeOnPlugin: multiroom , getMultiroom
info: CoreCommandRouter::volumioGetVisibleSources
info: CoreCommandRouter::executeOnPlugin: my_music , getDisabledSources
info: CoreCommandRouter::executeOnPlugin: appearance , getUiSettings
info: CoreCommandRouter::executeOnPlugin: wizard , getShowWizard
info: CoreCommandRouter::executeOnPlugin: system , getShowWizard
info: CoreCommandRouter::executeOnPlugin: system , getPrivacySettings
info: CoreCommandRouter::executeOnPlugin: my_volumio , getMyVolumioStatus
info: CoreCommandRouter::getUIConfigOnPlugin
info: CoreCommandRouter::executeOnPlugin: appearance , getConfigParam
info: Received Get System Version
info: CoreCommandRouter::executeOnPlugin: system , getSystemVersion
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '6', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 6)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '7', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 7)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '8', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 8)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '9', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 9)
[yt-cast-receiver.YouTubeApp] Keeping alive...
[yt-cast-receiver.YouTubeApp] Posting bind data:
{ count: '1', ofs: '10', req0__sc: 'noop' }
[yt-cast-receiver.YouTubeApp] postBind() completed (ofs: 10)

3.074 doesnā€™t need the mpd update ā€¦ but as i said before we have to wait for the creator of this plugin

@patrickkfkan
hi patrick i think you need to update it again it doesnā€™t connect any moreā€¦

Hi, I can confirm having the same connection issue after updating the YouTube app, and have updated the plugin to deal with this. Please test it and see if you can connect now.