2013-07-30 7 views
0

У меня есть приложение, в котором я потоковый радиоприемниках благодаря URL в AVPlayer:AVPlayer регулятор громкости ползунок

NSURL *myURL = [NSURL URLWithString:urlString]; 

    AVPlayer *player = [[AVPlayer alloc]initWithURL:myURL]; 
    self.player = player; 
    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(playerItemDidReachEnd:) 
               name:AVPlayerItemDidPlayToEndTimeNotification 
               object:[self.player currentItem]]; 
    [self.player addObserver:self forKeyPath:@"status" options:0 context:nil]; 
    [self.player play]; 

То, что я хотел бы это иметь ползунок для регулировки громкости. Я знаю, что с AVAudioPlayer это легко, потому что есть свойство, но не с AVPlayer.

Как я мог это сделать? Должен ли я использовать AVAsset, поскольку я видел there, и как (поскольку я не использую их вообще в своем коде прямо сейчас)?

Спасибо, yall!

+0

Вы можете посмотреть в MPVolumeView – amergin

ответ

0

Вам нужно будет создать AVMutableAudioMix с томом, как указано в действии valueChanged: UISlider. Что-то вроде этого:

- (IBAction) sliderValueChanged:(UISlider *)sender { 
    AVMutableAudioMixInputParameters *audioInputParams = 
    [AVMutableAudioMixInputParameters audioMixInputParameters]; 
    [audioInputParams setVolume:sender.value atTime:kCMTimeZero]; 
    AVMutableAudioMix *audioMix = [AVMutableAudioMix audioMix]; 
    [audioMix setInputParameters:@[audioInputParams]]; 
    [[player currentItem] setAudioMix:audioMix]; (from a UISlider valueChanged action) 
} 
Смежные вопросы