On macOS, there was a way to "hog" the audio interface so that no other 
application's audio would be mixed in. Even at the same sample rate, mixing 
anything with a surround-encoded stream would destroy it.

Are you already using anything like this? If so, and Apple broke it, then 
that's one thing. If Apple doesn't offer "hog" mode on iOS, then you might need 
to look for another way to take full control of the stream. I haven't written 
audio code for iOS in years, but I recall that applications can mark themselves 
as input-only, output-only, input and output, and various other categories. 
Perhaps there is a category to say that you need un-manipulated streams.

The audio objects seem to keep changing, but there are usually way to query 
your stream type, the stream type out the output unit, and to do that for the 
input, output, and perhaps even global scopes (I think global scope is the only 
one that doesn't have a stream type).

Sorry I don't have an immediate answer, but maybe you can give us a few more 
details on which audio object frameworks you're using, and perhaps the results 
of some code-based queries of the output stream formats.

Brian Willoughby


On May 21, 2020, at 4:00 PM, Andrew Smith via Coreaudio-api 
<[email protected]> wrote:
> I’m the developer of AudioTools, over 10 years on the app store, lots of 
> audio test & measurement functions. One in particular is a 5.1 surround 
> signal generator, which works with our own hardware device, iAudioInterface2, 
> which happens to have a Toslink digital audio output connector. The idea is 
> that I pre-encode surround signal audio files in the Dolby Digital 5.1 
> format, open the file in the app, and break the data into packets that get 
> formatted to Dolby specs and sent out the Toslink connector at 48k sample 
> rate. Surprisingly, this actually works. For many years it has, anyway. I can 
> send out a pink noise signal to a particular channel, or send an encoded 
> music file out to the system. I am using basic remote IO audio processing 
> here. Despite many years in audio and DSP I do not consider myself an iOS 
> guru, I just use a simple set of iOS tools that seem to work.
> 
> Starting with iOS 13 however, the surround signal generator no longer works. 
> This scheme relies on the signal (data) not being altered by iOS at all, it 
> must be sent through unaltered, as bit-accurate audio. In 13, I get just 
> random noise, while the same app on iOS 11 or 12 outputs the surround data 
> correctly. My guess is that Apple has inserted a sample rate converter, even 
> though as far as I can tell the hardware is still running at 48k, and I am 
> requesting 48k. I’ve posted a bug report to Apple but unsurprisingly I’ve had 
> no response to it since I am likely the only person on Earth who cares about 
> this. Any ideas on something to try or if perhaps anyone else has knowledge 
> about this I would highly appreciate it! 
> 
> Best,
> Andrew Smith

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/coreaudio-api/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to