"mp4"
};
-FFmpegEncoder::Format formats[] = {
- FFmpegEncoder::FORMAT_PRORES,
- FFmpegEncoder::FORMAT_H264,
+ExportFormat formats[] = {
+ EXPORT_FORMAT_PRORES,
+ EXPORT_FORMAT_H264,
};
ExportDialog::ExportDialog (wxWindow* parent)
add_spacer ();
_mixdown = new wxCheckBox (this, wxID_ANY, _("Mix audio down to stereo"));
add (_mixdown, false);
+ add_spacer ();
+ _split_reels = new wxCheckBox (this, wxID_ANY, _("Write reels into separate files"));
+ add (_split_reels, false);
+ _x264_crf_label[0] = add (_("Quality"), true);
+ _x264_crf = new wxSlider (this, wxID_ANY, 23, 0, 51, wxDefaultPosition, wxDefaultSize, wxSL_HORIZONTAL | wxSL_LABELS);
+ add (_x264_crf, false);
+ add_spacer ();
+ _x264_crf_label[1] = add (_("0 is best, 51 is worst"), false);
+ wxFont font = _x264_crf_label[1]->GetFont();
+ font.SetStyle(wxFONTSTYLE_ITALIC);
+ font.SetPointSize(font.GetPointSize() - 1);
+ _x264_crf_label[1]->SetFont(font);
+
add (_("Output file"), true);
_file = new FilePickerCtrl (this, _("Select output file"), format_filters[0], false);
add (_file);
}
_format->SetSelection (0);
+ _x264_crf->Enable (false);
+ for (int i = 0; i < 2; ++i) {
+ _x264_crf_label[i]->Enable (false);
+ }
+
_format->Bind (wxEVT_CHOICE, bind (&ExportDialog::format_changed, this));
_file->Bind (wxEVT_FILEPICKER_CHANGED, bind (&ExportDialog::file_changed, this));
DCPOMATIC_ASSERT (_format->GetSelection() >= 0 && _format->GetSelection() < FORMATS);
_file->SetWildcard (format_filters[_format->GetSelection()]);
_file->SetPath ("");
+ _x264_crf->Enable (_format->GetSelection() == 1);
+ for (int i = 0; i < 2; ++i) {
+ _x264_crf_label[i]->Enable (_format->GetSelection() == 1);
+ }
}
boost::filesystem::path
return wx_to_std (fn.GetFullPath());
}
-FFmpegEncoder::Format
+ExportFormat
ExportDialog::format () const
{
DCPOMATIC_ASSERT (_format->GetSelection() >= 0 && _format->GetSelection() < FORMATS);
return _mixdown->GetValue ();
}
+bool
+ExportDialog::split_reels () const
+{
+ return _split_reels->GetValue ();
+}
+
+int
+ExportDialog::x264_crf () const
+{
+ return _x264_crf->GetValue ();
+}
+
void
ExportDialog::file_changed ()
{