Я знакомлюсь с тем, как использовать AudioUnit для воспроизведения звуков, и меня смущают понятия пакетов и кадров. Я бы хотел знать:
что такое определение пакета и кадра в контексте AudioUnit
каковы возможности использования нескольких выборок в пакете и нескольких пакетов в кадре
Моя причина спросить: во всех примерах кода, которые я видел до сих пор, пакет, по сути, является образцом, обычно с mBytesPerPacket=4 для 16-битного стереопотока. А mFramesPerPacket обычно равен 1, что делает кадр, пакет и семпл (будь то стереосемпл) одними и теми же понятиями.
Я ожидал, что пакет и/или кадр будут буфером сэмплов, то есть группой из 256 или 512 последовательных сэмплов, на которые драйвер может указывать и считывать линейно. Уменьшение размера кадра/пакета до одного образца создает ненужную нагрузку на любой драйвер, который будет отвечать за воспроизведение данных. Что мне не хватает?