Update flake library to latest version.

This commit is contained in:
2020-04-22 17:44:05 +01:00
parent 00e65e37e9
commit 4d22b31b93
12 changed files with 868 additions and 350 deletions

6
.gitmodules vendored
View File

@@ -1,9 +1,6 @@
[submodule "CICMMetadata"]
path = CICMMetadata
url = https://github.com/claunia/CICMMetadata
[submodule "cuetoolsnet"]
path = cuetoolsnet
url = https://github.com/claunia/cuetoolsnet.git
[submodule "Aaru.Checksums"]
path = Aaru.Checksums
url = https://github.com/aaru-dps/Aaru.Checksums
@@ -22,3 +19,6 @@
[submodule "Aaru.Helpers"]
path = Aaru.Helpers
url = https://github.com/aaru-dps/Aaru.Helpers
[submodule "cuetools.net"]
path = cuetools.net
url = https://github.com/gchudov/cuetools.net

File diff suppressed because it is too large Load Diff

View File

@@ -14,6 +14,7 @@
<mapping directory="$PROJECT_DIR$/Aaru.Dto" vcs="Git" />
<mapping directory="$PROJECT_DIR$/Aaru.Helpers" vcs="Git" />
<mapping directory="$PROJECT_DIR$/CICMMetadata" vcs="Git" />
<mapping directory="$PROJECT_DIR$/cuetoolsnet" vcs="Git" />
<mapping directory="$PROJECT_DIR$/cuetools.net" vcs="Git" />
<mapping directory="$PROJECT_DIR$/oxyplot-avalonia" vcs="Git" />
</component>
</project>

View File

@@ -53,184 +53,10 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\ChannelMode.cs">
<Link>CUETools.Codecs.FLAKE/ChannelMode.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\FlacFrame.cs">
<Link>CUETools.Codecs.FLAKE/FlacFrame.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\FlacSubframe.cs">
<Link>CUETools.Codecs.FLAKE/FlacSubframe.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\FlacSubframeInfo.cs">
<Link>CUETools.Codecs.FLAKE/FlacSubframeInfo.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\Flake.cs">
<Link>CUETools.Codecs.FLAKE/Flake.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\FlakeReader.cs">
<Link>CUETools.Codecs.FLAKE/FlakeReader.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\FlakeWriter.cs">
<Link>CUETools.Codecs.FLAKE/FlakeWriter.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\MetadataType.cs">
<Link>CUETools.Codecs.FLAKE/MetadataType.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\OrderMethod.cs">
<Link>CUETools.Codecs.FLAKE/OrderMethod.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\PredictionType.cs">
<Link>CUETools.Codecs.FLAKE/PredictionType.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\Properties\Resources.Designer.cs">
<Link>CUETools.Codecs.FLAKE/Properties/Resources.Designer.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\RiceContext.cs">
<Link>CUETools.Codecs.FLAKE/RiceContext.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\SeekPoint.cs">
<Link>CUETools.Codecs.FLAKE/SeekPoint.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\StereoMethod.cs">
<Link>CUETools.Codecs.FLAKE/StereoMethod.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\SubframeType.cs">
<Link>CUETools.Codecs.FLAKE/SubframeType.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\WindowFunction.cs">
<Link>CUETools.Codecs.FLAKE/WindowFunction.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\WindowMethod.cs">
<Link>CUETools.Codecs.FLAKE/WindowMethod.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\AudioBuffer.cs">
<Link>CUETools.Codecs/AudioBuffer.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\AudioDecoderClass.cs">
<Link>CUETools.Codecs/AudioDecoderClass.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\AudioEncoderClass.cs">
<Link>CUETools.Codecs/AudioEncoderClass.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\AudioEncoderSettings.cs">
<Link>CUETools.Codecs/AudioEncoderSettings.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\AudioPCMConfig.cs">
<Link>CUETools.Codecs/AudioPCMConfig.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\AudioPipe.cs">
<Link>CUETools.Codecs/AudioPipe.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\AudioSamples.cs">
<Link>CUETools.Codecs/AudioSamples.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\BitReader.cs">
<Link>CUETools.Codecs/BitReader.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\BitWriter.cs">
<Link>CUETools.Codecs/BitWriter.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CRC\CRC16.cs">
<Link>CUETools.Codecs/CRC/CRC16.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CRC\CRC16CCITT.cs">
<Link>CUETools.Codecs/CRC/CRC16CCITT.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CRC\CRC32.cs">
<Link>CUETools.Codecs/CRC/CRC32.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CRC\CRC8.cs">
<Link>CUETools.Codecs/CRC/CRC8.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CUEToolsCodecsConfig.cs">
<Link>CUETools.Codecs/CUEToolsCodecsConfig.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CUEToolsFormat.cs">
<Link>CUETools.Codecs/CUEToolsFormat.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CUEToolsTagger.cs">
<Link>CUETools.Codecs/CUEToolsTagger.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CUEToolsUDC.cs">
<Link>CUETools.Codecs/CUEToolsUDC.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CUEToolsUDCList.cs">
<Link>CUETools.Codecs/CUEToolsUDCList.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CyclicBuffer.cs">
<Link>CUETools.Codecs/CyclicBuffer.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CyclicBufferInputStream.cs">
<Link>CUETools.Codecs/CyclicBufferInputStream.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\CyclicBufferOutputStream.cs">
<Link>CUETools.Codecs/CyclicBufferOutputStream.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\DefaultValueForMode.cs">
<Link>CUETools.Codecs/DefaultValueForMode.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\DummyWriter.cs">
<Link>CUETools.Codecs/DummyWriter.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\IAudioDest.cs">
<Link>CUETools.Codecs/IAudioDest.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\IAudioFilter.cs">
<Link>CUETools.Codecs/IAudioFilter.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\IAudioSource.cs">
<Link>CUETools.Codecs/IAudioSource.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\IWavePlayer.cs">
<Link>CUETools.Codecs/IWavePlayer.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\LPC.cs">
<Link>CUETools.Codecs/LPC.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\LpcContext.cs">
<Link>CUETools.Codecs/LpcContext.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\NullStream.cs">
<Link>CUETools.Codecs/NullStream.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\PlaybackState.cs">
<Link>CUETools.Codecs/PlaybackState.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\SilenceGenerator.cs">
<Link>CUETools.Codecs/SilenceGenerator.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\SRDescriptionAttribute.cs">
<Link>CUETools.Codecs/SRDescriptionAttribute.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\UserDefinedEncoderSettings.cs">
<Link>CUETools.Codecs/UserDefinedEncoderSettings.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\UserDefinedReader.cs">
<Link>CUETools.Codecs/UserDefinedReader.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\UserDefinedWriter.cs">
<Link>CUETools.Codecs/UserDefinedWriter.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\WAVReader.cs">
<Link>CUETools.Codecs/WAVReader.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\WAVWriter.cs">
<Link>CUETools.Codecs/WAVWriter.cs</Link>
</Compile>
<Compile Include="..\cuetoolsnet\CUETools.Codecs\WAVWriterSettings.cs">
<Link>CUETools.Codecs/WAVWriterSettings.cs</Link>
</Compile>
<Compile Include="AppleRle.cs" />
<Compile Include="TeleDiskLzh.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\Properties\Resources.resx">
<Link>CUETools.Codecs.FLAKE/Properties/Resources.resx</Link>
</Content>
<Content Include="..\cuetoolsnet\CUETools.Codecs.FLAKE\Properties\Resources.ru-RU.resx">
<Link>CUETools.Codecs.FLAKE/Properties/Resources.ru-RU.resx</Link>
</Content>
<Content Include="..\LICENSE.LGPL">
<Link>LICENSE.LGPL</Link>
</Content>

View File

@@ -536,6 +536,7 @@
<Project>{D571B8EF-903D-4353-BDD5-B834F9F029EF}</Project>
<Name>Aaru.Filters</Name>
</ProjectReference>
<ProjectReference Include="..\cuetools.net\CUETools.Codecs.FLAKE\CUETools.Codecs.FLAKE.csproj" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="..\LICENSE.LGPL">

View File

@@ -76,7 +76,8 @@ using Aaru.Checksums;
using Aaru.CommonTypes.Enums;
using Aaru.CommonTypes.Interfaces;
using Aaru.CommonTypes.Structs;
using CUETools.Codecs.FLAKE;
using CUETools.Codecs;
using CUETools.Codecs.Flake;
using SharpCompress.Compressors.LZMA;
namespace Aaru.DiscImages
@@ -108,9 +109,9 @@ namespace Aaru.DiscImages
/// <summary>On-memory deduplication table indexed by checksum.</summary>
Dictionary<string, ulong> deduplicationTable;
/// <summary><see cref="CUETools.Codecs.FLAKE" /> writer.</summary>
FlakeWriter flakeWriter;
AudioEncoder flakeWriter;
/// <summary><see cref="CUETools.Codecs.FLAKE" /> settings.</summary>
FlakeWriterSettings flakeWriterSettings;
EncoderSettings flakeWriterSettings;
/// <summary>Block with logical geometry.</summary>
GeometryBlock geometryBlock;
/// <summary>Image header.</summary>

View File

@@ -46,7 +46,7 @@ using Aaru.CommonTypes.Interfaces;
using Aaru.CommonTypes.Structs;
using Aaru.Console;
using CUETools.Codecs;
using CUETools.Codecs.FLAKE;
using CUETools.Codecs.Flake;
using Schemas;
using SharpCompress.Compressors.LZMA;
using Marshal = Aaru.Helpers.Marshal;
@@ -1190,7 +1190,7 @@ namespace Aaru.DiscImages
byte[] flacBlock = new byte[blockHeader.cmpLength];
imageStream.Read(flacBlock, 0, flacBlock.Length);
var flacMs = new MemoryStream(flacBlock);
var flakeReader = new FlakeReader("", flacMs);
var flakeReader = new AudioDecoder(new DecoderSettings(), "", flacMs);
block = new byte[blockHeader.length];
int samples = (int)((block.Length / blockHeader.sectorSize) * 588);
var audioBuffer = new AudioBuffer(AudioPCMConfig.RedBook, block, samples);

View File

@@ -47,7 +47,7 @@ using Aaru.CommonTypes.Structs;
using Aaru.Console;
using Aaru.Decoders;
using CUETools.Codecs;
using CUETools.Codecs.FLAKE;
using CUETools.Codecs.Flake;
using Schemas;
using SharpCompress.Compressors.LZMA;
using Marshal = Aaru.Helpers.Marshal;
@@ -904,7 +904,7 @@ namespace Aaru.DiscImages
// Initialize compressors properties (all maxed)
lzmaEncoderProperties = new LzmaEncoderProperties(true, (int)dictionary, 273);
flakeWriterSettings = new FlakeWriterSettings
flakeWriterSettings = new EncoderSettings()
{
PCM = AudioPCMConfig.RedBook, DoMD5 = false,
BlockSize = (1 << shift) * SAMPLES_PER_SECTOR,
@@ -926,7 +926,7 @@ namespace Aaru.DiscImages
if(flakeWriterSettings.BlockSize < MIN_FLAKE_BLOCK)
flakeWriterSettings.BlockSize = MIN_FLAKE_BLOCK;
FlakeWriter.Vendor = "Aaru";
AudioEncoder.Vendor = "Aaru";
IsWriting = true;
ErrorMessage = null;
@@ -1152,7 +1152,7 @@ namespace Aaru.DiscImages
switch(currentBlockHeader.compression)
{
case CompressionType.Flac:
flakeWriter = new FlakeWriter("", blockStream, flakeWriterSettings)
flakeWriter = new AudioEncoder(flakeWriterSettings, "", blockStream)
{
DoSeekTable = false
};

View File

@@ -35,6 +35,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aaru.Database", "Aaru.Datab
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Aaru.Dto", "Aaru.Dto\Aaru.Dto.csproj", "{F4399FF5-9BD0-475A-9EA7-3DAE45291FE2}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.Codecs.FLAKE", "cuetools.net\CUETools.Codecs.FLAKE\CUETools.Codecs.FLAKE.csproj", "{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.Codecs", "cuetools.net\CUETools.Codecs\CUETools.Codecs.csproj", "{D1F69B02-A6A4-4EF2-A916-815BACC18F71}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -171,6 +175,22 @@ Global
{F4399FF5-9BD0-475A-9EA7-3DAE45291FE2}.Release|Any CPU.Build.0 = Release|Any CPU
{F4399FF5-9BD0-475A-9EA7-3DAE45291FE2}.Release|x86.ActiveCfg = Release|Any CPU
{F4399FF5-9BD0-475A-9EA7-3DAE45291FE2}.Release|x86.Build.0 = Release|Any CPU
{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}.Debug|x86.ActiveCfg = Debug|Any CPU
{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}.Debug|x86.Build.0 = Debug|Any CPU
{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}.Release|Any CPU.Build.0 = Release|Any CPU
{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}.Release|x86.ActiveCfg = Release|Any CPU
{A6E2C380-F8CB-4873-8DA6-0BB027C48EBC}.Release|x86.Build.0 = Release|Any CPU
{D1F69B02-A6A4-4EF2-A916-815BACC18F71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D1F69B02-A6A4-4EF2-A916-815BACC18F71}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D1F69B02-A6A4-4EF2-A916-815BACC18F71}.Debug|x86.ActiveCfg = Debug|Any CPU
{D1F69B02-A6A4-4EF2-A916-815BACC18F71}.Debug|x86.Build.0 = Debug|Any CPU
{D1F69B02-A6A4-4EF2-A916-815BACC18F71}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D1F69B02-A6A4-4EF2-A916-815BACC18F71}.Release|Any CPU.Build.0 = Release|Any CPU
{D1F69B02-A6A4-4EF2-A916-815BACC18F71}.Release|x86.ActiveCfg = Release|Any CPU
{D1F69B02-A6A4-4EF2-A916-815BACC18F71}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

0
build.sh Executable file → Normal file
View File

1
cuetools.net Submodule

Submodule cuetools.net added at 124b532b9e

Submodule cuetoolsnet deleted from 42adab0138