如何静音AVPlayer中播放的视频?

Sur*_*esh 21 objective-c avplayer

我在AVPlayer中播放视频,现在我需要在播放时单独静音.请建议如何做到客观C.

谢谢,Suresh

bca*_*tle 27

从iOS7开始,您可以将AVPlayer isMuted属性设置为true.

在Objective C中,调用该属性muted.

参考:https://developer.apple.com/documentation/avfoundation/avplayer/1387544-meduted


小智 10

这应该会看到你......

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];
Run Code Online (Sandbox Code Playgroud)


Har*_*kar 8

对于上面的 Swift 4 使 AVPlayer 视频静音

self.player.isMuted = true
Run Code Online (Sandbox Code Playgroud)

  • 此属性不会使音频静音。 (2认同)

Ben*_*erd 6

SWIFT 2.0 和 SWIFT 3.0 (截至 2017 年 7 月 5 日)

对于那些对 Swift 感到好奇的人,它只是:

self.avPlayer.muted = true
Run Code Online (Sandbox Code Playgroud)

实现目标-C 的最简单方法:

self.avPlayer.muted = true;
Run Code Online (Sandbox Code Playgroud)