Objective c 如何使AVPlayer中播放的视频静音?
我在AVPlayer中播放视频,现在我需要在播放时将音频单独静音。请建议在目标C中如何做 谢谢,Objective c 如何使AVPlayer中播放的视频静音?,objective-c,avplayer,Objective C,Avplayer,我在AVPlayer中播放视频,现在我需要在播放时将音频单独静音。请建议在目标C中如何做 谢谢, Suresh这会帮你度过难关 AVURLAsset *asset = [[avPlayer currentItem] asset]; NSArray *audioTracks = [asset tracksWithMediaType:AVMediaTypeAudio]; // Mute all the audio tracks NSMutableArray *allAudioParams = [N
Suresh这会帮你度过难关
AVURLAsset *asset = [[avPlayer currentItem] asset];
NSArray *audioTracks = [asset tracksWithMediaType:AVMediaTypeAudio];
// Mute all the audio tracks
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 *audioZeroMix = [AVMutableAudioMix audioMix];
[audioZeroMix setInputParameters:allAudioParams];
[[avPlayer currentItem] setAudioMix:audioZeroMix];
自iOS7以来,您可以将AVPlayer
ismute
属性设置为true
在目标C中,该属性被称为静音
参考:SWIFT 2.0和SWIFT 3.0(截至2017年7月5日) 对于那些对Swift感兴趣的人来说,它只是:
self.avPlayer.muted = true
目标C的最简单方法:
self.avPlayer.muted = true;
当视频处于播放状态时,需要将muted设置为false 添加侦听器:
[itemPlayer addObserver:self
forKeyPath:kStatusKey
options:NSKeyValueObservingOptionInitial | NSKeyValueObservingOptionNew
context:@"AVPlayerStatus"];
代码:
用于上面的Swift 4使AVPlayer视频静音
self.player.isMuted = true
player.ismute=true
对我无效
在我的情况下,我需要视频永久静音。所以我使用下面的代码来实现这一点
self.player.volume = 0.0
我尝试过这种方法,但它在模拟器中不起作用。我正在使用AVPlayer播放.mov文件。你能推荐其他解决方案吗?我发现这样做会中断你可能通过音乐应用程序或iTunes等播放的任何音乐。有没有办法继续在后台播放音乐?太好了,只需将第一个“AVURLAsset”更改为“AVAsset”,它就完美了。这看起来非常复杂,没有?self.avPlayer.mute=true;self.avPlayer.muted=true;更新为Swift 3Sorry,不适合你Vinesh。它正在为我的Swift 3.0和3.1工作。这可能是其他变量,你有去那里?这个属性不会静音的音频。我的情况下,我已经测试了上述代码,然后张贴在这里。
self.player.volume = 0.0