Re: AudioHardwarePlugIn question
Re: AudioHardwarePlugIn question
- Subject: Re: AudioHardwarePlugIn question
- From: Dirk Musfeldt <email@hidden>
- Date: Fri, 29 Oct 2004 17:16:23 +0200
I have now tested the callback mechanism (worked) and saw that the InputProc
of ComplexPlayThru is called periodically.
The ioData parameter of the InputProc is NULL, though.
I checked the samples in my caller with those returned from
AudioUnitRender() within InputProc and they look the same, given that my
original samples are interleaved and they are de-interleaved when returned
from AudioUnitRender().
I double checked ComplexPlayThru to make sure that I catch every error
result which may be returned. But there are none.
So why isn't that audio audible?
> Presumably, you have a thread or some other periodic mechanism that is
> calling out to the IOProcs to provide the data, so I'd start off by
> looking at that mechanism and be sure that it works and then look at
> the data the client is giving you to see if they are giving good data.
>
> On Oct 18, 2004, at 6:08 AM, Dirk Musfeldt wrote:
>
>> Jeff,
>>
>> OK, thanks for that basic answer. I implemented the float format now
>> and do
>> not support hog mode.
>>
>> I ran the ComplexPlayThru sample and it did not catch any errors. But I
>> didn't hear anything, though. :-(
>>
>> What is the easiest way to determine the problem with this
>> implementation?
>>
>>
>>> There are two formats that you have to maintain, the virtual format
>>> (the format that IOProcs see) and the physical format (the format that
>>> your device does IO in). In the non-linear PCM case or the non-mixable
>>> linear PCM case, these two formats are the same. In the case of
>>> mixable
>>> linear PCM, the virtual format will always be native endian 32 bit
>>> floats, regardless of what the physical format is. Your plug-in is
>>> responsible for doing any necessary conversions.
>>>
>>> Note that the non-mixable formats imply single client access, so you
>>> will need to manage hog mode properly as well. Note also that most
>>> apps
>>> won't work with non-mixable formats.
>>>
>>> On Oct 14, 2004, at 8:45 AM, Dirk Musfeldt wrote:
>>>
>>>> Hi all,
>>>>
>>>> I'm doing an AudioHardwarePlugIn.
>>>>
>>>> Which stream formats do i need to support to be of any use?
>>>>
>>>> I tried with
>>>>
>>>> 48000.0,
>>>> kAudioFormatLinearPCM,
>>>> kLinearPCMFormatFlagIsSignedInteger |
>>>> kLinearPCMFormatFlagIsBigEndian |
>>>> kAudioFormatFlagIsPacked,
>>>> 4,
>>>> 1,
>>>> 4,
>>>> 2,
>>>> 16 // the number of bits in each channel
>>>>
>>>> but this does not give any success. This is the 'natural' format of
>>>> our
>>>> data.
>>>>
>>>> Any advice?
>>>>
>>>>
>>>>
>>>> Regards
>>>>
>>>> Dirk
>>>>
>>>>
>>>> _______________________________________________
>>>> Do not post admin requests to the list. They will be ignored.
>>>> Coreaudio-api mailing list (email@hidden)
>>>> Help/Unsubscribe/Update your Subscription:
>>>> 40apple.com
>>>>
>>>> This email sent to email@hidden
>>>>
>>
>> Regards
>>
>> Dirk
>>
>>
>>
Regards
Dirk
_______________________________________________
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