コード例 #1
0
        public async Task MediaManifest()
        {
            var manifest = new MediaManifest(version: 8, playlistType: PlaylistType.VOD, targetDuration: 2.0);

            for (var i = 0; i < 1000; i++)
            {
                manifest.Add(new MediaFile
                {
                    Path     = $"{i}.ts",
                    Duration = 2.0
                });
            }
            var stream = new MemoryStream();
            var writer = new MediaManifestWriter(manifest, stream);
            await writer.Render();
        }
コード例 #2
0
        public async Task WritesMediaSequence()
        {
            var manifest = new MediaManifest(
                version: 8,
                playlistType: PlaylistType.EVENT,
                targetDuration: 10
                );

            manifest.Add(new MediaFile {
                Path = "test.mp4", Duration = 10
            });
            manifest.AddAndIncrementSequence(new MediaFile {
                Path = "test2.mp4", Duration = 10
            });


            AssertEqualWithNewline(@"#EXTM3U
#EXT-X-PLAYLIST-TYPE:EVENT
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:8
#EXT-X-MEDIA-SEQUENCE:1
#EXTINF:10.0,
test2.mp4", await RenderManifest(manifest));
        }