Bug 14257 - Perl API says Radio has a digital output although it does not
: Perl API says Radio has a digital output although it does not
Status: CLOSED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Plugin
: 7.4.0
: All All
: P3 normal (vote)
: 7.5.0
Assigned To: Alan Young
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-09-24 15:34 UTC by Peter Watkins
Modified: 2010-04-08 17:25 UTC (History)
4 users (show)

See Also:
Category: Bug


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Watkins 2009-09-24 15:34:21 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.)
Comment 1 Peter Watkins 2009-09-24 17:18:46 UTC
workaround I'm using for now:

$client->hasDigitalOut() && ($client->model() ne 'baby')
Comment 2 Michael Herger 2009-09-25 00:25:13 UTC
Alan - is this a detail which is available from the capabilities?
Comment 3 Alan Young 2009-09-25 01:04:32 UTC
No, but it should be. Easy enough it add.
Comment 4 Chris Owens 2009-09-25 09:18:58 UTC
Andy notes this needs to be fixed with the 'Capabilities' feature of the firmware.
Comment 5 KDF 2009-09-25 16:28:06 UTC
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.
Comment 6 SVN Bot 2009-10-02 07:12:15 UTC
 == 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.
Comment 7 Alan Young 2009-10-02 07:15:27 UTC
Richard, I don't think that we need to be able to set any of these for Fab4 - what do you think?
Comment 8 Richard Titmuss 2009-10-02 07:55:19 UTC
Alan, what does HasDigitalOut do now? Fab4 has one of those. Not sure what the purpose of HasDisableDac is?
Comment 9 Alan Young 2009-10-02 08:24:03 UTC
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).
Comment 10 Richard Titmuss 2009-10-02 08:27:42 UTC
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 :).
Comment 11 Peter Watkins 2009-10-02 09:20:42 UTC
"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.
Comment 12 Michael Herger 2009-10-19 05:49:46 UTC
*** Bug 14811 has been marked as a duplicate of this bug. ***
Comment 13 Jim McAtee 2009-10-19 10:14:21 UTC
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).
Comment 14 Chris Owens 2009-10-21 09:49:40 UTC
moving current p2 bugs to p3 to make room for moving p1.5 bugs to p2
Comment 15 Chris Owens 2010-04-08 17:25:59 UTC
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!