• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Accessing audio samples from Audio Queue Buffers
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Accessing audio samples from Audio Queue Buffers


  • Subject: Re: Accessing audio samples from Audio Queue Buffers
  • From: William Stewart <email@hidden>
  • Date: Thu, 10 Sep 2009 17:42:01 -0700

one more point of clarity.

The software decoders (AAC, MP3) are only available with 3.0 - to decode these on a < 3.0 device, you would need to use the h/w decoder which means you would need to use the AQOffline code.

WIth 3.0 you have access to s/w versions of nearly all of the decoders (the exception is HE-AAC which is still only supported with h/w assist).
With 3.0 we released an AAC encoder (h/w assist) for some devices.


With 3.1 you have access to the h/w versions (encoders and decoders) through the use of ExtAudioFile as well as AudioQueue. The main thing that this gives you is the ability to use ExtAudioFile to write files with AAC encodings (for decoding you could use the s/w decoders already with 3.0)

HTH

Bill


On Sep 10, 2009, at 2:40 PM, Steven Winston wrote:

That might solve a few problems.  Thanks Doug; this information should
prove to be most valuable to our application.

Thanks,
Steve

On Thu, Sep 10, 2009 at 2:35 PM, Doug Wyatt <email@hidden> wrote:
For some preliminary context: on the phone, the hardware codec tend to take
longer to decode but consume less power. Software codecs tend to execute
more quickly but are more CPU and power-intensive.


Software codecs are available at any time via AudioConverter, including the
higher-level APIs which use AudioConverter -- AudioQueue and ExtAudioFile.


But hardware codecs are only available via AudioQueue. (Exception: as of OS
3.1, you can use the AAC hardware encoder via ExtAudioFile...)



So, if you've been using AudioQueueOfflineRender to decode and post- process
AAC or MP3, you may want to try using AudioConverter to do a software decode
instead.


Doug



On Sep 10, 2009, at 14:16 , Steven Winston wrote:

So Doug, This means that we'd be using the 'software' decoders and
not the 'hardware' decoders? So there's really no benefit towards not
including a software decoder library as it's not really going to the
hardware decoder, then providing PCM back to the OS prior to sending
it to the DAC?


Have a feeling you can't answer this in its' entirety so just a quick
explanation about what's available would be most helpful.


Thanks,
Steve

On Thu, Sep 10, 2009 at 2:12 PM, Doug Wyatt <email@hidden> wrote:

Oops, I was just reminded that we *do* have a software MP3 decoder as of
3.0. I don't know what I was thinking.


sorry for the confusion
Doug

On Sep 10, 2009, at 13:55 , Doug Wyatt wrote:

The new capability in 3.1 is to be able to use the hardware AAC
*encoder*,
*only* ... nothing has changed with respect to hardware decoders. We do
have
some software decoders available as of 3.0, but MP3 isn't one of them.


As for the difference in MP3 decode rates, that's interesting. If you
like, file a bug and attach files which illustrate the problem and we'll
investigate.


thanks,
Doug

On Sep 9, 2009, at 17:43 , Steven Winston wrote:

Well in my tests I'm noticing that some audio when encoded with the
exact same format are filling the audioqueueofflinerender buffers at
different rates than other files encoded with the same format. I
didn't investigate too far into this however, it seems like there must
be some overhead that prevents the callback happening at a more
consistant rate between the files.


So for instance if file A is encoded as a MP3 44.2 khz 16 bit 2 chan
file and file B is also encoded as a MP3 44.2 khz 16 bit 2 chan file
when they are decoding file A might decode at an appreciable rate
slower than file B when using AudioQueueOfflineRender. If that
problem doesn't exist, in the ExtAudioFile, then I can scrap the
external software MP3 decoder in my project.


On Wed, Sep 9, 2009 at 5:33 PM, William Stewart<email@hidden> wrote:

On Sep 9, 2009, at 5:28 PM, Steven Winston wrote:

That's awesome! However, a question, is this solution going to
suffer
from the same different files of the exact same format decode at
different rates problem?

"same different" - sorry, but I don't understand the problem you are
referring too.


I'll start digging through 3.1 docs and will
eagerly await the further details.

On Wed, Sep 9, 2009 at 5:22 PM, William Stewart<email@hidden>
wrote:

One of the new things in iPhone OS 3.1 is that you can use
ExtAudioFile
to
read and write compressed data where you may need to use a hardware
assisted
codec (such as AAC encoding) to do so.


Details are forthcoming, including some example code - have a look
in
the
tech notes and release notes for the 3.1 release


Bill



_______________________________________________
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
References: 
 >Accessing audio samples from Audio Queue Buffers (From: KappA <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: Steven Winston <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: William Stewart <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: Steven Winston <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: William Stewart <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: Steven Winston <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: Doug Wyatt <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: Doug Wyatt <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: Steven Winston <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: Doug Wyatt <email@hidden>)
 >Re: Accessing audio samples from Audio Queue Buffers (From: Steven Winston <email@hidden>)

  • Prev by Date: Re: Using an AU directly
  • Next by Date: Re: iPhone - AudioUnitRender() on 3DMixer
  • Previous by thread: Re: Accessing audio samples from Audio Queue Buffers
  • Next by thread: New error in iPhone OS 3.1.1
  • Index(es):
    • Date
    • Thread