2.0.9 release

This commit is contained in:
chudov
2010-05-18 17:18:37 +00:00
parent 04891612f5
commit 769a85f827
82 changed files with 3593 additions and 2517 deletions

View File

@@ -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; }