ANNOUNCE: Group Players

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • philippe_44
    Senior Member
    • May 2008
    • 9347

    Originally posted by threej
    A question — now that I successfully have two group players, each consisting of a stereo pair of HomePods, I am not able to synchronize the group players with each other. I am able to synchronize any number of real players with either group player, but not with both. Presently, I manage by synchronizing one pair of HomePods individually (along with Duets, Squeezebox Booms, etc.) with one grouped pair, but I lose tracked volume for the individually added HomePods — and matching their volume in iPeng is not very exact. Am I missing anything? Any suggestions?
    You can't synchronize group players together (this is the same as nested sync). You must create another group with real players, but at the end it would the same as synchronizing groups.
    LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

    Comment

    • slartibartfast
      Senior Member
      • Jan 2010
      • 13863

      I just tried setting a playlist which was an album as an alarm on a Group Player consisting of two Radios. At the time the alarm went off one Radio was on the other was off. After the alarm went off I turned on the second Radio and expected the second Radio to synchronise with the first Radio. The first Radio continued to play but the second Radio made no attempt to synchronise and remained silent. I have tried this three times now and the second Radio has successfully synchronised twice and failed to even try once. Any ideas?

      Sent from my Pixel 3a using Tapatalk
      Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
      Bedroom: Radio
      Bathroom: Radio

      Comment

      • philippe_44
        Senior Member
        • May 2008
        • 9347

        Originally posted by slartibartfast
        I just tried setting a playlist which was an album as an alarm on a Group Player consisting of two Radios. At the time the alarm went off one Radio was on the other was off. After the alarm went off I turned on the second Radio and expected the second Radio to synchronise with the first Radio. The first Radio continued to play but the second Radio made no attempt to synchronise and remained silent. I have tried this three times now and the second Radio has successfully synchronised twice and failed to even try once. Any ideas?

        Sent from my Pixel 3a using Tapatalk
        You can't do that. You either choose the option to power on all members on play or members won't join when the are powered on later as they were not part of the group at the first place
        LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

        Comment

        • slartibartfast
          Senior Member
          • Jan 2010
          • 13863

          Originally posted by philippe_44
          You can't do that. You either choose the option to power on all members on play or members won't join when the are powered on later as they were not part of the group at the first place
          Sometimes they do though.

          Sent from my Pixel 3a using Tapatalk
          Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
          Bedroom: Radio
          Bathroom: Radio

          Comment

          • slartibartfast
            Senior Member
            • Jan 2010
            • 13863

            Originally posted by philippe_44
            You can't do that. You either choose the option to power on all members on play or members won't join when the are powered on later as they were not part of the group at the first place
            If players are synchronised without using the group players plugin then a player which is powered on later will join the sync group. I thought the plugin would act in the same way.

            Sent from my Pixel 3a using Tapatalk
            Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
            Bedroom: Radio
            Bathroom: Radio

            Comment

            • philippe_44
              Senior Member
              • May 2008
              • 9347

              Originally posted by slartibartfast
              If players are synchronised without using the group players plugin then a player which is powered on later will join the sync group. I thought the plugin would act in the same way.

              Sent from my Pixel 3a using Tapatalk
              Yes but that's one of the differences with the group: it is assembled when playback starts. I gives a lot of flexibility, but small drawbacks like this one. It would be complicated to implement but it's also a design choice b/c I don't want players to be "grabbed" when they are powered while one of their groups is already playing. It would be a user annoyance when power up a player to have it suddenly join a dynamic group. Say SB "bedroom" is off (I want peace) but Group "podcast" (which normally includes SB "bedroom" plays, listened by Wife. I'm powering up SB "bedroom". I don't want the podcast to play my bedroom. Not mentioning that a player can be member of multiple groups, so which one to choose
              LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

              Comment

              • slartibartfast
                Senior Member
                • Jan 2010
                • 13863

                Originally posted by philippe_44
                Yes but that's one of the differences with the group: it is assembled when playback starts. I gives a lot of flexibility, but small drawbacks like this one. It would be complicated to implement but it's also a design choice b/c I don't want players to be "grabbed" when they are powered while one of their groups is already playing. It would be a user annoyance when power up a player to have it suddenly join a dynamic group. Say SB "bedroom" is off (I want peace) but Group "podcast" (which normally includes SB "bedroom" plays, listened by Wife. I'm powering up SB "bedroom". I don't want the podcast to play my bedroom. Not mentioning that a player can be member of multiple groups, so which one to choose
                I wonder why the powered on Squeezebox did actually join the group on two out of three occasions I tried this. Is it worth messing around with logging for the plugin to see what is going on. The other day I set the group player as the alarm and turned on the second player after the alarm was triggered. This time the second player did not join the group which is the intended behaviour. I then powered off the second player and set another alarm a few minutes later. When I powered on the second player after the alarm went off this time it did join the group. Any idea why the behaviour was different the second time?

                Sent from my Pixel 3a using Tapatalk
                Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
                Bedroom: Radio
                Bathroom: Radio

                Comment

                • philippe_44
                  Senior Member
                  • May 2008
                  • 9347

                  Originally posted by slartibartfast
                  I wonder why the powered on Squeezebox did actually join the group on two out of three occasions I tried this. Is it worth messing around with logging for the plugin to see what is going on. The other day I set the group player as the alarm and turned on the second player after the alarm was triggered. This time the second player did not join the group which is the intended behaviour. I then powered off the second player and set another alarm a few minutes later. When I powered on the second player after the alarm went off this time it did join the group. Any idea why the behaviour was different the second time?

                  Sent from my Pixel 3a using Tapatalk
                  I would have to verify, but did you power off the 2nd one while it was still playing?
                  LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

                  Comment

                  • slartibartfast
                    Senior Member
                    • Jan 2010
                    • 13863

                    Originally posted by philippe_44
                    I would have to verify, but did you power off the 2nd one while it was still playing?
                    The first one was probably still playing but the second one didn't play at all before being powered off.

                    Sent from my Pixel 3a using Tapatalk
                    Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
                    Bedroom: Radio
                    Bathroom: Radio

                    Comment

                    • mcoste
                      Senior Member
                      • Aug 2007
                      • 112

                      I just came across this plugin, great idea and nice work. Thank you

                      Comment

                      • sfomine64
                        Junior Member
                        • Nov 2020
                        • 1

                        Very nice plugin!

                        If a member was part of a LMS sync group before the Group Player started, it is re-affected to that group when the gathering is broken up. If that LMS sync group is playing then the ex-member will be powered off (otherwise it would start playing what’s on the group, which could be inconvenient)
                        This re-assembly can be disabled (which I prefer)
                        Would it be possible to disable the power off on rejoining the group?
                        The player should start playback what's on the group.

                        Comment

                        • slartibartfast
                          Senior Member
                          • Jan 2010
                          • 13863

                          I have a Touch and a piCorePlayer in a group. Both players have "Defeat destructive Touch-To-Play" in basic settings in LMS. The group player doesn't have this setting so it is easy to destroy a playlist when using a Duet Controller to add tracks. Would it be possible to add this feature?

                          Sent from my Pixel 3a using Tapatalk
                          Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
                          Bedroom: Radio
                          Bathroom: Radio

                          Comment

                          • philippe_44
                            Senior Member
                            • May 2008
                            • 9347

                            Originally posted by slartibartfast
                            I have a Touch and a piCorePlayer in a group. Both players have "Defeat destructive Touch-To-Play" in basic settings in LMS. The group player doesn't have this setting so it is easy to destroy a playlist when using a Duet Controller to add tracks. Would it be possible to add this feature?

                            Sent from my Pixel 3a using Tapatalk
                            Unfortunately not. I have a generic model to add "common" preferences to Group, so that would be just a one line adder here, but LMS has a check for the model to be a "SqueezePlay" before it saves Defeat TTP (see Slim::Web::Settings::Player::Basic.pm)
                            Code:
                            	if ($paramRef->{'saveSettings'}) {
                            
                            		for my $pref (@prefs) {
                            
                            			my $i = 0;
                            			my @array;
                            
                            			while (defined $paramRef->{'pref_'.$pref.$i}) {
                            
                            				if ($paramRef->{'pref_'.$pref.$i} ne "-1") {push @array, $paramRef->{'pref_'.$pref.$i};}
                            				$i++;
                            			}
                            
                            			$prefs->client($client)->set($pref, \@array);
                            		}
                            
                            		if ($client->isPlayer && [COLOR="#FF0000"]$client->isa('Slim::Player::SqueezePlay')[/COLOR] && defined $paramRef->{'defeatDestructiveTouchToPlay'}) {
                            			$prefs->client($client)->set('defeatDestructiveTouchToPlay', $paramRef->{'defeatDestructiveTouchToPlay'});
                            		}
                            	}
                            LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

                            Comment

                            • slartibartfast
                              Senior Member
                              • Jan 2010
                              • 13863

                              Originally posted by philippe_44
                              Unfortunately not. I have a generic model to add "common" preferences to Group, so that would be just a one line adder here, but LMS has a check for the model to be a "SqueezePlay" before it saves Defeat TTP (see Slim::Web::Settings::Player::Basic.pm)
                              Code:
                              if ($paramRef->{'saveSettings'}) {
                              
                              for my $pref (@prefs) {
                              
                              my $i = 0;
                              my @array;
                              
                              while (defined $paramRef->{'pref_'.$pref.$i}) {
                              
                              if ($paramRef->{'pref_'.$pref.$i} ne "-1") {push @array, $paramRef->{'pref_'.$pref.$i};}
                              $i++;
                              }
                              
                              $prefs->client($client)->set($pref, \@array);
                              }
                              
                              if ($client->isPlayer && [COLOR="#FF0000"]$client->isa('Slim::Player::SqueezePlay')[/COLOR] && defined $paramRef->{'defeatDestructiveTouchToPlay'}) {
                              $prefs->client($client)->set('defeatDestructiveTouchToPlay', $paramRef->{'defeatDestructiveTouchToPlay'});
                              }
                              }
                              That's a shame. I suppose using normal synchronisation would work for this case.

                              Sent from my Pixel 3a using Tapatalk
                              Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
                              Bedroom: Radio
                              Bathroom: Radio

                              Comment

                              • slartibartfast
                                Senior Member
                                • Jan 2010
                                • 13863

                                Originally posted by philippe_44
                                Unfortunately not. I have a generic model to add "common" preferences to Group, so that would be just a one line adder here, but LMS has a check for the model to be a "SqueezePlay" before it saves Defeat TTP (see Slim::Web::Settings::Player::Basic.pm)
                                Code:
                                if ($paramRef->{'saveSettings'}) {
                                
                                for my $pref (@prefs) {
                                
                                my $i = 0;
                                my @array;
                                
                                while (defined $paramRef->{'pref_'.$pref.$i}) {
                                
                                if ($paramRef->{'pref_'.$pref.$i} ne "-1") {push @array, $paramRef->{'pref_'.$pref.$i};}
                                $i++;
                                }
                                
                                $prefs->client($client)->set($pref, \@array);
                                }
                                
                                if ($client->isPlayer && [COLOR="#FF0000"]$client->isa('Slim::Player::SqueezePlay')[/COLOR] && defined $paramRef->{'defeatDestructiveTouchToPlay'}) {
                                $prefs->client($client)->set('defeatDestructiveTouchToPlay', $paramRef->{'defeatDestructiveTouchToPlay'});
                                }
                                }
                                @mherger would it be possible to allow a group consisting only of squeezeplay players to act like a single squeezeplay player with regard to "Defeat destructive Touch-To-Play"? At the moment adding tracks using a Controller destroys the existing playlist. Material skin works OK as it ignores the defeat TTP setting and has its own setting.

                                Sent from my Pixel 3a using Tapatalk
                                Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
                                Bedroom: Radio
                                Bathroom: Radio

                                Comment

                                Working...