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(); }
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)); }