В настоящее время я использую аудио-очереди на iPhone для записи и воспроизведения аудио.
То, что я хотел бы сделать, - это записать звук, позволить пользователю приостановить очередь записи и выполнить поиск назад и вперед по аудио, чтобы выбрать позицию, с которой они могут начать запись снова.
Я преодолел проблему с поиском, сделав размеры воспроизведения AudioQueueBuffer достаточно малыми, так что обратный вызов воспроизведения аудио-очереди происходит со скоростью, позволяющей пользователю использовать регулятор ползунка для прослушивания звука при настройке ползунка вперед и назад .
Я думаю, что могу добиться записи на новой позиции, установив параметр inStartingPacket функции AudioFileWritePackets, которую я вызываю из обратного вызова в очереди записи звука.
Беда в том, что звук вставляется только поверх ранее записанного звука. Длина файла, очевидно, не меняется, поэтому, если пользователь должен вернуться назад и записать меньше звука, чем раньше, старый звук все равно останется после окончания вновь записанного звука.
Есть ли способ заставить AudioFile обрезать в тот момент, когда пользователь начинает вставлять новое аудио, есть ли какой-то другой способ, которым я могу удалить старое аудио, начиная с позиции вставки, или есть лучший способ идти об этой задаче?
Спасибо