Volume Control

General discussion about RuneAudio. Do not post any support or feature requests here.

Volume Control

Postby tc-fi » 15 Feb 2014, 03:12

Hey guys.

I'm wondering how volume control is implemented. When I tested the RuneUI volume control settings, I got the results below. I'm using an ODAC which does not contain a hardware volume processor.

None
- RuneUI volume knob disabled
- Alsamixer volume functional

Hardware
- RuneUI volume knob functional
- Alsamixer volume control functional
- RuneUI volume knob and Alsamixer volume control are directly coupled. Change one and the other changes.

Software
- RuneUI volume knob functional
- Alsamixer volume control functional
- RuneUI volume control and Alsamixer volume control operate independently of one another

What's happening where RuneUI volume control is coupled to Alsamixer volume control?

Also, for 16 bit samples, is dither being applied after volume processing? If not then you should consider integrating a high quality dither algorithm. No need for dither if 24 bit samples, only 16 bit.

Regards,
tc-fi
tc-fi
 
Posts: 43
Joined: 21 Jan 2014, 03:12

Re: Volume Control

Postby ACX » 15 Feb 2014, 13:45

Hi tc-fi, RuneUI volume control just lets you set the way MPD controls it, with no need to manually edit its configuration file. Here is the part of the default config with comments explaining the different settings:

Code: Select all
# Volume control mixer ########################################################
#
# These are the global volume control settings. By default, this setting will
# be detected to the available audio output device, with preference going to
# hardware mixing. Hardware and software mixers for individual audio_output
# sections cannot yet be mixed.
#
# An example for controlling an ALSA, OSS or Pulseaudio mixer; If this
# setting is used other sound applications will be affected by the volume
# being controlled by MPD.
#
#mixer_type               "hardware"
#
# An example for controlling all mixers through software. This will control
# all controls, even if the mixer is not supported by the device and will not
# affect any other sound producing applications.
#
mixer_type                  "software"
#
# This example will not allow MPD to touch the mixer at all and will disable
# all volume controls.
#
#mixer_type               "disabled"
#
###############################################################################

As we use ALSA as audio output type, MPD has to rely on its mixer (alsamixer).
  1. Hardware mixer is not always available, as it depends on the connected interface. Some DACs don't permit hardware volume control. If present, MPD volume is bound with the one shown in alsamixer, because both are the same one. In alsamixer you can only control hardware volume, or mute/unmute your interface.
  2. Software mixer is part of MPD, operates on the top of the hardware one and only controls the app volume, independent from the rest of the system. It should only be used when no hardware mixer is available, as it isn't very accurate and degrades the overall sound quality.
  3. "None" only disables the possibility to control volume from MPD clients, and as the Software mixer, it's a layer above the system.
Don't use both hardware mixer (alsamixer) and software one, as you'll degrade the output quality and the resulting volume will be the "sum" of the two controls.
User avatar
ACX
RuneAudio co-founder
 
Posts: 1684
Joined: 29 Nov 2013, 02:25
Location: Udine, Italy

Re: Volume Control

Postby tc-fi » 15 Feb 2014, 19:56

What's odd in my case is that my JDS-Labs ODAC does not contain a hardware volume control, yet I am using the "Hardware" MPD setting and it is working as described in the comments. This suggests that ALSA must be doing volume in software.

So my question is does ALSA volume control algorithm also apply dither?
tc-fi
 
Posts: 43
Joined: 21 Jan 2014, 03:12

Re: Volume Control

Postby ACX » 15 Feb 2014, 20:26

tc-fi wrote:What's odd in my case is that my JDS-Labs ODAC does not contain a hardware volume control

What do you exactly mean with this? If you can control volume via alsamixer, then that's the "hardware volume" control; elsewhere you would have only the mute/unmute control on that interface.
User avatar
ACX
RuneAudio co-founder
 
Posts: 1684
Joined: 29 Nov 2013, 02:25
Location: Udine, Italy

Re: Volume Control

Postby tc-fi » 15 Feb 2014, 22:58

The ODAC is based on Sabre ES9023 DAC chip which does not contain integrated DSP ( volume control, filtering, de-emphasis, etc.), and there is no external DSP chip in the ODAC which could do volume control.

Sabre does make other stereo DAC chips for example ES9012 which does contain integrated DSP for volume control. Comparison below::

Sabre ES9023
http://www.esstech.com/PDF/ES9023%20PB% ... 110117.pdf
Sabre ES9012
http://www.esstech.com/PDF/ES9018%20ES9 ... 0Brief.pdf
tc-fi
 
Posts: 43
Joined: 21 Jan 2014, 03:12

Re: Volume Control

Postby ACX » 16 Feb 2014, 12:41

The hardware mixer controls the interface, not the downstream DAC. The ODAC mounts a Tenor TE7022L receiver (USB 2.0 Full-Speed compliant supported USB Audio Class 1.0 sync). You are controlling that one with alsamixer, acting on its I2S output to the Sabre DAC.

The TE7022L is a versatile, USB 2.0 Full-Speed compliant Audio Streaming Controller. It
features one independent stereo playback and recording pairs and one IEC60958 S/PDIF
receive and transmit streaming pair with independent volume control.
User avatar
ACX
RuneAudio co-founder
 
Posts: 1684
Joined: 29 Nov 2013, 02:25
Location: Udine, Italy

Re: Volume Control

Postby tc-fi » 16 Feb 2014, 14:43

I had read the Tenor datasheet before, and perhaps due to the wording, I concluded that the integrated volume control on the chip operated only on the SPDIF interface.

But it also must operate on the USB interface since I'm in fact getting an alsamixer volume control, and as you point out, alsa is acting only on the interface.

Thanks!
tc-fi
 
Posts: 43
Joined: 21 Jan 2014, 03:12

Re: Volume Control

Postby ACX » 16 Feb 2014, 16:31

You are welcome, happy to clarify that point :)
User avatar
ACX
RuneAudio co-founder
 
Posts: 1684
Joined: 29 Nov 2013, 02:25
Location: Udine, Italy

support RuneAudio Donate with PayPal


Return to General discussion

Who is online

Users browsing this forum: No registered users and 1 guest