Initial checkin (from Availo)

This commit is contained in:
chudov
2011-10-23 23:05:45 +00:00
parent 1d743c4a9e
commit 5ffb678eb4
3 changed files with 456 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
using System;
namespace CUETools.Codecs.LAME
{
public class LameException: Exception
{
public LameException(string message)
: base(message)
{
}
}
public enum LameQuality
{
High,
}
public enum LameVbrMode
{
Off,
Default,
Abr,
}
public class LameWriterSettings
{
public LameQuality Quality { get; set; }
public LameVbrMode VbrMode { get; set; }
public int VbrQuality { get; set; }
public int Bitrate { get; set; }
public LameWriterSettings()
{
Quality = LameQuality.High;
VbrMode = LameVbrMode.Default;
VbrQuality = 5;
}
public static LameWriterSettings CreateCbr(int bitrate, LameQuality encodeQuality = LameQuality.High)
{
return new LameWriterSettings() { VbrMode = LameVbrMode.Off, Bitrate = bitrate, Quality = encodeQuality };
}
public static LameWriterSettings CreateAbr(int bitrate, LameQuality encodeQuality = LameQuality.High)
{
return new LameWriterSettings() { VbrMode = LameVbrMode.Abr, Bitrate = bitrate, Quality = encodeQuality };
}
public static LameWriterSettings CreateVbr(int vbrQuality, LameQuality encodeQuality = LameQuality.High)
{
return new LameWriterSettings() { VbrMode = LameVbrMode.Default, VbrQuality = vbrQuality, Quality = encodeQuality };
}
}
}