EZAudio
EZAudio copied to clipboard
64 channels in input AU but only 2 first channels are mixed
Hello, I have installed a Soundflower virtual card with 64 input channels and 64 output channels: <EZAudioDevice: 0x60800007f9c0> { deviceID: 55, manufacturer: ma++ ingalls for Cycling '74, name: Soundflower (64ch), UID: SoundflowerEngine:1, inputChannelCount: 64, outputChannelCount: 64 } and selected it as default input device. Output device is built in speakers.
When I run EZAudioPassThroughExample, I can only hear the first 2 channels. I saw there is a mixer AU in EZOutput. It should mix the 64 channels, or am I missing something ?
(I use Ableton Live to send sounds to the 64 channels to my input device)
Hi @scamhaji, the EZOutput has two stream formats: the inputFormat
for the audio coming into the component and the clientFormat
for the audio leaving the component (which is the mixer's format). When the EZMicrophone sets the EZOutput
on itself (code snippet here) it sets the inputFormat
of the EZOutput, but not the clientFormat
, which defaults to the EZOutput's stereo, float format.
So you should just set the clientFormat
for the EZOutput to the EZMicrophone's stream format to get what you want:
self.output.clientFormat = self.microphone.audioStreamBasicDescription;
Thanks for your answer. I've added this line in PassThroughViewController.m (around line 52) :
[EZOutput sharedOutput].clientFormat = [EZMicrophone sharedMicrophone].audioStreamBasicDescription;
Unfortunately, this leads to an error :
Error: Failed to set input client format on mixer audio unit (-10868)
Hm interesting, looking into this now. I probably shouldn't be setting the input scope of the mixer audio unit
The soundflower virtual card is open source and can be found here: https://rogueamoeba.com/freebies/soundflower
Hi, did you have a chance to look into this issue?
@scamhaji EZAudio has been deprecated. See the current README.