mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
Update 6: Better support for different cue sheet encodings, ape output
This commit is contained in:
@@ -150,9 +150,8 @@ namespace APEDotNet {
|
||||
|
||||
sampleCount = nBlocksRetrieved;
|
||||
array<Int32,2>^ _sampleBuffer = gcnew array<Int32,2> (nBlocksRetrieved, 2);
|
||||
|
||||
{
|
||||
interior_ptr<Int32> pMyBuffer = &_sampleBuffer[0, 0];
|
||||
|
||||
unsigned short * pAPEBuffer = (unsigned short *) pBuffer;
|
||||
unsigned short * pAPEBufferEnd = (unsigned short *) pBuffer + 2 * nBlocksRetrieved;
|
||||
|
||||
@@ -160,14 +159,7 @@ namespace APEDotNet {
|
||||
*(pMyBuffer++) = *(pAPEBuffer++);
|
||||
*(pMyBuffer++) = *(pAPEBuffer++);
|
||||
}
|
||||
}
|
||||
#if 0
|
||||
for (int i = 0; i < nBlocksRetrieved; i++)
|
||||
{
|
||||
_sampleBuffer[i,0] = pBuffer[i*4] + (pBuffer[i*4+1] << 8);
|
||||
_sampleBuffer[i,1] = pBuffer[i*4+2] + (pBuffer[i*4+3] << 8);
|
||||
}
|
||||
#endif
|
||||
|
||||
sampleBuffer = _sampleBuffer;
|
||||
_sampleOffset += nBlocksRetrieved;
|
||||
_samplesWaiting = false;
|
||||
@@ -209,4 +201,126 @@ namespace APEDotNet {
|
||||
#endif
|
||||
};
|
||||
|
||||
public ref class APEWriter {
|
||||
public:
|
||||
APEWriter(String^ path, Int32 bitsPerSample, Int32 channelCount, Int32 sampleRate) {
|
||||
|
||||
if ((channelCount != 1) && (channelCount != 2)) {
|
||||
throw gcnew Exception("Only stereo and mono audio formats are allowed.");
|
||||
}
|
||||
|
||||
_path = path;
|
||||
_tags = gcnew NameValueCollection();
|
||||
|
||||
_compressionLevel = COMPRESSION_LEVEL_NORMAL;
|
||||
|
||||
_bitsPerSample = bitsPerSample;
|
||||
_channelCount = channelCount;
|
||||
_sampleRate = sampleRate;
|
||||
|
||||
int nRetVal;
|
||||
pAPECompress = CreateIAPECompress (&nRetVal);
|
||||
if (!pAPECompress) {
|
||||
throw gcnew Exception("Unable to open file.");
|
||||
}
|
||||
}
|
||||
|
||||
void Close() {
|
||||
if (pAPECompress)
|
||||
{
|
||||
pAPECompress->Finish (NULL, 0, 0);
|
||||
delete pAPECompress;
|
||||
pAPECompress = NULL;
|
||||
}
|
||||
|
||||
if ((_finalSampleCount != 0) && (_samplesWritten != _finalSampleCount)) {
|
||||
throw gcnew Exception("Samples written differs from the expected sample count.");
|
||||
}
|
||||
|
||||
if (_tags->Count > 0)
|
||||
{
|
||||
APETagDotNet^ apeTag = gcnew APETagDotNet (_path, true, false);
|
||||
apeTag->SetStringTags (_tags, true);
|
||||
apeTag->Save();
|
||||
apeTag->Close();
|
||||
_tags->Clear ();
|
||||
}
|
||||
}
|
||||
|
||||
property Int32 FinalSampleCount {
|
||||
Int32 get() {
|
||||
return _finalSampleCount;
|
||||
}
|
||||
void set(Int32 value) {
|
||||
if (value < 0) {
|
||||
throw gcnew Exception("Invalid final sample count.");
|
||||
}
|
||||
if (_initialized) {
|
||||
throw gcnew Exception("Final sample count cannot be changed after encoding begins.");
|
||||
}
|
||||
_finalSampleCount = value;
|
||||
}
|
||||
}
|
||||
|
||||
property Int32 CompressionLevel {
|
||||
Int32 get() {
|
||||
return _compressionLevel;
|
||||
}
|
||||
void set(Int32 value) {
|
||||
if ((value < 1) || (value > 5)) {
|
||||
throw gcnew Exception("Invalid compression mode.");
|
||||
}
|
||||
_compressionLevel = value * 1000;
|
||||
}
|
||||
}
|
||||
|
||||
void Write(array<unsigned char>^ sampleBuffer, UInt32 sampleCount) {
|
||||
if (!_initialized) Initialize();
|
||||
|
||||
pin_ptr<unsigned char> pSampleBuffer = &sampleBuffer[0];
|
||||
|
||||
if (pAPECompress->AddData (pSampleBuffer, sampleCount * sizeof (int)))
|
||||
{
|
||||
throw gcnew Exception("An error occurred while encoding.");
|
||||
}
|
||||
|
||||
_samplesWritten += sampleCount;
|
||||
}
|
||||
|
||||
void SetTags (NameValueCollection^ tags) {
|
||||
_tags = tags;
|
||||
}
|
||||
|
||||
private:
|
||||
IAPECompress * pAPECompress;
|
||||
bool _initialized;
|
||||
Int32 _finalSampleCount, _samplesWritten;
|
||||
Int32 _bitsPerSample, _channelCount, _sampleRate;
|
||||
Int32 _compressionLevel;
|
||||
NameValueCollection^ _tags;
|
||||
String^ _path;
|
||||
|
||||
void Initialize() {
|
||||
IntPtr pathChars;
|
||||
int res;
|
||||
WAVEFORMATEX waveFormat;
|
||||
|
||||
pathChars = Marshal::StringToHGlobalUni(_path);
|
||||
|
||||
FillWaveFormatEx (&waveFormat, _sampleRate, _bitsPerSample, _channelCount);
|
||||
res = pAPECompress->Start ((const wchar_t*)pathChars.ToPointer(),
|
||||
&waveFormat,
|
||||
(_finalSampleCount == 0) ? MAX_AUDIO_BYTES_UNKNOWN : _finalSampleCount * sizeof (int),
|
||||
_compressionLevel,
|
||||
NULL,
|
||||
CREATE_WAV_HEADER_ON_DECOMPRESSION);
|
||||
Marshal::FreeHGlobal(pathChars);
|
||||
if (res)
|
||||
{
|
||||
throw gcnew Exception("Unable to create the encoder.");
|
||||
}
|
||||
|
||||
_initialized = true;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -51,6 +51,8 @@ namespace JDP {
|
||||
dest = new FLACWriter(path, bitsPerSample, channelCount, sampleRate); break;
|
||||
case ".wv":
|
||||
dest = new WavPackWriter(path, bitsPerSample, channelCount, sampleRate); break;
|
||||
case ".ape":
|
||||
dest = new APEWriter(path, bitsPerSample, channelCount, sampleRate); break;
|
||||
case ".dummy":
|
||||
dest = new DummyWriter(path, bitsPerSample, channelCount, sampleRate); break;
|
||||
default:
|
||||
@@ -708,6 +710,81 @@ namespace JDP {
|
||||
}
|
||||
}
|
||||
|
||||
class APEWriter : IAudioDest
|
||||
{
|
||||
APEDotNet.APEWriter _apeWriter;
|
||||
//int[,] _sampleBuffer;
|
||||
int _bitsPerSample;
|
||||
int _channelCount;
|
||||
int _sampleRate;
|
||||
|
||||
public APEWriter(string path, int bitsPerSample, int channelCount, int sampleRate)
|
||||
{
|
||||
if (bitsPerSample != 16)
|
||||
{
|
||||
throw new Exception("Bits per sample must be 16.");
|
||||
}
|
||||
_bitsPerSample = bitsPerSample;
|
||||
_channelCount = channelCount;
|
||||
_sampleRate = sampleRate;
|
||||
_apeWriter = new APEDotNet.APEWriter(path, bitsPerSample, channelCount, sampleRate);
|
||||
}
|
||||
|
||||
public long FinalSampleCount
|
||||
{
|
||||
get { return _apeWriter.FinalSampleCount; }
|
||||
set { _apeWriter.FinalSampleCount = (int) value; }
|
||||
}
|
||||
public int CompressionLevel
|
||||
{
|
||||
get { return _apeWriter.CompressionLevel; }
|
||||
set { _apeWriter.CompressionLevel = value; }
|
||||
}
|
||||
public bool SetTags(NameValueCollection tags)
|
||||
{
|
||||
_apeWriter.SetTags(tags);
|
||||
return true;
|
||||
}
|
||||
public void Close()
|
||||
{
|
||||
_apeWriter.Close();
|
||||
}
|
||||
private unsafe void BytesToAPESamples_16(byte[] inSamples, int inByteOffset,
|
||||
int[,] outSamples, int outSampleOffset, uint sampleCount, int channelCount)
|
||||
{
|
||||
uint loopCount = sampleCount * (uint)channelCount;
|
||||
|
||||
if ((inSamples.Length - inByteOffset < loopCount * 2) ||
|
||||
(outSamples.GetLength(0) - outSampleOffset < sampleCount))
|
||||
{
|
||||
throw new IndexOutOfRangeException();
|
||||
}
|
||||
|
||||
fixed (byte* pInSamplesFixed = &inSamples[inByteOffset])
|
||||
{
|
||||
fixed (int* pOutSamplesFixed = &outSamples[outSampleOffset, 0])
|
||||
{
|
||||
short* pInSamples = (short*)pInSamplesFixed;
|
||||
int* pOutSamples = pOutSamplesFixed;
|
||||
|
||||
for (int i = 0; i < loopCount; i++)
|
||||
{
|
||||
*(pOutSamples++) = (int)*(pInSamples++);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
public void Write(byte[] buff, uint sampleCount)
|
||||
{
|
||||
//if ((_sampleBuffer == null) || (_sampleBuffer.GetLength(0) < sampleCount))
|
||||
//{
|
||||
// _sampleBuffer = new int[sampleCount, _channelCount];
|
||||
//}
|
||||
//BytesToAPESamples_16(buff, 0, _sampleBuffer, 0, sampleCount, _channelCount);
|
||||
//_apeWriter.Write(_sampleBuffer, (int)sampleCount);
|
||||
_apeWriter.Write (buff, sampleCount);
|
||||
}
|
||||
}
|
||||
|
||||
class WavPackReader : IAudioSource {
|
||||
WavPackDotNet.WavPackReader _wavPackReader;
|
||||
|
||||
@@ -34,6 +34,7 @@ namespace JDP {
|
||||
WAV,
|
||||
FLAC,
|
||||
WavPack,
|
||||
APE,
|
||||
NoAudio
|
||||
}
|
||||
|
||||
@@ -44,6 +45,7 @@ namespace JDP {
|
||||
{
|
||||
case OutputAudioFormat.FLAC: return ".flac";
|
||||
case OutputAudioFormat.WavPack: return ".wv";
|
||||
case OutputAudioFormat.APE: return ".ape";
|
||||
case OutputAudioFormat.WAV: return ".wav";
|
||||
case OutputAudioFormat.NoAudio: return ".dummy";
|
||||
}
|
||||
@@ -214,8 +216,7 @@ namespace JDP {
|
||||
public string specialExceptions;
|
||||
public bool replaceSpaces;
|
||||
public bool embedLog;
|
||||
|
||||
private string[] _charMap;
|
||||
public bool fillUpCUE;
|
||||
|
||||
public CUEConfig()
|
||||
{
|
||||
@@ -237,11 +238,11 @@ namespace JDP {
|
||||
keepOriginalFilenames = true;
|
||||
trackFilenameFormat = "%N-%A-%T";
|
||||
singleFilenameFormat = "%F";
|
||||
removeSpecial = true;
|
||||
removeSpecial = false;
|
||||
specialExceptions = "-()";
|
||||
replaceSpaces = true;
|
||||
embedLog = true;
|
||||
BuildCharMap();
|
||||
fillUpCUE = true;
|
||||
}
|
||||
|
||||
public void Save (SettingsWriter sw)
|
||||
@@ -268,6 +269,7 @@ namespace JDP {
|
||||
sw.Save("SpecialCharactersExceptions", specialExceptions);
|
||||
sw.Save("ReplaceSpaces", replaceSpaces ? "1" : "0");
|
||||
sw.Save("EmbedLog", embedLog ? "1" : "0");
|
||||
sw.Save("FillUpCUE", fillUpCUE ? "1" : "0");
|
||||
}
|
||||
|
||||
public void Load(SettingsReader sr)
|
||||
@@ -351,59 +353,30 @@ namespace JDP {
|
||||
val = sr.Load("EmbedLog");
|
||||
embedLog = (val != null) ? (val != "0") : true;
|
||||
|
||||
BuildCharMap();
|
||||
val = sr.Load("FillUpCUE");
|
||||
fillUpCUE = (val != null) ? (val != "0") : true;
|
||||
}
|
||||
|
||||
public void BuildCharMap()
|
||||
{
|
||||
System.Collections.BitArray allowed = new System.Collections.BitArray(256, true);
|
||||
char[] invalid = Path.GetInvalidFileNameChars();
|
||||
int i;
|
||||
|
||||
if (removeSpecial)
|
||||
{
|
||||
byte[] exceptions = CUESheet.Encoding.GetBytes(specialExceptions);
|
||||
|
||||
for (i = 0; i <= 255; i++)
|
||||
{
|
||||
allowed[i] = ((i >= 'a') && (i <= 'z')) ||
|
||||
((i >= 'A') && (i <= 'Z')) ||
|
||||
((i >= '0') && (i <= '9')) ||
|
||||
(i == ' ') || (i == '_');
|
||||
}
|
||||
|
||||
for (i = 0; i < exceptions.Length; i++)
|
||||
{
|
||||
allowed[exceptions[i]] = true;
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < invalid.Length; i++)
|
||||
{
|
||||
allowed[invalid[i]] = false;
|
||||
}
|
||||
|
||||
_charMap = new string[256];
|
||||
for (i = 0; i <= 255; i++)
|
||||
{
|
||||
if (allowed[i])
|
||||
{
|
||||
_charMap[i] = CUESheet.Encoding.GetString(new byte[] { (byte)i });
|
||||
}
|
||||
else
|
||||
{
|
||||
_charMap[i] = String.Empty;
|
||||
}
|
||||
}
|
||||
}
|
||||
public string CleanseString (string s)
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
byte[] b = CUESheet.Encoding.GetBytes(s);
|
||||
char[] invalid = Path.GetInvalidFileNameChars();
|
||||
|
||||
for (int i = 0; i < b.Length; i++)
|
||||
s = Encoding.Default.GetString(Encoding.Default.GetBytes(s));
|
||||
|
||||
for (int i = 0; i < s.Length; i++)
|
||||
{
|
||||
sb.Append(_charMap[b[i]]);
|
||||
char ch = s[i];
|
||||
if (removeSpecial && specialExceptions.IndexOf(ch) < 0 && !(
|
||||
((ch >= 'a') && (ch <= 'z')) ||
|
||||
((ch >= 'A') && (ch <= 'Z')) ||
|
||||
((ch >= '0') && (ch <= '9')) ||
|
||||
(ch == ' ') || (ch == '_')))
|
||||
ch = '_';
|
||||
if (Array.IndexOf(invalid, ch) >= 0)
|
||||
sb.Append("_");
|
||||
else
|
||||
sb.Append (ch);
|
||||
}
|
||||
|
||||
return sb.ToString();
|
||||
@@ -473,8 +446,6 @@ namespace JDP {
|
||||
accDisks = new List<AccDisk>();
|
||||
_hasEmbeddedCUESheet = false;
|
||||
|
||||
_config.BuildCharMap();
|
||||
|
||||
TextReader sr;
|
||||
|
||||
if (Path.GetExtension(pathIn).ToLower() != ".cue")
|
||||
@@ -710,6 +681,8 @@ namespace JDP {
|
||||
_albumTags = _tracks[0]._trackTags;
|
||||
_tracks[0]._trackTags = new NameValueCollection();
|
||||
}
|
||||
if (_config.fillUpCUE)
|
||||
{
|
||||
if (General.FindCUELine(_attributes, "PERFORMER") == null && GetCommonTag("ALBUM ARTIST") != null)
|
||||
General.SetCUELine(_attributes, "PERFORMER", GetCommonTag("ALBUM ARTIST"), true);
|
||||
if (General.FindCUELine(_attributes, "PERFORMER") == null && GetCommonTag("ARTIST") != null)
|
||||
@@ -722,6 +695,7 @@ namespace JDP {
|
||||
General.SetCUELine(_attributes, "REM", "DATE", GetCommonTag("YEAR"), false);
|
||||
if (General.FindCUELine(_attributes, "REM", "GENRE") == null && GetCommonTag("GENRE") != null)
|
||||
General.SetCUELine(_attributes, "REM", "GENRE", GetCommonTag("GENRE"), true);
|
||||
}
|
||||
if (_accurateRipId == null)
|
||||
_accurateRipId = GetCommonTag("ACCURATERIPID");
|
||||
|
||||
@@ -762,7 +736,7 @@ namespace JDP {
|
||||
|
||||
public static Encoding Encoding {
|
||||
get {
|
||||
return Encoding.GetEncoding(1252);
|
||||
return Encoding.Default;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -932,8 +906,13 @@ namespace JDP {
|
||||
}
|
||||
|
||||
public void Write(string path, CUEStyle style) {
|
||||
StreamWriter sw = new StreamWriter(path, false, CUESheet.Encoding);
|
||||
StringWriter sw = new StringWriter();
|
||||
Write(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);
|
||||
sw1.Write(sw.ToString());
|
||||
sw1.Close();
|
||||
}
|
||||
|
||||
public void Write(TextWriter sw, CUEStyle style) {
|
||||
@@ -1602,7 +1581,7 @@ namespace JDP {
|
||||
{
|
||||
iDest++;
|
||||
audioDest = GetAudioDest(destPaths[iDest], destLengths[iDest], noOutput);
|
||||
if (audioDest is FLACWriter || audioDest is WavPackWriter)
|
||||
if (!(audioDest is WAVWriter))
|
||||
{
|
||||
NameValueCollection destTags = new NameValueCollection();
|
||||
|
||||
|
||||
11
CUETools/frmCUETools.Designer.cs
generated
11
CUETools/frmCUETools.Designer.cs
generated
@@ -68,6 +68,7 @@ namespace JDP {
|
||||
this.toolStripProgressBar2 = new System.Windows.Forms.ToolStripProgressBar();
|
||||
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.btnCUECreator = new System.Windows.Forms.Button();
|
||||
this.rbAPE = new System.Windows.Forms.RadioButton();
|
||||
this.grpCUEPaths.SuspendLayout();
|
||||
this.grpOutputStyle.SuspendLayout();
|
||||
this.grpOutputPathGeneration.SuspendLayout();
|
||||
@@ -256,6 +257,7 @@ namespace JDP {
|
||||
//
|
||||
// grpAudioOutput
|
||||
//
|
||||
this.grpAudioOutput.Controls.Add(this.rbAPE);
|
||||
this.grpAudioOutput.Controls.Add(this.rbNoAudio);
|
||||
this.grpAudioOutput.Controls.Add(this.rbWavPack);
|
||||
this.grpAudioOutput.Controls.Add(this.rbFLAC);
|
||||
@@ -409,6 +411,14 @@ namespace JDP {
|
||||
this.btnCUECreator.UseVisualStyleBackColor = true;
|
||||
this.btnCUECreator.Click += new System.EventHandler(this.btnCUECreator_Click);
|
||||
//
|
||||
// rbAPE
|
||||
//
|
||||
resources.ApplyResources(this.rbAPE, "rbAPE");
|
||||
this.rbAPE.Name = "rbAPE";
|
||||
this.rbAPE.TabStop = true;
|
||||
this.rbAPE.UseVisualStyleBackColor = true;
|
||||
this.rbAPE.CheckedChanged += new System.EventHandler(this.rbAPE_CheckedChanged);
|
||||
//
|
||||
// frmCUETools
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
@@ -492,6 +502,7 @@ namespace JDP {
|
||||
private System.Windows.Forms.Button btnCUECreator;
|
||||
private System.Windows.Forms.MaskedTextBox txtDataTrackLength;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.RadioButton rbAPE;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -44,8 +44,8 @@ namespace JDP {
|
||||
OpenFileDialog fileDlg = new OpenFileDialog();
|
||||
DialogResult dlgRes;
|
||||
|
||||
fileDlg.Title = "Input CUE Sheet or FLAC image";
|
||||
fileDlg.Filter = "CUE Sheets (*.cue)|*.cue|FLAC images (*.flac)|*.flac";
|
||||
fileDlg.Title = "Input CUE Sheet or album image";
|
||||
fileDlg.Filter = "CUE Sheets (*.cue)|*.cue|FLAC images (*.flac)|*.flac|WavPack images (*.wv)|*.wv|APE images (*.ape)|*.ape";
|
||||
|
||||
dlgRes = fileDlg.ShowDialog();
|
||||
if (dlgRes == DialogResult.OK) {
|
||||
@@ -113,7 +113,6 @@ namespace JDP {
|
||||
|
||||
_writeOffset = settingsForm.WriteOffset;
|
||||
_config = settingsForm.Config;
|
||||
_config.BuildCharMap();
|
||||
UpdateOutputPath();
|
||||
}
|
||||
}
|
||||
@@ -124,7 +123,7 @@ namespace JDP {
|
||||
StringWriter sw = new StringWriter();
|
||||
sw.WriteLine("CUE Tools v1.9.2");
|
||||
sw.WriteLine("Copyright 2006-2007 Moitah http://www.moitah.net/.");
|
||||
sw.WriteLine("AccurateRip, Monkey's Audio (APE) input and FLAC embedded CUE sheet support added in 2008 by Greg Chudov, gchudov@gmail.com.");
|
||||
sw.WriteLine("AccurateRip, Monkey's Audio and embedded CUE sheet support added in 2008 by Greg Chudov, gchudov@gmail.com.");
|
||||
sw.WriteLine("Thanks go out to Christopher Key and Whitehobbit for insight on AccurateRip functionality and to Mr Spoon for permission to use the database.");
|
||||
sw.WriteLine("Monkey's Audio library by Matthew T. Ashland.");
|
||||
reportForm.Message = sw.ToString();
|
||||
@@ -397,7 +396,7 @@ namespace JDP {
|
||||
btnFilenameCorrector.Enabled = !running;
|
||||
btnCUECreator.Enabled = !running;
|
||||
btnBatch.Enabled = !running;
|
||||
btnConvert.Text = running ? "&Stop" : "&Convert";
|
||||
btnConvert.Text = running ? "&Stop" : "&Go";
|
||||
toolStripStatusLabel1.Text = String.Empty;
|
||||
toolStripProgressBar1.Value = 0;
|
||||
toolStripProgressBar2.Value = 0;
|
||||
@@ -680,6 +679,7 @@ namespace JDP {
|
||||
get {
|
||||
if (rbFLAC.Checked) return OutputAudioFormat.FLAC;
|
||||
if (rbWavPack.Checked) return OutputAudioFormat.WavPack;
|
||||
if (rbAPE.Checked) return OutputAudioFormat.APE;
|
||||
if (rbNoAudio.Checked) return OutputAudioFormat.NoAudio;
|
||||
return OutputAudioFormat.WAV;
|
||||
}
|
||||
@@ -687,6 +687,7 @@ namespace JDP {
|
||||
switch (value) {
|
||||
case OutputAudioFormat.FLAC: rbFLAC.Checked = true; break;
|
||||
case OutputAudioFormat.WavPack: rbWavPack.Checked = true; break;
|
||||
case OutputAudioFormat.APE: rbAPE.Checked = true; break;
|
||||
case OutputAudioFormat.WAV: rbWAV.Checked = true; break;
|
||||
case OutputAudioFormat.NoAudio: rbNoAudio.Checked = true; break;
|
||||
}
|
||||
@@ -803,7 +804,7 @@ namespace JDP {
|
||||
|
||||
private void updateOutputStyles()
|
||||
{
|
||||
rbEmbedCUE.Enabled = rbFLAC.Checked || rbWavPack.Checked;
|
||||
rbEmbedCUE.Enabled = rbFLAC.Checked || rbWavPack.Checked || rbAPE.Checked;
|
||||
rbNoAudio.Enabled = rbWAV.Enabled = !rbEmbedCUE.Checked;
|
||||
}
|
||||
|
||||
@@ -890,6 +891,11 @@ namespace JDP {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void rbAPE_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
updateOutputStyles();
|
||||
}
|
||||
}
|
||||
|
||||
enum OutputPathGeneration {
|
||||
|
||||
@@ -129,7 +129,7 @@
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="btnConvert.Text" xml:space="preserve">
|
||||
<value>&Convert</value>
|
||||
<value>&Go</value>
|
||||
</data>
|
||||
<data name=">>btnConvert.Name" xml:space="preserve">
|
||||
<value>btnConvert</value>
|
||||
@@ -383,93 +383,6 @@
|
||||
<data name=">>txtInputPath.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name=">>rbEmbedCUE.Name" xml:space="preserve">
|
||||
<value>rbEmbedCUE</value>
|
||||
</data>
|
||||
<data name=">>rbEmbedCUE.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbEmbedCUE.Parent" xml:space="preserve">
|
||||
<value>grpOutputStyle</value>
|
||||
</data>
|
||||
<data name=">>rbEmbedCUE.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>rbGapsLeftOut.Name" xml:space="preserve">
|
||||
<value>rbGapsLeftOut</value>
|
||||
</data>
|
||||
<data name=">>rbGapsLeftOut.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbGapsLeftOut.Parent" xml:space="preserve">
|
||||
<value>grpOutputStyle</value>
|
||||
</data>
|
||||
<data name=">>rbGapsLeftOut.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>rbGapsPrepended.Name" xml:space="preserve">
|
||||
<value>rbGapsPrepended</value>
|
||||
</data>
|
||||
<data name=">>rbGapsPrepended.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbGapsPrepended.Parent" xml:space="preserve">
|
||||
<value>grpOutputStyle</value>
|
||||
</data>
|
||||
<data name=">>rbGapsPrepended.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>rbGapsAppended.Name" xml:space="preserve">
|
||||
<value>rbGapsAppended</value>
|
||||
</data>
|
||||
<data name=">>rbGapsAppended.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbGapsAppended.Parent" xml:space="preserve">
|
||||
<value>grpOutputStyle</value>
|
||||
</data>
|
||||
<data name=">>rbGapsAppended.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>rbSingleFile.Name" xml:space="preserve">
|
||||
<value>rbSingleFile</value>
|
||||
</data>
|
||||
<data name=">>rbSingleFile.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbSingleFile.Parent" xml:space="preserve">
|
||||
<value>grpOutputStyle</value>
|
||||
</data>
|
||||
<data name=">>rbSingleFile.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="grpOutputStyle.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>114, 211</value>
|
||||
</data>
|
||||
<data name="grpOutputStyle.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>119, 118</value>
|
||||
</data>
|
||||
<data name="grpOutputStyle.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="grpOutputStyle.Text" xml:space="preserve">
|
||||
<value>CUE Style</value>
|
||||
</data>
|
||||
<data name=">>grpOutputStyle.Name" xml:space="preserve">
|
||||
<value>grpOutputStyle</value>
|
||||
</data>
|
||||
<data name=">>grpOutputStyle.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>grpOutputStyle.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>grpOutputStyle.ZOrder" xml:space="preserve">
|
||||
<value>9</value>
|
||||
</data>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>153, 8</value>
|
||||
</metadata>
|
||||
<data name="rbEmbedCUE.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
@@ -481,16 +394,19 @@
|
||||
<value>12, 19</value>
|
||||
</data>
|
||||
<data name="rbEmbedCUE.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>57, 17</value>
|
||||
<value>75, 17</value>
|
||||
</data>
|
||||
<data name="rbEmbedCUE.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="rbEmbedCUE.Text" xml:space="preserve">
|
||||
<value>&Embed</value>
|
||||
<value>&Embedded</value>
|
||||
</data>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>153, 8</value>
|
||||
</metadata>
|
||||
<data name="rbEmbedCUE.ToolTip" xml:space="preserve">
|
||||
<value>Create single file with embedded CUE sheet. Currently supported only for FLAC output</value>
|
||||
<value>Create single file with embedded CUE sheet.</value>
|
||||
</data>
|
||||
<data name=">>rbEmbedCUE.Name" xml:space="preserve">
|
||||
<value>rbEmbedCUE</value>
|
||||
@@ -624,6 +540,30 @@
|
||||
<data name=">>rbSingleFile.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="grpOutputStyle.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>114, 211</value>
|
||||
</data>
|
||||
<data name="grpOutputStyle.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>119, 118</value>
|
||||
</data>
|
||||
<data name="grpOutputStyle.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="grpOutputStyle.Text" xml:space="preserve">
|
||||
<value>CUE Style</value>
|
||||
</data>
|
||||
<data name=">>grpOutputStyle.Name" xml:space="preserve">
|
||||
<value>grpOutputStyle</value>
|
||||
</data>
|
||||
<data name=">>grpOutputStyle.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>grpOutputStyle.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>grpOutputStyle.ZOrder" xml:space="preserve">
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name="btnAbout.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>410, 135</value>
|
||||
</data>
|
||||
@@ -936,6 +876,18 @@
|
||||
<data name=">>txtAppendFilename.ZOrder" xml:space="preserve">
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name=">>rbAPE.Name" xml:space="preserve">
|
||||
<value>rbAPE</value>
|
||||
</data>
|
||||
<data name=">>rbAPE.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbAPE.Parent" xml:space="preserve">
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbAPE.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>rbNoAudio.Name" xml:space="preserve">
|
||||
<value>rbNoAudio</value>
|
||||
</data>
|
||||
@@ -946,7 +898,7 @@
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbNoAudio.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>rbWavPack.Name" xml:space="preserve">
|
||||
<value>rbWavPack</value>
|
||||
@@ -958,7 +910,7 @@
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbWavPack.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>rbFLAC.Name" xml:space="preserve">
|
||||
<value>rbFLAC</value>
|
||||
@@ -970,7 +922,7 @@
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbFLAC.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>rbWAV.Name" xml:space="preserve">
|
||||
<value>rbWAV</value>
|
||||
@@ -982,7 +934,7 @@
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbWAV.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="grpAudioOutput.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>12, 211</value>
|
||||
@@ -1012,7 +964,7 @@
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="rbNoAudio.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>12, 71</value>
|
||||
<value>11, 85</value>
|
||||
</data>
|
||||
<data name="rbNoAudio.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>50, 17</value>
|
||||
@@ -1036,13 +988,13 @@
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbNoAudio.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="rbWavPack.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="rbWavPack.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>12, 54</value>
|
||||
<value>11, 34</value>
|
||||
</data>
|
||||
<data name="rbWavPack.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>69, 17</value>
|
||||
@@ -1063,13 +1015,13 @@
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbWavPack.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="rbFLAC.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="rbFLAC.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>12, 37</value>
|
||||
<value>11, 17</value>
|
||||
</data>
|
||||
<data name="rbFLAC.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>50, 17</value>
|
||||
@@ -1090,13 +1042,13 @@
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbFLAC.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="rbWAV.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="rbWAV.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>12, 20</value>
|
||||
<value>11, 68</value>
|
||||
</data>
|
||||
<data name="rbWAV.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>48, 17</value>
|
||||
@@ -1117,7 +1069,7 @@
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbWAV.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="btnBatch.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>410, 259</value>
|
||||
@@ -1191,6 +1143,90 @@
|
||||
<data name=">>btnSettings.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>label1.Name" xml:space="preserve">
|
||||
<value>label1</value>
|
||||
</data>
|
||||
<data name=">>label1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>label1.Parent" xml:space="preserve">
|
||||
<value>grpAccurateRip</value>
|
||||
</data>
|
||||
<data name=">>label1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>txtDataTrackLength.Name" xml:space="preserve">
|
||||
<value>txtDataTrackLength</value>
|
||||
</data>
|
||||
<data name=">>txtDataTrackLength.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.MaskedTextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>txtDataTrackLength.Parent" xml:space="preserve">
|
||||
<value>grpAccurateRip</value>
|
||||
</data>
|
||||
<data name=">>txtDataTrackLength.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>rbArApplyOffset.Name" xml:space="preserve">
|
||||
<value>rbArApplyOffset</value>
|
||||
</data>
|
||||
<data name=">>rbArApplyOffset.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbArApplyOffset.Parent" xml:space="preserve">
|
||||
<value>grpAccurateRip</value>
|
||||
</data>
|
||||
<data name=">>rbArApplyOffset.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>rbArVerify.Name" xml:space="preserve">
|
||||
<value>rbArVerify</value>
|
||||
</data>
|
||||
<data name=">>rbArVerify.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbArVerify.Parent" xml:space="preserve">
|
||||
<value>grpAccurateRip</value>
|
||||
</data>
|
||||
<data name=">>rbArVerify.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>rbArNone.Name" xml:space="preserve">
|
||||
<value>rbArNone</value>
|
||||
</data>
|
||||
<data name=">>rbArNone.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbArNone.Parent" xml:space="preserve">
|
||||
<value>grpAccurateRip</value>
|
||||
</data>
|
||||
<data name=">>rbArNone.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="grpAccurateRip.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>238, 211</value>
|
||||
</data>
|
||||
<data name="grpAccurateRip.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>144, 118</value>
|
||||
</data>
|
||||
<data name="grpAccurateRip.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name="grpAccurateRip.Text" xml:space="preserve">
|
||||
<value>AccurateRip</value>
|
||||
</data>
|
||||
<data name=">>grpAccurateRip.Name" xml:space="preserve">
|
||||
<value>grpAccurateRip</value>
|
||||
</data>
|
||||
<data name=">>grpAccurateRip.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>grpAccurateRip.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>grpAccurateRip.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="label1.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
@@ -1252,7 +1288,7 @@
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="rbArApplyOffset.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>11, 52</value>
|
||||
<value>8, 20</value>
|
||||
</data>
|
||||
<data name="rbArApplyOffset.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>120, 17</value>
|
||||
@@ -1263,9 +1299,6 @@
|
||||
<data name="rbArApplyOffset.Text" xml:space="preserve">
|
||||
<value>Verify, &then encode</value>
|
||||
</data>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>153, 8</value>
|
||||
</metadata>
|
||||
<data name="rbArApplyOffset.ToolTip" xml:space="preserve">
|
||||
<value>On the first pass, verify and try to find an offset correction which makes the rip accurate according to the AccurateRip database. On the second pass, convert, possibly applying offset correction.</value>
|
||||
</data>
|
||||
@@ -1285,16 +1318,16 @@
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="rbArVerify.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>11, 35</value>
|
||||
<value>8, 54</value>
|
||||
</data>
|
||||
<data name="rbArVerify.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>53, 17</value>
|
||||
<value>122, 17</value>
|
||||
</data>
|
||||
<data name="rbArVerify.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="rbArVerify.Text" xml:space="preserve">
|
||||
<value>&Verify</value>
|
||||
<value>&Verify, don't encode</value>
|
||||
</data>
|
||||
<data name="rbArVerify.ToolTip" xml:space="preserve">
|
||||
<value>Contact the AccurateRip databse for validation and compare the image against database</value>
|
||||
@@ -1315,16 +1348,16 @@
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="rbArNone.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>11, 18</value>
|
||||
<value>8, 37</value>
|
||||
</data>
|
||||
<data name="rbArNone.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>81, 17</value>
|
||||
<value>123, 17</value>
|
||||
</data>
|
||||
<data name="rbArNone.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="rbArNone.Text" xml:space="preserve">
|
||||
<value>&Don't verify</value>
|
||||
<value>&Don't verify, encode</value>
|
||||
</data>
|
||||
<data name="rbArNone.ToolTip" xml:space="preserve">
|
||||
<value>Don't contact the AccurateRip database for validation</value>
|
||||
@@ -1341,30 +1374,6 @@
|
||||
<data name=">>rbArNone.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="grpAccurateRip.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>238, 211</value>
|
||||
</data>
|
||||
<data name="grpAccurateRip.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>144, 118</value>
|
||||
</data>
|
||||
<data name="grpAccurateRip.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name="grpAccurateRip.Text" xml:space="preserve">
|
||||
<value>AccurateRip</value>
|
||||
</data>
|
||||
<data name=">>grpAccurateRip.Name" xml:space="preserve">
|
||||
<value>grpAccurateRip</value>
|
||||
</data>
|
||||
<data name=">>grpAccurateRip.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>grpAccurateRip.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>grpAccurateRip.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>0, 339</value>
|
||||
</metadata>
|
||||
@@ -1437,6 +1446,33 @@
|
||||
<data name=">>btnCUECreator.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="rbAPE.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="rbAPE.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>11, 51</value>
|
||||
</data>
|
||||
<data name="rbAPE.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>44, 17</value>
|
||||
</data>
|
||||
<data name="rbAPE.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>7</value>
|
||||
</data>
|
||||
<data name="rbAPE.Text" xml:space="preserve">
|
||||
<value>APE</value>
|
||||
</data>
|
||||
<data name=">>rbAPE.Name" xml:space="preserve">
|
||||
<value>rbAPE</value>
|
||||
</data>
|
||||
<data name=">>rbAPE.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>rbAPE.Parent" xml:space="preserve">
|
||||
<value>grpAudioOutput</value>
|
||||
</data>
|
||||
<data name=">>rbAPE.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
|
||||
33
CUETools/frmSettings.Designer.cs
generated
33
CUETools/frmSettings.Designer.cs
generated
@@ -26,6 +26,7 @@ namespace JDP {
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.Windows.Forms.Button btnCancel;
|
||||
this.grpGeneral = new System.Windows.Forms.GroupBox();
|
||||
this.chkEmbedLog = new System.Windows.Forms.CheckBox();
|
||||
this.numericWriteOffset = new System.Windows.Forms.NumericUpDown();
|
||||
this.chkAutoCorrectFilenames = new System.Windows.Forms.CheckBox();
|
||||
this.chkPreserveHTOA = new System.Windows.Forms.CheckBox();
|
||||
@@ -65,7 +66,7 @@ namespace JDP {
|
||||
this.lblTrackFilenameFormat = new System.Windows.Forms.Label();
|
||||
this.lblSingleFilenameFormat = new System.Windows.Forms.Label();
|
||||
this.txtSingleFilenameFormat = new System.Windows.Forms.TextBox();
|
||||
this.chkEmbedLog = new System.Windows.Forms.CheckBox();
|
||||
this.chkFillUpCUE = new System.Windows.Forms.CheckBox();
|
||||
btnCancel = new System.Windows.Forms.Button();
|
||||
this.grpGeneral.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numericWriteOffset)).BeginInit();
|
||||
@@ -93,6 +94,7 @@ namespace JDP {
|
||||
//
|
||||
// grpGeneral
|
||||
//
|
||||
this.grpGeneral.Controls.Add(this.chkFillUpCUE);
|
||||
this.grpGeneral.Controls.Add(this.chkEmbedLog);
|
||||
this.grpGeneral.Controls.Add(this.numericWriteOffset);
|
||||
this.grpGeneral.Controls.Add(this.chkAutoCorrectFilenames);
|
||||
@@ -105,6 +107,17 @@ namespace JDP {
|
||||
this.grpGeneral.TabStop = false;
|
||||
this.grpGeneral.Text = "General";
|
||||
//
|
||||
// chkEmbedLog
|
||||
//
|
||||
this.chkEmbedLog.AutoSize = true;
|
||||
this.chkEmbedLog.Location = new System.Drawing.Point(12, 78);
|
||||
this.chkEmbedLog.Name = "chkEmbedLog";
|
||||
this.chkEmbedLog.Size = new System.Drawing.Size(134, 17);
|
||||
this.chkEmbedLog.TabIndex = 6;
|
||||
this.chkEmbedLog.Text = "Embed log file as a tag";
|
||||
this.toolTip1.SetToolTip(this.chkEmbedLog, "File should be in the same directory as source file and have a .log extension");
|
||||
this.chkEmbedLog.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// numericWriteOffset
|
||||
//
|
||||
this.numericWriteOffset.Location = new System.Drawing.Point(133, 20);
|
||||
@@ -600,16 +613,15 @@ namespace JDP {
|
||||
this.txtSingleFilenameFormat.TabIndex = 2;
|
||||
this.txtSingleFilenameFormat.Text = "%F";
|
||||
//
|
||||
// chkEmbedLog
|
||||
// chkFillUpCUE
|
||||
//
|
||||
this.chkEmbedLog.AutoSize = true;
|
||||
this.chkEmbedLog.Location = new System.Drawing.Point(12, 78);
|
||||
this.chkEmbedLog.Name = "chkEmbedLog";
|
||||
this.chkEmbedLog.Size = new System.Drawing.Size(134, 17);
|
||||
this.chkEmbedLog.TabIndex = 6;
|
||||
this.chkEmbedLog.Text = "Embed log file as a tag";
|
||||
this.toolTip1.SetToolTip(this.chkEmbedLog, "File should be in the same directory as source file and have a .log extension");
|
||||
this.chkEmbedLog.UseVisualStyleBackColor = true;
|
||||
this.chkFillUpCUE.AutoSize = true;
|
||||
this.chkFillUpCUE.Location = new System.Drawing.Point(12, 95);
|
||||
this.chkFillUpCUE.Name = "chkFillUpCUE";
|
||||
this.chkFillUpCUE.Size = new System.Drawing.Size(187, 17);
|
||||
this.chkFillUpCUE.TabIndex = 7;
|
||||
this.chkFillUpCUE.Text = "Fill up missing CUE data from tags";
|
||||
this.chkFillUpCUE.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// frmSettings
|
||||
//
|
||||
@@ -697,6 +709,7 @@ namespace JDP {
|
||||
private System.Windows.Forms.CheckBox chkArFixOffset;
|
||||
private System.Windows.Forms.Label label4;
|
||||
private System.Windows.Forms.CheckBox chkEmbedLog;
|
||||
private System.Windows.Forms.CheckBox chkFillUpCUE;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -42,6 +42,7 @@ namespace JDP {
|
||||
chkArNoUnverifiedAudio.Checked = _config.noUnverifiedOutput;
|
||||
chkArFixOffset.Checked = _config.fixOffset;
|
||||
chkEmbedLog.Checked = _config.embedLog;
|
||||
chkFillUpCUE.Checked = _config.fillUpCUE;
|
||||
}
|
||||
|
||||
private void frmSettings_FormClosing(object sender, FormClosingEventArgs e) {
|
||||
@@ -94,6 +95,7 @@ namespace JDP {
|
||||
_config.noUnverifiedOutput = chkArNoUnverifiedAudio.Checked;
|
||||
_config.fixOffset = chkArFixOffset.Checked;
|
||||
_config.embedLog = chkEmbedLog.Checked;
|
||||
_config.fillUpCUE = chkFillUpCUE.Checked;
|
||||
}
|
||||
|
||||
private void chkArFixOffset_CheckedChanged(object sender, EventArgs e)
|
||||
|
||||
@@ -123,10 +123,4 @@
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
Reference in New Issue
Block a user