Я использую AVPlayer для воспроизведения в прямом эфире (файл m3U8). Он отлично работает с AVPlayer, но я не могу отключить его.Отключить звуковые дорожки в прямом эфире с помощью 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.
(может быть для живого потокового видео, треки доступны в случае AVPlayer можно установить громкость ZERO, но следующие буферные дорожки свежие с объемом, я прав или какие-либо другие причины?)
Кто-нибудь есть какие-либо идеи по этому вопросу вопрос. Любая помощь в этом очень заметна.
У кого-то есть указатели .. возможно ли это или невозможно? Я прошел через все источники, согласно моей информации, которую я получил, это невозможно в iOS. Верно? – macpandit
Я захлопнул мою голову в свой рабочий стол полтора дня и не придумал решение. Я проверил каждую релевантную документацию по объектам, о которой я могу думать. Я попробовал решение, упомянутое выше (как рекомендовано Apple), а также попытался установить для AVPlayerItemTrack значение NO. Ничто не работает. Если у кого-нибудь есть предложения, я бы с удовольствием узнал. –