2015-03-13 368 views
0

我是这个蓝牙端的全新手机,如果任何人都可以帮助我或通过链接提供更多信息可能会非常有帮助。如何通过使用iPhone的蓝牙设备设置固定或最小音频比特率?

我想创建一个无缝的高品质比特率音频从iPhone到第三方蓝牙设备(即耳机)的传输。 通常,从iPhone音频将被压缩编码并传输到蓝牙设备的快速连接,但音频质量会降低。 我正在寻找方法来改变使用的编解码器并获得更好的比特率,以便在聆听和录音时在蓝牙上聆听音频的质量很高。

+0

我不相信你有什么控制音频如何传送到外部设备 – Paulw11 2015-03-13 12:08:31

回答

0

您可以在iOS中使用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)