garaster
2013-04-01 08:40
采纳率: 77.4%
浏览 9.8k

如何在AVPlayer播放实现静音

用下面的代码播放音频:

 -(IBAction)hearAudioMessage:(id)sender
{
ChatObject * obj = [chatArray objectAtIndex:rowIndexInt];
 NSString *str=[NSString stringWithFormat:@"http://www.myserver.com/files/%@",obj.voiceFileString];
    self.palyer=[[AVPlayer alloc] initWithURL:[NSURL URLWithString:str]];
    [self.palyer play];
}

我想在播放期间能静音。

用了下面的代码,但是木有实现:

NSArray *audioTracks = [asset tracksWithMediaType:AVMediaTypeAudio];

NSMutableArray *allAudioParams = [NSMutableArray array];
for (AVAssetTrack *track in audioTracks) {
    AVMutableAudioMixInputParameters *audioInputParams =
    [AVMutableAudioMixInputParameters audioMixInputParameters];
    [audioInputParams setVolume:0.0 atTime:kCMTimeZero];
    [audioInputParams setTrackID:[track trackID]];
    [allAudioParams addObject:audioInputParams];
}
AVMutableAudioMix *audioMix = [AVMutableAudioMix audioMix];
[audioMix setInputParameters:allAudioParams];

AVPlayerItem *playerItem = [AVPlayerItem playerItemWithAsset:asset];
[playerItem setAudioMix:audioMix];

不知道应该怎么能实现呢?

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • g989_1314125 2013-04-01 09:05
    已采纳

    很简单的,用下面这行代码静音:

    [player pause];
    
    已采纳该答案
    评论
    解决 无用 2
    打赏 举报
  • xjy382993778 2018-04-09 09:56

    self.player.volume = 0; 音量设为0就行了

    评论
    解决 1 无用
    打赏 举报
  • asd767077218 2016-09-05 09:26

    [player pause]; 这个是暂停 实现的是播放的时候禁音阿。

    评论
    解决 无用
    打赏 举报
  • Memory_ZZ 2020-08-13 16:22

    .player.isMuted = true

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题