diff --git a/ArCueDotNet/ArCueDotNet.csproj b/ArCueDotNet/ArCueDotNet.csproj new file mode 100644 index 0000000..ff203bc --- /dev/null +++ b/ArCueDotNet/ArCueDotNet.csproj @@ -0,0 +1,97 @@ + + + Debug + AnyCPU + 8.0.50727 + 2.0 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728} + Exe + Properties + ArCueDotNet + ArCueDotNet + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + true + ..\bin\x64\Debug\ + DEBUG;TRACE + full + x64 + C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules + true + GlobalSuppressions.cs + prompt + + + bin\x64\Release\ + TRACE + true + pdbonly + x64 + C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules + true + GlobalSuppressions.cs + prompt + + + true + ..\bin\win32\Debug\ + DEBUG;TRACE + full + x86 + C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules + true + GlobalSuppressions.cs + prompt + + + ..\bin\win32\Release\ + TRACE + true + pdbonly + x86 + C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules + true + GlobalSuppressions.cs + prompt + + + + + + + + + + + + + {4911BD82-49EF-4858-8B51-5394F86739A4} + CUEToolsLib + + + + + \ No newline at end of file diff --git a/ArCueDotNet/Program.cs b/ArCueDotNet/Program.cs new file mode 100644 index 0000000..d0253fc --- /dev/null +++ b/ArCueDotNet/Program.cs @@ -0,0 +1,48 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using CUEToolsLib; + +namespace ArCueDotNet +{ + class Program + { + static void Main(string[] args) + { + if (args.Length != 1) + { + Console.WriteLine("Usage: ArCueDotNet "); + return; + } + string pathIn = args[0]; + if (!File.Exists(pathIn)) + { + Console.WriteLine("Input CUE Sheet not found."); + return; + } + CUEConfig config = new CUEConfig(); + config.writeArLog = false; + config.writeArTags = false; + config.autoCorrectFilenames = true; + StringWriter sw = new StringWriter(); + try + { + CUESheet cueSheet = new CUESheet(pathIn, config); + cueSheet.GenerateFilenames(OutputAudioFormat.NoAudio, pathIn); + cueSheet.AccurateRip = true; + cueSheet.WriteAudioFiles(Path.GetDirectoryName(pathIn), CUEStyle.SingleFile, new SetStatus(ArCueSetStatus)); + cueSheet.GenerateAccurateRipLog(sw); + } + catch (Exception ex) + { + Console.WriteLine("Error: " + ex.Message); + } + sw.Close(); + Console.Write(sw.ToString()); + } + public static void ArCueSetStatus(string status, uint percentTrack, double percentDisk) + { + } + } +} diff --git a/ArCueDotNet/Properties/AssemblyInfo.cs b/ArCueDotNet/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..6cbc360 --- /dev/null +++ b/ArCueDotNet/Properties/AssemblyInfo.cs @@ -0,0 +1,33 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("ArCueDotNet")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Microsoft")] +[assembly: AssemblyProduct("ArCueDotNet")] +[assembly: AssemblyCopyright("Copyright © Microsoft 2008")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("2da81ac9-8929-42c8-ae27-9431b4f71508")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/CUETools/CUETools.csproj b/CUETools/CUETools.csproj index df44dc1..7dfb35d 100644 --- a/CUETools/CUETools.csproj +++ b/CUETools/CUETools.csproj @@ -75,7 +75,6 @@ - Form @@ -100,7 +99,6 @@ frmSettings.cs - Form @@ -149,20 +147,11 @@ Settings.settings True - - - {9AE965C4-301E-4C01-B90F-297AF341ACC6} - APEDotNet - - - {E70FA90A-7012-4A52-86B5-362B699D1540} - FLACDotNet - - - {CC2E74B6-534A-43D8-9F16-AC03FE955000} - WavPackDotNet + + {4911BD82-49EF-4858-8B51-5394F86739A4} + CUEToolsLib diff --git a/CUETools/CUETools.sln b/CUETools/CUETools.sln index 21562dd..d1abc87 100644 --- a/CUETools/CUETools.sln +++ b/CUETools/CUETools.sln @@ -2,11 +2,6 @@ Microsoft Visual Studio Solution File, Format Version 9.00 # Visual Studio 2005 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools", "CUETools.csproj", "{EF351583-A9CD-4530-92C3-20AC02136BC2}" - ProjectSection(ProjectDependencies) = postProject - {CC2E74B6-534A-43D8-9F16-AC03FE955000} = {CC2E74B6-534A-43D8-9F16-AC03FE955000} - {E70FA90A-7012-4A52-86B5-362B699D1540} = {E70FA90A-7012-4A52-86B5-362B699D1540} - {9AE965C4-301E-4C01-B90F-297AF341ACC6} = {9AE965C4-301E-4C01-B90F-297AF341ACC6} - EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FLACDotNet", "..\FLACDotNet\FLACDotNet.vcproj", "{E70FA90A-7012-4A52-86B5-362B699D1540}" ProjectSection(ProjectDependencies) = postProject @@ -37,6 +32,15 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "APETagDotNet", "..\APETagDo EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libwavpack", "..\wavpack-4.5.0\src\libwavpack.vcproj", "{5CCCB9CF-0384-458F-BA08-72B73866840F}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ArCueDotNet", "..\ArCueDotNet\ArCueDotNet.csproj", "{A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUEToolsLib", "..\CUEToolsLib\CUEToolsLib.csproj", "{4911BD82-49EF-4858-8B51-5394F86739A4}" + ProjectSection(ProjectDependencies) = postProject + {9AE965C4-301E-4C01-B90F-297AF341ACC6} = {9AE965C4-301E-4C01-B90F-297AF341ACC6} + {CC2E74B6-534A-43D8-9F16-AC03FE955000} = {CC2E74B6-534A-43D8-9F16-AC03FE955000} + {E70FA90A-7012-4A52-86B5-362B699D1540} = {E70FA90A-7012-4A52-86B5-362B699D1540} + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -165,6 +169,38 @@ Global {5CCCB9CF-0384-458F-BA08-72B73866840F}.Release|x64.Build.0 = Release|x64 {5CCCB9CF-0384-458F-BA08-72B73866840F}.Release|x86.ActiveCfg = Release|Win32 {5CCCB9CF-0384-458F-BA08-72B73866840F}.Release|x86.Build.0 = Release|Win32 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Debug|Win32.ActiveCfg = Debug|x86 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Debug|Win32.Build.0 = Debug|x86 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Debug|x64.ActiveCfg = Debug|x64 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Debug|x64.Build.0 = Debug|x64 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Debug|x86.ActiveCfg = Debug|x86 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Debug|x86.Build.0 = Debug|x86 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Release|Any CPU.Build.0 = Release|Any CPU + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Release|Win32.ActiveCfg = Release|x86 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Release|Win32.Build.0 = Release|x86 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Release|x64.ActiveCfg = Release|x64 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Release|x64.Build.0 = Release|x64 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Release|x86.ActiveCfg = Release|x86 + {A5A8D8FA-9E32-4010-8AAF-AE580C5AF728}.Release|x86.Build.0 = Release|x86 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4911BD82-49EF-4858-8B51-5394F86739A4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4911BD82-49EF-4858-8B51-5394F86739A4}.Debug|Win32.ActiveCfg = Debug|x86 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Debug|Win32.Build.0 = Debug|x86 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Debug|x64.ActiveCfg = Debug|x64 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Debug|x64.Build.0 = Debug|x64 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Debug|x86.ActiveCfg = Debug|x86 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Debug|x86.Build.0 = Debug|x86 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4911BD82-49EF-4858-8B51-5394F86739A4}.Release|Any CPU.Build.0 = Release|Any CPU + {4911BD82-49EF-4858-8B51-5394F86739A4}.Release|Win32.ActiveCfg = Release|x86 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Release|Win32.Build.0 = Release|x86 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Release|x64.ActiveCfg = Release|x64 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Release|x64.Build.0 = Release|x64 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Release|x86.ActiveCfg = Release|x86 + {4911BD82-49EF-4858-8B51-5394F86739A4}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/CUETools/frmBatch.cs b/CUETools/frmBatch.cs index af7154b..1a34355 100644 --- a/CUETools/frmBatch.cs +++ b/CUETools/frmBatch.cs @@ -6,6 +6,7 @@ using System.Text; using System.Windows.Forms; using System.IO; using System.Threading; +using CUEToolsLib; namespace JDP { diff --git a/CUETools/frmCUETools.cs b/CUETools/frmCUETools.cs index 5e36b78..fc2b5cc 100644 --- a/CUETools/frmCUETools.cs +++ b/CUETools/frmCUETools.cs @@ -32,6 +32,7 @@ using System.Text; using System.Windows.Forms; using System.IO; using System.Threading; +using CUEToolsLib; namespace JDP { public partial class frmCUETools : Form { diff --git a/CUETools/frmFilenameCorrector.cs b/CUETools/frmFilenameCorrector.cs index 2804188..9ef3320 100644 --- a/CUETools/frmFilenameCorrector.cs +++ b/CUETools/frmFilenameCorrector.cs @@ -6,6 +6,7 @@ using System.Text; using System.Windows.Forms; using System.IO; using System.Threading; +using CUEToolsLib; namespace JDP { public partial class frmFilenameCorrector : Form { diff --git a/CUETools/frmSettings.cs b/CUETools/frmSettings.cs index 2bb47be..267c2a5 100644 --- a/CUETools/frmSettings.cs +++ b/CUETools/frmSettings.cs @@ -4,6 +4,7 @@ using System.ComponentModel; using System.Drawing; using System.Text; using System.Windows.Forms; +using CUEToolsLib; namespace JDP { public partial class frmSettings : Form { diff --git a/CUETools/AudioReadWrite.cs b/CUEToolsLib/AudioReadWrite.cs similarity index 95% rename from CUETools/AudioReadWrite.cs rename to CUEToolsLib/AudioReadWrite.cs index 69aadc2..d4de66a 100644 --- a/CUETools/AudioReadWrite.cs +++ b/CUEToolsLib/AudioReadWrite.cs @@ -6,7 +6,7 @@ using APEDotNet; using System.Collections.Generic; using System.Collections.Specialized; -namespace JDP { +namespace CUEToolsLib { public interface IAudioSource { uint Read(byte[] buff, uint sampleCount); ulong Length { get; } diff --git a/CUEToolsLib/CUEToolsLib.csproj b/CUEToolsLib/CUEToolsLib.csproj new file mode 100644 index 0000000..09af809 --- /dev/null +++ b/CUEToolsLib/CUEToolsLib.csproj @@ -0,0 +1,113 @@ + + + Debug + AnyCPU + 8.0.50727 + 2.0 + {4911BD82-49EF-4858-8B51-5394F86739A4} + Library + Properties + CUEToolsLib + CUEToolsLib + + + true + full + false + ..\bin\win32\Debug\ + DEBUG;TRACE + prompt + 4 + true + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + true + + + true + ..\bin\win32\Debug\ + DEBUG;TRACE + full + x86 + C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules + true + GlobalSuppressions.cs + prompt + true + + + ..\bin\win32\Release\ + TRACE + true + true + pdbonly + x86 + C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules + true + GlobalSuppressions.cs + prompt + + + true + ..\bin\x64\Debug\ + DEBUG;TRACE + full + x64 + C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules + true + GlobalSuppressions.cs + prompt + true + + + bin\x64\Release\ + TRACE + true + true + pdbonly + x64 + C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules + true + GlobalSuppressions.cs + prompt + + + + + + + + + + + + + + + {9AE965C4-301E-4C01-B90F-297AF341ACC6} + APEDotNet + + + {E70FA90A-7012-4A52-86B5-362B699D1540} + FLACDotNet + + + {CC2E74B6-534A-43D8-9F16-AC03FE955000} + WavPackDotNet + + + + + \ No newline at end of file diff --git a/CUETools/Main.cs b/CUEToolsLib/Main.cs similarity index 96% rename from CUETools/Main.cs rename to CUEToolsLib/Main.cs index 96defe4..a0be8a5 100644 --- a/CUETools/Main.cs +++ b/CUEToolsLib/Main.cs @@ -27,7 +27,8 @@ using System.Globalization; using System.IO; using System.Net; -namespace JDP { +namespace CUEToolsLib +{ public enum OutputAudioFormat { @@ -38,7 +39,7 @@ namespace JDP { NoAudio } - static class General { + public static class General { public static string FormatExtension(OutputAudioFormat value) { switch (value) @@ -184,9 +185,9 @@ namespace JDP { } } - delegate void SetStatus(string status, uint percentTrack, double percentDisk); + public delegate void SetStatus(string status, uint percentTrack, double percentDisk); - enum CUEStyle { + public enum CUEStyle { SingleFileWithCUE, SingleFile, GapsPrepended, @@ -383,7 +384,7 @@ namespace JDP { } } - class CUESheet { + public class CUESheet { private bool _stop; private List _attributes; private List _tracks; @@ -2124,7 +2125,7 @@ namespace JDP { } } - class CUELine { + public class CUELine { private List _params; private List _quoted; @@ -2199,7 +2200,7 @@ namespace JDP { } } - class TrackInfo { + public class TrackInfo { private List _indexLengths; private List _attributes; public uint[] OffsetedCRC; @@ -2307,7 +2308,7 @@ namespace JDP { } - class StopException : Exception { + public class StopException : Exception { public StopException() : base() { } } diff --git a/CUEToolsLib/Properties/AssemblyInfo.cs b/CUEToolsLib/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..0bfe4fa --- /dev/null +++ b/CUEToolsLib/Properties/AssemblyInfo.cs @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("CUEToolsLib")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("CUEToolsLib")] +[assembly: AssemblyCopyright("Copyright © 2006-2008 Moitah, Gregory S. Chudov")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("d3afb938-f35e-4e5a-b650-7d7a4e885aff")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/CUETools/Settings.cs b/CUEToolsLib/Settings.cs similarity index 95% rename from CUETools/Settings.cs rename to CUEToolsLib/Settings.cs index b32c3dc..43d2250 100644 --- a/CUETools/Settings.cs +++ b/CUEToolsLib/Settings.cs @@ -24,7 +24,8 @@ using System.Collections.Generic; using System.IO; using System.Text; -namespace JDP { +namespace CUEToolsLib +{ static class SettingsShared { public static string GetMyAppDataDir(string appName) { string appDataDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); diff --git a/MAC_SDK/Source/MACLib/Assembly/Assembly.obj b/MAC_SDK/Source/MACLib/Assembly/Assembly.obj index e025056..5347993 100644 Binary files a/MAC_SDK/Source/MACLib/Assembly/Assembly.obj and b/MAC_SDK/Source/MACLib/Assembly/Assembly.obj differ