ミキサー->remoteio->ダイナミクスプロセッサーをリンクしようとしています
これが私のAudioFormatです//フォーマットを説明してください
memset( &audioFormat, 0, sizeof(AudioStreamBasicDescription) );
audioFormat.mSampleRate = 44100.00;
audioFormat.mFormatID = kAudioFormatLinearPCM;
audioFormat.mFormatFlags = kAudioFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked;
audioFormat.mFramesPerPacket = 1;
audioFormat.mChannelsPerFrame = 1;
audioFormat.mBitsPerChannel = 16;
audioFormat.mBytesPerPacket = 2;
audioFormat.mBytesPerFrame = 2;
CAShowを使用すると、次のようになります。
AudioUnitGraph 0x4725000:
Member Nodes:
node 1: 'auou' 'rioc' 'appl', instance 0x1c5ab3a0 O I
node 2: 'aumx' 'mcmx' 'appl', instance 0x1d07a6d0 O I
node 3: 'aufx' 'dcmp' 'appl', instance 0x1d085330 O I
Connections:
node 2 bus 0 => node 1 bus 0 [ 2 ch, 44100 Hz, 'lpcm' (0x00000C2C) 8.24-bit little-endian signed integer, deinterleaved]
node 1 bus 0 => node 3 bus 0 [ 2 ch, 0 Hz, 'lpcm' (0x00000029) 32-bit little-endian float, deinterleaved]
試行結果=AudioUnitSetProperty(_dynamicsUnit、kAudioUnitProperty_StreamFormat、kAudioUnitScope_Input、0、&audioFormat、sizeof(audioFormat));
audioFormatを目的の形式に設定すると、エラーコード-10868が表示されます。
また、audynamicsprocessorからASBDを取得すると、これが得られることにも気づきました。
effectASBD AudioStreamBasicDescription
mSampleRate Float64 44100
mFormatID UInt32 1819304813
mFormatFlags UInt32 41
mBytesPerPacket UInt32 4
mFramesPerPacket UInt32 1
mBytesPerFrame UInt32 4
mChannelsPerFrame UInt32 2
mBitsPerChannel UInt32 32
mReserved UInt32 0
オーディオフォーマットABSDをAUdynamicsprocessorに準拠させるなど、さまざまなことを試しましたが、同じエラーが発生します。
レイテンシーを考慮して、可能な限りオリジナルのオーディオフォーマットASBDを使用したいと思います。また、私のコールバックアルゴリズムは、そのオーディオ形式用にすでに作成されています。これは可能ですか?
前もって感謝します。
橋脚。