mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-17 19:18:06 +00:00
41 lines
1.1 KiB
Objective-C
41 lines
1.1 KiB
Objective-C
//
|
|
// AudioHelper.m
|
|
// linphone
|
|
//
|
|
// Created by REIS Benjamin on 01/03/2017.
|
|
//
|
|
//
|
|
|
|
#import "AudioHelper.h"
|
|
|
|
@implementation AudioHelper
|
|
|
|
+ (NSArray *)bluetoothRoutes {
|
|
return @[AVAudioSessionPortBluetoothHFP, AVAudioSessionPortCarAudio, AVAudioSessionPortBluetoothA2DP, AVAudioSessionPortBluetoothLE ];
|
|
}
|
|
|
|
+ (AVAudioSessionPortDescription *)bluetoothAudioDevice {
|
|
return [AudioHelper audioDeviceFromTypes:[AudioHelper bluetoothRoutes]];
|
|
}
|
|
|
|
+ (AVAudioSessionPortDescription *)builtinAudioDevice {
|
|
NSArray *builtinRoutes = @[ AVAudioSessionPortBuiltInMic ];
|
|
return [AudioHelper audioDeviceFromTypes:builtinRoutes];
|
|
}
|
|
|
|
+ (AVAudioSessionPortDescription *)speakerAudioDevice {
|
|
NSArray *builtinRoutes = @[ AVAudioSessionPortBuiltInSpeaker ];
|
|
return [AudioHelper audioDeviceFromTypes:builtinRoutes];
|
|
}
|
|
|
|
+ (AVAudioSessionPortDescription *)audioDeviceFromTypes:(NSArray *)types {
|
|
NSArray *routes = [[AVAudioSession sharedInstance] availableInputs];
|
|
for (AVAudioSessionPortDescription *route in routes) {
|
|
if ([types containsObject:route.portType]) {
|
|
return route;
|
|
}
|
|
}
|
|
return nil;
|
|
}
|
|
|
|
@end
|