2015-03-13 3 views
0

Я совершенно новичок в этой стороне bluetooth, если кто-нибудь может мне помочь или предоставить ссылки, для получения дополнительной информации может быть действительно полезно.Как установить фиксированную или минимальную скорость передачи звука через Bluetooth-устройство с помощью iPhone?

Я пытаюсь создать бесшовную передачу звука с высоким качеством передачи звука с iPhone на стороннее устройство Bluetooth (например, наушники). Как правило, с iPhone аудио будет сжато в кодировке и передается для быстрой связи с устройством Bluetooth, но качество звука будет уменьшаться. Я нахожу способы изменить используемый кодек и улучшить скорость передачи, поэтому прослушивание аудио на Bluetooth имеет хорошее качество как для прослушивания, так и для записи.

+0

Я не верю, что у вас есть контроль за доставкой аудио на внешнее устройство – Paulw11

ответ

0

Вы можете использовать AudioUnit в прошивке и изменить частоту дискретизации с использованием AudioStreamBasicDescription

AudioStreamBasicDescription audioDescription = {0}; 
audioDescription.mFormatID   = kAudioFormatLinearPCM; 
audioDescription.mFormatFlags  = kAudioFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked | kAudioFormatFlagsNativeEndian; 
audioDescription.mChannelsPerFrame = 1; 
audioDescription.mBytesPerPacket = sizeof(SInt16)*audioDescription.mChannelsPerFrame; 
audioDescription.mFramesPerPacket = 1; 
audioDescription.mBytesPerFrame  = sizeof(SInt16)*audioDescription.mChannelsPerFrame; 
audioDescription.mBitsPerChannel = 8 * sizeof(SInt16); 
audioDescription.mSampleRate  = 8000.0; 

И вы можете изменить предпочитаемую частоту дискретизации вашего приложения:

let session = AVAudioSession.sharedInstance() 
try session.setCategory(AVAudioSessionCategoryPlayAndRecord) 
let bufferDuration :NSTimeInterval = 0.005 
try session.setPreferredIOBufferDuration(bufferDuration) 
try session.setPreferredSampleRate(8000.0) 
try session.setActive(true) 
Смежные вопросы