Files
cuetools.net/CUETools.Codecs.LAME/LameWriterSettings.cs

55 lines
1.5 KiB
C#
Raw Normal View History

2011-10-23 23:05:45 +00:00
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 };
}
}
}