mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
misc
This commit is contained in:
@@ -78,5 +78,8 @@ namespace CUERipper
|
|||||||
|
|
||||||
[DefaultValue(CUETools.Processor.CUEConfigAdvanced.CTDBCoversSearch.Small), Category("CTDB"), DisplayName("Album art search")]
|
[DefaultValue(CUETools.Processor.CUEConfigAdvanced.CTDBCoversSearch.Small), Category("CTDB"), DisplayName("Album art search")]
|
||||||
public CUETools.Processor.CUEConfigAdvanced.CTDBCoversSearch coversSearch { get { return config.advanced.coversSearch; } set { config.advanced.coversSearch = value; } }
|
public CUETools.Processor.CUEConfigAdvanced.CTDBCoversSearch coversSearch { get { return config.advanced.coversSearch; } set { config.advanced.coversSearch = value; } }
|
||||||
|
|
||||||
|
[DefaultValue(false), Category("CTDB"), DisplayName("Detailed log")]
|
||||||
|
public bool DetailedCTDBLog { get { return config.advanced.DetailedCTDBLog; } set { config.advanced.DetailedCTDBLog = value; } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -780,7 +780,7 @@
|
|||||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABy
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABy
|
||||||
CQAAAk1TRnQBSQFMAgEBBAEAAYwBAQGMAQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
CQAAAk1TRnQBSQFMAgEBBAEAAZQBAQGUAQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
@@ -930,7 +930,7 @@
|
|||||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADy
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADy
|
||||||
EAAAAk1TRnQBSQFMAgEBCgEAAYwBAQGMAQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
EAAAAk1TRnQBSQFMAgEBCgEAAZQBAQGUAQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
AwABQAMAATADAAEBAQABCAYAAQwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
AwABQAMAATADAAEBAQABCAYAAQwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
|
|||||||
@@ -24,14 +24,33 @@ namespace CUETools.Codecs
|
|||||||
{
|
{
|
||||||
long seekPos;
|
long seekPos;
|
||||||
|
|
||||||
|
if (_samplePos == value)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var oldSamplePos = _samplePos;
|
||||||
if (_sampleLen >= 0 && value > _sampleLen)
|
if (_sampleLen >= 0 && value > _sampleLen)
|
||||||
_samplePos = _sampleLen;
|
_samplePos = _sampleLen;
|
||||||
else
|
else
|
||||||
_samplePos = value;
|
_samplePos = value;
|
||||||
|
|
||||||
|
if (_IO.CanSeek || _samplePos < oldSamplePos)
|
||||||
|
{
|
||||||
seekPos = _dataOffset + _samplePos * PCM.BlockAlign;
|
seekPos = _dataOffset + _samplePos * PCM.BlockAlign;
|
||||||
_IO.Seek(seekPos, SeekOrigin.Begin);
|
_IO.Seek(seekPos, SeekOrigin.Begin);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int offs = (int)(_samplePos - oldSamplePos) * PCM.BlockAlign;
|
||||||
|
while (offs > 0)
|
||||||
|
{
|
||||||
|
int chunk = Math.Min(offs, 16536);
|
||||||
|
_br.ReadBytes(chunk);
|
||||||
|
offs -= chunk;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public long Length
|
public long Length
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ namespace CUETools.Processor
|
|||||||
encodeWhenZeroOffset = false;
|
encodeWhenZeroOffset = false;
|
||||||
fixOffset = false;
|
fixOffset = false;
|
||||||
noUnverifiedOutput = false;
|
noUnverifiedOutput = false;
|
||||||
writeArTagsOnEncode = true;
|
writeArTagsOnEncode = false;
|
||||||
writeArLogOnConvert = true;
|
writeArLogOnConvert = true;
|
||||||
writeArTagsOnVerify = false;
|
writeArTagsOnVerify = false;
|
||||||
writeArLogOnVerify = false;
|
writeArLogOnVerify = false;
|
||||||
@@ -402,7 +402,7 @@ return processor.Go();
|
|||||||
encodeWhenZeroOffset = sr.LoadBoolean("ArEncodeWhenZeroOffset") ?? false;
|
encodeWhenZeroOffset = sr.LoadBoolean("ArEncodeWhenZeroOffset") ?? false;
|
||||||
noUnverifiedOutput = sr.LoadBoolean("ArNoUnverifiedOutput") ?? false;
|
noUnverifiedOutput = sr.LoadBoolean("ArNoUnverifiedOutput") ?? false;
|
||||||
fixOffset = sr.LoadBoolean("ArFixOffset") ?? false;
|
fixOffset = sr.LoadBoolean("ArFixOffset") ?? false;
|
||||||
writeArTagsOnEncode = sr.LoadBoolean("ArWriteCRC") ?? true;
|
writeArTagsOnEncode = sr.LoadBoolean("ArWriteCRC") ?? writeArTagsOnEncode;
|
||||||
writeArLogOnConvert = sr.LoadBoolean("ArWriteLog") ?? true;
|
writeArLogOnConvert = sr.LoadBoolean("ArWriteLog") ?? true;
|
||||||
writeArTagsOnVerify = sr.LoadBoolean("ArWriteTagsOnVerify") ?? false;
|
writeArTagsOnVerify = sr.LoadBoolean("ArWriteTagsOnVerify") ?? false;
|
||||||
writeArLogOnVerify = sr.LoadBoolean("ArWriteLogOnVerify") ?? false;
|
writeArLogOnVerify = sr.LoadBoolean("ArWriteLogOnVerify") ?? false;
|
||||||
|
|||||||
@@ -84,5 +84,8 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
[DefaultValue(false), Category("CTDB"), DisplayName("Detailed log")]
|
[DefaultValue(false), Category("CTDB"), DisplayName("Detailed log")]
|
||||||
public bool DetailedCTDBLog { get; set; }
|
public bool DetailedCTDBLog { get; set; }
|
||||||
|
|
||||||
|
[DefaultValue(false), Category("Tagging"), DisplayName("Use id3v2.4 instead of id3v2.3")]
|
||||||
|
public bool UseId3v24 { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2508,6 +2508,8 @@ namespace CUETools.Processor
|
|||||||
if (!_isCD)
|
if (!_isCD)
|
||||||
throw new Exception("Not a cd");
|
throw new Exception("Not a cd");
|
||||||
|
|
||||||
|
_ripper.DetectGaps();
|
||||||
|
|
||||||
_arTestVerify = new AccurateRipVerify(_toc, proxy);
|
_arTestVerify = new AccurateRipVerify(_toc, proxy);
|
||||||
var buff = new AudioBuffer(AudioPCMConfig.RedBook, 0x10000);
|
var buff = new AudioBuffer(AudioPCMConfig.RedBook, 0x10000);
|
||||||
while (_ripper.Read(buff, -1) != 0)
|
while (_ripper.Read(buff, -1) != 0)
|
||||||
@@ -3902,7 +3904,17 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (sourceInfo.Offset != 0)
|
if (sourceInfo.Offset != 0)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
audioSource.Position = sourceInfo.Offset;
|
audioSource.Position = sourceInfo.Offset;
|
||||||
|
}
|
||||||
|
catch(Exception ex)
|
||||||
|
{
|
||||||
|
audioSource.Close();
|
||||||
|
throw ex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//if (!(audioSource is AudioPipe) && !(audioSource is UserDefinedReader) && _config.separateDecodingThread)
|
//if (!(audioSource is AudioPipe) && !(audioSource is UserDefinedReader) && _config.separateDecodingThread)
|
||||||
if (!(audioSource is AudioPipe) && pipe)
|
if (!(audioSource is AudioPipe) && pipe)
|
||||||
|
|||||||
@@ -99,6 +99,10 @@ namespace CUETools.Processor
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
value = value.Replace('\n', ' ').Replace('\r', ' ').Replace('"', '\'');
|
||||||
|
if (value.Length > 1024)
|
||||||
|
value = value.Substring(0, 1021) + "...";
|
||||||
|
|
||||||
CUELine line = General.FindCUELine(list, command, command2);
|
CUELine line = General.FindCUELine(list, command, command2);
|
||||||
if (line == null)
|
if (line == null)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ namespace CUETools.Processor
|
|||||||
if (fileInfo is TagLib.Mpeg.AudioFile || (fileInfo is TagLib.UserDefined.File && (fileInfo as TagLib.UserDefined.File).Tagger == CUEToolsTagger.ID3v2))
|
if (fileInfo is TagLib.Mpeg.AudioFile || (fileInfo is TagLib.UserDefined.File && (fileInfo as TagLib.UserDefined.File).Tagger == CUEToolsTagger.ID3v2))
|
||||||
{
|
{
|
||||||
var id3v2 = (TagLib.Id3v2.Tag)fileInfo.GetTag(TagLib.TagTypes.Id3v2, true);
|
var id3v2 = (TagLib.Id3v2.Tag)fileInfo.GetTag(TagLib.TagTypes.Id3v2, true);
|
||||||
|
id3v2.Version = (byte) (config.advanced.UseId3v24 ? 4 : 3);
|
||||||
foreach (string tag in tags.AllKeys)
|
foreach (string tag in tags.AllKeys)
|
||||||
{
|
{
|
||||||
var frame = TagLib.Id3v2.UserTextInformationFrame.Get(id3v2, tag, true);
|
var frame = TagLib.Id3v2.UserTextInformationFrame.Get(id3v2, tag, true);
|
||||||
|
|||||||
@@ -1958,7 +1958,9 @@ namespace JDP
|
|||||||
{
|
{
|
||||||
if (e.Data.GetDataPresent(DataFormats.FileDrop))
|
if (e.Data.GetDataPresent(DataFormats.FileDrop))
|
||||||
{
|
{
|
||||||
if (((e.KeyState & 8) != 0 && FileBrowserState == FileBrowserStateEnum.DragDrop) || FileBrowserState == FileBrowserStateEnum.Checkboxes)
|
if ((e.KeyState & 40) == 40 && FileBrowserState == FileBrowserStateEnum.DragDrop)
|
||||||
|
e.Effect = DragDropEffects.Link;
|
||||||
|
else if (((e.KeyState & 8) != 0 && FileBrowserState == FileBrowserStateEnum.DragDrop) || FileBrowserState == FileBrowserStateEnum.Checkboxes)
|
||||||
e.Effect = DragDropEffects.Copy;
|
e.Effect = DragDropEffects.Copy;
|
||||||
else
|
else
|
||||||
e.Effect = DragDropEffects.Move;
|
e.Effect = DragDropEffects.Move;
|
||||||
@@ -1995,6 +1997,13 @@ namespace JDP
|
|||||||
case FileBrowserStateEnum.DragDrop:
|
case FileBrowserStateEnum.DragDrop:
|
||||||
if (e.Effect == DragDropEffects.Move)
|
if (e.Effect == DragDropEffects.Move)
|
||||||
fileSystemTreeView1.Nodes.Clear();
|
fileSystemTreeView1.Nodes.Clear();
|
||||||
|
if (e.Effect == DragDropEffects.Link)
|
||||||
|
{
|
||||||
|
var lst = new List<string>();
|
||||||
|
for (var i = 0; i < 1024; i++)
|
||||||
|
lst.AddRange(folders);
|
||||||
|
folders = lst.ToArray();
|
||||||
|
}
|
||||||
foreach (string folder in folders)
|
foreach (string folder in folders)
|
||||||
{
|
{
|
||||||
TreeNode node = Directory.Exists(folder)
|
TreeNode node = Directory.Exists(folder)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -33,6 +33,7 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<PlatformToolset>v90</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
|||||||
Reference in New Issue
Block a user