mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
ripping almost works
This commit is contained in:
@@ -193,6 +193,11 @@ namespace CUETools.Codecs.ALAC
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool UpdateTags(bool preserveTime)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public string Path
|
public string Path
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
|
|||||||
@@ -229,6 +229,11 @@ namespace APEDotNet {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
virtual bool UpdateTags(bool preserveTime)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
virtual UInt32 Read([Out] array<Int32, 2>^ buff, UInt32 sampleCount)
|
virtual UInt32 Read([Out] array<Int32, 2>^ buff, UInt32 sampleCount)
|
||||||
{
|
{
|
||||||
UInt32 buffOffset = 0;
|
UInt32 buffOffset = 0;
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ namespace ArCueDotNet
|
|||||||
CUESheet cueSheet = new CUESheet(config);
|
CUESheet cueSheet = new CUESheet(config);
|
||||||
cueSheet.Open(pathIn, false);
|
cueSheet.Open(pathIn, false);
|
||||||
cueSheet.GenerateFilenames(OutputAudioFormat.NoAudio, pathIn);
|
cueSheet.GenerateFilenames(OutputAudioFormat.NoAudio, pathIn);
|
||||||
cueSheet.AccurateRip = true;
|
cueSheet.AccurateRip = AccurateRipMode.Verify;
|
||||||
cueSheet.WriteAudioFiles(Path.GetDirectoryName(pathIn), CUEStyle.SingleFile);
|
cueSheet.WriteAudioFiles(Path.GetDirectoryName(pathIn), CUEStyle.SingleFile);
|
||||||
cueSheet.GenerateAccurateRipLog(sw);
|
cueSheet.GenerateAccurateRipLog(sw);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ namespace CUETools.Codecs
|
|||||||
ulong Length { get; }
|
ulong Length { get; }
|
||||||
ulong Position { get; set; }
|
ulong Position { get; set; }
|
||||||
NameValueCollection Tags { get; set; }
|
NameValueCollection Tags { get; set; }
|
||||||
|
bool UpdateTags(bool preserveTime);
|
||||||
ulong Remaining { get; }
|
ulong Remaining { get; }
|
||||||
void Close();
|
void Close();
|
||||||
int BitsPerSample { get; }
|
int BitsPerSample { get; }
|
||||||
@@ -246,6 +247,11 @@ namespace CUETools.Codecs
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool UpdateTags(bool preserveTime)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public uint Read(int [,] buff, uint sampleCount)
|
public uint Read(int [,] buff, uint sampleCount)
|
||||||
{
|
{
|
||||||
uint samplesRemaining = (uint)(_sampleCount - _sampleOffset);
|
uint samplesRemaining = (uint)(_sampleCount - _sampleOffset);
|
||||||
@@ -476,6 +482,11 @@ namespace CUETools.Codecs
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool UpdateTags(bool preserveTime)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public void GetTags(out List<string> names, out List<string> values)
|
public void GetTags(out List<string> names, out List<string> values)
|
||||||
{
|
{
|
||||||
names = new List<string>();
|
names = new List<string>();
|
||||||
|
|||||||
@@ -264,6 +264,16 @@ namespace CUETools.CDImage
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public uint AudioLength
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _tracks[TrackCount - 1].IsAudio ?
|
||||||
|
_tracks[TrackCount - 1].End + 1 :
|
||||||
|
_tracks[TrackCount - 2].End + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public string Catalog
|
public string Catalog
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ namespace CUERipper
|
|||||||
|
|
||||||
Console.WriteLine("Drive : {0}", audioSource.Path);
|
Console.WriteLine("Drive : {0}", audioSource.Path);
|
||||||
Console.WriteLine("Filename : {0}", destFile);
|
Console.WriteLine("Filename : {0}", destFile);
|
||||||
Console.WriteLine("Disk length : {0}", CDImageLayout.TimeToString((uint)(audioSource.Length / 588)));
|
Console.WriteLine("Disk length : {0}", CDImageLayout.TimeToString(audioSource.TOC.AudioLength));
|
||||||
Console.WriteLine("AccurateRip : {0}", arVerify.ARStatus == null ? "ok" : arVerify.ARStatus);
|
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}", release == null ? "not found" : release.GetArtist() + " - " + release.GetTitle());
|
||||||
|
|
||||||
|
|||||||
@@ -337,7 +337,7 @@ namespace CUETools.Ripper.SCSI
|
|||||||
{
|
{
|
||||||
if (_toc == null)
|
if (_toc == null)
|
||||||
throw new Exception("invalid TOC");
|
throw new Exception("invalid TOC");
|
||||||
return (ulong)588 * (_toc[_toc.TrackCount].IsAudio ? _toc[_toc.TrackCount].End + 1 : _toc[_toc.TrackCount - 1].End + 1);
|
return (ulong)588 * _toc.AudioLength;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -376,6 +376,11 @@ namespace CUETools.Ripper.SCSI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool UpdateTags(bool preserveTime)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public string Path
|
public string Path
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ using System.Collections.Generic;
|
|||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
using CUETools.Processor;
|
||||||
|
|
||||||
namespace JDP {
|
namespace JDP {
|
||||||
static class Program {
|
static class Program {
|
||||||
@@ -14,8 +15,11 @@ namespace JDP {
|
|||||||
if (args.Length > 1 && (args[0] == "/verify" || args[0] == "/convert" || args[0] == "/fix"))
|
if (args.Length > 1 && (args[0] == "/verify" || args[0] == "/convert" || args[0] == "/fix"))
|
||||||
{
|
{
|
||||||
frmBatch batch = new frmBatch();
|
frmBatch batch = new frmBatch();
|
||||||
batch.AccurateRip = (args[0] != "/convert");
|
batch.AccurateRip =
|
||||||
batch.AccurateOffset = (args[0] == "/fix");
|
args[0] == "/convert" ? AccurateRipMode.VerifyAndConvert :
|
||||||
|
args[0] == "/fix" ? AccurateRipMode.VerifyThenConvert :
|
||||||
|
AccurateRipMode.Verify;
|
||||||
|
|
||||||
if (args.Length == 2 && args[1][0] != '@')
|
if (args.Length == 2 && args[1][0] != '@')
|
||||||
batch.InputPath = args[1];
|
batch.InputPath = args[1];
|
||||||
else for (int i = 1; i < args.Length; i++)
|
else for (int i = 1; i < args.Length; i++)
|
||||||
|
|||||||
@@ -19,8 +19,7 @@ namespace JDP
|
|||||||
_config = new CUEConfig();
|
_config = new CUEConfig();
|
||||||
_cueStyle = CUEStyle.SingleFile;
|
_cueStyle = CUEStyle.SingleFile;
|
||||||
_audioFormat = OutputAudioFormat.WAV;
|
_audioFormat = OutputAudioFormat.WAV;
|
||||||
_accurateRip = true;
|
_accurateRip = AccurateRipMode.Verify;
|
||||||
_accurateOffset = false;
|
|
||||||
_batchPaths = new List<string>();
|
_batchPaths = new List<string>();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -34,16 +33,12 @@ namespace JDP
|
|||||||
get { return pathIn; }
|
get { return pathIn; }
|
||||||
set { pathIn = value; }
|
set { pathIn = value; }
|
||||||
}
|
}
|
||||||
public bool AccurateRip
|
|
||||||
|
public AccurateRipMode AccurateRip
|
||||||
{
|
{
|
||||||
get { return _accurateRip; }
|
get { return _accurateRip; }
|
||||||
set { _accurateRip = value; }
|
set { _accurateRip = value; }
|
||||||
}
|
}
|
||||||
public bool AccurateOffset
|
|
||||||
{
|
|
||||||
get { return _accurateOffset; }
|
|
||||||
set { _accurateOffset = value; }
|
|
||||||
}
|
|
||||||
|
|
||||||
Thread _workThread;
|
Thread _workThread;
|
||||||
CUESheet _workClass;
|
CUESheet _workClass;
|
||||||
@@ -52,8 +47,7 @@ namespace JDP
|
|||||||
OutputAudioFormat _audioFormat;
|
OutputAudioFormat _audioFormat;
|
||||||
string pathIn;
|
string pathIn;
|
||||||
string pathOut;
|
string pathOut;
|
||||||
bool _accurateRip;
|
AccurateRipMode _accurateRip;
|
||||||
bool _accurateOffset;
|
|
||||||
bool _reducePriority;
|
bool _reducePriority;
|
||||||
bool _lossyWAV;
|
bool _lossyWAV;
|
||||||
DateTime _startedAt;
|
DateTime _startedAt;
|
||||||
@@ -138,7 +132,7 @@ namespace JDP
|
|||||||
else
|
else
|
||||||
cueName = Path.GetFileNameWithoutExtension(pathIn) + ".cue";
|
cueName = Path.GetFileNameWithoutExtension(pathIn) + ".cue";
|
||||||
|
|
||||||
bool outputAudio = _accurateOffset || !_accurateRip;
|
bool outputAudio = _accurateRip != AccurateRipMode.Verify;
|
||||||
cueSheet.Open(pathIn, _lossyWAV);
|
cueSheet.Open(pathIn, _lossyWAV);
|
||||||
if (outputAudio)
|
if (outputAudio)
|
||||||
{
|
{
|
||||||
@@ -168,7 +162,6 @@ namespace JDP
|
|||||||
|
|
||||||
cueSheet.UsePregapForFirstTrackInSingleFile = false;
|
cueSheet.UsePregapForFirstTrackInSingleFile = false;
|
||||||
cueSheet.AccurateRip = _accurateRip;
|
cueSheet.AccurateRip = _accurateRip;
|
||||||
cueSheet.AccurateOffset = _accurateOffset;
|
|
||||||
cueSheet.WriteAudioFiles(Path.GetDirectoryName(pathOut), _cueStyle);
|
cueSheet.WriteAudioFiles(Path.GetDirectoryName(pathOut), _cueStyle);
|
||||||
this.Invoke((MethodInvoker)delegate()
|
this.Invoke((MethodInvoker)delegate()
|
||||||
{
|
{
|
||||||
@@ -178,7 +171,7 @@ namespace JDP
|
|||||||
//TimeSpan span = DateTime.Now - _startedAt;
|
//TimeSpan span = DateTime.Now - _startedAt;
|
||||||
progressBar1.Value = 0;
|
progressBar1.Value = 0;
|
||||||
progressBar2.Value = 0;
|
progressBar2.Value = 0;
|
||||||
if (cueSheet.AccurateRip)
|
if (cueSheet.AccurateRip != AccurateRipMode.None)
|
||||||
{
|
{
|
||||||
StringWriter sw = new StringWriter();
|
StringWriter sw = new StringWriter();
|
||||||
cueSheet.GenerateAccurateRipLog(sw);
|
cueSheet.GenerateAccurateRipLog(sw);
|
||||||
@@ -272,7 +265,7 @@ namespace JDP
|
|||||||
if (_reducePriority)
|
if (_reducePriority)
|
||||||
Process.GetCurrentProcess().PriorityClass = System.Diagnostics.ProcessPriorityClass.Idle;
|
Process.GetCurrentProcess().PriorityClass = System.Diagnostics.ProcessPriorityClass.Idle;
|
||||||
|
|
||||||
if (_accurateOffset || !_accurateRip)
|
if (_accurateRip != AccurateRipMode.Verify)
|
||||||
txtOutputFile.Show();
|
txtOutputFile.Show();
|
||||||
|
|
||||||
StartConvert();
|
StartConvert();
|
||||||
|
|||||||
253
CUETools/frmCUETools.Designer.cs
generated
253
CUETools/frmCUETools.Designer.cs
generated
@@ -59,6 +59,7 @@ namespace JDP {
|
|||||||
this.btnFilenameCorrector = new System.Windows.Forms.Button();
|
this.btnFilenameCorrector = new System.Windows.Forms.Button();
|
||||||
this.btnSettings = new System.Windows.Forms.Button();
|
this.btnSettings = new System.Windows.Forms.Button();
|
||||||
this.grpAccurateRip = new System.Windows.Forms.GroupBox();
|
this.grpAccurateRip = new System.Windows.Forms.GroupBox();
|
||||||
|
this.rbArAndEncode = new System.Windows.Forms.RadioButton();
|
||||||
this.label1 = new System.Windows.Forms.Label();
|
this.label1 = new System.Windows.Forms.Label();
|
||||||
this.txtDataTrackLength = new System.Windows.Forms.MaskedTextBox();
|
this.txtDataTrackLength = new System.Windows.Forms.MaskedTextBox();
|
||||||
this.rbArApplyOffset = new System.Windows.Forms.RadioButton();
|
this.rbArApplyOffset = new System.Windows.Forms.RadioButton();
|
||||||
@@ -83,78 +84,125 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// btnConvert
|
// btnConvert
|
||||||
//
|
//
|
||||||
|
this.btnConvert.AccessibleDescription = null;
|
||||||
|
this.btnConvert.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnConvert, "btnConvert");
|
resources.ApplyResources(this.btnConvert, "btnConvert");
|
||||||
|
this.btnConvert.BackgroundImage = null;
|
||||||
|
this.btnConvert.Font = null;
|
||||||
this.btnConvert.Name = "btnConvert";
|
this.btnConvert.Name = "btnConvert";
|
||||||
|
this.toolTip1.SetToolTip(this.btnConvert, resources.GetString("btnConvert.ToolTip"));
|
||||||
this.btnConvert.UseVisualStyleBackColor = true;
|
this.btnConvert.UseVisualStyleBackColor = true;
|
||||||
this.btnConvert.Click += new System.EventHandler(this.btnConvert_Click);
|
this.btnConvert.Click += new System.EventHandler(this.btnConvert_Click);
|
||||||
//
|
//
|
||||||
// grpCUEPaths
|
// grpCUEPaths
|
||||||
//
|
//
|
||||||
|
this.grpCUEPaths.AccessibleDescription = null;
|
||||||
|
this.grpCUEPaths.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpCUEPaths, "grpCUEPaths");
|
||||||
|
this.grpCUEPaths.BackgroundImage = null;
|
||||||
this.grpCUEPaths.Controls.Add(this.btnBrowseOutput);
|
this.grpCUEPaths.Controls.Add(this.btnBrowseOutput);
|
||||||
this.grpCUEPaths.Controls.Add(this.btnBrowseInput);
|
this.grpCUEPaths.Controls.Add(this.btnBrowseInput);
|
||||||
this.grpCUEPaths.Controls.Add(this.lblOutput);
|
this.grpCUEPaths.Controls.Add(this.lblOutput);
|
||||||
this.grpCUEPaths.Controls.Add(this.lblInput);
|
this.grpCUEPaths.Controls.Add(this.lblInput);
|
||||||
this.grpCUEPaths.Controls.Add(this.txtOutputPath);
|
this.grpCUEPaths.Controls.Add(this.txtOutputPath);
|
||||||
this.grpCUEPaths.Controls.Add(this.txtInputPath);
|
this.grpCUEPaths.Controls.Add(this.txtInputPath);
|
||||||
resources.ApplyResources(this.grpCUEPaths, "grpCUEPaths");
|
this.grpCUEPaths.Font = null;
|
||||||
this.grpCUEPaths.Name = "grpCUEPaths";
|
this.grpCUEPaths.Name = "grpCUEPaths";
|
||||||
this.grpCUEPaths.TabStop = false;
|
this.grpCUEPaths.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpCUEPaths, resources.GetString("grpCUEPaths.ToolTip"));
|
||||||
//
|
//
|
||||||
// btnBrowseOutput
|
// btnBrowseOutput
|
||||||
//
|
//
|
||||||
|
this.btnBrowseOutput.AccessibleDescription = null;
|
||||||
|
this.btnBrowseOutput.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnBrowseOutput, "btnBrowseOutput");
|
resources.ApplyResources(this.btnBrowseOutput, "btnBrowseOutput");
|
||||||
|
this.btnBrowseOutput.BackgroundImage = null;
|
||||||
|
this.btnBrowseOutput.Font = null;
|
||||||
this.btnBrowseOutput.Name = "btnBrowseOutput";
|
this.btnBrowseOutput.Name = "btnBrowseOutput";
|
||||||
|
this.toolTip1.SetToolTip(this.btnBrowseOutput, resources.GetString("btnBrowseOutput.ToolTip"));
|
||||||
this.btnBrowseOutput.UseVisualStyleBackColor = true;
|
this.btnBrowseOutput.UseVisualStyleBackColor = true;
|
||||||
this.btnBrowseOutput.Click += new System.EventHandler(this.btnBrowseOutput_Click);
|
this.btnBrowseOutput.Click += new System.EventHandler(this.btnBrowseOutput_Click);
|
||||||
//
|
//
|
||||||
// btnBrowseInput
|
// btnBrowseInput
|
||||||
//
|
//
|
||||||
|
this.btnBrowseInput.AccessibleDescription = null;
|
||||||
|
this.btnBrowseInput.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnBrowseInput, "btnBrowseInput");
|
resources.ApplyResources(this.btnBrowseInput, "btnBrowseInput");
|
||||||
|
this.btnBrowseInput.BackgroundImage = null;
|
||||||
|
this.btnBrowseInput.Font = null;
|
||||||
this.btnBrowseInput.Name = "btnBrowseInput";
|
this.btnBrowseInput.Name = "btnBrowseInput";
|
||||||
|
this.toolTip1.SetToolTip(this.btnBrowseInput, resources.GetString("btnBrowseInput.ToolTip"));
|
||||||
this.btnBrowseInput.UseVisualStyleBackColor = true;
|
this.btnBrowseInput.UseVisualStyleBackColor = true;
|
||||||
this.btnBrowseInput.Click += new System.EventHandler(this.btnBrowseInput_Click);
|
this.btnBrowseInput.Click += new System.EventHandler(this.btnBrowseInput_Click);
|
||||||
//
|
//
|
||||||
// lblOutput
|
// lblOutput
|
||||||
//
|
//
|
||||||
|
this.lblOutput.AccessibleDescription = null;
|
||||||
|
this.lblOutput.AccessibleName = null;
|
||||||
resources.ApplyResources(this.lblOutput, "lblOutput");
|
resources.ApplyResources(this.lblOutput, "lblOutput");
|
||||||
|
this.lblOutput.Font = null;
|
||||||
this.lblOutput.Name = "lblOutput";
|
this.lblOutput.Name = "lblOutput";
|
||||||
|
this.toolTip1.SetToolTip(this.lblOutput, resources.GetString("lblOutput.ToolTip"));
|
||||||
//
|
//
|
||||||
// lblInput
|
// lblInput
|
||||||
//
|
//
|
||||||
|
this.lblInput.AccessibleDescription = null;
|
||||||
|
this.lblInput.AccessibleName = null;
|
||||||
resources.ApplyResources(this.lblInput, "lblInput");
|
resources.ApplyResources(this.lblInput, "lblInput");
|
||||||
|
this.lblInput.Font = null;
|
||||||
this.lblInput.Name = "lblInput";
|
this.lblInput.Name = "lblInput";
|
||||||
|
this.toolTip1.SetToolTip(this.lblInput, resources.GetString("lblInput.ToolTip"));
|
||||||
//
|
//
|
||||||
// txtOutputPath
|
// txtOutputPath
|
||||||
//
|
//
|
||||||
|
this.txtOutputPath.AccessibleDescription = null;
|
||||||
|
this.txtOutputPath.AccessibleName = null;
|
||||||
this.txtOutputPath.AllowDrop = true;
|
this.txtOutputPath.AllowDrop = true;
|
||||||
resources.ApplyResources(this.txtOutputPath, "txtOutputPath");
|
resources.ApplyResources(this.txtOutputPath, "txtOutputPath");
|
||||||
|
this.txtOutputPath.BackgroundImage = null;
|
||||||
|
this.txtOutputPath.Font = null;
|
||||||
this.txtOutputPath.Name = "txtOutputPath";
|
this.txtOutputPath.Name = "txtOutputPath";
|
||||||
|
this.toolTip1.SetToolTip(this.txtOutputPath, resources.GetString("txtOutputPath.ToolTip"));
|
||||||
this.txtOutputPath.DragDrop += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragDrop);
|
this.txtOutputPath.DragDrop += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragDrop);
|
||||||
this.txtOutputPath.DragEnter += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragEnter);
|
this.txtOutputPath.DragEnter += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragEnter);
|
||||||
//
|
//
|
||||||
// txtInputPath
|
// txtInputPath
|
||||||
//
|
//
|
||||||
|
this.txtInputPath.AccessibleDescription = null;
|
||||||
|
this.txtInputPath.AccessibleName = null;
|
||||||
this.txtInputPath.AllowDrop = true;
|
this.txtInputPath.AllowDrop = true;
|
||||||
resources.ApplyResources(this.txtInputPath, "txtInputPath");
|
resources.ApplyResources(this.txtInputPath, "txtInputPath");
|
||||||
|
this.txtInputPath.BackgroundImage = null;
|
||||||
|
this.txtInputPath.Font = null;
|
||||||
this.txtInputPath.Name = "txtInputPath";
|
this.txtInputPath.Name = "txtInputPath";
|
||||||
|
this.toolTip1.SetToolTip(this.txtInputPath, resources.GetString("txtInputPath.ToolTip"));
|
||||||
this.txtInputPath.TextChanged += new System.EventHandler(this.txtInputPath_TextChanged);
|
this.txtInputPath.TextChanged += new System.EventHandler(this.txtInputPath_TextChanged);
|
||||||
this.txtInputPath.DragDrop += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragDrop);
|
this.txtInputPath.DragDrop += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragDrop);
|
||||||
this.txtInputPath.DragEnter += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragEnter);
|
this.txtInputPath.DragEnter += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragEnter);
|
||||||
//
|
//
|
||||||
// grpOutputStyle
|
// grpOutputStyle
|
||||||
//
|
//
|
||||||
|
this.grpOutputStyle.AccessibleDescription = null;
|
||||||
|
this.grpOutputStyle.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpOutputStyle, "grpOutputStyle");
|
||||||
|
this.grpOutputStyle.BackgroundImage = null;
|
||||||
this.grpOutputStyle.Controls.Add(this.rbEmbedCUE);
|
this.grpOutputStyle.Controls.Add(this.rbEmbedCUE);
|
||||||
this.grpOutputStyle.Controls.Add(this.rbGapsLeftOut);
|
this.grpOutputStyle.Controls.Add(this.rbGapsLeftOut);
|
||||||
this.grpOutputStyle.Controls.Add(this.rbGapsPrepended);
|
this.grpOutputStyle.Controls.Add(this.rbGapsPrepended);
|
||||||
this.grpOutputStyle.Controls.Add(this.rbGapsAppended);
|
this.grpOutputStyle.Controls.Add(this.rbGapsAppended);
|
||||||
this.grpOutputStyle.Controls.Add(this.rbSingleFile);
|
this.grpOutputStyle.Controls.Add(this.rbSingleFile);
|
||||||
resources.ApplyResources(this.grpOutputStyle, "grpOutputStyle");
|
this.grpOutputStyle.Font = null;
|
||||||
this.grpOutputStyle.Name = "grpOutputStyle";
|
this.grpOutputStyle.Name = "grpOutputStyle";
|
||||||
this.grpOutputStyle.TabStop = false;
|
this.grpOutputStyle.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpOutputStyle, resources.GetString("grpOutputStyle.ToolTip"));
|
||||||
//
|
//
|
||||||
// rbEmbedCUE
|
// rbEmbedCUE
|
||||||
//
|
//
|
||||||
|
this.rbEmbedCUE.AccessibleDescription = null;
|
||||||
|
this.rbEmbedCUE.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbEmbedCUE, "rbEmbedCUE");
|
resources.ApplyResources(this.rbEmbedCUE, "rbEmbedCUE");
|
||||||
|
this.rbEmbedCUE.BackgroundImage = null;
|
||||||
|
this.rbEmbedCUE.Font = null;
|
||||||
this.rbEmbedCUE.Name = "rbEmbedCUE";
|
this.rbEmbedCUE.Name = "rbEmbedCUE";
|
||||||
this.rbEmbedCUE.TabStop = true;
|
this.rbEmbedCUE.TabStop = true;
|
||||||
this.toolTip1.SetToolTip(this.rbEmbedCUE, resources.GetString("rbEmbedCUE.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbEmbedCUE, resources.GetString("rbEmbedCUE.ToolTip"));
|
||||||
@@ -163,29 +211,45 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbGapsLeftOut
|
// rbGapsLeftOut
|
||||||
//
|
//
|
||||||
|
this.rbGapsLeftOut.AccessibleDescription = null;
|
||||||
|
this.rbGapsLeftOut.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbGapsLeftOut, "rbGapsLeftOut");
|
resources.ApplyResources(this.rbGapsLeftOut, "rbGapsLeftOut");
|
||||||
|
this.rbGapsLeftOut.BackgroundImage = null;
|
||||||
|
this.rbGapsLeftOut.Font = null;
|
||||||
this.rbGapsLeftOut.Name = "rbGapsLeftOut";
|
this.rbGapsLeftOut.Name = "rbGapsLeftOut";
|
||||||
this.toolTip1.SetToolTip(this.rbGapsLeftOut, resources.GetString("rbGapsLeftOut.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbGapsLeftOut, resources.GetString("rbGapsLeftOut.ToolTip"));
|
||||||
this.rbGapsLeftOut.UseVisualStyleBackColor = true;
|
this.rbGapsLeftOut.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbGapsPrepended
|
// rbGapsPrepended
|
||||||
//
|
//
|
||||||
|
this.rbGapsPrepended.AccessibleDescription = null;
|
||||||
|
this.rbGapsPrepended.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbGapsPrepended, "rbGapsPrepended");
|
resources.ApplyResources(this.rbGapsPrepended, "rbGapsPrepended");
|
||||||
|
this.rbGapsPrepended.BackgroundImage = null;
|
||||||
|
this.rbGapsPrepended.Font = null;
|
||||||
this.rbGapsPrepended.Name = "rbGapsPrepended";
|
this.rbGapsPrepended.Name = "rbGapsPrepended";
|
||||||
this.toolTip1.SetToolTip(this.rbGapsPrepended, resources.GetString("rbGapsPrepended.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbGapsPrepended, resources.GetString("rbGapsPrepended.ToolTip"));
|
||||||
this.rbGapsPrepended.UseVisualStyleBackColor = true;
|
this.rbGapsPrepended.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbGapsAppended
|
// rbGapsAppended
|
||||||
//
|
//
|
||||||
|
this.rbGapsAppended.AccessibleDescription = null;
|
||||||
|
this.rbGapsAppended.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbGapsAppended, "rbGapsAppended");
|
resources.ApplyResources(this.rbGapsAppended, "rbGapsAppended");
|
||||||
|
this.rbGapsAppended.BackgroundImage = null;
|
||||||
|
this.rbGapsAppended.Font = null;
|
||||||
this.rbGapsAppended.Name = "rbGapsAppended";
|
this.rbGapsAppended.Name = "rbGapsAppended";
|
||||||
this.toolTip1.SetToolTip(this.rbGapsAppended, resources.GetString("rbGapsAppended.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbGapsAppended, resources.GetString("rbGapsAppended.ToolTip"));
|
||||||
this.rbGapsAppended.UseVisualStyleBackColor = true;
|
this.rbGapsAppended.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbSingleFile
|
// rbSingleFile
|
||||||
//
|
//
|
||||||
|
this.rbSingleFile.AccessibleDescription = null;
|
||||||
|
this.rbSingleFile.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbSingleFile, "rbSingleFile");
|
resources.ApplyResources(this.rbSingleFile, "rbSingleFile");
|
||||||
|
this.rbSingleFile.BackgroundImage = null;
|
||||||
this.rbSingleFile.Checked = true;
|
this.rbSingleFile.Checked = true;
|
||||||
|
this.rbSingleFile.Font = null;
|
||||||
this.rbSingleFile.Name = "rbSingleFile";
|
this.rbSingleFile.Name = "rbSingleFile";
|
||||||
this.rbSingleFile.TabStop = true;
|
this.rbSingleFile.TabStop = true;
|
||||||
this.toolTip1.SetToolTip(this.rbSingleFile, resources.GetString("rbSingleFile.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbSingleFile, resources.GetString("rbSingleFile.ToolTip"));
|
||||||
@@ -193,13 +257,22 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// btnAbout
|
// btnAbout
|
||||||
//
|
//
|
||||||
|
this.btnAbout.AccessibleDescription = null;
|
||||||
|
this.btnAbout.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnAbout, "btnAbout");
|
resources.ApplyResources(this.btnAbout, "btnAbout");
|
||||||
|
this.btnAbout.BackgroundImage = null;
|
||||||
|
this.btnAbout.Font = null;
|
||||||
this.btnAbout.Name = "btnAbout";
|
this.btnAbout.Name = "btnAbout";
|
||||||
|
this.toolTip1.SetToolTip(this.btnAbout, resources.GetString("btnAbout.ToolTip"));
|
||||||
this.btnAbout.UseVisualStyleBackColor = true;
|
this.btnAbout.UseVisualStyleBackColor = true;
|
||||||
this.btnAbout.Click += new System.EventHandler(this.btnAbout_Click);
|
this.btnAbout.Click += new System.EventHandler(this.btnAbout_Click);
|
||||||
//
|
//
|
||||||
// grpOutputPathGeneration
|
// grpOutputPathGeneration
|
||||||
//
|
//
|
||||||
|
this.grpOutputPathGeneration.AccessibleDescription = null;
|
||||||
|
this.grpOutputPathGeneration.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpOutputPathGeneration, "grpOutputPathGeneration");
|
||||||
|
this.grpOutputPathGeneration.BackgroundImage = null;
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.txtCustomFormat);
|
this.grpOutputPathGeneration.Controls.Add(this.txtCustomFormat);
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.rbCustomFormat);
|
this.grpOutputPathGeneration.Controls.Add(this.rbCustomFormat);
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.txtCreateSubdirectory);
|
this.grpOutputPathGeneration.Controls.Add(this.txtCreateSubdirectory);
|
||||||
@@ -207,73 +280,118 @@ namespace JDP {
|
|||||||
this.grpOutputPathGeneration.Controls.Add(this.rbCreateSubdirectory);
|
this.grpOutputPathGeneration.Controls.Add(this.rbCreateSubdirectory);
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.rbAppendFilename);
|
this.grpOutputPathGeneration.Controls.Add(this.rbAppendFilename);
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.txtAppendFilename);
|
this.grpOutputPathGeneration.Controls.Add(this.txtAppendFilename);
|
||||||
resources.ApplyResources(this.grpOutputPathGeneration, "grpOutputPathGeneration");
|
this.grpOutputPathGeneration.Font = null;
|
||||||
this.grpOutputPathGeneration.Name = "grpOutputPathGeneration";
|
this.grpOutputPathGeneration.Name = "grpOutputPathGeneration";
|
||||||
this.grpOutputPathGeneration.TabStop = false;
|
this.grpOutputPathGeneration.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpOutputPathGeneration, resources.GetString("grpOutputPathGeneration.ToolTip"));
|
||||||
//
|
//
|
||||||
// txtCustomFormat
|
// txtCustomFormat
|
||||||
//
|
//
|
||||||
|
this.txtCustomFormat.AccessibleDescription = null;
|
||||||
|
this.txtCustomFormat.AccessibleName = null;
|
||||||
resources.ApplyResources(this.txtCustomFormat, "txtCustomFormat");
|
resources.ApplyResources(this.txtCustomFormat, "txtCustomFormat");
|
||||||
|
this.txtCustomFormat.BackgroundImage = null;
|
||||||
|
this.txtCustomFormat.Font = null;
|
||||||
this.txtCustomFormat.Name = "txtCustomFormat";
|
this.txtCustomFormat.Name = "txtCustomFormat";
|
||||||
|
this.toolTip1.SetToolTip(this.txtCustomFormat, resources.GetString("txtCustomFormat.ToolTip"));
|
||||||
this.txtCustomFormat.TextChanged += new System.EventHandler(this.txtCustomFormat_TextChanged);
|
this.txtCustomFormat.TextChanged += new System.EventHandler(this.txtCustomFormat_TextChanged);
|
||||||
//
|
//
|
||||||
// rbCustomFormat
|
// rbCustomFormat
|
||||||
//
|
//
|
||||||
|
this.rbCustomFormat.AccessibleDescription = null;
|
||||||
|
this.rbCustomFormat.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbCustomFormat, "rbCustomFormat");
|
resources.ApplyResources(this.rbCustomFormat, "rbCustomFormat");
|
||||||
|
this.rbCustomFormat.BackgroundImage = null;
|
||||||
|
this.rbCustomFormat.Font = null;
|
||||||
this.rbCustomFormat.Name = "rbCustomFormat";
|
this.rbCustomFormat.Name = "rbCustomFormat";
|
||||||
this.rbCustomFormat.TabStop = true;
|
this.rbCustomFormat.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbCustomFormat, resources.GetString("rbCustomFormat.ToolTip"));
|
||||||
this.rbCustomFormat.UseVisualStyleBackColor = true;
|
this.rbCustomFormat.UseVisualStyleBackColor = true;
|
||||||
this.rbCustomFormat.CheckedChanged += new System.EventHandler(this.rbCustomFormat_CheckedChanged);
|
this.rbCustomFormat.CheckedChanged += new System.EventHandler(this.rbCustomFormat_CheckedChanged);
|
||||||
//
|
//
|
||||||
// txtCreateSubdirectory
|
// txtCreateSubdirectory
|
||||||
//
|
//
|
||||||
|
this.txtCreateSubdirectory.AccessibleDescription = null;
|
||||||
|
this.txtCreateSubdirectory.AccessibleName = null;
|
||||||
resources.ApplyResources(this.txtCreateSubdirectory, "txtCreateSubdirectory");
|
resources.ApplyResources(this.txtCreateSubdirectory, "txtCreateSubdirectory");
|
||||||
|
this.txtCreateSubdirectory.BackgroundImage = null;
|
||||||
|
this.txtCreateSubdirectory.Font = null;
|
||||||
this.txtCreateSubdirectory.Name = "txtCreateSubdirectory";
|
this.txtCreateSubdirectory.Name = "txtCreateSubdirectory";
|
||||||
|
this.toolTip1.SetToolTip(this.txtCreateSubdirectory, resources.GetString("txtCreateSubdirectory.ToolTip"));
|
||||||
this.txtCreateSubdirectory.TextChanged += new System.EventHandler(this.txtCreateSubdirectory_TextChanged);
|
this.txtCreateSubdirectory.TextChanged += new System.EventHandler(this.txtCreateSubdirectory_TextChanged);
|
||||||
//
|
//
|
||||||
// rbDontGenerate
|
// rbDontGenerate
|
||||||
//
|
//
|
||||||
|
this.rbDontGenerate.AccessibleDescription = null;
|
||||||
|
this.rbDontGenerate.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbDontGenerate, "rbDontGenerate");
|
resources.ApplyResources(this.rbDontGenerate, "rbDontGenerate");
|
||||||
|
this.rbDontGenerate.BackgroundImage = null;
|
||||||
|
this.rbDontGenerate.Font = null;
|
||||||
this.rbDontGenerate.Name = "rbDontGenerate";
|
this.rbDontGenerate.Name = "rbDontGenerate";
|
||||||
|
this.toolTip1.SetToolTip(this.rbDontGenerate, resources.GetString("rbDontGenerate.ToolTip"));
|
||||||
this.rbDontGenerate.UseVisualStyleBackColor = true;
|
this.rbDontGenerate.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbCreateSubdirectory
|
// rbCreateSubdirectory
|
||||||
//
|
//
|
||||||
|
this.rbCreateSubdirectory.AccessibleDescription = null;
|
||||||
|
this.rbCreateSubdirectory.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbCreateSubdirectory, "rbCreateSubdirectory");
|
resources.ApplyResources(this.rbCreateSubdirectory, "rbCreateSubdirectory");
|
||||||
|
this.rbCreateSubdirectory.BackgroundImage = null;
|
||||||
this.rbCreateSubdirectory.Checked = true;
|
this.rbCreateSubdirectory.Checked = true;
|
||||||
|
this.rbCreateSubdirectory.Font = null;
|
||||||
this.rbCreateSubdirectory.Name = "rbCreateSubdirectory";
|
this.rbCreateSubdirectory.Name = "rbCreateSubdirectory";
|
||||||
this.rbCreateSubdirectory.TabStop = true;
|
this.rbCreateSubdirectory.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbCreateSubdirectory, resources.GetString("rbCreateSubdirectory.ToolTip"));
|
||||||
this.rbCreateSubdirectory.UseVisualStyleBackColor = true;
|
this.rbCreateSubdirectory.UseVisualStyleBackColor = true;
|
||||||
this.rbCreateSubdirectory.CheckedChanged += new System.EventHandler(this.rbCreateSubdirectory_CheckedChanged);
|
this.rbCreateSubdirectory.CheckedChanged += new System.EventHandler(this.rbCreateSubdirectory_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbAppendFilename
|
// rbAppendFilename
|
||||||
//
|
//
|
||||||
|
this.rbAppendFilename.AccessibleDescription = null;
|
||||||
|
this.rbAppendFilename.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbAppendFilename, "rbAppendFilename");
|
resources.ApplyResources(this.rbAppendFilename, "rbAppendFilename");
|
||||||
|
this.rbAppendFilename.BackgroundImage = null;
|
||||||
|
this.rbAppendFilename.Font = null;
|
||||||
this.rbAppendFilename.Name = "rbAppendFilename";
|
this.rbAppendFilename.Name = "rbAppendFilename";
|
||||||
|
this.toolTip1.SetToolTip(this.rbAppendFilename, resources.GetString("rbAppendFilename.ToolTip"));
|
||||||
this.rbAppendFilename.UseVisualStyleBackColor = true;
|
this.rbAppendFilename.UseVisualStyleBackColor = true;
|
||||||
this.rbAppendFilename.CheckedChanged += new System.EventHandler(this.rbAppendFilename_CheckedChanged);
|
this.rbAppendFilename.CheckedChanged += new System.EventHandler(this.rbAppendFilename_CheckedChanged);
|
||||||
//
|
//
|
||||||
// txtAppendFilename
|
// txtAppendFilename
|
||||||
//
|
//
|
||||||
|
this.txtAppendFilename.AccessibleDescription = null;
|
||||||
|
this.txtAppendFilename.AccessibleName = null;
|
||||||
resources.ApplyResources(this.txtAppendFilename, "txtAppendFilename");
|
resources.ApplyResources(this.txtAppendFilename, "txtAppendFilename");
|
||||||
|
this.txtAppendFilename.BackgroundImage = null;
|
||||||
|
this.txtAppendFilename.Font = null;
|
||||||
this.txtAppendFilename.Name = "txtAppendFilename";
|
this.txtAppendFilename.Name = "txtAppendFilename";
|
||||||
|
this.toolTip1.SetToolTip(this.txtAppendFilename, resources.GetString("txtAppendFilename.ToolTip"));
|
||||||
this.txtAppendFilename.TextChanged += new System.EventHandler(this.txtAppendFilename_TextChanged);
|
this.txtAppendFilename.TextChanged += new System.EventHandler(this.txtAppendFilename_TextChanged);
|
||||||
//
|
//
|
||||||
// grpAudioOutput
|
// grpAudioOutput
|
||||||
//
|
//
|
||||||
|
this.grpAudioOutput.AccessibleDescription = null;
|
||||||
|
this.grpAudioOutput.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpAudioOutput, "grpAudioOutput");
|
||||||
|
this.grpAudioOutput.BackgroundImage = null;
|
||||||
this.grpAudioOutput.Controls.Add(this.chkLossyWAV);
|
this.grpAudioOutput.Controls.Add(this.chkLossyWAV);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbAPE);
|
this.grpAudioOutput.Controls.Add(this.rbAPE);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbNoAudio);
|
this.grpAudioOutput.Controls.Add(this.rbNoAudio);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbWavPack);
|
this.grpAudioOutput.Controls.Add(this.rbWavPack);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbFLAC);
|
this.grpAudioOutput.Controls.Add(this.rbFLAC);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbWAV);
|
this.grpAudioOutput.Controls.Add(this.rbWAV);
|
||||||
resources.ApplyResources(this.grpAudioOutput, "grpAudioOutput");
|
this.grpAudioOutput.Font = null;
|
||||||
this.grpAudioOutput.Name = "grpAudioOutput";
|
this.grpAudioOutput.Name = "grpAudioOutput";
|
||||||
this.grpAudioOutput.TabStop = false;
|
this.grpAudioOutput.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpAudioOutput, resources.GetString("grpAudioOutput.ToolTip"));
|
||||||
//
|
//
|
||||||
// chkLossyWAV
|
// chkLossyWAV
|
||||||
//
|
//
|
||||||
|
this.chkLossyWAV.AccessibleDescription = null;
|
||||||
|
this.chkLossyWAV.AccessibleName = null;
|
||||||
resources.ApplyResources(this.chkLossyWAV, "chkLossyWAV");
|
resources.ApplyResources(this.chkLossyWAV, "chkLossyWAV");
|
||||||
|
this.chkLossyWAV.BackgroundImage = null;
|
||||||
|
this.chkLossyWAV.Font = null;
|
||||||
this.chkLossyWAV.Name = "chkLossyWAV";
|
this.chkLossyWAV.Name = "chkLossyWAV";
|
||||||
this.toolTip1.SetToolTip(this.chkLossyWAV, resources.GetString("chkLossyWAV.ToolTip"));
|
this.toolTip1.SetToolTip(this.chkLossyWAV, resources.GetString("chkLossyWAV.ToolTip"));
|
||||||
this.chkLossyWAV.UseVisualStyleBackColor = true;
|
this.chkLossyWAV.UseVisualStyleBackColor = true;
|
||||||
@@ -281,15 +399,24 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbAPE
|
// rbAPE
|
||||||
//
|
//
|
||||||
|
this.rbAPE.AccessibleDescription = null;
|
||||||
|
this.rbAPE.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbAPE, "rbAPE");
|
resources.ApplyResources(this.rbAPE, "rbAPE");
|
||||||
|
this.rbAPE.BackgroundImage = null;
|
||||||
|
this.rbAPE.Font = null;
|
||||||
this.rbAPE.Name = "rbAPE";
|
this.rbAPE.Name = "rbAPE";
|
||||||
this.rbAPE.TabStop = true;
|
this.rbAPE.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbAPE, resources.GetString("rbAPE.ToolTip"));
|
||||||
this.rbAPE.UseVisualStyleBackColor = true;
|
this.rbAPE.UseVisualStyleBackColor = true;
|
||||||
this.rbAPE.CheckedChanged += new System.EventHandler(this.rbAPE_CheckedChanged);
|
this.rbAPE.CheckedChanged += new System.EventHandler(this.rbAPE_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbNoAudio
|
// rbNoAudio
|
||||||
//
|
//
|
||||||
|
this.rbNoAudio.AccessibleDescription = null;
|
||||||
|
this.rbNoAudio.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbNoAudio, "rbNoAudio");
|
resources.ApplyResources(this.rbNoAudio, "rbNoAudio");
|
||||||
|
this.rbNoAudio.BackgroundImage = null;
|
||||||
|
this.rbNoAudio.Font = null;
|
||||||
this.rbNoAudio.Name = "rbNoAudio";
|
this.rbNoAudio.Name = "rbNoAudio";
|
||||||
this.toolTip1.SetToolTip(this.rbNoAudio, resources.GetString("rbNoAudio.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbNoAudio, resources.GetString("rbNoAudio.ToolTip"));
|
||||||
this.rbNoAudio.UseVisualStyleBackColor = true;
|
this.rbNoAudio.UseVisualStyleBackColor = true;
|
||||||
@@ -297,77 +424,137 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbWavPack
|
// rbWavPack
|
||||||
//
|
//
|
||||||
|
this.rbWavPack.AccessibleDescription = null;
|
||||||
|
this.rbWavPack.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbWavPack, "rbWavPack");
|
resources.ApplyResources(this.rbWavPack, "rbWavPack");
|
||||||
|
this.rbWavPack.BackgroundImage = null;
|
||||||
|
this.rbWavPack.Font = null;
|
||||||
this.rbWavPack.Name = "rbWavPack";
|
this.rbWavPack.Name = "rbWavPack";
|
||||||
|
this.toolTip1.SetToolTip(this.rbWavPack, resources.GetString("rbWavPack.ToolTip"));
|
||||||
this.rbWavPack.UseVisualStyleBackColor = true;
|
this.rbWavPack.UseVisualStyleBackColor = true;
|
||||||
this.rbWavPack.CheckedChanged += new System.EventHandler(this.rbWavPack_CheckedChanged);
|
this.rbWavPack.CheckedChanged += new System.EventHandler(this.rbWavPack_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbFLAC
|
// rbFLAC
|
||||||
//
|
//
|
||||||
|
this.rbFLAC.AccessibleDescription = null;
|
||||||
|
this.rbFLAC.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbFLAC, "rbFLAC");
|
resources.ApplyResources(this.rbFLAC, "rbFLAC");
|
||||||
|
this.rbFLAC.BackgroundImage = null;
|
||||||
|
this.rbFLAC.Font = null;
|
||||||
this.rbFLAC.Name = "rbFLAC";
|
this.rbFLAC.Name = "rbFLAC";
|
||||||
|
this.toolTip1.SetToolTip(this.rbFLAC, resources.GetString("rbFLAC.ToolTip"));
|
||||||
this.rbFLAC.UseVisualStyleBackColor = true;
|
this.rbFLAC.UseVisualStyleBackColor = true;
|
||||||
this.rbFLAC.CheckedChanged += new System.EventHandler(this.rbFLAC_CheckedChanged);
|
this.rbFLAC.CheckedChanged += new System.EventHandler(this.rbFLAC_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbWAV
|
// rbWAV
|
||||||
//
|
//
|
||||||
|
this.rbWAV.AccessibleDescription = null;
|
||||||
|
this.rbWAV.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbWAV, "rbWAV");
|
resources.ApplyResources(this.rbWAV, "rbWAV");
|
||||||
|
this.rbWAV.BackgroundImage = null;
|
||||||
this.rbWAV.Checked = true;
|
this.rbWAV.Checked = true;
|
||||||
|
this.rbWAV.Font = null;
|
||||||
this.rbWAV.Name = "rbWAV";
|
this.rbWAV.Name = "rbWAV";
|
||||||
this.rbWAV.TabStop = true;
|
this.rbWAV.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbWAV, resources.GetString("rbWAV.ToolTip"));
|
||||||
this.rbWAV.UseVisualStyleBackColor = true;
|
this.rbWAV.UseVisualStyleBackColor = true;
|
||||||
this.rbWAV.CheckedChanged += new System.EventHandler(this.rbWAV_CheckedChanged);
|
this.rbWAV.CheckedChanged += new System.EventHandler(this.rbWAV_CheckedChanged);
|
||||||
//
|
//
|
||||||
// btnBatch
|
// btnBatch
|
||||||
//
|
//
|
||||||
|
this.btnBatch.AccessibleDescription = null;
|
||||||
|
this.btnBatch.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnBatch, "btnBatch");
|
resources.ApplyResources(this.btnBatch, "btnBatch");
|
||||||
|
this.btnBatch.BackgroundImage = null;
|
||||||
|
this.btnBatch.Font = null;
|
||||||
this.btnBatch.Name = "btnBatch";
|
this.btnBatch.Name = "btnBatch";
|
||||||
|
this.toolTip1.SetToolTip(this.btnBatch, resources.GetString("btnBatch.ToolTip"));
|
||||||
this.btnBatch.UseVisualStyleBackColor = true;
|
this.btnBatch.UseVisualStyleBackColor = true;
|
||||||
this.btnBatch.Click += new System.EventHandler(this.btnBatch_Click);
|
this.btnBatch.Click += new System.EventHandler(this.btnBatch_Click);
|
||||||
//
|
//
|
||||||
// btnFilenameCorrector
|
// btnFilenameCorrector
|
||||||
//
|
//
|
||||||
|
this.btnFilenameCorrector.AccessibleDescription = null;
|
||||||
|
this.btnFilenameCorrector.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnFilenameCorrector, "btnFilenameCorrector");
|
resources.ApplyResources(this.btnFilenameCorrector, "btnFilenameCorrector");
|
||||||
|
this.btnFilenameCorrector.BackgroundImage = null;
|
||||||
|
this.btnFilenameCorrector.Font = null;
|
||||||
this.btnFilenameCorrector.Name = "btnFilenameCorrector";
|
this.btnFilenameCorrector.Name = "btnFilenameCorrector";
|
||||||
|
this.toolTip1.SetToolTip(this.btnFilenameCorrector, resources.GetString("btnFilenameCorrector.ToolTip"));
|
||||||
this.btnFilenameCorrector.UseVisualStyleBackColor = true;
|
this.btnFilenameCorrector.UseVisualStyleBackColor = true;
|
||||||
this.btnFilenameCorrector.Click += new System.EventHandler(this.btnFilenameCorrector_Click);
|
this.btnFilenameCorrector.Click += new System.EventHandler(this.btnFilenameCorrector_Click);
|
||||||
//
|
//
|
||||||
// btnSettings
|
// btnSettings
|
||||||
//
|
//
|
||||||
|
this.btnSettings.AccessibleDescription = null;
|
||||||
|
this.btnSettings.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnSettings, "btnSettings");
|
resources.ApplyResources(this.btnSettings, "btnSettings");
|
||||||
|
this.btnSettings.BackgroundImage = null;
|
||||||
|
this.btnSettings.Font = null;
|
||||||
this.btnSettings.Name = "btnSettings";
|
this.btnSettings.Name = "btnSettings";
|
||||||
|
this.toolTip1.SetToolTip(this.btnSettings, resources.GetString("btnSettings.ToolTip"));
|
||||||
this.btnSettings.UseVisualStyleBackColor = true;
|
this.btnSettings.UseVisualStyleBackColor = true;
|
||||||
this.btnSettings.Click += new System.EventHandler(this.btnSettings_Click);
|
this.btnSettings.Click += new System.EventHandler(this.btnSettings_Click);
|
||||||
//
|
//
|
||||||
// grpAccurateRip
|
// grpAccurateRip
|
||||||
//
|
//
|
||||||
|
this.grpAccurateRip.AccessibleDescription = null;
|
||||||
|
this.grpAccurateRip.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpAccurateRip, "grpAccurateRip");
|
||||||
|
this.grpAccurateRip.BackgroundImage = null;
|
||||||
|
this.grpAccurateRip.Controls.Add(this.rbArAndEncode);
|
||||||
this.grpAccurateRip.Controls.Add(this.label1);
|
this.grpAccurateRip.Controls.Add(this.label1);
|
||||||
this.grpAccurateRip.Controls.Add(this.txtDataTrackLength);
|
this.grpAccurateRip.Controls.Add(this.txtDataTrackLength);
|
||||||
this.grpAccurateRip.Controls.Add(this.rbArApplyOffset);
|
this.grpAccurateRip.Controls.Add(this.rbArApplyOffset);
|
||||||
this.grpAccurateRip.Controls.Add(this.rbArVerify);
|
this.grpAccurateRip.Controls.Add(this.rbArVerify);
|
||||||
this.grpAccurateRip.Controls.Add(this.rbArNone);
|
this.grpAccurateRip.Controls.Add(this.rbArNone);
|
||||||
resources.ApplyResources(this.grpAccurateRip, "grpAccurateRip");
|
this.grpAccurateRip.Font = null;
|
||||||
this.grpAccurateRip.Name = "grpAccurateRip";
|
this.grpAccurateRip.Name = "grpAccurateRip";
|
||||||
this.grpAccurateRip.TabStop = false;
|
this.grpAccurateRip.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpAccurateRip, resources.GetString("grpAccurateRip.ToolTip"));
|
||||||
|
//
|
||||||
|
// rbArAndEncode
|
||||||
|
//
|
||||||
|
this.rbArAndEncode.AccessibleDescription = null;
|
||||||
|
this.rbArAndEncode.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.rbArAndEncode, "rbArAndEncode");
|
||||||
|
this.rbArAndEncode.BackgroundImage = null;
|
||||||
|
this.rbArAndEncode.Font = null;
|
||||||
|
this.rbArAndEncode.Name = "rbArAndEncode";
|
||||||
|
this.rbArAndEncode.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbArAndEncode, resources.GetString("rbArAndEncode.ToolTip"));
|
||||||
|
this.rbArAndEncode.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// label1
|
// label1
|
||||||
//
|
//
|
||||||
|
this.label1.AccessibleDescription = null;
|
||||||
|
this.label1.AccessibleName = null;
|
||||||
resources.ApplyResources(this.label1, "label1");
|
resources.ApplyResources(this.label1, "label1");
|
||||||
|
this.label1.Font = null;
|
||||||
this.label1.Name = "label1";
|
this.label1.Name = "label1";
|
||||||
|
this.toolTip1.SetToolTip(this.label1, resources.GetString("label1.ToolTip"));
|
||||||
//
|
//
|
||||||
// txtDataTrackLength
|
// txtDataTrackLength
|
||||||
//
|
//
|
||||||
|
this.txtDataTrackLength.AccessibleDescription = null;
|
||||||
|
this.txtDataTrackLength.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.txtDataTrackLength, "txtDataTrackLength");
|
||||||
|
this.txtDataTrackLength.BackgroundImage = null;
|
||||||
this.txtDataTrackLength.Culture = new System.Globalization.CultureInfo("");
|
this.txtDataTrackLength.Culture = new System.Globalization.CultureInfo("");
|
||||||
this.txtDataTrackLength.CutCopyMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
this.txtDataTrackLength.CutCopyMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
||||||
|
this.txtDataTrackLength.Font = null;
|
||||||
this.txtDataTrackLength.InsertKeyMode = System.Windows.Forms.InsertKeyMode.Overwrite;
|
this.txtDataTrackLength.InsertKeyMode = System.Windows.Forms.InsertKeyMode.Overwrite;
|
||||||
resources.ApplyResources(this.txtDataTrackLength, "txtDataTrackLength");
|
|
||||||
this.txtDataTrackLength.Name = "txtDataTrackLength";
|
this.txtDataTrackLength.Name = "txtDataTrackLength";
|
||||||
this.txtDataTrackLength.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
this.txtDataTrackLength.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
||||||
this.toolTip1.SetToolTip(this.txtDataTrackLength, resources.GetString("txtDataTrackLength.ToolTip"));
|
this.toolTip1.SetToolTip(this.txtDataTrackLength, resources.GetString("txtDataTrackLength.ToolTip"));
|
||||||
//
|
//
|
||||||
// rbArApplyOffset
|
// rbArApplyOffset
|
||||||
//
|
//
|
||||||
|
this.rbArApplyOffset.AccessibleDescription = null;
|
||||||
|
this.rbArApplyOffset.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbArApplyOffset, "rbArApplyOffset");
|
resources.ApplyResources(this.rbArApplyOffset, "rbArApplyOffset");
|
||||||
|
this.rbArApplyOffset.BackgroundImage = null;
|
||||||
|
this.rbArApplyOffset.Font = null;
|
||||||
this.rbArApplyOffset.Name = "rbArApplyOffset";
|
this.rbArApplyOffset.Name = "rbArApplyOffset";
|
||||||
this.toolTip1.SetToolTip(this.rbArApplyOffset, resources.GetString("rbArApplyOffset.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbArApplyOffset, resources.GetString("rbArApplyOffset.ToolTip"));
|
||||||
this.rbArApplyOffset.UseVisualStyleBackColor = true;
|
this.rbArApplyOffset.UseVisualStyleBackColor = true;
|
||||||
@@ -375,7 +562,11 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbArVerify
|
// rbArVerify
|
||||||
//
|
//
|
||||||
|
this.rbArVerify.AccessibleDescription = null;
|
||||||
|
this.rbArVerify.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbArVerify, "rbArVerify");
|
resources.ApplyResources(this.rbArVerify, "rbArVerify");
|
||||||
|
this.rbArVerify.BackgroundImage = null;
|
||||||
|
this.rbArVerify.Font = null;
|
||||||
this.rbArVerify.Name = "rbArVerify";
|
this.rbArVerify.Name = "rbArVerify";
|
||||||
this.toolTip1.SetToolTip(this.rbArVerify, resources.GetString("rbArVerify.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbArVerify, resources.GetString("rbArVerify.ToolTip"));
|
||||||
this.rbArVerify.UseVisualStyleBackColor = true;
|
this.rbArVerify.UseVisualStyleBackColor = true;
|
||||||
@@ -383,8 +574,12 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbArNone
|
// rbArNone
|
||||||
//
|
//
|
||||||
|
this.rbArNone.AccessibleDescription = null;
|
||||||
|
this.rbArNone.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbArNone, "rbArNone");
|
resources.ApplyResources(this.rbArNone, "rbArNone");
|
||||||
|
this.rbArNone.BackgroundImage = null;
|
||||||
this.rbArNone.Checked = true;
|
this.rbArNone.Checked = true;
|
||||||
|
this.rbArNone.Font = null;
|
||||||
this.rbArNone.Name = "rbArNone";
|
this.rbArNone.Name = "rbArNone";
|
||||||
this.rbArNone.TabStop = true;
|
this.rbArNone.TabStop = true;
|
||||||
this.toolTip1.SetToolTip(this.rbArNone, resources.GetString("rbArNone.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbArNone, resources.GetString("rbArNone.ToolTip"));
|
||||||
@@ -392,32 +587,44 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// statusStrip1
|
// statusStrip1
|
||||||
//
|
//
|
||||||
|
this.statusStrip1.AccessibleDescription = null;
|
||||||
|
this.statusStrip1.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.statusStrip1, "statusStrip1");
|
||||||
|
this.statusStrip1.BackgroundImage = null;
|
||||||
|
this.statusStrip1.Font = null;
|
||||||
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
this.toolStripStatusLabel1,
|
this.toolStripStatusLabel1,
|
||||||
this.toolStripProgressBar1,
|
this.toolStripProgressBar1,
|
||||||
this.toolStripProgressBar2});
|
this.toolStripProgressBar2});
|
||||||
resources.ApplyResources(this.statusStrip1, "statusStrip1");
|
|
||||||
this.statusStrip1.Name = "statusStrip1";
|
this.statusStrip1.Name = "statusStrip1";
|
||||||
this.statusStrip1.SizingGrip = false;
|
this.statusStrip1.SizingGrip = false;
|
||||||
|
this.toolTip1.SetToolTip(this.statusStrip1, resources.GetString("statusStrip1.ToolTip"));
|
||||||
//
|
//
|
||||||
// toolStripStatusLabel1
|
// toolStripStatusLabel1
|
||||||
//
|
//
|
||||||
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
this.toolStripStatusLabel1.AccessibleDescription = null;
|
||||||
|
this.toolStripStatusLabel1.AccessibleName = null;
|
||||||
resources.ApplyResources(this.toolStripStatusLabel1, "toolStripStatusLabel1");
|
resources.ApplyResources(this.toolStripStatusLabel1, "toolStripStatusLabel1");
|
||||||
|
this.toolStripStatusLabel1.BackgroundImage = null;
|
||||||
|
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
||||||
this.toolStripStatusLabel1.Spring = true;
|
this.toolStripStatusLabel1.Spring = true;
|
||||||
//
|
//
|
||||||
// toolStripProgressBar1
|
// toolStripProgressBar1
|
||||||
//
|
//
|
||||||
|
this.toolStripProgressBar1.AccessibleDescription = null;
|
||||||
|
this.toolStripProgressBar1.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.toolStripProgressBar1, "toolStripProgressBar1");
|
||||||
this.toolStripProgressBar1.AutoToolTip = true;
|
this.toolStripProgressBar1.AutoToolTip = true;
|
||||||
this.toolStripProgressBar1.Name = "toolStripProgressBar1";
|
this.toolStripProgressBar1.Name = "toolStripProgressBar1";
|
||||||
resources.ApplyResources(this.toolStripProgressBar1, "toolStripProgressBar1");
|
|
||||||
this.toolStripProgressBar1.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
this.toolStripProgressBar1.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
||||||
//
|
//
|
||||||
// toolStripProgressBar2
|
// toolStripProgressBar2
|
||||||
//
|
//
|
||||||
|
this.toolStripProgressBar2.AccessibleDescription = null;
|
||||||
|
this.toolStripProgressBar2.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.toolStripProgressBar2, "toolStripProgressBar2");
|
||||||
this.toolStripProgressBar2.AutoToolTip = true;
|
this.toolStripProgressBar2.AutoToolTip = true;
|
||||||
this.toolStripProgressBar2.Name = "toolStripProgressBar2";
|
this.toolStripProgressBar2.Name = "toolStripProgressBar2";
|
||||||
resources.ApplyResources(this.toolStripProgressBar2, "toolStripProgressBar2");
|
|
||||||
this.toolStripProgressBar2.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
this.toolStripProgressBar2.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
||||||
//
|
//
|
||||||
// toolTip1
|
// toolTip1
|
||||||
@@ -428,36 +635,59 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// btnCUECreator
|
// btnCUECreator
|
||||||
//
|
//
|
||||||
|
this.btnCUECreator.AccessibleDescription = null;
|
||||||
|
this.btnCUECreator.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnCUECreator, "btnCUECreator");
|
resources.ApplyResources(this.btnCUECreator, "btnCUECreator");
|
||||||
|
this.btnCUECreator.BackgroundImage = null;
|
||||||
|
this.btnCUECreator.Font = null;
|
||||||
this.btnCUECreator.Name = "btnCUECreator";
|
this.btnCUECreator.Name = "btnCUECreator";
|
||||||
|
this.toolTip1.SetToolTip(this.btnCUECreator, resources.GetString("btnCUECreator.ToolTip"));
|
||||||
this.btnCUECreator.UseVisualStyleBackColor = true;
|
this.btnCUECreator.UseVisualStyleBackColor = true;
|
||||||
this.btnCUECreator.Click += new System.EventHandler(this.btnCUECreator_Click);
|
this.btnCUECreator.Click += new System.EventHandler(this.btnCUECreator_Click);
|
||||||
//
|
//
|
||||||
// btnStop
|
// btnStop
|
||||||
//
|
//
|
||||||
|
this.btnStop.AccessibleDescription = null;
|
||||||
|
this.btnStop.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnStop, "btnStop");
|
resources.ApplyResources(this.btnStop, "btnStop");
|
||||||
|
this.btnStop.BackgroundImage = null;
|
||||||
|
this.btnStop.Font = null;
|
||||||
this.btnStop.Name = "btnStop";
|
this.btnStop.Name = "btnStop";
|
||||||
|
this.toolTip1.SetToolTip(this.btnStop, resources.GetString("btnStop.ToolTip"));
|
||||||
this.btnStop.UseVisualStyleBackColor = true;
|
this.btnStop.UseVisualStyleBackColor = true;
|
||||||
this.btnStop.Click += new System.EventHandler(this.btnStop_Click);
|
this.btnStop.Click += new System.EventHandler(this.btnStop_Click);
|
||||||
//
|
//
|
||||||
// btnPause
|
// btnPause
|
||||||
//
|
//
|
||||||
|
this.btnPause.AccessibleDescription = null;
|
||||||
|
this.btnPause.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnPause, "btnPause");
|
resources.ApplyResources(this.btnPause, "btnPause");
|
||||||
|
this.btnPause.BackgroundImage = null;
|
||||||
|
this.btnPause.Font = null;
|
||||||
this.btnPause.Name = "btnPause";
|
this.btnPause.Name = "btnPause";
|
||||||
|
this.toolTip1.SetToolTip(this.btnPause, resources.GetString("btnPause.ToolTip"));
|
||||||
this.btnPause.UseVisualStyleBackColor = true;
|
this.btnPause.UseVisualStyleBackColor = true;
|
||||||
this.btnPause.Click += new System.EventHandler(this.btnPause_Click);
|
this.btnPause.Click += new System.EventHandler(this.btnPause_Click);
|
||||||
//
|
//
|
||||||
// btnResume
|
// btnResume
|
||||||
//
|
//
|
||||||
|
this.btnResume.AccessibleDescription = null;
|
||||||
|
this.btnResume.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnResume, "btnResume");
|
resources.ApplyResources(this.btnResume, "btnResume");
|
||||||
|
this.btnResume.BackgroundImage = null;
|
||||||
|
this.btnResume.Font = null;
|
||||||
this.btnResume.Name = "btnResume";
|
this.btnResume.Name = "btnResume";
|
||||||
|
this.toolTip1.SetToolTip(this.btnResume, resources.GetString("btnResume.ToolTip"));
|
||||||
this.btnResume.UseVisualStyleBackColor = true;
|
this.btnResume.UseVisualStyleBackColor = true;
|
||||||
this.btnResume.Click += new System.EventHandler(this.btnPause_Click);
|
this.btnResume.Click += new System.EventHandler(this.btnPause_Click);
|
||||||
//
|
//
|
||||||
// frmCUETools
|
// frmCUETools
|
||||||
//
|
//
|
||||||
|
this.AccessibleDescription = null;
|
||||||
|
this.AccessibleName = null;
|
||||||
resources.ApplyResources(this, "$this");
|
resources.ApplyResources(this, "$this");
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.BackgroundImage = null;
|
||||||
this.Controls.Add(this.btnResume);
|
this.Controls.Add(this.btnResume);
|
||||||
this.Controls.Add(this.btnPause);
|
this.Controls.Add(this.btnPause);
|
||||||
this.Controls.Add(this.btnStop);
|
this.Controls.Add(this.btnStop);
|
||||||
@@ -474,8 +704,10 @@ namespace JDP {
|
|||||||
this.Controls.Add(this.grpCUEPaths);
|
this.Controls.Add(this.grpCUEPaths);
|
||||||
this.Controls.Add(this.btnConvert);
|
this.Controls.Add(this.btnConvert);
|
||||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||||
|
this.Icon = null;
|
||||||
this.MaximizeBox = false;
|
this.MaximizeBox = false;
|
||||||
this.Name = "frmCUETools";
|
this.Name = "frmCUETools";
|
||||||
|
this.toolTip1.SetToolTip(this, resources.GetString("$this.ToolTip"));
|
||||||
this.Load += new System.EventHandler(this.frmCUETools_Load);
|
this.Load += new System.EventHandler(this.frmCUETools_Load);
|
||||||
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.frmCUETools_FormClosed);
|
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.frmCUETools_FormClosed);
|
||||||
this.grpCUEPaths.ResumeLayout(false);
|
this.grpCUEPaths.ResumeLayout(false);
|
||||||
@@ -545,6 +777,7 @@ namespace JDP {
|
|||||||
private System.Windows.Forms.Button btnPause;
|
private System.Windows.Forms.Button btnPause;
|
||||||
private System.Windows.Forms.Button btnResume;
|
private System.Windows.Forms.Button btnResume;
|
||||||
private System.Windows.Forms.CheckBox chkLossyWAV;
|
private System.Windows.Forms.CheckBox chkLossyWAV;
|
||||||
|
private System.Windows.Forms.RadioButton rbArAndEncode;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -228,9 +228,9 @@ namespace JDP {
|
|||||||
pathIn = txtInputPath.Text;
|
pathIn = txtInputPath.Text;
|
||||||
cueStyle = SelectedCUEStyle;
|
cueStyle = SelectedCUEStyle;
|
||||||
|
|
||||||
bool outputAudio = !rbNoAudio.Checked && !rbArVerify.Checked;
|
AccurateRipMode accurateRip = SelectedAccurateRipMode;
|
||||||
bool outputCUE = (cueStyle != CUEStyle.SingleFileWithCUE) && !rbArVerify.Checked;
|
bool outputAudio = !rbNoAudio.Checked && accurateRip != AccurateRipMode.Verify;
|
||||||
bool accurateRip = !rbArNone.Checked;
|
bool outputCUE = cueStyle != CUEStyle.SingleFileWithCUE && accurateRip != AccurateRipMode.Verify;
|
||||||
|
|
||||||
if (!File.Exists(pathIn))
|
if (!File.Exists(pathIn))
|
||||||
{
|
{
|
||||||
@@ -286,10 +286,11 @@ namespace JDP {
|
|||||||
|
|
||||||
cueSheet.UsePregapForFirstTrackInSingleFile = _usePregapForFirstTrackInSingleFile && !outputAudio;
|
cueSheet.UsePregapForFirstTrackInSingleFile = _usePregapForFirstTrackInSingleFile && !outputAudio;
|
||||||
cueSheet.AccurateRip = accurateRip;
|
cueSheet.AccurateRip = accurateRip;
|
||||||
cueSheet.AccurateOffset = rbArApplyOffset.Checked;
|
if (accurateRip != AccurateRipMode.None)
|
||||||
cueSheet.DataTrackLength = txtDataTrackLength.Text;
|
cueSheet.DataTrackLength = txtDataTrackLength.Text;
|
||||||
|
|
||||||
if (outputAudio || accurateRip) {
|
if (outputAudio || accurateRip != AccurateRipMode.None)
|
||||||
|
{
|
||||||
object[] p = new object[3];
|
object[] p = new object[3];
|
||||||
|
|
||||||
_workThread = new Thread(WriteAudioFilesThread);
|
_workThread = new Thread(WriteAudioFilesThread);
|
||||||
@@ -308,7 +309,7 @@ namespace JDP {
|
|||||||
if (!Directory.Exists(outDir))
|
if (!Directory.Exists(outDir))
|
||||||
Directory.CreateDirectory(outDir);
|
Directory.CreateDirectory(outDir);
|
||||||
if (outputCUE)
|
if (outputCUE)
|
||||||
cueSheet.Write(pathOut, cueStyle);
|
cueSheet.WriteText(pathOut, cueSheet.CUESheetContents(cueStyle));
|
||||||
ShowFinishedMessage(cueSheet.PaddedToFrame);
|
ShowFinishedMessage(cueSheet.PaddedToFrame);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -359,7 +360,7 @@ namespace JDP {
|
|||||||
this.Invoke((MethodInvoker)delegate() {
|
this.Invoke((MethodInvoker)delegate() {
|
||||||
if (_batchPaths.Count == 0)
|
if (_batchPaths.Count == 0)
|
||||||
{
|
{
|
||||||
if (cueSheet.AccurateRip)
|
if (cueSheet.AccurateRip != AccurateRipMode.None)
|
||||||
{
|
{
|
||||||
using (frmReport reportForm = new frmReport())
|
using (frmReport reportForm = new frmReport())
|
||||||
{
|
{
|
||||||
@@ -682,17 +683,32 @@ namespace JDP {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private AccurateRipMode SelectedAccurateRipMode {
|
private AccurateRipMode SelectedAccurateRipMode
|
||||||
get {
|
{
|
||||||
if (rbArVerify.Checked) return AccurateRipMode.Verify;
|
get
|
||||||
if (rbArApplyOffset.Checked) return AccurateRipMode.Offset;
|
{
|
||||||
return AccurateRipMode.None;
|
return
|
||||||
|
rbArVerify.Checked ? AccurateRipMode.Verify :
|
||||||
|
rbArApplyOffset.Checked ? AccurateRipMode.VerifyThenConvert :
|
||||||
|
rbArAndEncode.Checked ? AccurateRipMode.VerifyAndConvert :
|
||||||
|
AccurateRipMode.None;
|
||||||
}
|
}
|
||||||
set {
|
set
|
||||||
switch (value) {
|
{
|
||||||
case AccurateRipMode.Verify: rbArVerify.Checked = true; break;
|
switch (value)
|
||||||
case AccurateRipMode.Offset: rbArApplyOffset.Checked = true; break;
|
{
|
||||||
default: rbArNone.Checked = true; break;
|
case AccurateRipMode.Verify:
|
||||||
|
rbArVerify.Checked = true;
|
||||||
|
break;
|
||||||
|
case AccurateRipMode.VerifyThenConvert:
|
||||||
|
rbArApplyOffset.Checked = true;
|
||||||
|
break;
|
||||||
|
case AccurateRipMode.VerifyAndConvert:
|
||||||
|
rbArAndEncode.Checked = true;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
rbArNone.Checked = true;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -939,10 +955,4 @@ namespace JDP {
|
|||||||
CustomFormat,
|
CustomFormat,
|
||||||
Disabled
|
Disabled
|
||||||
}
|
}
|
||||||
|
|
||||||
enum AccurateRipMode {
|
|
||||||
None,
|
|
||||||
Verify,
|
|
||||||
Offset
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -120,15 +120,21 @@
|
|||||||
<data name="btnConvert.Text" xml:space="preserve">
|
<data name="btnConvert.Text" xml:space="preserve">
|
||||||
<value>Поехали</value>
|
<value>Поехали</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpCUEPaths.Text" xml:space="preserve">
|
<data name="btnConvert.ToolTip" xml:space="preserve">
|
||||||
<value>Пути к файлам</value>
|
<value />
|
||||||
</data>
|
</data>
|
||||||
<data name="btnBrowseOutput.Text" xml:space="preserve">
|
<data name="btnBrowseOutput.Text" xml:space="preserve">
|
||||||
<value>Выбор...</value>
|
<value>Выбор...</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnBrowseOutput.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnBrowseInput.Text" xml:space="preserve">
|
<data name="btnBrowseInput.Text" xml:space="preserve">
|
||||||
<value>Выбор...</value>
|
<value>Выбор...</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnBrowseInput.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="lblOutput.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="lblOutput.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>44, 13</value>
|
<value>44, 13</value>
|
||||||
@@ -136,17 +142,29 @@
|
|||||||
<data name="lblOutput.Text" xml:space="preserve">
|
<data name="lblOutput.Text" xml:space="preserve">
|
||||||
<value>Выход:</value>
|
<value>Выход:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="lblOutput.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="lblInput.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="lblInput.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>36, 13</value>
|
<value>36, 13</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="lblInput.Text" xml:space="preserve">
|
<data name="lblInput.Text" xml:space="preserve">
|
||||||
<value>&Вход:</value>
|
<value>&Вход:</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpOutputStyle.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="lblInput.ToolTip" xml:space="preserve">
|
||||||
<value>130, 137</value>
|
<value />
|
||||||
</data>
|
</data>
|
||||||
<data name="grpOutputStyle.Text" xml:space="preserve">
|
<data name="txtOutputPath.ToolTip" xml:space="preserve">
|
||||||
<value>Стиль CUE</value>
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="txtInputPath.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="grpCUEPaths.Text" xml:space="preserve">
|
||||||
|
<value>Пути к файлам</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpCUEPaths.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
</data>
|
</data>
|
||||||
<data name="rbEmbedCUE.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbEmbedCUE.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>86, 17</value>
|
<value>86, 17</value>
|
||||||
@@ -193,50 +211,86 @@
|
|||||||
<data name="rbSingleFile.ToolTip" xml:space="preserve">
|
<data name="rbSingleFile.ToolTip" xml:space="preserve">
|
||||||
<value>Создать образ диска в виде одного аудио-файла и .cue файла</value>
|
<value>Создать образ диска в виде одного аудио-файла и .cue файла</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="grpOutputStyle.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>130, 137</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpOutputStyle.Text" xml:space="preserve">
|
||||||
|
<value>Стиль CUE</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpOutputStyle.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnAbout.Text" xml:space="preserve">
|
<data name="btnAbout.Text" xml:space="preserve">
|
||||||
<value>О программе</value>
|
<value>О программе</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpOutputPathGeneration.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="btnAbout.ToolTip" xml:space="preserve">
|
||||||
<value>392, 113</value>
|
<value />
|
||||||
</data>
|
|
||||||
<data name="grpOutputPathGeneration.Text" xml:space="preserve">
|
|
||||||
<value>Путь для выходных файлов</value>
|
|
||||||
</data>
|
</data>
|
||||||
<data name="txtCustomFormat.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="txtCustomFormat.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>240, 21</value>
|
<value>240, 21</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="txtCustomFormat.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="rbCustomFormat.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbCustomFormat.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>89, 17</value>
|
<value>89, 17</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="rbCustomFormat.Text" xml:space="preserve">
|
<data name="rbCustomFormat.Text" xml:space="preserve">
|
||||||
<value>По шаблону:</value>
|
<value>По шаблону:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="rbCustomFormat.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="txtCreateSubdirectory.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="txtCreateSubdirectory.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>240, 21</value>
|
<value>240, 21</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="txtCreateSubdirectory.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="rbDontGenerate.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbDontGenerate.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>70, 17</value>
|
<value>70, 17</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="rbDontGenerate.Text" xml:space="preserve">
|
<data name="rbDontGenerate.Text" xml:space="preserve">
|
||||||
<value>Вручную</value>
|
<value>Вручную</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="rbDontGenerate.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="rbCreateSubdirectory.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbCreateSubdirectory.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>116, 17</value>
|
<value>116, 17</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="rbCreateSubdirectory.Text" xml:space="preserve">
|
<data name="rbCreateSubdirectory.Text" xml:space="preserve">
|
||||||
<value>Создать каталог:</value>
|
<value>Создать каталог:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="rbCreateSubdirectory.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="rbAppendFilename.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbAppendFilename.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>117, 17</value>
|
<value>117, 17</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="rbAppendFilename.Text" xml:space="preserve">
|
<data name="rbAppendFilename.Text" xml:space="preserve">
|
||||||
<value>Суффикс к имени:</value>
|
<value>Суффикс к имени:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="rbAppendFilename.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="txtAppendFilename.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="txtAppendFilename.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>240, 21</value>
|
<value>240, 21</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpAudioOutput.Text" xml:space="preserve">
|
<data name="txtAppendFilename.ToolTip" xml:space="preserve">
|
||||||
<value>Формат аудио</value>
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="grpOutputPathGeneration.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>392, 113</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpOutputPathGeneration.Text" xml:space="preserve">
|
||||||
|
<value>Путь для выходных файлов</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpOutputPathGeneration.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="rbAPE.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
</data>
|
</data>
|
||||||
<data name="rbNoAudio.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbNoAudio.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>76, 17</value>
|
<value>76, 17</value>
|
||||||
@@ -244,20 +298,47 @@
|
|||||||
<data name="rbNoAudio.Text" xml:space="preserve">
|
<data name="rbNoAudio.Text" xml:space="preserve">
|
||||||
<value>Без аудио</value>
|
<value>Без аудио</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="rbWavPack.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="rbFLAC.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="rbWAV.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="grpAudioOutput.Text" xml:space="preserve">
|
||||||
|
<value>Формат аудио</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpAudioOutput.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnBatch.Text" xml:space="preserve">
|
<data name="btnBatch.Text" xml:space="preserve">
|
||||||
<value>Обработать папку...</value>
|
<value>Обработать папку...</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnBatch.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnFilenameCorrector.Text" xml:space="preserve">
|
<data name="btnFilenameCorrector.Text" xml:space="preserve">
|
||||||
<value>Исправить имена...</value>
|
<value>Исправить имена...</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnFilenameCorrector.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnSettings.Text" xml:space="preserve">
|
<data name="btnSettings.Text" xml:space="preserve">
|
||||||
<value>Настройки...</value>
|
<value>Настройки...</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpAccurateRip.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="btnSettings.ToolTip" xml:space="preserve">
|
||||||
<value>250, 211</value>
|
<value />
|
||||||
</data>
|
</data>
|
||||||
<data name="grpAccurateRip.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbArAndEncode.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>154, 137</value>
|
<value>138, 17</value>
|
||||||
|
</data>
|
||||||
|
<data name="rbArAndEncode.Text" xml:space="preserve">
|
||||||
|
<value>Записать и проверить</value>
|
||||||
|
</data>
|
||||||
|
<data name="rbArAndEncode.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
</data>
|
</data>
|
||||||
<data name="label1.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="label1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>47, 13</value>
|
<value>47, 13</value>
|
||||||
@@ -265,6 +346,9 @@
|
|||||||
<data name="label1.Text" xml:space="preserve">
|
<data name="label1.Text" xml:space="preserve">
|
||||||
<value>Данные</value>
|
<value>Данные</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="label1.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="txtDataTrackLength.ToolTip" xml:space="preserve">
|
<data name="txtDataTrackLength.ToolTip" xml:space="preserve">
|
||||||
<value>Не используется для обычных музыкальных дисков. "Улучшенные" компакт диски с треком данных не найдутся в базе данных, если не указать длину трека данных. Её часто можно найти в логе EAC. Если лог EAC лежит в той же папке что и .cue, и имеет такое же имя как .cue файл, то он будет проанализирован автоматически и тут опять же ничего не надо будет вводить.</value>
|
<value>Не используется для обычных музыкальных дисков. "Улучшенные" компакт диски с треком данных не найдутся в базе данных, если не указать длину трека данных. Её часто можно найти в логе EAC. Если лог EAC лежит в той же папке что и .cue, и имеет такое же имя как .cue файл, то он будет проанализирован автоматически и тут опять же ничего не надо будет вводить.</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -295,16 +379,43 @@
|
|||||||
<data name="rbArNone.ToolTip" xml:space="preserve">
|
<data name="rbArNone.ToolTip" xml:space="preserve">
|
||||||
<value>Сконвертировать, не обращаясь к базе данных AccurateRip</value>
|
<value>Сконвертировать, не обращаясь к базе данных AccurateRip</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="grpAccurateRip.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>250, 211</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpAccurateRip.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>154, 137</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpAccurateRip.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="statusStrip1.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnCUECreator.Text" xml:space="preserve">
|
<data name="btnCUECreator.Text" xml:space="preserve">
|
||||||
<value>Создать CUE...</value>
|
<value>Создать CUE...</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnCUECreator.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnStop.Text" xml:space="preserve">
|
<data name="btnStop.Text" xml:space="preserve">
|
||||||
<value>Стоп</value>
|
<value>Стоп</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnStop.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnPause.Text" xml:space="preserve">
|
<data name="btnPause.Text" xml:space="preserve">
|
||||||
<value>Пауза</value>
|
<value>Пауза</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnPause.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
<data name="btnResume.Text" xml:space="preserve">
|
<data name="btnResume.Text" xml:space="preserve">
|
||||||
<value>&Поехали</value>
|
<value>&Поехали</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnResume.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="$this.ToolTip" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
||||||
@@ -20,6 +20,7 @@
|
|||||||
// ****************************************************************************
|
// ****************************************************************************
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.Specialized;
|
using System.Collections.Specialized;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
@@ -43,7 +44,6 @@ using FLACDotNet;
|
|||||||
|
|
||||||
namespace CUETools.Processor
|
namespace CUETools.Processor
|
||||||
{
|
{
|
||||||
|
|
||||||
public enum OutputAudioFormat
|
public enum OutputAudioFormat
|
||||||
{
|
{
|
||||||
WAV,
|
WAV,
|
||||||
@@ -53,6 +53,23 @@ namespace CUETools.Processor
|
|||||||
NoAudio
|
NoAudio
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public enum AccurateRipMode
|
||||||
|
{
|
||||||
|
None,
|
||||||
|
Verify,
|
||||||
|
VerifyThenConvert,
|
||||||
|
VerifyAndConvert
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum CUEStyle
|
||||||
|
{
|
||||||
|
SingleFileWithCUE,
|
||||||
|
SingleFile,
|
||||||
|
GapsPrepended,
|
||||||
|
GapsAppended,
|
||||||
|
GapsLeftOut
|
||||||
|
}
|
||||||
|
|
||||||
public static class General {
|
public static class General {
|
||||||
public static string FormatExtension(OutputAudioFormat value)
|
public static string FormatExtension(OutputAudioFormat value)
|
||||||
{
|
{
|
||||||
@@ -98,7 +115,7 @@ namespace CUETools.Processor
|
|||||||
{
|
{
|
||||||
line = new CUELine();
|
line = new CUELine();
|
||||||
line.Params.Add(command); line.IsQuoted.Add(false);
|
line.Params.Add(command); line.IsQuoted.Add(false);
|
||||||
line.Params.Add(value); line.IsQuoted.Add(true);
|
line.Params.Add(value); line.IsQuoted.Add(quoted);
|
||||||
list.Add(line);
|
list.Add(line);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -116,7 +133,7 @@ namespace CUETools.Processor
|
|||||||
line = new CUELine();
|
line = new CUELine();
|
||||||
line.Params.Add(command); line.IsQuoted.Add(false);
|
line.Params.Add(command); line.IsQuoted.Add(false);
|
||||||
line.Params.Add(command2); line.IsQuoted.Add(false);
|
line.Params.Add(command2); line.IsQuoted.Add(false);
|
||||||
line.Params.Add(value); line.IsQuoted.Add(true);
|
line.Params.Add(value); line.IsQuoted.Add(quoted);
|
||||||
list.Add(line);
|
list.Add(line);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -173,14 +190,6 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum CUEStyle {
|
|
||||||
SingleFileWithCUE,
|
|
||||||
SingleFile,
|
|
||||||
GapsPrepended,
|
|
||||||
GapsAppended,
|
|
||||||
GapsLeftOut
|
|
||||||
}
|
|
||||||
|
|
||||||
public class CUEConfig {
|
public class CUEConfig {
|
||||||
public uint fixWhenConfidence;
|
public uint fixWhenConfidence;
|
||||||
public uint fixWhenPercent;
|
public uint fixWhenPercent;
|
||||||
@@ -410,7 +419,7 @@ namespace CUETools.Processor
|
|||||||
private bool _hasEmbeddedCUESheet;
|
private bool _hasEmbeddedCUESheet;
|
||||||
private bool _paddedToFrame, _truncated4608, _usePregapForFirstTrackInSingleFile;
|
private bool _paddedToFrame, _truncated4608, _usePregapForFirstTrackInSingleFile;
|
||||||
private int _writeOffset;
|
private int _writeOffset;
|
||||||
private bool _accurateRip, _accurateOffset;
|
private AccurateRipMode _accurateRipMode;
|
||||||
private uint? _dataTrackLength;
|
private uint? _dataTrackLength;
|
||||||
private uint? _minDataTrackLength;
|
private uint? _minDataTrackLength;
|
||||||
private string _accurateRipId;
|
private string _accurateRipId;
|
||||||
@@ -426,6 +435,8 @@ namespace CUETools.Processor
|
|||||||
private CUEConfig _config;
|
private CUEConfig _config;
|
||||||
private string _cddbDiscIdTag;
|
private string _cddbDiscIdTag;
|
||||||
private bool _isCD;
|
private bool _isCD;
|
||||||
|
private string _driveName;
|
||||||
|
private int _driveOffset;
|
||||||
private bool _isArchive;
|
private bool _isArchive;
|
||||||
private List<string> _archiveContents;
|
private List<string> _archiveContents;
|
||||||
private string _archiveCUEpath;
|
private string _archiveCUEpath;
|
||||||
@@ -454,8 +465,7 @@ namespace CUETools.Processor
|
|||||||
_paddedToFrame = false;
|
_paddedToFrame = false;
|
||||||
_truncated4608 = false;
|
_truncated4608 = false;
|
||||||
_usePregapForFirstTrackInSingleFile = false;
|
_usePregapForFirstTrackInSingleFile = false;
|
||||||
_accurateRip = false;
|
_accurateRipMode = AccurateRipMode.None;
|
||||||
_accurateOffset = false;
|
|
||||||
_appliedWriteOffset = false;
|
_appliedWriteOffset = false;
|
||||||
_dataTrackLength = null;
|
_dataTrackLength = null;
|
||||||
_minDataTrackLength = null;
|
_minDataTrackLength = null;
|
||||||
@@ -473,7 +483,6 @@ namespace CUETools.Processor
|
|||||||
catch { }
|
catch { }
|
||||||
}
|
}
|
||||||
_outputLossyWAV = outputLossyWAV;
|
_outputLossyWAV = outputLossyWAV;
|
||||||
SourceInfo sourceInfo;
|
|
||||||
string cueDir = Path.GetDirectoryName(pathIn) ?? pathIn;
|
string cueDir = Path.GetDirectoryName(pathIn) ?? pathIn;
|
||||||
#if !MONO
|
#if !MONO
|
||||||
if (cueDir == pathIn)
|
if (cueDir == pathIn)
|
||||||
@@ -483,14 +492,17 @@ namespace CUETools.Processor
|
|||||||
// We needed to clone TOC in case we reuse the ripper, because it's going to modify it.
|
// We needed to clone TOC in case we reuse the ripper, because it's going to modify it.
|
||||||
//_toc = (CDImageLayout)ripper.TOC.Clone();
|
//_toc = (CDImageLayout)ripper.TOC.Clone();
|
||||||
_toc = (CDImageLayout)ripper.TOC;
|
_toc = (CDImageLayout)ripper.TOC;
|
||||||
sourceInfo.Path = pathIn;
|
_driveName = ripper.Path;
|
||||||
sourceInfo.Offset = 0;
|
_driveOffset = ripper.DriveOffset = 48;
|
||||||
sourceInfo.Length = (uint)ripper.Length;
|
|
||||||
ripper.Close();
|
ripper.Close();
|
||||||
if (_toc.AudioTracks > 0)
|
if (_toc.AudioTracks > 0)
|
||||||
{
|
{
|
||||||
_isCD = true;
|
_isCD = true;
|
||||||
_sources.Add(sourceInfo);
|
SourceInfo cdInfo;
|
||||||
|
cdInfo.Path = pathIn;
|
||||||
|
cdInfo.Offset = 0;
|
||||||
|
cdInfo.Length = _toc.AudioLength * 588;
|
||||||
|
_sources.Add(cdInfo);
|
||||||
for (int iTrack = 0; iTrack < _toc.AudioTracks; iTrack++)
|
for (int iTrack = 0; iTrack < _toc.AudioTracks; iTrack++)
|
||||||
{
|
{
|
||||||
_trackFilenames.Add(string.Format("{0:00}.wav", iTrack + 1));
|
_trackFilenames.Add(string.Format("{0:00}.wav", iTrack + 1));
|
||||||
@@ -509,9 +521,11 @@ namespace CUETools.Processor
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
release = results.First();
|
release = results.First();
|
||||||
|
General.SetCUELine(_attributes, "REM", "DISCID", AccurateRipVerify.CalculateCDDBId(_toc), false);
|
||||||
|
General.SetCUELine(_attributes, "REM", "COMMENT", VersionString(), true);
|
||||||
|
General.SetCUELine(_attributes, "REM", "DATE", release.GetEvents()[0].Date.Substring(0, 4), false);
|
||||||
General.SetCUELine(_attributes, "PERFORMER", release.GetArtist(), true);
|
General.SetCUELine(_attributes, "PERFORMER", release.GetArtist(), true);
|
||||||
General.SetCUELine(_attributes, "TITLE", release.GetTitle(), true);
|
General.SetCUELine(_attributes, "TITLE", release.GetTitle(), true);
|
||||||
General.SetCUELine(_attributes, "REM", "DATE", release.GetEvents()[0].Date.Substring(0, 4), false);
|
|
||||||
for (int iTrack = 0; iTrack < _toc.AudioTracks; iTrack++)
|
for (int iTrack = 0; iTrack < _toc.AudioTracks; iTrack++)
|
||||||
{
|
{
|
||||||
General.SetCUELine(_tracks[iTrack].Attributes, "TITLE", release.GetTracks()[iTrack].GetTitle(), true);
|
General.SetCUELine(_tracks[iTrack].Attributes, "TITLE", release.GetTracks()[iTrack].GetTitle(), true);
|
||||||
@@ -527,6 +541,7 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
SourceInfo sourceInfo;
|
||||||
string lineStr, command, pathAudio = null, fileType;
|
string lineStr, command, pathAudio = null, fileType;
|
||||||
CUELine line;
|
CUELine line;
|
||||||
TrackInfo trackInfo = null;
|
TrackInfo trackInfo = null;
|
||||||
@@ -1160,56 +1175,83 @@ namespace CUETools.Processor
|
|||||||
return (int)audioSource.Length;
|
return (int)audioSource.Length;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void WriteM3U(string path, CUEStyle style)
|
public void WriteText(string path, string text)
|
||||||
{
|
{
|
||||||
StringWriter sw = new StringWriter();
|
bool utf8Required = CUESheet.Encoding.GetString(CUESheet.Encoding.GetBytes(text)) != text;
|
||||||
WriteM3U(sw, style);
|
|
||||||
sw.Close();
|
|
||||||
bool utf8Required = CUESheet.Encoding.GetString(CUESheet.Encoding.GetBytes(sw.ToString())) != sw.ToString();
|
|
||||||
StreamWriter sw1 = new StreamWriter(path, false, utf8Required ? Encoding.UTF8 : CUESheet.Encoding);
|
StreamWriter sw1 = new StreamWriter(path, false, utf8Required ? Encoding.UTF8 : CUESheet.Encoding);
|
||||||
sw1.Write(sw.ToString());
|
sw1.Write(text);
|
||||||
sw1.Close();
|
sw1.Close();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void WriteM3U(TextWriter sw, CUEStyle style)
|
public string VersionString()
|
||||||
{
|
{
|
||||||
int iTrack;
|
return Assembly.GetExecutingAssembly().GetName().Name + " " + Assembly.GetExecutingAssembly().GetName().Version;
|
||||||
bool htoaToFile = ((style == CUEStyle.GapsAppended) && _config.preserveHTOA &&
|
}
|
||||||
(_toc.Pregap != 0));
|
|
||||||
|
|
||||||
if (htoaToFile) {
|
public string LOGContents()
|
||||||
|
{
|
||||||
|
if (!_isCD)
|
||||||
|
return null;
|
||||||
|
#if !MONO
|
||||||
|
StringWriter logWriter = new StringWriter();
|
||||||
|
logWriter.WriteLine("{0}", VersionString());
|
||||||
|
logWriter.WriteLine();
|
||||||
|
logWriter.WriteLine("Extraction logfile from {0}", DateTime.Now);
|
||||||
|
logWriter.WriteLine();
|
||||||
|
logWriter.WriteLine("Used drive : {0}", _driveName);
|
||||||
|
logWriter.WriteLine();
|
||||||
|
logWriter.WriteLine("Read offset correction : {0}", _driveOffset);
|
||||||
|
logWriter.WriteLine();
|
||||||
|
logWriter.WriteLine("TOC of the extracted CD");
|
||||||
|
logWriter.WriteLine();
|
||||||
|
logWriter.WriteLine(" Track | Start | Length | Start sector | End sector");
|
||||||
|
logWriter.WriteLine(" ---------------------------------------------------------");
|
||||||
|
for (int track = 1; track <= _toc.TrackCount; track++)
|
||||||
|
logWriter.WriteLine("{0,9} | {1,8} | {2,8} | {3,9} | {4,9}",
|
||||||
|
_toc[track].Number,
|
||||||
|
_toc[track].StartMSF,
|
||||||
|
_toc[track].LengthMSF,
|
||||||
|
_toc[track].Start,
|
||||||
|
_toc[track].End);
|
||||||
|
logWriter.WriteLine();
|
||||||
|
if (_accurateRipMode != AccurateRipMode.None)
|
||||||
|
{
|
||||||
|
logWriter.WriteLine("AccurateRip summary");
|
||||||
|
logWriter.WriteLine();
|
||||||
|
_arVerify.GenerateFullLog(logWriter, 0);
|
||||||
|
logWriter.WriteLine();
|
||||||
|
}
|
||||||
|
logWriter.WriteLine("End of status report");
|
||||||
|
logWriter.Close();
|
||||||
|
return logWriter.ToString();
|
||||||
|
#else
|
||||||
|
return null;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
public string M3UContents(CUEStyle style)
|
||||||
|
{
|
||||||
|
StringWriter sw = new StringWriter();
|
||||||
|
if (style == CUEStyle.GapsAppended && _config.preserveHTOA && _toc.Pregap != 0)
|
||||||
WriteLine(sw, 0, _htoaFilename);
|
WriteLine(sw, 0, _htoaFilename);
|
||||||
}
|
for (int iTrack = 0; iTrack < TrackCount; iTrack++)
|
||||||
for (iTrack = 0; iTrack < TrackCount; iTrack++) {
|
|
||||||
WriteLine(sw, 0, _trackFilenames[iTrack]);
|
WriteLine(sw, 0, _trackFilenames[iTrack]);
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void WriteTOC(string path)
|
|
||||||
{
|
|
||||||
StreamWriter sw = new StreamWriter(path, false, CUESheet.Encoding);
|
|
||||||
WriteTOC(sw);
|
|
||||||
sw.Close();
|
sw.Close();
|
||||||
|
return sw.ToString();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void WriteTOC(TextWriter sw)
|
public string TOCContents()
|
||||||
{
|
{
|
||||||
|
StringWriter sw = new StringWriter();
|
||||||
for (int iTrack = 0; iTrack < TrackCount; iTrack++)
|
for (int iTrack = 0; iTrack < TrackCount; iTrack++)
|
||||||
WriteLine(sw, 0, "\t" + _toc[iTrack+1].Start + 150);
|
WriteLine(sw, 0, "\t" + _toc[iTrack+1].Start + 150);
|
||||||
}
|
|
||||||
|
|
||||||
public void Write(string path, CUEStyle style) {
|
|
||||||
StringWriter sw = new StringWriter();
|
|
||||||
Write(sw, style);
|
|
||||||
sw.Close();
|
sw.Close();
|
||||||
bool utf8Required = CUESheet.Encoding.GetString(CUESheet.Encoding.GetBytes(sw.ToString())) != sw.ToString();
|
return sw.ToString();
|
||||||
StreamWriter sw1 = new StreamWriter(path, false, utf8Required?Encoding.UTF8:CUESheet.Encoding);
|
|
||||||
sw1.Write(sw.ToString());
|
|
||||||
sw1.Close();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Write(TextWriter sw, CUEStyle style)
|
public string CUESheetContents(CUEStyle style)
|
||||||
{
|
{
|
||||||
|
StringWriter sw = new StringWriter();
|
||||||
int i, iTrack, iIndex;
|
int i, iTrack, iIndex;
|
||||||
bool htoaToFile = (style == CUEStyle.GapsAppended && _config.preserveHTOA && _toc.Pregap != 0);
|
bool htoaToFile = (style == CUEStyle.GapsAppended && _config.preserveHTOA && _toc.Pregap != 0);
|
||||||
|
|
||||||
@@ -1217,7 +1259,7 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
using (sw)
|
using (sw)
|
||||||
{
|
{
|
||||||
if (_accurateRipId != null && _config.writeArTagsOnConvert)
|
if (_config.writeArTagsOnConvert)
|
||||||
WriteLine(sw, 0, "REM ACCURATERIPID " + _accurateRipId);
|
WriteLine(sw, 0, "REM ACCURATERIPID " + _accurateRipId);
|
||||||
|
|
||||||
for (i = 0; i < _attributes.Count; i++)
|
for (i = 0; i < _attributes.Count; i++)
|
||||||
@@ -1268,106 +1310,8 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
sw.Close();
|
||||||
|
return sw.ToString();
|
||||||
private void CalculateMusicBrainzDiscID() {
|
|
||||||
_mbDiscId = _toc.MusicBrainzId;
|
|
||||||
System.Diagnostics.Debug.WriteLine(_mbDiscId);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void GetMetadataFromMusicBrainz() {
|
|
||||||
if (_mbDiscId == null) return;
|
|
||||||
|
|
||||||
using (Stream respStream = HttpGetToStream(
|
|
||||||
"http://musicbrainz.org/ws/1/release/?type=xml&limit=1&discid=" + _mbDiscId))
|
|
||||||
{
|
|
||||||
XmlDocument xd = GetXmlDocument(respStream);
|
|
||||||
XmlNode xn;
|
|
||||||
|
|
||||||
xn = xd.SelectSingleNode("/metadata/release-list/release");
|
|
||||||
if (xn != null)
|
|
||||||
_mbReleaseId = xn.Attributes["id"].InnerText;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_mbReleaseId == null) return;
|
|
||||||
|
|
||||||
using (Stream respStream = HttpGetToStream(String.Format(
|
|
||||||
"http://musicbrainz.org/ws/1/release/{0}?type=xml&inc=artist+tracks", _mbReleaseId)))
|
|
||||||
{
|
|
||||||
string discArtist = null;
|
|
||||||
string discTitle = null;
|
|
||||||
XmlDocument xd = GetXmlDocument(respStream);
|
|
||||||
XmlNode xn;
|
|
||||||
|
|
||||||
XmlNode xnRelease = xd.DocumentElement.SelectSingleNode("/metadata/release");
|
|
||||||
if (xnRelease == null) return;
|
|
||||||
|
|
||||||
XmlNodeList xnlTracks = xnRelease.SelectNodes("track-list/track");
|
|
||||||
if (xnlTracks.Count != TrackCount) return;
|
|
||||||
|
|
||||||
xn = xnRelease.SelectSingleNode("title");
|
|
||||||
if (xn != null)
|
|
||||||
discTitle = xn.InnerText;
|
|
||||||
|
|
||||||
xn = xnRelease.SelectSingleNode("artist/name");
|
|
||||||
if (xn != null)
|
|
||||||
discArtist = xn.InnerText;
|
|
||||||
|
|
||||||
Artist = discArtist;
|
|
||||||
Title = discTitle;
|
|
||||||
|
|
||||||
for (int iTrack = 0; iTrack < TrackCount; iTrack++) {
|
|
||||||
string trackArtist = null;
|
|
||||||
string trackTitle = null;
|
|
||||||
XmlNode xnTrack = xnlTracks[iTrack];
|
|
||||||
TrackInfo trackInfo = Tracks[iTrack];
|
|
||||||
|
|
||||||
xn = xnTrack.SelectSingleNode("title");
|
|
||||||
if (xn != null)
|
|
||||||
trackTitle = xn.InnerText;
|
|
||||||
|
|
||||||
xn = xnTrack.SelectSingleNode("artist/name");
|
|
||||||
if (xn != null)
|
|
||||||
trackArtist = xn.InnerText;
|
|
||||||
|
|
||||||
trackInfo.Artist = trackArtist ?? discArtist;
|
|
||||||
trackInfo.Title = trackTitle;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private XmlDocument GetXmlDocument(Stream stream) {
|
|
||||||
XmlDocument xd = new XmlDocument();
|
|
||||||
|
|
||||||
xd.Load(stream);
|
|
||||||
|
|
||||||
if (xd.DocumentElement.NamespaceURI.Length > 0) {
|
|
||||||
// Strip namespace to simplify xpath expressions
|
|
||||||
XmlDocument xdNew = new XmlDocument();
|
|
||||||
xd.DocumentElement.SetAttribute("xmlns", String.Empty);
|
|
||||||
xdNew.LoadXml(xd.OuterXml);
|
|
||||||
xd = xdNew;
|
|
||||||
}
|
|
||||||
|
|
||||||
return xd;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Stream HttpGetToStream(string url) {
|
|
||||||
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
|
|
||||||
req.UserAgent = "CUE Tools";
|
|
||||||
try {
|
|
||||||
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
|
|
||||||
return resp.GetResponseStream();
|
|
||||||
}
|
|
||||||
catch (WebException ex) {
|
|
||||||
if (ex.Status == WebExceptionStatus.ProtocolError) {
|
|
||||||
HttpStatusCode code = ((HttpWebResponse)ex.Response).StatusCode;
|
|
||||||
if (code == HttpStatusCode.NotFound) {
|
|
||||||
throw new HttpNotFoundException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
throw;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void GenerateAccurateRipLog(TextWriter sw)
|
public void GenerateAccurateRipLog(TextWriter sw)
|
||||||
@@ -1405,7 +1349,7 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
if (0 != _writeOffset)
|
if (0 != _writeOffset)
|
||||||
sw.WriteLine("Offset applied: {0}", _writeOffset);
|
sw.WriteLine("Offset applied: {0}", _writeOffset);
|
||||||
_arVerify.GenerateFullLog(sw, _accurateOffset ? _writeOffset : 0);
|
_arVerify.GenerateFullLog(sw, _accurateRipMode == AccurateRipMode.VerifyThenConvert ? _writeOffset : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void GenerateAccurateRipTagsForTrack(NameValueCollection tags, int offset, int bestOffset, int iTrack, string prefix)
|
public void GenerateAccurateRipTagsForTrack(NameValueCollection tags, int offset, int bestOffset, int iTrack, string prefix)
|
||||||
@@ -1524,7 +1468,7 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !_accurateRip || _accurateOffset )
|
if ( _accurateRipMode != AccurateRipMode.Verify )
|
||||||
for (int i = 0; i < destPaths.Length; i++) {
|
for (int i = 0; i < destPaths.Length; i++) {
|
||||||
for (int j = 0; j < _sourcePaths.Count; j++) {
|
for (int j = 0; j < _sourcePaths.Count; j++) {
|
||||||
if (destPaths[i].ToLower() == _sourcePaths[j].ToLower()) {
|
if (destPaths[i].ToLower() == _sourcePaths[j].ToLower()) {
|
||||||
@@ -1537,7 +1481,8 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
bool SkipOutput = false;
|
bool SkipOutput = false;
|
||||||
|
|
||||||
if (_accurateRip) {
|
if (_accurateRipMode != AccurateRipMode.None)
|
||||||
|
{
|
||||||
ShowProgress((string)"Contacting AccurateRip database...", 0, 0, null, null);
|
ShowProgress((string)"Contacting AccurateRip database...", 0, 0, null, null);
|
||||||
if (!_dataTrackLength.HasValue && _minDataTrackLength.HasValue && _accurateRipId == _accurateRipIdActual && _config.bruteForceDTL)
|
if (!_dataTrackLength.HasValue && _minDataTrackLength.HasValue && _accurateRipId == _accurateRipIdActual && _config.bruteForceDTL)
|
||||||
{
|
{
|
||||||
@@ -1576,10 +1521,10 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
if (_arVerify.AccResult != HttpStatusCode.OK)
|
if (_arVerify.AccResult != HttpStatusCode.OK)
|
||||||
{
|
{
|
||||||
if (!_accurateOffset || _config.noUnverifiedOutput)
|
if (_accurateRipMode == AccurateRipMode.Verify || _config.noUnverifiedOutput)
|
||||||
{
|
{
|
||||||
if ((_accurateOffset && _config.writeArLogOnConvert) ||
|
if ((_accurateRipMode != AccurateRipMode.Verify && _config.writeArLogOnConvert) ||
|
||||||
(!_accurateOffset && _config.writeArLogOnVerify))
|
(_accurateRipMode == AccurateRipMode.Verify && _config.writeArLogOnVerify))
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(dir))
|
if (!Directory.Exists(dir))
|
||||||
Directory.CreateDirectory(dir);
|
Directory.CreateDirectory(dir);
|
||||||
@@ -1592,12 +1537,12 @@ namespace CUETools.Processor
|
|||||||
{
|
{
|
||||||
if (!Directory.Exists(dir))
|
if (!Directory.Exists(dir))
|
||||||
Directory.CreateDirectory(dir);
|
Directory.CreateDirectory(dir);
|
||||||
WriteTOC(Path.ChangeExtension(_cuePath, ".toc"));
|
WriteText(Path.ChangeExtension(_cuePath, ".toc"), TOCContents());
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (_accurateOffset)
|
else if (_accurateRipMode == AccurateRipMode.VerifyThenConvert)
|
||||||
{
|
{
|
||||||
_writeOffset = 0;
|
_writeOffset = 0;
|
||||||
WriteAudioFilesPass(dir, style, destPaths, destLengths, htoaToFile, true);
|
WriteAudioFilesPass(dir, style, destPaths, destLengths, htoaToFile, true);
|
||||||
@@ -1623,25 +1568,59 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
if (!SkipOutput)
|
if (!SkipOutput)
|
||||||
{
|
{
|
||||||
bool verifyOnly = _accurateRip && !_accurateOffset;
|
if (_accurateRipMode != AccurateRipMode.Verify)
|
||||||
if (!verifyOnly)
|
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(dir))
|
if (!Directory.Exists(dir))
|
||||||
Directory.CreateDirectory(dir);
|
Directory.CreateDirectory(dir);
|
||||||
if (style != CUEStyle.SingleFileWithCUE)
|
|
||||||
Write(_cuePath, style);
|
|
||||||
else if (_config.createCUEFileWhenEmbedded)
|
|
||||||
Write(Path.ChangeExtension(_cuePath, ".cue"), style);
|
|
||||||
if (style != CUEStyle.SingleFileWithCUE && style != CUEStyle.SingleFile && _config.createM3U)
|
|
||||||
WriteM3U(Path.ChangeExtension(_cuePath, ".m3u"), style);
|
|
||||||
}
|
}
|
||||||
WriteAudioFilesPass(dir, style, destPaths, destLengths, htoaToFile, verifyOnly);
|
WriteAudioFilesPass(dir, style, destPaths, destLengths, htoaToFile, _accurateRipMode == AccurateRipMode.Verify);
|
||||||
|
if (_accurateRipMode != AccurateRipMode.Verify)
|
||||||
|
{
|
||||||
|
string logContents = LOGContents();
|
||||||
|
string cueContents = CUESheetContents(style);
|
||||||
|
|
||||||
|
if (logContents != null)
|
||||||
|
WriteText(Path.ChangeExtension(_cuePath, ".log"), logContents);
|
||||||
|
if (style != CUEStyle.SingleFileWithCUE)
|
||||||
|
WriteText(_cuePath, cueContents);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (_config.createCUEFileWhenEmbedded)
|
||||||
|
WriteText(Path.ChangeExtension(_cuePath, ".cue"), cueContents);
|
||||||
|
#if !MONO
|
||||||
|
if (_accurateRipMode == AccurateRipMode.VerifyAndConvert ||
|
||||||
|
(_accurateRipMode != AccurateRipMode.VerifyThenConvert && _isCD))
|
||||||
|
{
|
||||||
|
IAudioSource audioSource = AudioReadWrite.GetAudioSource(destPaths[0], null);
|
||||||
|
if (audioSource is FLACReader)
|
||||||
|
{
|
||||||
|
if (_isCD)
|
||||||
|
{
|
||||||
|
audioSource.Tags.Add("CUESHEET", cueContents);
|
||||||
|
audioSource.Tags.Add("LOG", logContents);
|
||||||
|
}
|
||||||
|
uint tracksMatch;
|
||||||
|
int bestOffset;
|
||||||
|
FindBestOffset(1, true, out tracksMatch, out bestOffset);
|
||||||
|
if (_accurateRipMode == AccurateRipMode.VerifyAndConvert && _arVerify.AccResult == HttpStatusCode.OK)
|
||||||
|
GenerateAccurateRipTags(audioSource.Tags, 0, bestOffset, -1);
|
||||||
|
else
|
||||||
|
audioSource.Tags.Add("ACCURATERIPID", _accurateRipId);
|
||||||
|
audioSource.UpdateTags(false);
|
||||||
|
}
|
||||||
|
audioSource.Close();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
if (style != CUEStyle.SingleFileWithCUE && style != CUEStyle.SingleFile && _config.createM3U)
|
||||||
|
WriteText(Path.ChangeExtension(_cuePath, ".m3u"), M3UContents(style));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_accurateRip)
|
if (_accurateRipMode != AccurateRipMode.None)
|
||||||
{
|
{
|
||||||
ShowProgress((string)"Generating AccurateRip report...", 0, 0, null, null);
|
ShowProgress((string)"Generating AccurateRip report...", 0, 0, null, null);
|
||||||
if (!_accurateOffset && _config.writeArTagsOnVerify && _writeOffset == 0 && !_isArchive)
|
if (_accurateRipMode == AccurateRipMode.Verify && _config.writeArTagsOnVerify && _writeOffset == 0 && !_isArchive && !_isCD)
|
||||||
{
|
{
|
||||||
uint tracksMatch;
|
uint tracksMatch;
|
||||||
int bestOffset;
|
int bestOffset;
|
||||||
@@ -1655,7 +1634,7 @@ namespace CUETools.Processor
|
|||||||
GenerateAccurateRipTags (tags, 0, bestOffset, -1);
|
GenerateAccurateRipTags (tags, 0, bestOffset, -1);
|
||||||
#if !MONO
|
#if !MONO
|
||||||
if (audioSource is FLACReader)
|
if (audioSource is FLACReader)
|
||||||
((FLACReader)audioSource).UpdateTags (true);
|
audioSource.UpdateTags (true);
|
||||||
#endif
|
#endif
|
||||||
audioSource.Close();
|
audioSource.Close();
|
||||||
audioSource = null;
|
audioSource = null;
|
||||||
@@ -1671,7 +1650,7 @@ namespace CUETools.Processor
|
|||||||
NameValueCollection tags = audioSource.Tags;
|
NameValueCollection tags = audioSource.Tags;
|
||||||
CleanupTags(tags, "ACCURATERIP");
|
CleanupTags(tags, "ACCURATERIP");
|
||||||
GenerateAccurateRipTags (tags, 0, bestOffset, iTrack);
|
GenerateAccurateRipTags (tags, 0, bestOffset, iTrack);
|
||||||
((FLACReader)audioSource).UpdateTags(true);
|
audioSource.UpdateTags(true);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
audioSource.Close();
|
audioSource.Close();
|
||||||
@@ -1680,8 +1659,8 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((_accurateOffset && _config.writeArLogOnConvert) ||
|
if ((_accurateRipMode != AccurateRipMode.Verify && _config.writeArLogOnConvert) ||
|
||||||
(!_accurateOffset && _config.writeArLogOnVerify))
|
(_accurateRipMode == AccurateRipMode.Verify && _config.writeArLogOnVerify))
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(dir))
|
if (!Directory.Exists(dir))
|
||||||
Directory.CreateDirectory(dir);
|
Directory.CreateDirectory(dir);
|
||||||
@@ -1694,7 +1673,7 @@ namespace CUETools.Processor
|
|||||||
{
|
{
|
||||||
if (!Directory.Exists(dir))
|
if (!Directory.Exists(dir))
|
||||||
Directory.CreateDirectory(dir);
|
Directory.CreateDirectory(dir);
|
||||||
WriteTOC(Path.ChangeExtension(_cuePath, ".toc"));
|
WriteText(Path.ChangeExtension(_cuePath, ".toc"), TOCContents());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1740,9 +1719,9 @@ namespace CUETools.Processor
|
|||||||
if (destTags.Get("ARTIST") == null && "" != _tracks[iTrack].Artist)
|
if (destTags.Get("ARTIST") == null && "" != _tracks[iTrack].Artist)
|
||||||
destTags.Add("ARTIST", _tracks[iTrack].Artist);
|
destTags.Add("ARTIST", _tracks[iTrack].Artist);
|
||||||
destTags.Add("TRACKNUMBER", (iTrack + 1).ToString());
|
destTags.Add("TRACKNUMBER", (iTrack + 1).ToString());
|
||||||
if (_accurateRipId != null && _config.writeArTagsOnConvert)
|
if (_config.writeArTagsOnConvert)
|
||||||
{
|
{
|
||||||
if (_accurateOffset && _arVerify.AccResult == HttpStatusCode.OK)
|
if (_accurateRipMode == AccurateRipMode.VerifyThenConvert && _arVerify.AccResult == HttpStatusCode.OK)
|
||||||
GenerateAccurateRipTags(destTags, _writeOffset, bestOffset, iTrack);
|
GenerateAccurateRipTags(destTags, _writeOffset, bestOffset, iTrack);
|
||||||
else
|
else
|
||||||
destTags.Add("ACCURATERIPID", _accurateRipId);
|
destTags.Add("ACCURATERIPID", _accurateRipId);
|
||||||
@@ -1789,13 +1768,8 @@ namespace CUETools.Processor
|
|||||||
CleanupTags(destTags, "ACCURATERIP");
|
CleanupTags(destTags, "ACCURATERIP");
|
||||||
CleanupTags(destTags, "REPLAYGAIN");
|
CleanupTags(destTags, "REPLAYGAIN");
|
||||||
|
|
||||||
if (fWithCUE)
|
if (fWithCUE && (!_isCD || _accurateRipMode == AccurateRipMode.VerifyThenConvert))
|
||||||
{
|
destTags.Add("CUESHEET", CUESheetContents(CUEStyle.SingleFileWithCUE));
|
||||||
StringWriter sw = new StringWriter();
|
|
||||||
Write(sw, CUEStyle.SingleFileWithCUE);
|
|
||||||
destTags.Add("CUESHEET", sw.ToString());
|
|
||||||
sw.Close();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_config.embedLog)
|
if (_config.embedLog)
|
||||||
{
|
{
|
||||||
@@ -1806,9 +1780,9 @@ namespace CUETools.Processor
|
|||||||
destTags.Add("LOG", _eacLog);
|
destTags.Add("LOG", _eacLog);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_accurateRipId != null && _config.writeArTagsOnConvert)
|
if (_config.writeArTagsOnConvert)
|
||||||
{
|
{
|
||||||
if (fWithCUE && _accurateOffset && _arVerify.AccResult == HttpStatusCode.OK)
|
if (fWithCUE && _accurateRipMode == AccurateRipMode.VerifyThenConvert && _arVerify.AccResult == HttpStatusCode.OK)
|
||||||
GenerateAccurateRipTags(destTags, _writeOffset, bestOffset, -1);
|
GenerateAccurateRipTags(destTags, _writeOffset, bestOffset, -1);
|
||||||
else
|
else
|
||||||
destTags.Add("ACCURATERIPID", _accurateRipId);
|
destTags.Add("ACCURATERIPID", _accurateRipId);
|
||||||
@@ -1828,6 +1802,7 @@ namespace CUETools.Processor
|
|||||||
int iSource = -1;
|
int iSource = -1;
|
||||||
int iDest = -1;
|
int iDest = -1;
|
||||||
uint samplesRemSource = 0;
|
uint samplesRemSource = 0;
|
||||||
|
CDImageLayout updatedTOC = null;
|
||||||
|
|
||||||
if (_writeOffset != 0)
|
if (_writeOffset != 0)
|
||||||
{
|
{
|
||||||
@@ -1872,7 +1847,7 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
uint tracksMatch;
|
uint tracksMatch;
|
||||||
int bestOffset = _writeOffset;
|
int bestOffset = _writeOffset;
|
||||||
if (!noOutput && _accurateRipId != null && _config.writeArTagsOnConvert && _accurateOffset && _arVerify.AccResult == HttpStatusCode.OK)
|
if (!noOutput && _accurateRipMode == AccurateRipMode.VerifyThenConvert && _config.writeArTagsOnConvert && _arVerify.AccResult == HttpStatusCode.OK)
|
||||||
FindBestOffset(1, true, out tracksMatch, out bestOffset);
|
FindBestOffset(1, true, out tracksMatch, out bestOffset);
|
||||||
|
|
||||||
if (hdcdDecoder != null)
|
if (hdcdDecoder != null)
|
||||||
@@ -1891,7 +1866,7 @@ namespace CUETools.Processor
|
|||||||
uint diskLength = 588 * (_toc[_toc.TrackCount].IsAudio ? _toc[_toc.TrackCount].End + 1 : _toc[_toc.TrackCount - 1].End + 1);
|
uint diskLength = 588 * (_toc[_toc.TrackCount].IsAudio ? _toc[_toc.TrackCount].End + 1 : _toc[_toc.TrackCount - 1].End + 1);
|
||||||
uint diskOffset = 0;
|
uint diskOffset = 0;
|
||||||
|
|
||||||
if (_accurateRip && noOutput)
|
if (_accurateRipMode != AccurateRipMode.None && (noOutput || _accurateRipMode == AccurateRipMode.VerifyAndConvert))
|
||||||
_arVerify.Init();
|
_arVerify.Init();
|
||||||
|
|
||||||
ShowProgress(String.Format("{2} track {0:00} ({1:00}%)...", 0, 0, noOutput ? "Verifying" : "Writing"), 0, 0.0, null, null);
|
ShowProgress(String.Format("{2} track {0:00} ({1:00}%)...", 0, 0, noOutput ? "Verifying" : "Writing"), 0, 0.0, null, null);
|
||||||
@@ -1949,6 +1924,10 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
while (samplesRemIndex != 0) {
|
while (samplesRemIndex != 0) {
|
||||||
if (samplesRemSource == 0) {
|
if (samplesRemSource == 0) {
|
||||||
|
#if !MONO
|
||||||
|
if (_isCD && audioSource != null && audioSource is CDDriveReader)
|
||||||
|
updatedTOC = ((CDDriveReader)audioSource).TOC;
|
||||||
|
#endif
|
||||||
if (audioSource != null) audioSource.Close();
|
if (audioSource != null) audioSource.Close();
|
||||||
audioSource = GetAudioSource(++iSource);
|
audioSource = GetAudioSource(++iSource);
|
||||||
samplesRemSource = (uint) _sources[iSource].Length;
|
samplesRemSource = (uint) _sources[iSource].Length;
|
||||||
@@ -1994,7 +1973,7 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (_accurateRip && noOutput)
|
if (_accurateRipMode != AccurateRipMode.None && (noOutput || _accurateRipMode == AccurateRipMode.VerifyAndConvert))
|
||||||
_arVerify.Write(sampleBuffer, copyCount);
|
_arVerify.Write(sampleBuffer, copyCount);
|
||||||
|
|
||||||
currentOffset += copyCount;
|
currentOffset += copyCount;
|
||||||
@@ -2022,6 +2001,20 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !MONO
|
||||||
|
if (_isCD && audioSource != null && audioSource is CDDriveReader)
|
||||||
|
updatedTOC = ((CDDriveReader)audioSource).TOC;
|
||||||
|
if (updatedTOC != null)
|
||||||
|
{
|
||||||
|
_toc = updatedTOC;
|
||||||
|
if (_toc.Catalog != null)
|
||||||
|
General.SetCUELine(_attributes, "CATALOG", _toc.Catalog, false);
|
||||||
|
for (iTrack = 1; iTrack <= _toc.TrackCount; iTrack++)
|
||||||
|
if (_toc[iTrack].IsAudio && _toc[iTrack].ISRC != null)
|
||||||
|
General.SetCUELine(_tracks[iTrack - 1].Attributes, "ISRC", _toc[iTrack].ISRC, false);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (hdcdDecoder != null)
|
if (hdcdDecoder != null)
|
||||||
hdcdDecoder.AudioDest = null;
|
hdcdDecoder.AudioDest = null;
|
||||||
if (audioSource != null)
|
if (audioSource != null)
|
||||||
@@ -2220,7 +2213,7 @@ namespace CUETools.Processor
|
|||||||
{
|
{
|
||||||
CDDriveReader ripper = new CDDriveReader();
|
CDDriveReader ripper = new CDDriveReader();
|
||||||
ripper.Open(sourceInfo.Path[0]);
|
ripper.Open(sourceInfo.Path[0]);
|
||||||
ripper.DriveOffset = 48;
|
ripper.DriveOffset = _driveOffset;
|
||||||
audioSource = ripper;
|
audioSource = ripper;
|
||||||
} else
|
} else
|
||||||
if (_isArchive)
|
if (_isArchive)
|
||||||
@@ -2369,31 +2362,27 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public CUEConfig Config {
|
public CUEConfig Config
|
||||||
get {
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
return _config;
|
return _config;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool AccurateRip {
|
public AccurateRipMode AccurateRip
|
||||||
get {
|
{
|
||||||
return _accurateRip;
|
get
|
||||||
|
{
|
||||||
|
return _accurateRipMode;
|
||||||
}
|
}
|
||||||
set {
|
set
|
||||||
_accurateRip = value;
|
{
|
||||||
|
_accurateRipMode = value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool AccurateOffset {
|
private CDImageLayout _toc;
|
||||||
get {
|
|
||||||
return _accurateOffset;
|
|
||||||
}
|
|
||||||
set {
|
|
||||||
_accurateOffset = value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
CDImageLayout _toc;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public class CUELine {
|
public class CUELine {
|
||||||
@@ -2525,7 +2514,4 @@ namespace CUETools.Processor
|
|||||||
public StopException() : base() {
|
public StopException() : base() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class HttpNotFoundException : Exception {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@@ -181,7 +181,7 @@ namespace FLACDotNet {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool UpdateTags (bool preserveTime)
|
virtual bool UpdateTags (bool preserveTime)
|
||||||
{
|
{
|
||||||
Close ();
|
Close ();
|
||||||
|
|
||||||
|
|||||||
@@ -977,6 +977,11 @@ namespace CUETools.Codecs.LossyWAV
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool UpdateTags(bool preserveTime)
|
||||||
|
{
|
||||||
|
return _audioSource.UpdateTags(preserveTime);
|
||||||
|
}
|
||||||
|
|
||||||
public string Path
|
public string Path
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
|
|||||||
@@ -172,6 +172,11 @@ namespace WavPackDotNet {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
virtual bool UpdateTags(bool preserveTime)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
virtual void Close()
|
virtual void Close()
|
||||||
{
|
{
|
||||||
_wpc = WavpackCloseFile(_wpc);
|
_wpc = WavpackCloseFile(_wpc);
|
||||||
|
|||||||
Reference in New Issue
Block a user