public override async Task <WebRequestorResponse> GetTrackFragmentStream(Microsoft.Media.AdaptiveStreaming.Dash.Smooth.ManifestTrackType trackType, uint bitrate, ulong timeOffset, string language) { if (language == string.Empty) { language = null; } var track = this.ManifestTracks .Where(t => t.Type == trackType && t.Bitrate == bitrate && t.Language == language) .SingleOrDefault(); if (track != null) { var entry = track.Fragments.TrackFragmentRandomAccessEntries.FirstOrDefault(e => e.Time == timeOffset); if (entry != null) { return(await DownloadFragment(this.fileUri, (long)entry.MoofOffset, (long)entry.SampleSize)); } } return(null); }
public abstract Task <WebRequestorResponse> GetTrackFragmentStream(Microsoft.Media.AdaptiveStreaming.Dash.Smooth.ManifestTrackType trackType, uint bitrate, ulong timeOffset, string language);