Allow to use an existing metadata sidecar when dumping media.

This commit is contained in:
2018-01-28 21:18:52 +00:00
parent df5f062500
commit 484782f8e1
11 changed files with 120 additions and 38 deletions

View File

@@ -87,7 +87,8 @@ namespace DiscImageChef.Core.Devices.Dumping
ref Resume resume,
ref DumpLog dumpLog,
Encoding encoding, string outputPrefix, string outputPath,
Dictionary<string, string> formatOptions)
Dictionary<string, string> formatOptions,
CICMMetadataType preSidecar)
{
bool sense;
ulong blocks;
@@ -771,6 +772,7 @@ namespace DiscImageChef.Core.Devices.Dumping
}
outputPlugin.SetDumpHardware(resume.Tries);
if(preSidecar != null) outputPlugin.SetCicmMetadata(preSidecar);
dumpLog.WriteLine("Closing output file.");
DicConsole.WriteLine("Closing output file.");
outputPlugin.Close();
@@ -794,6 +796,12 @@ namespace DiscImageChef.Core.Devices.Dumping
CICMMetadataType sidecar = Sidecar.Create(inputPlugin, outputPath, filter.Id, encoding);
end = DateTime.UtcNow;
if(preSidecar != null)
{
preSidecar.OpticalDisc = sidecar.OpticalDisc;
sidecar = preSidecar;
}
totalChkDuration = (end - chkStart).TotalMilliseconds;
dumpLog.WriteLine("Sidecar created in {0} seconds.", (end - chkStart).TotalSeconds);
dumpLog.WriteLine("Average checksum speed {0:F3} KiB/sec.",