2016-10-22 7 views
-1
- (void)playVideoInteractionNarration:(NSString *)vNarr{ 

[self pauseActionExecution]; 

NSURL *u = [NSURL fileURLWithPath:vNarr]; 
AVQueuePlayer *player = [[AVQueuePlayer alloc] initWithURL:u]; 
self.controller = [[AVPlayerViewController alloc]init]; 
controller.player = player; 
controller.showsPlaybackControls=NO; 

[controller.player setActionAtItemEnd:AVPlayerActionAtItemEndAdvance]; 

[[NSNotificationCenter defaultCenter] 
addObserver:self 
selector:@selector(videoNarrationFinishedPlaying:)             
name:AVPlayerItemDidPlayToEndTimeNotification 
object:player.currentItem]; 
//NSLog(@"MPVIDEOOOOOOO %@", player); 

[controller.player setVolume:1.0]; 
[controller.player setMuted:NO]; 
[controller setViewInCurrentController]; 
[controller.player play]; 

} 

- (void)videoNarrationFinishedPlaying:(NSNotification *) aNotification{ 

AVPlayerItem * item = [aNotification object]; 

[self.controller removeViewInCurrentController]; 
[[NSNotificationCenter defaultCenter] removeObserver:self 
               name:AVPlayerItemDidPlayToEndTimeNotification 
               object:item]; 

[self.controller.player pause]; 
[self.controller release]; 
[self playActionExecution]; 
} 

ビデオは正しく開始して終了しますが、音はありません なぜですか?AVQueuePlayer再生音は出ません

+0

あなたがテストしているが、デバイスまたはシミュレータでのアプリケーションのですか? –

+0

デバイスにはありません... –

+0

デバイスの振動モードはありますか?またはサウンドで次にデフォルトの音を増やします –

答えて

0

右の答えはこれです:

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; 
0
@import AVKit; 
@import AVFoundation; 
@property (nonatomic) AVPlayer *avPlayer; 



NSURL *fileURL = [NSURL URLWithString:@"https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"]; 
    self.avPlayer = [AVPlayer playerWithURL:fileURL]; 
    self.avPlayer.actionAtItemEnd = AVPlayerActionAtItemEndNone; 

    AVPlayerLayer *videoLayer = [AVPlayerLayer playerLayerWithPlayer:self.avPlayer]; 
    videoLayer.frame = self.view.bounds; 
    videoLayer.videoGravity = AVLayerVideoGravityResizeAspectFill; 
    [self.view.layer addSublayer:videoLayer]; 
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(itemDidFinishPlaying:) name:AVPlayerItemDidPlayToEndTimeNotification object:[self.avPlayer currentItem]]; 

    [self.avPlayer play]; 

このコードを試してコメントし、デバイスで正常に機能しているかどうかを確認してください。

+0

サウンドが動作しているかどうか? –

+0

私は[self.view.layer addSublayer:videoLayer]を持っていないので、コードを少し変更しなければなりませんでした。 –

+0

しかし、音...いいえ私は聞いていない申し訳ありません... –

関連する問題