mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
Initial checkin (from Availo)
This commit is contained in:
54
CUETools.Codecs.LAME/LameWriterSettings.cs
Normal file
54
CUETools.Codecs.LAME/LameWriterSettings.cs
Normal 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 };
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user