Я играю поток HLS с AVPlayer и AVPLayerViewController на Xamarin.iOS. Проблема в том, что я не могу изменить названия треков (аудио и субтитры), которые пользователь может выбрать в настройках воспроизведения.
Метки, которые я хочу изменить, отмечены красным Например, я хочу, чтобы там были названия на родном языке.
Допустим, я не могу изменить метаданные в потоке, и мне нужно изменить метки трека в плеере.
Так я разбираю доступные треки и выбираю английский для сабвуферов и аудио.
AVAsset asset = AVAsset.FromUrl(source);
AVPlayerItem playerItem = new AVPlayerItem(asset);
foreach (string characteristic in this.playerItem.Asset.AvailableMediaCharacteristicsWithMediaSelectionOptions)
{
AVMediaSelectionGroup group = this.playerItem.Asset.MediaSelectionGroupForMediaCharacteristic(characteristic);
AVMediaSelectionOption option = group.Options.FirstOrDefault(o => o.Playable && o.ExtendedLanguageTag == "eng");
if (option is null)
continue;
this.playerItem.SelectMediaOption(option, group);
}
Я пытался изменить AVMediaSelectionGroup и AVMediaSelectionOption, но экземпляры в значительной степени имеют свойства только для чтения.
Как мне подойти к этой проблеме?