Posts

Post not yet marked as solved
0 Replies
59 Views
How can a Dext be activated from C++. Specifically we need to load our Dext from our c++ CoreAudio server plugin. I guess it all boils down to how to call the OSSystemExtensionRequest Swift interface from C++... Thanks for any hints!
Posted
by hagen.
Last updated
.
Post not yet marked as solved
3 Replies
179 Views
While most of C++20 seems to be available 'syncstream' is missing (Xcode Version 15.2 (15C500b), macOS SDK 14.2), CLANG_CXX_LANGUAGE_STANDARD= c++20 How can this be made available?
Posted
by hagen.
Last updated
.
Post not yet marked as solved
0 Replies
306 Views
At least under macOS Sonoma 14.2.1 kAudioFormatFlagIsBigEndian for 24bit audio doesn't seem to be supported by the CoreAudio engine when providing kAudioServerPlugInIOOperationWriteMix streaming buffers for our CoreAudio server plugin. Is that correct and to be expected? Or how should the AudioStreamBasicDescription be filled out on a kAudioStreamPropertyPhysicalFormat request to correctly announce 24bit big endian audio to CoreAudio? Thanks, hagen.
Posted
by hagen.
Last updated
.
Post not yet marked as solved
0 Replies
901 Views
Hi, our CoreAudio server plugin provides the standard kAudioVolumeControlClassID, kAudioMuteControlClassID, kAudioSoloControlClassID incl. kAudioDataSourceControlClassID. But it looks like controllers can be created in a general way. Due to signal processing capabilities of our device it could provide way more controllers, but would there be any application that is able to present those generic controllers? Will Audio MIDI Setup.app or AU Lab be able to display those? Any DAW? Thanks, hagen
Posted
by hagen.
Last updated
.
Post not yet marked as solved
1 Replies
655 Views
I understand it's much more fun to implement new features, than to debug. However since generations Xcode is deteriorating. There are uncountable bugs, the most annoying (C++) though are: right click "Jump to Definition" rarely works, click and jump to the causing line of code for build errors nearly never works, The internet is full of workarounds, however those strongly depend on moon phase, formation of chem trails and temporal karma. How to get those things to work once for all? I think those things are used to work in Xcode 3 or something. Every new release presents less working parts and tons of new features serious developer rarely need.
Posted
by hagen.
Last updated
.
Post not yet marked as solved
0 Replies
1.3k Views
Since we have to en/decode the audio stream to/from our audio device anyway and we are using NEON SIMD to do so, we could just convert it into a stream of float on the fly. Since floats are the natural CoreAudio data format we probably can avoid having to involve an additional int-float/float-int conversion by CoreAudio this way. Does this make sense? Thanks, hagen
Posted
by hagen.
Last updated
.
Post not yet marked as solved
0 Replies
1.3k Views
Hi, to be able to receive IOServiceAddMatchingNotification we need to attach to an appropriate CFRunLoop/IONotificationPort. To avoid race condition the matching notification ideally would be serialized with the CoreAudio notification/callbacks. How can this be achieved? Attaching it to the runloop returned by CFRunLoopGetCurrent() does not yield to any notifications at all, to CFRunLoopGetMain leads to notifications asynchronous to CoreAudio callbacks. There are a set of deprecated AudioHardwareAdd/RemoveRunLoopSource() but apart of its deprecation at least on Big Sur @ Apple Silicon this does not lead to any notification as well. So, how is this supposed to be implemented? Do we really need to introduce locks? Also on the process calls? Wasn't it the purpose of runloops to manage exactly those kinds of situation? And more importantly over everything: Where is the documentation? Thanks for any hints, all the best, hagen.
Posted
by hagen.
Last updated
.
Post not yet marked as solved
2 Replies
910 Views
The very little and outdated 'documentation' shared by Apple about CoreAudio and CoreMIDI server plugins suggested to use syslog for logging. At least since Bug Sur syslog doesn't end up anywhere. (So, while you seem to think its OK to not document your APIs you could at least remove not working APIs then! Not to do so causes unnecessary and frustrating bug hunting?) Should we replace syslog by unified logging? For debugging purpose only our plugins write to our own log files. Where can I find suitable locations? Where is this documented? Thanks, hagen.
Posted
by hagen.
Last updated
.
Post not yet marked as solved
0 Replies
1.1k Views
When opening the USB device in response to the first match notification, the USB interface iterator (since 10.14) does not return a USB interface anymore.However, if the USB device is already connected at the time calling IOServiceAddMatchingNotification(), and therefor it is iterated with its resulting iterator (without match notification) then the interfaces are found and from then on the USB interface iterator works.Once the interface iterator has successfully returned a USB interface, it now also works as a reaction to USB match notification. (Therefore a reboot is necessary to reproduce the problem once the iterator found an USB interface).Interestingly, it doesn't seem to be a simple timing problem, because a delay doesn't help, but a BP does...Any suggestion is highly recommend.Thanks!
Posted
by hagen.
Last updated
.
Post not yet marked as solved
5 Replies
1.6k Views
Hi,our audio plugins communicate with a controlling hardware device via Apples IOHIDDevice API, which according tohttps://developer.apple.com/library/archive/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/EnablingAppSandbox.htmlshould be sandbox excepted by the com.apple.security.device.usb key, which I have test-wise placed and enabled, but communication can’t be established from inside a sandboxed DAW (checked with Ableton Live). Any expertise on this? Thanks & cheers,Hagen.
Posted
by hagen.
Last updated
.
Post not yet marked as solved
0 Replies
626 Views
Hi,we have a notarized and stapeld audio plugin .pkg installer.How can we make sure (test) that our .pkg and its (various audio plugin formats) ingredients are correctly notarized and that (offline) users are able to install and run? How can we verify that it would fail otherwise?Thanks,Hagen.
Posted
by hagen.
Last updated
.
Post not yet marked as solved
1 Replies
807 Views
Hi,is it possible to disable notarization email notification to my apple ID email address?Or how should this be organized? (i.e. create a dedicated apple ID for the build system(s)?)Thanks for any hints or thoughts...Cheers,Hagen.
Posted
by hagen.
Last updated
.