Вопрос

Не могли бы вы указать мне на документы/фрагменты/блоги, которые объясняют, как записывать аудиофайлы без потерь Apple на iPhone, пожалуйста?

Я осмотрел пример рекордера аудио из Центра Apple Dev, но не смог выяснить, какой настройки я использую для аудио без потерь.

С уважением,

Стефан

Это было полезно?

Решение

ОС iPhone поддерживает запись файла .caf с использованием ряда различных форматов кодирования сжатого звука:

Apple Lossless — kAudioFormatAppleLossless

iLBC (Интернет-кодек с низким битрейтом) — kAudioFormatiLBC

IMA/ADPCM (также известный как IMA4) — kAudioFormatAppleIMA4

µLaw - kAudioFormatULaw

aLaw - kAudioFormatALaw

- (id) initWithURL: fileURL {
    NSLog (@"initializing a recorder object.");
    self = [super init];

    if (self != nil) {

        // define the audio stream basic description for the file to record into

        // record audio at the current hardware sample rate
        // make sure the audio session is active before asking for properties
        UInt32 propertySize = sizeof(audioFormat.mSampleRate);
        AudioSessionGetProperty(kAudioSessionProperty_CurrentHardwareSampleRate,
                                &propertySize,
                                &audioFormat.mSampleRate);

        audioFormat.mFormatID           = kAudioFormatAppleIMA4; // record using IMA4 codec
        audioFormat.mChannelsPerFrame   = 1;

        AudioQueueNewInput(&audioFormat, ... );

        ...

    }

    return self;
}

Вам обязательно захочется прочитать Руководство по программированию служб аудиоочередей

Другие советы

Взгляните на пример SpeakHere в центре разработки Apple iPhone.

Я использую iTalk Recorder Premium для .aiff (несжатого), затем экспортирую на ноутбук и использую флак чтобы сжать его - по умолчанию сохраняются отметки времени.

flac --best *.aiff
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top