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> 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) > Help/Unsubscribe/Update your Subscription: > 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