public void setFfmpegKeepAspect(boolean s) {
config.setProperty(FFMPEG_PARAM_KEEP_ASPECT, s);
}
+ private static final String DISPLAY_CONVERTING = "convert.display_converting";
+
+ public boolean getFfmpegDisplayConverting() {
+ return config.getBoolean(DISPLAY_CONVERTING, true);
+ }
+
+ public void setFfmpegDisplayConverting(boolean s) {
+ config.setProperty(DISPLAY_CONVERTING, s);
+ }
+ private static final String DLL_DISABLE = "convert.dll_disabled";
+
+ public boolean getFfmpegDllDisabled() {
+ return config.getBoolean(DLL_DISABLE, false);
+ }
+
+ public void setFfmpegDllDisabled(boolean s) {
+ config.setProperty(DLL_DISABLE, s);
+ }
private static final String NG_WORD = "ng.word";
@SuppressWarnings("unchecked")
this.ffmpegProfile = new ConfigFfmpegProfile();
this.convert = p.getOutputEnable();
this.ffmpeg = new File(p.getFfmpegPath());
- // TODO コンフィグに設定なし
- this.vhookDisabled = false;
+ this.vhookDisabled = p.getFfmpegDllDisabled();
this.commentOverlay = p.getOutputCommentOverlay();
this.vhook = new File(p.getFfmpegDllPath());
this.tempDir = new File(p.getSystemTempDir());
this.commentOpaque = p.getCommentOpaque();
this.disableFontSizeArrange = p.getFontSizeArrangeDisable();
this.shadowIndex = p.getFontShadow();
- // TODO コンフィグに設定なし
- this.showConverting = true;
+ this.showConverting = p.getFfmpegDisplayConverting();
this.maxNumOfComment = (p.getCommentDisplaySizeDefault()) ? -1 : Integer.parseInt(p.getCommentDisplaySizeManual());
this.ngSetting = new ConfigHideCondition();
btnFfmpegDllPath.addActionListener(
new FileChooseAction(ConfigDialog.this, JFileChooser.FILES_ONLY, fldFfmpegDllPath));
-
GroupLayout gl_jPanel10 = new GroupLayout(pnlFfmpegBinPath);
pnlFfmpegBinPath.setLayout(gl_jPanel10);
gl_jPanel10.setHorizontalGroup(
pnlFfmpegParam.setBorder(BorderFactory.createTitledBorder("ffmpegパラメータ"));
+ // ffmpeg - その他
+ final JPanel pnlFffmpegEtc = new JPanel();
+ pnlFffmpegEtc.setBorder(BorderFactory.createTitledBorder("その他"));
+ final GroupLayout glFfmpegEtc = new GroupLayout(pnlFffmpegEtc);
+ glFfmpegEtc.setAutoCreateContainerGaps(true);
+ glFfmpegEtc.setAutoCreateGaps(true);
+ pnlFffmpegEtc.setLayout(glFfmpegEtc);
+
+ glFfmpegEtc.setHorizontalGroup(glFfmpegEtc.createParallelGroup()
+ .addComponent(cbDisplayConverting)
+ .addComponent(cbDllDisabled)
+ );
+ glFfmpegEtc.setVerticalGroup(glFfmpegEtc.createSequentialGroup()
+ .addComponent(cbDisplayConverting)
+ .addComponent(cbDllDisabled)
+ );
+
final GroupLayout glFfmpeg = new GroupLayout(pnlFfmpeg);
glFfmpeg.setAutoCreateContainerGaps(true);
pnlFfmpeg.setLayout(glFfmpeg);
glFfmpeg.setHorizontalGroup(glFfmpeg.createParallelGroup(GroupLayout.Alignment.LEADING)
.addComponent(pnlFfmpegBinPath)
.addComponent(pnlFfmpegParam)
+ .addComponent(pnlFffmpegEtc)
);
glFfmpeg.setVerticalGroup(glFfmpeg.createSequentialGroup()
.addComponent(pnlFfmpegBinPath, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(pnlFfmpegParam)
+ .addComponent(pnlFffmpegEtc)
);
tabbedPane.addTab("ffmpeg", pnlFfmpeg);
private final JTextField fldFfmpegDllPath;
// ffmpeg - ffmpegパラメータ
private final FfmpegParamPanel pnlFfmpegParam = new FfmpegParamPanel();
+ // ffmpeg - その他
+ private final JCheckBox cbDisplayConverting = new JCheckBox("変換中動画表示");
+ private final JCheckBox cbDllDisabled = new JCheckBox("拡張DLL無効化(デバッグ用)");
// NG設定
// NG設定 - NGワード
private final NgRegisterPanel pnlNgWord = new NgRegisterPanel();
pnlFfmpegParam.init(p);
/*
+ * ffmpeg - その他
+ */
+ cbDisplayConverting.setSelected(p.getFfmpegDisplayConverting());
+ cbDllDisabled.setSelected(p.getFfmpegDllDisabled());
+
+ /*
* NG 設定
*/
final List<String> ngWords = p.getNgWords();
p.setFfmpegKeepAspect(pnlFfmpegParam.cbFfmpegOptionKeepAspect.isSelected());
/*
+ * ffmpeg - その他
+ */
+ p.setFfmpegDisplayConverting(cbDisplayConverting.isSelected());
+ p.setFfmpegDllDisabled(cbDllDisabled.isSelected());
+
+ /*
* NG 設定
*/
p.setNgWords(pnlNgWord.getAllElements());