/// <summary> /// Gets all video qualities available in a <see cref="MediaStreamInfoSet"/>. /// </summary> public static IEnumerable <VideoQuality> GetAllVideoQualities(this MediaStreamInfoSet streamInfoSet) { var qualities = new HashSet <VideoQuality>(); foreach (var streamInfo in streamInfoSet.Muxed) { qualities.Add(streamInfo.VideoQuality); } foreach (var streamInfo in streamInfoSet.Video) { qualities.Add(streamInfo.VideoQuality); } return(qualities); }
/// <summary> /// Gets video quality labels of all streams available in a <see cref="MediaStreamInfoSet"/>. /// </summary> public static IEnumerable <string> GetAllVideoQualityLabels(this MediaStreamInfoSet streamInfoSet) { var labels = new HashSet <string>(); foreach (var streamInfo in streamInfoSet.Muxed) { labels.Add(streamInfo.VideoQualityLabel); } foreach (var streamInfo in streamInfoSet.Video) { labels.Add(streamInfo.VideoQualityLabel); } return(labels); }
/// <summary> /// Gets all available media stream infos in a <see cref="MediaStreamInfoSet"/>. /// </summary> public static IEnumerable <MediaStreamInfo> GetAll(this MediaStreamInfoSet streamInfoSet) { foreach (var streamInfo in streamInfoSet.Muxed) { yield return(streamInfo); } foreach (var streamInfo in streamInfoSet.Audio) { yield return(streamInfo); } foreach (var streamInfo in streamInfoSet.Video) { yield return(streamInfo); } }