Bugzilla – Bug 14257
Perl API says Radio has a digital output although it does not
Last modified: 2010-04-08 17:25:59 UTC
For a PB1 Radio attached to an SBS 7.4.0 instance, the Perl expression $client->hasDigitalOut() returns true. It should not, as Radio does not have a digital output. The Perl code returns the correct info for Boom. I suspect that Radio's Perl representation needs to subclass SqueezePlay.pm and update some properties. (I'm updating the validFor() method for a plugin that won't work on players like Boom and Radio that lack digital outputs.)
workaround I'm using for now: $client->hasDigitalOut() && ($client->model() ne 'baby')
Alan - is this a detail which is available from the capabilities?
No, but it should be. Easy enough it add.
Andy notes this needs to be fixed with the 'Capabilities' feature of the firmware.
might be worth reviewing the other capability accessors in the Squeezebox2 and Player classes to make sure you don't get some other holdovers that confuse when used with SP-classed players.
== Auto-comment from SVN commit #28751 to the slim repo by ayoung == == https://svn.slimdevices.com/slim?view=revision&revision=28751 == Fixed bug 14257: Perl API says Radio has a digital output although it does not Add HasDigitalOut, HasPreAmp and HasDisableDac capabilities. Remove redundant maxTransitionInterval() method.
Richard, I don't think that we need to be able to set any of these for Fab4 - what do you think?
Alan, what does HasDigitalOut do now? Fab4 has one of those. Not sure what the purpose of HasDisableDac is?
All hasDigitalOut does is enable two items in the WebUI: Setting / Player / <player> / Audio / Volume Control & Audio Startup Time. These allow setting of the digitalVolumeControl & mp3SilencePrelude preferences respectively. The first controls whether or not the volume is pinned at 100%, and actually has nothing to do with the digital output specifically. The second determines how much silence (at 44100 samples/s regardless of the track sample rate) to add to the start of each track (default 0) to give the external DAC time to wake up. For some reason this is only for MP3s. Purpose of HasDisableDac: me neither. I guess it does what it says on the tin. Again, currently only settable via the WebUI (same page).
I think some people will find the 100% volume on fab4 useful, but it's more complicated now due to the local volume control. So I think we should leave it as is, and wait to see if the feature is requested. By then hopefully we'll have pref syncing between the player and servers :).
"I think some people will find the 100% volume on fab4 useful, but it's more complicated now due to the local volume control." Absolutely they/we will! There are at least two different plugins for Denon amp control (the one that led me to open this bug and one other) that rely on the fixed volume behavior of always sending full volume to the player's outputs but maintaining a fictional volume on the player and in SBS. Touch is actually especially well-suited to fixed output and amp control, as its hardware is capable of directly controlling amps with RS232 ports via a cheap adapter cable (and some additional code, probably an applet). But if Touch doesn't really allow you to lock its outputs at 100%, I guess that would merit a different ticket. Thanks.
*** Bug 14811 has been marked as a duplicate of this bug. ***
Doesn't this also need to be fixed for Radio in 7.4.x? One result is that in 7.4 you have several unused audio settings in the web interface (bug 14811).
moving current p2 bugs to p3 to make room for moving p1.5 bugs to p2
This bug has been marked fixed in a released version of Squeezebox Server or the accompanying firmware or mysqueezebox.com release. If you are still seeing this issue, please let us know!