Re: support for two's complement 24 bit audio
Re: support for two's complement 24 bit audio
- Subject: Re: support for two's complement 24 bit audio
- From: Brad Ford <email@hidden>
- Date: Tue, 30 Sep 2008 14:36:49 -0700
On Sep 30, 2008, at 1:44 PM, Tommy Schell wrote:
Sorry I missed the reply to this question earlier.
So in the Quicktime specs, for audio data there is a reference to
the 4cc's:
'twos' for 16 bit two's complement big endian
'sowt' for 16 bit two's complement little endian
'in24' for 24 bit integer format
among others.
Elsewhere we have seen reference to the 'lpcm' format, which we
assume is what is used for
24 bit two's complement uncompressed audio data (big endian), not 1
of the above mentioned formats.
Is this a correct assumption?
Please don't attempt to interpret the fields in a QuickTime sound
description unless you're very well versed in their history. There
are 3 versions of SoundDescriptions with varying degrees of backward
compatibility with older versions of QuickTime. There are also
extensions in these sound descriptions which are not straight forward
to parse. Way back in QuickTime 7, we provided SoundDescription
accessor functions that allow you to get the
AudioStreamBasicDescription describing the audio in the sound
description. Always call the accessor and make your assumptions using
the CoreAudio struct. For instance, 24-bit integer audio in a sound
description may be 'in24' or may be 'lpcm', depending on the number of
channels and the sample rate. But once you convert to an
AudioStreamBasicDescription using the accessor, the mFormatID will
always be 'lpcm'.
See Movies.h:
QTSoundDescriptionGetProperty(...,
kQTSoundDescriptionPropertyID_AudioStreamBasicDescription, ...)
HTH.
-Brad Ford
QuickTime Engineering
Thanks a lot
Tommy Schell
********************
Message: 8
Date: Wed, 24 Sep 2008 10:30:37 -0700
From: William Stewart <email@hidden>
Subject: Re: support for two's complement 24 bit audio
To: CoreAudio API <email@hidden>
Message-ID: <email@hidden>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
On Sep 23, 2008, at 7:13 PM, Jeff Moore wrote:
Two's complement is just another way of saying signed linear PCM,
isn't it?
So, I think we are understanding your question, and yes, core audio's
audio converter supports 24 bit (what we call signed) int formats:
We do support 8-bit (signed and unsigned), 16-, 24- and 32-bit
(signed) integer formats. (if not packed, high-aligned only)
For this the 24bit format is supported both as packed and as high-
aligned within a 32bit word
Bill
Begin forwarded message:
From: Tommy Schell <email@hidden>
Date: September 23, 2008 7:47:40 AM PDT
To: email@hidden
Subject: support for two's complement 24 bit audio
Hi,
I posted this question on the Quicktime list, but perhaps it is
more appropriate here.
Does support exist for 24 bit two's complement audio in Quicktime
files?
I found that 16 bit support is available for two's complement,
but I can't find it for 24
(or even extended to 32 bit) two's complement.
Can you please advise, and if it does not exist what might you
recommend to convert the two's complement
to a supported audio format in 24 bit?
Thanks a lot,
Tommy Schell
_______________________________________________
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
_______________________________________________
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
_______________________________________________
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