Создать wav-заголовок для записанных данных ADPCM на iPhone

Мое требование - создать файл.wav, и у меня уже был существующий код с кодировщиком ADPCM. Он получал данные в линейном PCM, преобразовывал их в ADPCM и создавал волновой заголовок для файла.

Теперь я изменил код и получаю данные напрямую в формат Apple ADPCM, конкретные значения которого приведены ниже. Как я могу создать волновой заголовок для этого файла, чтобы я мог воспроизвести этот файл на любом плеере. Сейчас я получаю правильный размер файла, но он не воспроизводит данные, ни во всю длину, ни без трескучего звука. Пожалуйста, предложите мне любые прорывы, как я могу отладить код, чтобы я мог получить точную проблему. В настоящее время мне кажется, что это проблема с заголовком волны.

Используемые спецификации ADPCM:*mSampleRate:* 44100

mFormatID: kAudioFormatAppleIMA4

mFormatFlags: 0

mChannelsPerFrame: 2

mBitsPerChannel: 0

mFramesPerPacket: 64

mBytesPerPacket: 68 (= mChannelsPerFrame * 34)

Используемые спецификации заголовка волны:*samplesPerSecond:* 44100

каналы: 2

статус: 0x0011U

blockAlign: каналы * 256

bitsPerSample: 4

formatExtension: 2

samplesPerBLock: lsx_ima_samples_in ((size_t) 0, (size_t) wavHeader.wChannels, (size_t) wavHeader.wBlockAlign, (size_t) 0);

samplesWritten: self.audioLength / wavHeader.wSamplesPerBlock

fmtSize: 2 + wavHeader.wExtSize;

Любая помощь высоко ценится.

0 ответов

Другие вопросы по тегам