private void MediaPlayer_SelectedAudioStreamChanged(object sender, SelectedAudioStreamChangedEventArgs e)
{
var audioStreamWrapper = e.NewValue as AudioStreamWrapper;
try
{
// either we got bad data, or the app developer has replaced the AudioStreamWrapper objects
// either way, don't do anything
if (null == audioStreamWrapper)
return;
foreach (var ar in GetAudioRenditions())
{
if (null == ar || ar.IsActive)
{
continue;
}
var id = AudioStreamWrapper.GetNamePlusLanguageForId(ar.Name, ar.Language);
if (id == audioStreamWrapper.NamePlusLanguageId)
{
ar.IsActive = true;
break;
}
}
}
catch { }
}