我正在使用 AVPlayer 播放直播流(m3U8 文件)。它使用 AVPlayer 可以完美播放,但我无法将其静音。
我正在使用以下代码使音频静音。
NSMutableArray *allAudioParams = [NSMutableArray array];
for (AVPlayerItemTrack *track in _player.currentItem.tracks)
{
if ([track.assetTrack.mediaType isEqual:AVMediaTypeAudio])
{
AVMutableAudioMixInputParameters *audioInputParams = [AVMutableAudioMixInputParameters audioMixInputParameters];
[audioInputParams setVolume:0.0 atTime:kCMTimeZero];
[audioInputParams setTrackID:[track.assetTrack trackID]];
[allAudioParams addObject:audioInputParams];
}
}
AVMutableAudioMix *audioZeroMix = [AVMutableAudioMix audioMix];
[audioZeroMix setInputParameters:allAudioParams];
[[_player currentItem] setAudioMix:audioZeroMix];
使用相同的代码,我可以静音本地视频文件以及我在相同 AVPlayer 代码中播放的渐进式视频 url。
(可能是用于直播视频,AVPlayer 实例中可用的曲目可以将音量设置为零,但下一个缓冲曲目是新鲜的音量,我是对的还是其他原因?)
任何人都对这个问题有任何想法。对此的任何帮助都是非常可观的。