2015-10-16 172 views
-1

我有一個iOS 9應用程序,我已將AVPlayerViewController安裝到我的一個視圖控制器中。我正在嘗試播放視頻。我注意到的一個問題是,如果我插入耳機,則音頻在耳機中播放良好。但是,如果我拔下耳機,音頻將從iPhone頂部的小耳塞揚聲器播放,而不是從主揚聲器播放。我該如何改變這一點?這裏是我的代碼:無法通過揚聲器播放視頻音頻 - iOS

// Setup the video player view. 
AVPlayerViewController *playerViewController = [[AVPlayerViewController alloc] init]; 
playerViewController.player = [AVPlayer playerWithURL:pass_URL]; 
self.player_view = playerViewController; 
self.player_view.view.frame = self.view.frame; 
[self.view addSubview:playerViewController.view]; 
self.view.autoresizesSubviews = TRUE; 
[self.player_view.player play]; 

我已經導入了以下框架到我的Xcode項目:

#import <AVFoundation/AVFoundation.h> 
#import <AVKit/AVKit.h> 

感謝您的時間,丹。

+0

你是否像在這裏找到的答案一樣更改AVAudioSession的類別? http://stackoverflow.com/questions/32476523/make-avaudioplayer-play-a-music-file-through-phone-call-ear-speaker – Stonz2

+0

@ Stonz2我想在這裏播放視頻,而不是音軌。在任何情況下,Xcode都會出現錯誤:'''Expected;''當添加該行時。' – Supertecnoboff

+0

是的,在我注意到的答案中有點不正確。他在枚舉之前缺少方法名稱「setCategory:」的第一部分。 – Stonz2

回答

0

您需要將路由更改觀察者(AVAudioSessionRouteChangeNotification)添加到您的AVAudioSession。然後,您可以檢測到耳機的拆卸,並根據需要自行決定路由(例如,使用overrideOutputAudioPort)。

+0

爲什麼每個人都在繼續關於'''AVAudioSession''',它適用於你想單獨播放音軌的情況。我想在這裏播放視頻。我遇到的問題是無法通過揚聲器播放視頻的音軌。 – Supertecnoboff

相關問題