示例#1
0
 private static void StateToBytes(MultiSourceDASHDownloadState state, BinaryWriter w)
 {
     w.Write(state.Id);
     w.Write(state.TempDirectory ?? string.Empty);
     w.Write(state.FileSize);
     w.Write(state.Demuxed);
     w.Write(state.SpeedLimit);
     w.Write(state.AudioChunkCount);
     w.Write(state.AudioContainerFormat ?? string.Empty);
     w.Write(state.VideoChunkCount);
     w.Write(state.VideoContainerFormat ?? string.Empty);
     w.Write(state.Duration);
     w.Write(state.Url ?? string.Empty);
     w.Write(state.AudioSegments?.Count ?? 0);
     for (var i = 0; i < (state.AudioSegments?.Count ?? 0); i++)
     {
         w.Write(state.AudioSegments ![i].ToString());
示例#2
0
 public static void Save(MultiSourceDASHDownloadState state)
 {
     TransactedBinaryDataReader.Write($"{state.Id}.state", Config.DataDir, w => StateToBytes(state, w));
 }