mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
2.0.9 release
This commit is contained in:
@@ -49,9 +49,10 @@ namespace CUETools.Codecs
|
||||
string Path { get; }
|
||||
|
||||
int CompressionLevel { get; set; }
|
||||
string Options { set; }
|
||||
object Settings { get; set; }
|
||||
long FinalSampleCount { set; }
|
||||
long BlockSize { set; }
|
||||
long Padding { set; }
|
||||
}
|
||||
|
||||
public interface IAudioFilter
|
||||
@@ -75,14 +76,15 @@ namespace CUETools.Codecs
|
||||
/// ...
|
||||
///}</code>
|
||||
/// </example>
|
||||
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
|
||||
[AttributeUsage(AttributeTargets.Class, AllowMultiple = true)]
|
||||
public sealed class AudioEncoderClass : Attribute
|
||||
{
|
||||
private string _encoderName, _extension, _supportedModes, _defaultMode;
|
||||
bool _lossless;
|
||||
int _priority;
|
||||
Type _settings;
|
||||
|
||||
public AudioEncoderClass(string encoderName, string extension, bool lossless, string supportedModes, string defaultMode, int priority)
|
||||
public AudioEncoderClass(string encoderName, string extension, bool lossless, string supportedModes, string defaultMode, int priority, Type settings)
|
||||
{
|
||||
_encoderName = encoderName;
|
||||
_extension = extension;
|
||||
@@ -90,6 +92,7 @@ namespace CUETools.Codecs
|
||||
_defaultMode = defaultMode;
|
||||
_lossless = lossless;
|
||||
_priority = priority;
|
||||
_settings = settings;
|
||||
}
|
||||
|
||||
public string EncoderName
|
||||
@@ -121,6 +124,11 @@ namespace CUETools.Codecs
|
||||
{
|
||||
get { return _priority; }
|
||||
}
|
||||
|
||||
public Type Settings
|
||||
{
|
||||
get { return _settings; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -844,15 +852,24 @@ namespace CUETools.Codecs
|
||||
set { }
|
||||
}
|
||||
|
||||
public string Options
|
||||
public object Settings
|
||||
{
|
||||
get
|
||||
{
|
||||
return null;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (value == null || value == "") return;
|
||||
throw new Exception("Unsupported options " + value);
|
||||
if (value != null && value.GetType() != typeof(object))
|
||||
throw new Exception("Unsupported options " + value);
|
||||
}
|
||||
}
|
||||
|
||||
public long Padding
|
||||
{
|
||||
set { }
|
||||
}
|
||||
|
||||
public long BlockSize
|
||||
{
|
||||
set { }
|
||||
@@ -1164,7 +1181,7 @@ namespace CUETools.Codecs
|
||||
public string Path { get { return _path; } }
|
||||
}
|
||||
|
||||
[AudioEncoderClass("builtin wav", "wav", true, "", "", 10)]
|
||||
[AudioEncoderClass("builtin wav", "wav", true, "", "", 10, typeof(object))]
|
||||
public class WAVWriter : IAudioDest
|
||||
{
|
||||
Stream _IO;
|
||||
@@ -1332,15 +1349,24 @@ namespace CUETools.Codecs
|
||||
set { }
|
||||
}
|
||||
|
||||
public string Options
|
||||
public object Settings
|
||||
{
|
||||
get
|
||||
{
|
||||
return null;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (value == null || value == "") return;
|
||||
throw new Exception("Unsupported options " + value);
|
||||
if (value != null && value.GetType() != typeof(object))
|
||||
throw new Exception("Unsupported options " + value);
|
||||
}
|
||||
}
|
||||
|
||||
public long Padding
|
||||
{
|
||||
set { }
|
||||
}
|
||||
|
||||
public AudioPCMConfig PCM
|
||||
{
|
||||
get { return _pcm; }
|
||||
@@ -1851,15 +1877,24 @@ namespace CUETools.Codecs
|
||||
set { } // !!!! Must not start the process in constructor, so that we can set CompressionLevel!
|
||||
}
|
||||
|
||||
public string Options
|
||||
public object Settings
|
||||
{
|
||||
get
|
||||
{
|
||||
return null;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (value == null || value == "") return;
|
||||
throw new Exception("Unsupported options " + value);
|
||||
if (value != null && value.GetType() != typeof(object))
|
||||
throw new Exception("Unsupported options " + value);
|
||||
}
|
||||
}
|
||||
|
||||
public long Padding
|
||||
{
|
||||
set { }
|
||||
}
|
||||
|
||||
public AudioPCMConfig PCM
|
||||
{
|
||||
get { return wrt.PCM; }
|
||||
|
||||
Reference in New Issue
Block a user