On Tue, Jul 3, 2012 at 10:05 PM, ra byn (robin) <
ra...@rabyn.com> wrote:
> On Tue, July 3, 2012 8:21 pm, Chris Ashworth wrote:
>> We have speculated that the recently fixed bug in QLab (regarding honoring
>> the sample rate of the audio device) may have some small place in history
>> as the longest running real-world test of the Nyquist theorem. To our
>> knowledge, although people (us included) believed they could set playback
>> to something above 44.1K, no one ever noticed that in fact, they couldn't.
--snip--
>
> Are you saying that regardless of the native file sample rate, any audio
> passing thru QLab is SRCed back to 44.1K?
No, not since the release of 2.3.7. He's saying, as he said here on
the list when announcing that update, that there was a bug in QLab
relating to a wonky quirk in how Core Audio works that, unbeknownst to
either users or devs, resulted in all audio in QLab getting converted
down to 44.1, then back up to the intended output rate. Or, as Chris
much more eloquently and exhaustively explained it at the time of
release:
On Mon, Feb 27, 2012 at 2:17 PM, Christopher Ashworth
<
ch...@figure53.com> wrote:
> The sample rate bug deserves a detailed explanation:
>
> In the past we believed that QLab was converting all audio files to match the sample rate of the audio output device. We recently learned this was not true. (Neither for version 1 nor version 2.) It was in fact converting all files to 44.1K, and then converting that to the sample rate of the audio device.
>
>
> How could this error have happened, and how did we finally catch it?
>
> Prior to this update, QLab performed the following steps when initializing the audio signal flow:
>
> 1) Ask the device its current sample rate.
>
> 2) Tell the audio chain to convert file data to that sample rate during playback.
>
> You might imagine this would be the right set of steps. Turns out, it's not. The fixed version released today performs one additional step:
>
> 1) Ask the device its current sample rate.
>
> 1A) Tell the device to run at that sample rate. i.e.: "Yes, please really do run at the sample rate you are running at, and which you just told me you are running at."
>
> 2) (same as before)
>
> This somewhat astonishing revelation was discovered by Sean, while tracking down a small glitch at an audio cue loop point. The glitch appeared to be due to a small amount of aliasing at the loop point. After creating a test WAV file by hand and measuring its output sample by sample, he concluded there was sample rate conversion happening somewhere in the chain and eventually hunted it down to this one line of code.
>
> So, to sum up: until today, no audio from QLab could ever truly play at a resolution higher than 44.1K.
>
> Fixing this bug will address some special cases where the resulting aliasing was noticeable, such as the loop point example mentioned above. It will also (of course) allow QLab to play back audio at a higher sample rate.
--A