Re: Enable system volume when driver doesn't
Re: Enable system volume when driver doesn't
- Subject: Re: Enable system volume when driver doesn't
- From: "Mikael Hakman" <email@hidden>
- Date: Wed, 9 Apr 2008 13:48:11 +0200
- Organization: Datakonsulten AB
My virtual device implementing digital master volume control for real audio
devices that don't implement it by themselves is working now. It exposes a
volume control to OS X and allows the user to control master volume using
standard system tools such as AMS panel, Sound Preferences, Volume Control
on the Menu bar, and Apple IR Remote. In this first and simple version, the
volume is adjusted by multiplying sample values by an attenuation factor,
without dithering. The multiplication is done in place on output buffers
passed between an application and the real device.
Preliminary, blind listening test results are encouraging. The test and its
results are described below.
The test was performed using 44.1 kHz/16 bits commercial recordings ranging
from classical to jazz, to a cappella, to blues, to soul, and to rock music
stored in ALAC format on the hard drive and played by iTunes. The test was a
comparative, blind, A/B test using following 2 output paths.
Path A
iTunes -> iMac built-in optical digital output at 44.1 kHz/24 bits ->
optical/coax converter -> D/A converter at 44.1 kHz/24 bits -> analog
volume control -> A/D converter at 96 kHz/24 bits -> Genelec 8250A DSP
Loudspeakers. The 96 kHz/24 bits A/D converter is actually contained within
the loudspeakers, and used when feeding them by analog signal.
Path B
iTunes -> virtual device providing digital volume control -> iMac built-in
optical digital output at 44.1 kHz/24 bits -> optical/coax converter ->
Genelec 8250A DSP Loudspeakers.
2 male listeners were employed at 2 different occasions. Each listener was
allowed to listen to (part of) a track of his selection, first using one of
the paths, and then using the other path. When switching between paths, the
playback was interrupted, physical cables and default devices in AMS were
switched, and the playback was started all over again. This was then
repeated at the listener's discretion. Then the listener selected another
track, and the procedure was repeated etc. The listener only knew whether he
was listening to A or B but not which of the actual paths was A and B.
For the first listener, the output level was adjusted and calibrated for
both paths to 92 dB SPL using -3 dB FS white noise track and an SPL-meter.
This corresponded to -37.5 dB attenuation achieved either analogously (path
A) or digitally (path B). The second listener found 96 dB SPL to be more
comfortable, corresponding to -33.5 dB attenuation.
No statistically significant differences between the paths were perceived by
the listeners. In most cases, the listeners simply wrote down "no
difference". In some cases, one or the other listener perceived one or the
other path to produce slightly more details, or little cleaner audio, or
diminutively better high frequency reproduction, without any significant
trend towards one or the other of the paths.
The project will continue with a) performing more tests including a third,
female listener; b) gathering equipment that will allow for fast switching
between the paths during playback, and then repeating all the tests; and c)
implementing proper dithering.
Dr. Mikael Hakman
Research & Development
Datakonsulten AB
Uppsala, Sweden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden