Add blend export to GuiRenderSettings
This commit is contained in:
@@ -82,10 +82,10 @@ public class RenderSettings {
|
||||
}
|
||||
|
||||
public boolean hasBitrateSetting() {
|
||||
return preset.contains("%BITRATE%");
|
||||
return preset != null && preset.contains("%BITRATE%");
|
||||
}
|
||||
|
||||
public boolean isYuv420() { return preset.contains("-pix_fmt yuv420p"); }
|
||||
public boolean isYuv420() { return preset != null && preset.contains("-pix_fmt yuv420p"); }
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
|
||||
@@ -59,6 +59,14 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
new GuiDropdownMenu<RenderSettings.RenderMethod>().onSelection(new Consumer<Integer>() {
|
||||
@Override
|
||||
public void consume(Integer old) {
|
||||
if (renderMethodDropdown.getSelectedValue() == RenderSettings.RenderMethod.BLEND
|
||||
^ encodingPresetDropdown.getSelectedValue() == RenderSettings.EncodingPreset.BLEND) {
|
||||
if (renderMethodDropdown.getSelectedValue() == RenderSettings.RenderMethod.BLEND) {
|
||||
encodingPresetDropdown.setSelected(RenderSettings.EncodingPreset.BLEND);
|
||||
} else {
|
||||
encodingPresetDropdown.setSelected(RenderSettings.EncodingPreset.MP4_DEFAULT);
|
||||
}
|
||||
}
|
||||
updateInputs();
|
||||
}
|
||||
}).setMinSize(new Dimension(0, 20)).setValues(RenderSettings.RenderMethod.values());
|
||||
@@ -75,6 +83,10 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
@Override
|
||||
public void consume(Integer old) {
|
||||
RenderSettings.EncodingPreset newPreset = encodingPresetDropdown.getSelectedValue();
|
||||
if (newPreset == RenderSettings.EncodingPreset.BLEND
|
||||
&& encodingPresetDropdown.getSelectedValue() == RenderSettings.EncodingPreset.BLEND) {
|
||||
renderMethodDropdown.setSelected(RenderSettings.RenderMethod.BLEND);
|
||||
}
|
||||
// Update export arguments to match new Preset
|
||||
exportArguments.setText(newPreset.getValue());
|
||||
// If the user hasn't changed the output file by themselves,
|
||||
@@ -361,6 +373,17 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
injectSphericalMetadata.setDisabled().setTooltip(new GuiTooltip().setColor(Colors.RED)
|
||||
.setI18nText("replaymod.gui.rendersettings.sphericalmetadata.error"));
|
||||
}
|
||||
|
||||
// Enable/Disable various options for blend export
|
||||
boolean isBlend = renderMethod == RenderSettings.RenderMethod.BLEND;
|
||||
if (isBlend) {
|
||||
videoWidth.setDisabled();
|
||||
videoHeight.setDisabled();
|
||||
}
|
||||
encodingPresetDropdown.setEnabled(!isBlend);
|
||||
exportCommand.setEnabled(!isBlend);
|
||||
exportArguments.setEnabled(!isBlend);
|
||||
antiAliasingDropdown.setEnabled(!isBlend);
|
||||
}
|
||||
|
||||
protected String updateResolution() {
|
||||
|
||||
Reference in New Issue
Block a user