What is the difference between processingFormat and fileFormat?
When comparing two processingFormats or AVAudioFormats what is considered equal.
Can a processingFormat be the same format, but different number of channels?
How does an AVAudioFile's processingFormat relate to a AVAudioBuffer's format property?
/! @property fileFormat
@abstract The on-disk format of the file.
*/
open var fileFormat: AVAudioFormat { get }
/! @property processingFormat
@abstract The processing format of the file.
*/
open var processingFormat: AVAudioFormat { get }
In summary:
AVAudioBuffer.format
AVAudioFile.processingFormat
AVAudioFile.fileFormat
What is the difference? And do they have to match in Format, Sample Rate, Interleaved and Channel Count to be considered == ?
I thought I understood the way the formats interacted with connecting nodes. I am checking the processingFormat before connecting a node and reconnecting if there is a discrepancy between the formats. I am also using an AVAudioMixerNode in order to automatically convert formats and sample rates...
I am trying to debug a crash in my app.
required condition is false: _outputFormat.channelCount == buffer.format.channelCount