アプリなどを開発するブログ

React Native / Swift / Ruby on Railsなどの学習メモ。


AVAudioSessionPortDescription まとめ

iOSで、今音声がどこから流れているのか、ヘッドフォンが接続されているのか、
Bluetoothヘッドフォンなのか、とかが知りたい時には、以下のようにして取得可能です。

AVAudioSession *session = [AVAudioSession sharedInstance];
NSArray *out = session.currentRoute.outputs;
AVAudioSessionPortDescription *portDescription = [out lastObject];

で、このAVAudioSessionPortDescriptionのConstantsを以下にまとめました。

AVAudioSessionPortLineOut

ドックコネクタから有線で出力中。

AVAudioSessionPortHeadphones

有線ヘッドフォンで出力中。

AVAudioSessionPortBluetoothA2DP

Bluetooth (A2DP) で出力中。

AVAudioSessionPortBuiltInReceiver

通話中など。通話用スピーカーから出力中。

AVAudioSessionPortBuiltInSpeaker

iPhoneiPadのデフォルトのスピーカーから出力中

AVAudioSessionPortHDMI

HDMIで出力中。

AVAudioSessionPortAirPlay

AirPlayで出力中。

AVAudioSessionPortBluetoothLE

Bluetooth Low Energy 経由で出力中。

何かコレ使った遊びを考え中。