• 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: RemoteIO Question
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RemoteIO Question


  • Subject: Re: RemoteIO Question
  • From: Pier <email@hidden>
  • Date: Tue, 06 Nov 2012 18:41:15 +0800

Hi Hari, 

Thanks for confirming my suspicions. I was just reading your blog this morning regarding mixing - not sure I understand it all though! 
I'm not sure what this means : 2. Render Notify attached to RemoteIO which processes the prerender phase on bus 1 (i.e., if (bus != 1 || !(ioFlags & k...PreRender)) return noErr; ) and which stores the mic data in a ring buffer
Could you explain a bit more? :D

I was tempted to go the manual mixing route when I read about the Multichannel Mixer AudioUnit. This is the first time I've heard of the Accelerate framework - what advantages does it offer with regards to this? 

Thanks much. 

Pier. 


On Tue, Nov 6, 2012 at 6:23 PM, Hari Karam Singh <email@hidden> wrote:

Hi Pier,

 

I’ve just been through something similar.  I believe that answer is yes, you may only have one RemoteIO unit.  Also you definitely need a RemoteIO as the last unit to send the audio to the hardware.   Reference: http://lists.apple.com/archives/coreaudio-api/2009/Apr/msg00042.html

 

I’ve not much experience with using the mic, but I would think you could accomplish what you need with the following setup:

 

1. Mixer output bus 0 -> Remote IO Input bus 0

2. Render Notify attached to RemoteIO which processes the prerender phase on bus 1 (i.e., if (bus != 1 || !(ioFlags & k...PreRender)) return noErr; ) and which stores the mic data in a ring buffer

3. Attach a custom render callback to Mixer input bus 0 which reads from the ring buffer

4. Attach your other source to mixer input bus 1

 

You could also skip the mixer unit entirely and do the mixing manually inside of the RemoteIO’s render notify callback using the lightning fast vDSP functions in the Accelerate framework.

 

Gratefully,

Hari Karam Singh

 

http://soundwandapp.com/

http://club15cc.com/

 

From: coreaudio-api-bounces+harikaram=email@hidden [mailto:coreaudio-api-bounces+harikaram=email@hidden] On Behalf Of Pier
Sent: 06 November 2012 08:22
To: email@hidden
Subject: RemoteIO Question

 

Hi, 

 

I'm trying to do this 

 

 

**RemoteIO1 (for recording to buffer) -> Mixer -> RemoteIO2 (for playback of output)** 

 

RemoteIO1 is used for 2 purposes

1) To feed audio into the mixer channel 0

2) To record audio from mic to a buffer 

 

The Mixer 

1) Takes audio from RemoteIO - input 0

2) Mixes the audio from (1) with audio from the buffer - input1

 

RemoteIO2

1) Takes the mixed audio and sends it to playback 

 

Initially I thought that I could just playback from mixer output but the following gives me an error. Can I confirm that I need another RemoteIO to do playback? 

 

    // Enable Mixer for playback

    status = AudioUnitSetProperty(_mixerUnit,

                                  kAudioOutputUnitProperty_EnableIO,

                                  kAudioUnitScope_Output,

                                  mixerOutputBus,

                                  &flag,

                                  sizeof(flag));

    

    if (noErr != status) { NSLog(@"Enable Mixer for playback error"); return; }

 

Also, I did the following test and realised there seems to be only one RemoteIO available (addresses for inputComponent and inputComponent2 are the same) 

    

    // Get component

    AudioComponent inputComponent = AudioComponentFindNext(NULL, &desc);

    AudioComponent inputComponent2 = AudioComponentFindNext(NULL, &desc);

 

Is it true that I can only have one instance of RemoteIO in my app? If so, what are the alternatives for the 2nd RemoteIO? 

 

Thanks. 

 

Pier. 


 _______________________________________________
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

  • Follow-Ups:
    • RE: RemoteIO Question
      • From: Hari Karam Singh <email@hidden>
References: 
 >RemoteIO Question (From: Pier <email@hidden>)
 >RE: RemoteIO Question (From: Hari Karam Singh <email@hidden>)

  • Prev by Date: RE: RemoteIO Question
  • Next by Date: RE: iOS - Question on AUGraph in objective C / CPP
  • Previous by thread: RE: RemoteIO Question
  • Next by thread: RE: RemoteIO Question
  • Index(es):
    • Date
    • Thread