This project has moved and is read-only. For the latest updates, please go here.

How to get .ts file in "Output" windows?

Aug 27, 2016 at 1:33 PM
Edited Aug 27, 2016 at 1:40 PM
Hello, When I play m3u8 link by your project, i see in my output windows some link .ts. How to get these .ts link in "Output" windows?
Aug 28, 2016 at 2:59 PM
The Output windows is the one turning the text into a link. The "++++ Starting" and "---- Completed" strings come from Debug.WriteLine() calls in CallbackReader's ReadSegmentsAsync():
                    while (await segmentReaderEnumerator.MoveNextAsync().ConfigureAwait(false))
                        var segmentReader = segmentReaderEnumerator.Current;

                        var start = DateTimeOffset.Now;

                        Debug.WriteLine("++++ Starting {0} at {1}.  Total memory: {2:F} MiB", segmentReader, start, GC.GetTotalMemory(false).BytesToMiB());

                        await ReadSegmentAsync(segmentReader, cancellationToken).ConfigureAwait(false);

                        var complete = DateTimeOffset.Now;

                        Debug.WriteLine("---- Completed {0} at {1} ({2}).  Total memory: {3:F} MiB", segmentReader, complete, complete - start, GC.GetTotalMemory(false).BytesToMiB());
The "segmentReader" variable is an ISegmentReader, which is implemented by SegmentReader. It has a ".ToString()" that looks like this:
        public override string ToString()
            if (_segment.Offset > 0 || _segment.Length > 0)
                return string.Format("{0} [{1}-{2}]", Url, _segment.Offset, _segment.Offset + _segment.Length);

            return Url.ToString();
The SegmentReader's Url property is an instance of System.Uri, so the link we see in the Output window is what Uri.ToString() returns.
Marked as answer by mplay9k on 8/28/2016 at 7:58 PM