You can change the default input and output devices on macOS in System Preferences or via API, but this isn’t what I want to do. I want to be able to capture audio from the non-default input and play audio to the non-default output. There are plenty of reasons to want to do this on the Mac which can have any number of audio devices connected at a time.
— Dominic > On Sep 28, 2019, at 5:02 PM, Arshia Cont <arshiac...@antescofo.com> wrote: > > Thank you Dominic for sharing this. > > Is this general to both OSX and iOS or an OSX issue only? on iOS we can > manage to route audio using AVAudioSession. I’m not an OSX guy that’s why I’m > asking and before I move everything to AVAudioEngine! > >> On 28 Sep 2019, at 22:53, Dominic Feira via Coreaudio-api >> <coreaudio-api@lists.apple.com <mailto:coreaudio-api@lists.apple.com>> wrote: >> >> Yes, this works if you are only using audio output. I am using the input and >> output at the same time. If you do this, then you are restricted to using >> the default input and output devices. >> >> — Dominic >> >>> On Sep 28, 2019, at 1:06 AM, Tamas Nagy <tamas.lov.n...@gmail.com >>> <mailto:tamas.lov.n...@gmail.com>> wrote: >>> >>> Hi Dominic, >>> >>> you can change the output to an AudioDeviceID on the AudioUnit of the >>> outputNode. >>> >>> OSStatus err = AudioUnitSetProperty([[audioEngine outputNode] >>> audioUnit], >>> >>> kAudioOutputUnitProperty_CurrentDevice, >>> kAudioUnitScope_Global, >>> 0, >>> &deviceId, >>> sizeof(AudioDeviceID)); >>> >>> This works for us for years now. >>> >>> Hope this helps. >>> >>> Best, >>> Tamas >>> >>>> On 2019. Sep 28., at 2:56, Dominic Feira via Coreaudio-api >>>> <coreaudio-api@lists.apple.com <mailto:coreaudio-api@lists.apple.com>> >>>> wrote: >>>> >>>> For the record, DTS has confirmed that everything I have posted below is >>>> correct. AVAudioEngine can only be used with the default input and output >>>> devices. The fact that AVAudioEngine ever shipped for the Mac like this at >>>> all says a lot. >>>> >>>> — Dominic >>>> >>>>> I have been working with AVAudioEngine. >>>>> >>>>> By default the AVAudioEngine is using an aggregate audio device with the >>>>> default input/output as the subdevices. This makes sense so the entire >>>>> engine can run on a single clock. >>>>> >>>>> Is it possible to set the input and output devices to use something other >>>>> than the system?s default input and output? >>>>> >>>>> From experimentation, if I set the input or output to anything other than >>>>> an aggregate device it fails. If I change the input and output to use the >>>>> same aggregate device (that I created with non-default devices), it >>>>> works. However any time the default output or input of the system >>>>> changes, the engine?s input/output are set back to the aggregate device >>>>> set up by core audio that uses the default input/output, basically >>>>> overriding what I told the engine to do. >>>>> >>>>> I hope that I?m missing something obvious, but I think I have run into >>>>> the limits of this API. For an API that has been on the Mac for several >>>>> years it is very limited. >>>> >>>> _______________________________________________ >>>> Do not post admin requests to the list. They will be ignored. >>>> Coreaudio-api mailing list (Coreaudio-api@lists.apple.com >>>> <mailto:Coreaudio-api@lists.apple.com>) >>>> Help/Unsubscribe/Update your Subscription: >>>> https://lists.apple.com/mailman/options/coreaudio-api/tamas.lov.nagy%40gmail.com >>>> >>>> <https://lists.apple.com/mailman/options/coreaudio-api/tamas.lov.nagy%40gmail.com> >>>> >>>> This email sent to tamas.lov.n...@gmail.com >>>> <mailto:tamas.lov.n...@gmail.com> >>> >> >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Coreaudio-api mailing list (Coreaudio-api@lists.apple.com >> <mailto:Coreaudio-api@lists.apple.com>) >> Help/Unsubscribe/Update your Subscription: >> https://lists.apple.com/mailman/options/coreaudio-api/arshiacont%40antescofo.com >> >> <https://lists.apple.com/mailman/options/coreaudio-api/arshiacont%40antescofo.com> >> >> This email sent to arshiac...@antescofo.com >
_______________________________________________ Do not post admin requests to the list. They will be ignored. Coreaudio-api mailing list (Coreaudio-api@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/coreaudio-api/archive%40mail-archive.com This email sent to arch...@mail-archive.com