2010-10-24 2 views
1

Каковы наилучшие настройки для рекордера для записи голоса? Что мне следует заменить на?? в нижнем коде?Лучшая настройка для звукового сигнала

recordSetting = [[NSMutableDictionary alloc] init]; 

[recordSetting setValue :[NSNumber numberWithInt:?] forKey:AVFormatIDKey]; 
[recordSetting setValue:[NSNumber numberWithFloat:?] forKey:AVSampleRateKey]; 
[recordSetting setValue:[NSNumber numberWithInt: ?] forKey:AVNumberOfChannelsKey]; 
[recordSetting setValue :[NSNumber numberWithInt:?] forKey:AVLinearPCMBitDepthKey]; 
[recordSetting setValue :[NSNumber numberWithBool:?] forKey:AVLinearPCMIsBigEndianKey]; 
[recordSetting setValue :[NSNumber numberWithBool:?] forKey:AVLinearPCMIsFloatKey]; 
+0

вы задаете 2 вопроса. также, пожалуйста, переформатируйте свой вопрос, чтобы уточнить «лучшее». В противном случае я просто скажу вам, что 96000 Гц, 64-битный подписанный PCM более чем достаточен для хранения человеческого голоса. – justin

ответ

2

это должно быть прекрасным отправным пунктом для речи, учитывая аппаратные средства (так как это помечено «Iphone», я предполагаю, что это источник).

[recordSetting setValue:[NSNumber numberWithInt:kAudioFormatLinearPCM] forKey:AVFormatIDKey]; 
[recordSetting setValue:[NSNumber numberWithFloat:12000.0f] forKey:AVSampleRateKey]; 
[recordSetting setValue:[NSNumber numberWithInt:1 /* mono */ ] forKey:AVNumberOfChannelsKey]; 
[recordSetting setValue:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey]; 
[recordSetting setValue:[NSNumber numberWithBool:NX_BigEndian == NXHostByteOrder()] forKey:AVLinearPCMIsBigEndianKey]; 
[recordSetting setValue:[NSNumber numberWithBool:0] forKey:AVLinearPCMIsFloatKey]; 

, если вы хотите, чтобы уменьшить размер файла, то вы можете предпочесть запись с более высоким качеством, а затем преобразовать в сжатый формат следующей записи.

Если у вас есть длинные записи, то вы можете записать в сжатый формат (я бы избегал этого иначе, потому что требования к ресурсу выше).

как есть, они могут быть не самыми лучшими для конкретного приложения, но хорошим балансом между размером, скоростью и качеством.

+0

Ошибка: необъявленные 'NX_BigEndian', 'kAudioFormatLinearPCM' – SajjadZare

+0

вам не хватает некоторых '# includes'. 'grep -r NX_BigEndian/Разработчик/Платформы/iPhoneOS.platform/Разработчик/SDK/iPhoneOS3.2.sdk' и' grep -r kAudioFormatLinearPCM/Разработчик/Платформы/iPhoneOS.platform/Разработчик/SDK/iPhoneOS3.2.sdk' – justin

+0

Извините, я не могу понять, что добавить в мое приложение? – SajjadZare

Смежные вопросы