2011-10-23 23:05:45 +00:00
|
|
|
|
using System;
|
|
|
|
|
|
|
|
|
|
|
|
namespace CUETools.Codecs.LAME
|
|
|
|
|
|
{
|
2011-10-25 04:47:05 +00:00
|
|
|
|
public class LameWriterConfig
|
2011-10-23 23:05:45 +00:00
|
|
|
|
{
|
|
|
|
|
|
public LameQuality Quality { get; set; }
|
|
|
|
|
|
public LameVbrMode VbrMode { get; set; }
|
|
|
|
|
|
public int VbrQuality { get; set; }
|
|
|
|
|
|
public int Bitrate { get; set; }
|
|
|
|
|
|
|
2011-10-25 04:47:05 +00:00
|
|
|
|
public LameWriterConfig()
|
2011-10-23 23:05:45 +00:00
|
|
|
|
{
|
|
|
|
|
|
Quality = LameQuality.High;
|
|
|
|
|
|
VbrMode = LameVbrMode.Default;
|
|
|
|
|
|
VbrQuality = 5;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2011-10-25 04:47:05 +00:00
|
|
|
|
public static LameWriterConfig CreateCbr(int bitrate, LameQuality encodeQuality = LameQuality.High)
|
2011-10-23 23:05:45 +00:00
|
|
|
|
{
|
2011-10-25 04:47:05 +00:00
|
|
|
|
return new LameWriterConfig() { VbrMode = LameVbrMode.Off, Bitrate = bitrate, Quality = encodeQuality };
|
2011-10-23 23:05:45 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2011-10-25 04:47:05 +00:00
|
|
|
|
public static LameWriterConfig CreateAbr(int bitrate, LameQuality encodeQuality = LameQuality.High)
|
2011-10-23 23:05:45 +00:00
|
|
|
|
{
|
2011-10-25 04:47:05 +00:00
|
|
|
|
return new LameWriterConfig() { VbrMode = LameVbrMode.Abr, Bitrate = bitrate, Quality = encodeQuality };
|
2011-10-23 23:05:45 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2011-10-25 04:47:05 +00:00
|
|
|
|
public static LameWriterConfig CreateVbr(int vbrQuality, LameQuality encodeQuality = LameQuality.High)
|
2011-10-23 23:05:45 +00:00
|
|
|
|
{
|
2011-10-25 04:47:05 +00:00
|
|
|
|
return new LameWriterConfig() { VbrMode = LameVbrMode.Default, VbrQuality = vbrQuality, Quality = encodeQuality };
|
2011-10-23 23:05:45 +00:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|