SHA256
Move Codec From Normal Config to Encoding Config
This commit is contained in:
7 files changed
+51
-14
No files matched your search
@@ -15,7 +15,6 @@ namespace ADOFAIRenderer.UI
|
||||
private VisualElement _root = null!;
|
||||
private IntegerInputValidator _intValidator = null!;
|
||||
private DoubleInputValidator _doubleValidator = null!;
|
||||
private EnumDropdownBinder<Codec> _codecBinder = null!;
|
||||
|
||||
private Button _goRenderButton = null!;
|
||||
private Button _encodingConfigButton = null!;
|
||||
@@ -45,10 +44,6 @@ namespace ADOFAIRenderer.UI
|
||||
_intValidator.SetupValidation();
|
||||
_doubleValidator.SetupValidation();
|
||||
|
||||
// Init Enum Binders & Event Listeners
|
||||
_codecBinder = new EnumDropdownBinder<Codec>(_root, "CodecDropdown", Codec.H264);
|
||||
_codecBinder.OnValueChanged(value => RenderManager.Instance.Configuration.Codec = value);
|
||||
|
||||
// Attach Button Event Listener
|
||||
_goRenderButton = _root.Q<Button>("GoRenderButton");
|
||||
_goRenderButton?.RegisterCallback<ClickEvent>(_ => TryGoRender());
|
||||
@@ -91,6 +86,7 @@ namespace ADOFAIRenderer.UI
|
||||
|
||||
var tempConfig = new EncodingConfig
|
||||
{
|
||||
Codec = config.EncodingConfig.Codec,
|
||||
RateControlMode = config.EncodingConfig.RateControlMode,
|
||||
Bitrate = config.EncodingConfig.Bitrate,
|
||||
MaxBitrate = config.EncodingConfig.MaxBitrate,
|
||||
@@ -138,6 +134,20 @@ namespace ADOFAIRenderer.UI
|
||||
titleRow.Add(title);
|
||||
_encodingConfigContainer.Add(titleRow);
|
||||
|
||||
// 2.5. 코덱 로우 (라벨 + 드롭다운)
|
||||
var codecRow = CreateRow();
|
||||
var codecLabel = CreateFormLabel("비디오 코덱");
|
||||
var codecDropdown = new DropdownField { label = "" };
|
||||
foreach (Codec codecVal in System.Enum.GetValues(typeof(Codec)))
|
||||
{
|
||||
codecDropdown.choices.Add(codecVal.ToString());
|
||||
}
|
||||
codecDropdown.value = tempConfig.Codec.ToString();
|
||||
|
||||
codecRow.Add(codecLabel);
|
||||
codecRow.Add(codecDropdown);
|
||||
_encodingConfigContainer.Add(codecRow);
|
||||
|
||||
// 3. 전송률 모드 로우 (라벨 + 드롭다운)
|
||||
var modeRow = CreateRow();
|
||||
var modeLabel = CreateFormLabel("전송률 제어 모드");
|
||||
@@ -259,6 +269,10 @@ namespace ADOFAIRenderer.UI
|
||||
{
|
||||
tempConfig.RateControlMode = mode;
|
||||
}
|
||||
if (System.Enum.TryParse<Codec>(codecDropdown.value, out var codec))
|
||||
{
|
||||
tempConfig.Codec = codec;
|
||||
}
|
||||
tempConfig.Bitrate = bitrateField.value;
|
||||
tempConfig.MaxBitrate = maxBitrateField.value;
|
||||
tempConfig.QP = qpField.value;
|
||||
@@ -411,7 +425,6 @@ namespace ADOFAIRenderer.UI
|
||||
}
|
||||
}
|
||||
|
||||
_codecBinder.SetValue(config.Codec);
|
||||
RenderManager.Instance.Configuration = config;
|
||||
}
|
||||
|
||||
@@ -751,8 +764,7 @@ namespace ADOFAIRenderer.UI
|
||||
VideoFPS = videoFpsField.value,
|
||||
DelayAfterLevelEnd = delayField.value,
|
||||
ShowJudgementText = showJudgementText.value,
|
||||
ProcessAudio = processAudio.value,
|
||||
Codec = _codecBinder.Value
|
||||
ProcessAudio = processAudio.value
|
||||
};
|
||||
|
||||
if (!string.IsNullOrEmpty(randomSeedField.text))
|
||||
@@ -848,6 +860,7 @@ namespace ADOFAIRenderer.UI
|
||||
{
|
||||
return new EncodingConfig
|
||||
{
|
||||
Codec = Codec.H264,
|
||||
RateControlMode = RateControlMode.CBR,
|
||||
Bitrate = 30000, MaxBitrate = 50000,
|
||||
QP = 18, KeyframeInterval = 2.0,
|
||||
|
||||
Reference in new issue
Block a user