现在我想在我的iPhone应用程序中列出可用的音频输出路径,如下所示:
我知道我可以使用音频会话的audioRouteChangeListener获取路由更改信息,但此方法只能在我的应用启动后收到消息,所以如果耳机和蓝牙都在我的应用运行之前连接,我怎么能得到这些路线的消息,任何提示都表示赞赏。
感谢。
答案 0 :(得分:1)
只有5个音频输入路线(iOS5 +):
kAudioSessionInputRoute_LineIn;
kAudioSessionInputRoute_BuiltInMic;
kAudioSessionInputRoute_HeadsetMic;
kAudioSessionInputRoute_BluetoothHFP;
kAudioSessionInputRoute_USBAudio;
并且有9条音频输出路线(iOS5 +):
kAudioSessionOutputRoute_LineOut;
kAudioSessionOutputRoute_Headphones;
kAudioSessionOutputRoute_BluetoothHFP;
kAudioSessionOutputRoute_BluetoothA2DP;
kAudioSessionOutputRoute_BuiltInReceiver;
kAudioSessionOutputRoute_BuiltInSpeaker;
kAudioSessionOutputRoute_USBAudio;
kAudioSessionOutputRoute_HDMI;
kAudioSessionOutputRoute_AirPlay;
find more information here 如何在应用中检查它们的可用性。
答案 1 :(得分:1)
我使用MPVolumeView工作了。此组件有一个按钮,可让您选择输出音频路径,如音乐应用程序。
如果您需要,可以使用以下方法隐藏滑块(并且只有按钮):
self.myMPVolumeView.showsVolumeSlider = NO;
目前我找不到以编程方式获取输出目的地和输入源的方法,正如我在这个问题中所指出的那样List available output audio target AVAudioSession