예제 #1
0
 public void Render(StreamWriter writer)
 {
     writer.AppendNormalizedline(FormattableString.Invariant($"#EXTINF:{Duration:F1},"));
     if (ByteRange.HasValue)
     {
         writer.AppendNormalizedline($"#EXT-X-BYTERANGE:{ByteRange}");
     }
     writer.AppendNormalizedline(Path);
 }
예제 #2
0
        public void Render(StreamWriter writer)
        {
            writer.Write($"#EXT-X-STREAM-INF:BANDWIDTH={Bandwidth}");

            if (AverageBandwidth.HasValue)
            {
                writer.Write($",AVERAGE-BANDWIDTH={AverageBandwidth.Value}");
            }

            if (Codecs != null)
            {
                writer.Write($",CODECS=\"{string.Join(",", Codecs)}\"");
            }

            if (Resolution.HasValue)
            {
                writer.Write($",RESOLUTION={Resolution.Value.Width}x{Resolution.Value.Height}");
            }

            if (Audio != null)
            {
                writer.Write($",AUDIO=\"{Audio}\"");
            }

            if (Video != null)
            {
                writer.Write($",VIDEO=\"{Video}\"");
            }

            if (Subtitles != null)
            {
                writer.Write($",SUBTITLES=\"{Subtitles}\"");
            }

            if (ClosedCaptions != null)
            {
                writer.Write($",CLOSED-CAPTIONS=\"{ClosedCaptions}\"");
            }

            writer.AppendNormalizedNewline();
            writer.AppendNormalizedline(Uri);
        }
예제 #3
0
 protected void AppendLine(string text) => Writer.AppendNormalizedline(text);