You can use both! In both cases, you should avoid everything that conflict with real-time Audio. More cautious is needed with Swift (such as no Swift in real-time blocks). AVAudioEngine is of course much more Swift Friendly.
> On 2 Aug 2019, at 11:50, Beinan Li <li.bei...@gmail.com> wrote: > > Thanks Arshia! Really appreciate your pointers. That's great news. > By the way, do you use Swift or OBjC with AVAudioEngine? > > > Thanks, > Beinan > > > > On Fri, Aug 2, 2019 at 5:40 PM Arshia Cont <arshiac...@antescofo.com > <mailto:arshiac...@antescofo.com>> wrote: > Beinan, > > This is my understanding of the situation talking to some of the CoreAudio > people at this year’s WWDC and following the recent evolution. Ofcourse it > all depends on what you’re currently doing with CoreAudio so my input is > biased on my needs which are low-latency real-time Audio I/O. > > AuGraph is officially marked as Deprecated starting iOS 13 (and Catalina?). > AVAudioEngine seems to be ready to provide the move. For my concerns, it > wasn’t still ready until the current Beta (again for low-latency real-time > audio). With the addition of the AVAudioSinkNode and AVAudioSourceNode, > AVAudioEngine can cope with what AUnit and AUGRAPH could do on low-latency > situations. In your case and from your description, you should have a look at > AVAudioSourceNode. > Here is what you need: https://developer.apple.com/videos/play/wwdc2019/510/ > <https://developer.apple.com/videos/play/wwdc2019/510/> > > It also seems like your deprecated warnings are much older than what I > describe above! I’ve been using AUnit and AuGraph until now without problem > removing Canonical (and other) deprecated stuff as they appeared. So if > you’re targeting iOS 12, you can still stay on older CoreAudio APIs. But you > might wanna start shopping on AVAudioEngine as it’s gonna be time to move > soon after adoption of Catalina/iOS13 in a few months. > > Any further insight from other users would be welcome. I’m going to start > testing the Sink and Source nodes for real-time use soon. > > Cheers, > > > Arshia Cont > www.antescofo.com <http://www.antescofo.com/> > > >> On 2 Aug 2019, at 11:01, Beinan Li via Coreaudio-api >> <coreaudio-api@lists.apple.com <mailto:coreaudio-api@lists.apple.com>> wrote: >> >> Hello CoreAudio, >> >> I'm seeking advice on migrating from CoreAudio/ObjC++ to >> AVAudioEngine/Swift/ObjC: should I do it or when should I start worry? >> >> I have a legacy macOS/iOS project that uses CoreAudio heavily, mainly just >> AudioQueue, but right now on Mojave / iOS 12 things start to breakdown or >> throw "deprecated" warnings at me, e.g.: >> >> AudioSampleType is deprecated: The concept of canonical formats is >> deprecated. >> >> And I need to at least bring in AVFoundation. This prompts me to shop around >> for other solutions. >> >> My project is not a synth/FX app. It would only use metering/spectrogram and >> some visualization at best. Low-latency is essential though. The info about >> latest CoreAudio stack on the internet seems increasingly scarce and I'm >> hesitating to adopt 3rd-party frameworks such as JUCE for such a small >> project. So I'd love to give the Swift stack or even just ObjC/C stack a >> serious try. >> >> Now my concern is mainly in the performance and latency. I've seen these >> posts regarding using AVAudioEngine: >> >> https://stackoverflow.com/questions/1877410/whats-the-difference-between-all-these-audio-frameworks >> >> <https://stackoverflow.com/questions/1877410/whats-the-difference-between-all-these-audio-frameworks> >> >> https://stackoverflow.com/questions/26115626/i-want-to-call-20-times-per-second-the-installtaponbusbuffersizeformatblock/26600077#26600077 >> >> <https://stackoverflow.com/questions/26115626/i-want-to-call-20-times-per-second-the-installtaponbusbuffersizeformatblock/26600077#26600077> >> >> https://stackoverflow.com/questions/45644079/performance-between-coreaudio-and-avfoundation >> >> <https://stackoverflow.com/questions/45644079/performance-between-coreaudio-and-avfoundation> >> >> It seems there aren't a lot of agreements on whether or not the Swift stack >> could achieve low-latency using its AU wrapper. Some says that the >> performance is 30-40% worse than the CoreAudio stack. But there is also a >> positive report: >> >> https://stackoverflow.com/questions/45644079/performance-between-coreaudio-and-avfoundation >> >> <https://stackoverflow.com/questions/45644079/performance-between-coreaudio-and-avfoundation> >> >> Before I dive into a whole new world (Swift newbie), any suggestions from >> the list would be greatly appreciated! >> >> >> >> Thanks, >> Beinan >> >> _______________________________________________ >> 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 <mailto: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