mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
* option to purge records from local DB
* metadata editing window size is now saved in settings * old musicbrainz library removed, musicbrainz metadata now only comes from CTDB * confirmation dialog before submitting to CTDB
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>8.0.50727</ProductVersion>
|
||||
<ProductVersion>9.0.30729</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{9253A314-1821-42BF-B02F-2BF986B1765D}</ProjectGuid>
|
||||
<OutputType>Exe</OutputType>
|
||||
@@ -54,6 +54,10 @@
|
||||
<Project>{1DD41038-D885-46C5-8DDE-E0B82F066584}</Project>
|
||||
<Name>CUETools.CDImage</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\CUETools.CTDB\CUETools.CTDB.csproj">
|
||||
<Project>{AA2A9A7E-45FB-4632-AD85-85B0E556F818}</Project>
|
||||
<Name>CUETools.CTDB</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\CUETools.Ripper.SCSI\CUETools.Ripper.SCSI.csproj">
|
||||
<Project>{8CF07381-BEA2-4AFC-B3DD-9B2F21C65A3A}</Project>
|
||||
<Name>CUETools.Ripper.SCSI</Name>
|
||||
@@ -63,10 +67,6 @@
|
||||
<Project>{D2700165-3E77-4B28-928D-551F5FC11954}</Project>
|
||||
<Name>CUETools.Ripper</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\MusicBrainz\MusicBrainz.csproj">
|
||||
<Project>{74C2036B-2C9B-4FC8-B7BD-AE81A8DCE533}</Project>
|
||||
<Name>MusicBrainz</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
||||
@@ -29,7 +29,7 @@ using CUETools.Ripper.SCSI;
|
||||
using CUETools.Codecs;
|
||||
using CUETools.CDImage;
|
||||
using CUETools.AccurateRip;
|
||||
using MusicBrainz;
|
||||
using CUETools.CTDB;
|
||||
|
||||
namespace CUETools.ConsoleRipper
|
||||
{
|
||||
@@ -178,24 +178,19 @@ namespace CUETools.ConsoleRipper
|
||||
AudioBuffer buff = new AudioBuffer(audioSource, 0x10000);
|
||||
string CDDBId = AccurateRipVerify.CalculateCDDBId(audioSource.TOC);
|
||||
string ArId = AccurateRipVerify.CalculateAccurateRipId(audioSource.TOC);
|
||||
Release release;
|
||||
ReleaseQueryParameters p = new ReleaseQueryParameters();
|
||||
p.DiscId = audioSource.TOC.MusicBrainzId;
|
||||
Query<Release> results = Release.Query(p);
|
||||
|
||||
var ctdb = new CUEToolsDB(audioSource.TOC, null);
|
||||
ctdb.Init(arVerify);
|
||||
ctdb.ContactDB(null, "CUETools.ConsoleRipper 2.1.2", audioSource.ARName, true, false);
|
||||
arVerify.ContactAccurateRip(ArId);
|
||||
|
||||
try
|
||||
CTDBResponseMeta meta = null;
|
||||
foreach (var imeta in ctdb.Metadata)
|
||||
{
|
||||
release = results.First();
|
||||
}
|
||||
catch
|
||||
{
|
||||
release = null;
|
||||
meta = imeta;
|
||||
break;
|
||||
}
|
||||
|
||||
//string destFile = (release == null) ? "cdimage.flac" : release.GetArtist() + " - " + release.GetTitle() + ".flac";
|
||||
string destFile = (release == null) ? "cdimage.wav" : release.GetArtist() + " - " + release.GetTitle() + ".wav";
|
||||
string destFile = (meta == null) ? "cdimage.wav" : meta.artist + " - " + meta.album + ".wav";
|
||||
|
||||
Console.WriteLine("Drive : {0}", audioSource.Path);
|
||||
Console.WriteLine("Read offset : {0}", audioSource.DriveOffset);
|
||||
@@ -204,7 +199,7 @@ namespace CUETools.ConsoleRipper
|
||||
Console.WriteLine("Filename : {0}", destFile);
|
||||
Console.WriteLine("Disk length : {0}", CDImageLayout.TimeToString(audioSource.TOC.AudioLength));
|
||||
Console.WriteLine("AccurateRip : {0}", arVerify.ARStatus == null ? "ok" : arVerify.ARStatus);
|
||||
Console.WriteLine("MusicBrainz : {0}", release == null ? "not found" : release.GetArtist() + " - " + release.GetTitle());
|
||||
Console.WriteLine("MusicBrainz : {0}", meta == null ? "not found" : meta.artist + " - " + meta.album);
|
||||
|
||||
ProgressMeter meter = new ProgressMeter();
|
||||
audioSource.ReadProgress += new EventHandler<ReadProgressArgs>(meter.ReadProgress);
|
||||
@@ -215,24 +210,24 @@ namespace CUETools.ConsoleRipper
|
||||
cueWriter.WriteLine("REM DISCID {0}", CDDBId);
|
||||
cueWriter.WriteLine("REM ACCURATERIPID {0}", ArId);
|
||||
cueWriter.WriteLine("REM COMMENT \"{0}\"", audioSource.RipperVersion);
|
||||
if (release != null && release.GetEvents().Count > 0)
|
||||
cueWriter.WriteLine("REM DATE {0}", release.GetEvents()[0].Date.Substring(0, 4));
|
||||
if (meta != null && meta.year != "")
|
||||
cueWriter.WriteLine("REM DATE {0}", meta.year);
|
||||
if (audioSource.TOC.Barcode != null)
|
||||
cueWriter.WriteLine("CATALOG {0}", audioSource.TOC.Barcode);
|
||||
if (release != null)
|
||||
if (meta != null)
|
||||
{
|
||||
cueWriter.WriteLine("PERFORMER \"{0}\"", release.GetArtist());
|
||||
cueWriter.WriteLine("TITLE \"{0}\"", release.GetTitle());
|
||||
cueWriter.WriteLine("PERFORMER \"{0}\"", meta.artist);
|
||||
cueWriter.WriteLine("TITLE \"{0}\"", meta.album);
|
||||
}
|
||||
cueWriter.WriteLine("FILE \"{0}\" WAVE", destFile);
|
||||
for (int track = 1; track <= audioSource.TOC.TrackCount; track++)
|
||||
if (audioSource.TOC[track].IsAudio)
|
||||
{
|
||||
cueWriter.WriteLine(" TRACK {0:00} AUDIO", audioSource.TOC[track].Number);
|
||||
if (release != null && release.GetTracks().Count >= audioSource.TOC[track].Number)
|
||||
if (meta != null && meta.track.Length >= audioSource.TOC[track].Number)
|
||||
{
|
||||
cueWriter.WriteLine(" TITLE \"{0}\"", release.GetTracks()[(int)audioSource.TOC[track].Number - 1].GetTitle());
|
||||
cueWriter.WriteLine(" PERFORMER \"{0}\"", release.GetTracks()[(int)audioSource.TOC[track].Number - 1].GetArtist());
|
||||
cueWriter.WriteLine(" TITLE \"{0}\"", meta.track[(int)audioSource.TOC[track].Number - 1].name);
|
||||
cueWriter.WriteLine(" PERFORMER \"{0}\"", meta.track[(int)audioSource.TOC[track].Number - 1].artist);
|
||||
}
|
||||
if (audioSource.TOC[track].ISRC != null)
|
||||
cueWriter.WriteLine(" ISRC {0}", audioSource.TOC[track].ISRC);
|
||||
|
||||
Reference in New Issue
Block a user