ios - 如何使用 AVFoundation 在音频输入源(蓝牙、内置麦克风)之间切换
<p><p>我目前在内置麦克风和蓝牙麦克风、iOS8 之间切换音频输入源时遇到问题</p>
<p>我试图找到在线解决方案,但一无所获:(</p>
<p>任何人,请告诉我正确的实现方法。</p>
<p>期待您的帮助!</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>我有这个代码。</p>
<p>bluetoothInput 只是一个用于在蓝牙麦克风和普通麦克风之间切换的 bool 值。</p>
<pre><code>-(void) changeBluetoothInput{
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0"))
{
if(self.bluetoothInput){
//[ setActive:NO error:nil];
[ setActive:YES error:nil];
AVAudioSessionPortDescription* _bluetoothPort = ;
[ setPreferredInput:_bluetoothPort
error:nil];
}else{
//[ setActive:NO error:nil];
//[ setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
[ setActive:YES error:nil];
AVAudioSessionPortDescription* _bluetoothPort = ;
[ setPreferredInput:_bluetoothPort
error:nil];
}
}
</code></pre>
<p>}</p>
<pre><code>- (AVAudioSessionPortDescription*)bluetoothAudioDevice
{
NSArray* bluetoothRoutes = @;
return ;
}
- (AVAudioSessionPortDescription*)normalAudioDevice
{
NSArray* bluetoothRoutes = @;
return ;
}
- (AVAudioSessionPortDescription*)audioDeviceFromTypes:(NSArray*)types
{
NSArray* routes = [ availableInputs];
for (AVAudioSessionPortDescription* route in routes)
{
if ()
{
return route;
}
}
return nil;
}
</code></pre></p>
<p style="font-size: 20px;">关于ios - 如何使用 AVFoundation 在音频输入源(蓝牙、内置麦克风)之间切换,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/34162179/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/34162179/
</a>
</p>
页:
[1]