At the recently concluded Android Developer Conference held in San Francisco, we were showing a pair of new products one of which was paired with the Nexus 9 running Android Lollipop (aka "L").
We did observe that the behavior of "L" is defined by the host side for both internal audio and for an attached USB audio device such as our 'dSp' in regards to its volume control behavior. While I understand the desire to not to require the user to make an excessive number of presses of the volume increment and decrement buttons, the step count (and hence the precision) could be increased by adding more 'steps' and decreasing the delay between steps. This would allow for a compromise between the two extremes. When a wide dynamic range external audio device such as ours is paired with a host running "L" the steps really do behave as too large to get to the right listening volume. This is something that we noticed ourselves and more importantly, so did other users that participated in our demonstration at the AnDevCon. An ideal solution, at least in my opinion, would be a volume ramp that looks at the duration of the button hold. Initially it could be single steps (say 1 dB) and then if held for a period of time (perhaps 200 ms) could increase to larger steps (perhaps 3 dB). This would allow for a quick change but also for a more precise volume setting. The 'on glass' user interface for volume could always offer the 1 dB steps as one can 'slide' to any point; this aspect of the UI can have a separate behavior from the mechanical buttons.
Another point to consider would be the option to allow for the use of a device side volume control (if declared during enumeration by an appropriate attached device such as ours); this would allow access to our on board analog attenuation feature. Our device side hardware offers the advantage of no loss of resolution (audio resolution) which results from digital domain attenuation of the volume.
Kevin Halverson
CTO
High Resolution Technologies, LLC
We did observe that the behavior of "L" is defined by the host side for both internal audio and for an attached USB audio device such as our 'dSp' in regards to its volume control behavior. While I understand the desire to not to require the user to make an excessive number of presses of the volume increment and decrement buttons, the step count (and hence the precision) could be increased by adding more 'steps' and decreasing the delay between steps. This would allow for a compromise between the two extremes. When a wide dynamic range external audio device such as ours is paired with a host running "L" the steps really do behave as too large to get to the right listening volume. This is something that we noticed ourselves and more importantly, so did other users that participated in our demonstration at the AnDevCon. An ideal solution, at least in my opinion, would be a volume ramp that looks at the duration of the button hold. Initially it could be single steps (say 1 dB) and then if held for a period of time (perhaps 200 ms) could increase to larger steps (perhaps 3 dB). This would allow for a quick change but also for a more precise volume setting. The 'on glass' user interface for volume could always offer the 1 dB steps as one can 'slide' to any point; this aspect of the UI can have a separate behavior from the mechanical buttons.
Another point to consider would be the option to allow for the use of a device side volume control (if declared during enumeration by an appropriate attached device such as ours); this would allow access to our on board analog attenuation feature. Our device side hardware offers the advantage of no loss of resolution (audio resolution) which results from digital domain attenuation of the volume.
Kevin Halverson
CTO
High Resolution Technologies, LLC