Отсутствующие фрагменты при создании файла с помощью AudioQueue
-
11-09-2019 - |
Вопрос
Итак .файл wav состоит из нескольких стандартных фрагментов.В большинстве файлов, с которыми я работаю, первым идет фрагмент "RIFF", затем фрагмент "fmt", затем фрагмент "DATA".При записи с использованием AVAudioRecorder эти фрагменты создаются (хотя перед фрагментом "ДАННЫЕ" создается дополнительный "FLLR").
При создании файла с помощью AudioQueue эти стандартные фрагменты не создаются.Вместо этого AudioQueue создает по порядку фрагменты "caffe", "desc", "lpcm", "free" и "data".
Что происходит?Разве не требуются фрагменты "РИФФ" и "fmt"?Как заставить включить эти фрагменты?
Я создаю файл с помощью:
AudioFileCreateWithURL(URL, kAudioFileCAFType и формат входных данных, kAudioFileFlags_EraseFile и АудиоФайл);
с inputDataFormat, представляющим собой базовое описание аудиопотока с полным набором свойств.
Итак, как записать, по крайней мере, фрагменты "РИФФ" и "fmt" с помощью AudioQueue?
Спасибо.
Решение
Итак .файл wav состоит из нескольких стандартных фрагментов.…
При создании файла с помощью AudioQueue эти стандартные фрагменты не создаются.…
⋮
Я создаю файл с помощью:
AudioFileCreateWithURL(URL, kAudioFileCAFType, &inputDataFormat, kAudioFileFlags_EraseFile, &AudioFile);
Пусть это будет примером ценности показа своего кода в своем вопросе.:-)
kAudioFileCAFType
это основной аудиофайл, а не WAV-файл.Попробуй kAudioFileWAVEType
вместо этого.