internal override TrackBase InternalGetTrackInfo(TrackType trackType, int trackIndex, ref bool isActiveTrack) { TrackBase result = null; switch (trackType) { case TrackType.Video: { string trackName = AVPPlayerGetVideoTrackName(_playerIndex, trackIndex); string trackLanguage = AVPPlayerGetVideoTrackLanguage(_playerIndex, trackIndex); bool isActive = AVPPlayerIsVideoTrackActive(_playerIndex, trackIndex); result = new VideoTrack(trackIndex, trackName, trackLanguage, isActive); break; } case TrackType.Audio: { string trackName = AVPPlayerGetAudioTrackName(_playerIndex, trackIndex); string trackLanguage = AVPPlayerGetAudioTrackLanguage(_playerIndex, trackIndex); bool isActive = AVPPlayerIsAudioTrackActive(_playerIndex, trackIndex); result = new AudioTrack(trackIndex, trackName, trackLanguage, isActive); break; } case TrackType.Text: { string trackName = AVPPlayerGetTextTrackName(_playerIndex, trackIndex); string trackLanguage = AVPPlayerGetTextTrackLanguage(_playerIndex, trackIndex); bool isActive = AVPPlayerIsTextTrackActive(_playerIndex, trackIndex); result = new TextTrack(trackIndex, trackName, trackLanguage, isActive); break; } } return(result); }
public void SetActiveVideoTrack(VideoTrack track) { if (track != null) { SetActiveTrack(_videoTracks, track); } }