using System; using System.Collections.Generic; using System.Threading.Tasks; using OpenCvSharp; namespace squirrowse.web.Data { public class SaveVideo : ISaveVideo { public async Task SaveData(IAsyncEnumerable stream) { var videoname = DateTime.UtcNow.ToShortDateString(); var output = new VideoWriter(videoname, FourCC.FromFourCCValues(FourCCValues.DIVX), 24.998, new Size(640, 480)); await foreach (var b in stream) { await Task.Delay(1000 / 33); output.Write(Cv2.ImDecode(b, ImreadModes.Unchanged)); // await Task.Delay(1000 / 33); } } } }