sequence encapsulation
This commit is contained in:
@@ -92,7 +92,7 @@ ClipPropertiesDialog::ClipPropertiesDialog(QWidget *parent, QVector<Clip *> clip
|
||||
}
|
||||
|
||||
// it's assumed all the clips come from the same sequence
|
||||
duration_field_->SetFrameRate(first_clip->track()->sequence()->frame_rate);
|
||||
duration_field_->SetFrameRate(first_clip->track()->sequence()->frame_rate());
|
||||
|
||||
if (all_clips_have_same_duration) {
|
||||
duration_field_->SetDefault(first_clip->length());
|
||||
|
||||
@@ -72,7 +72,7 @@ ExportDialog::ExportDialog(QWidget *parent, Sequence* sequence) :
|
||||
QDialog(parent),
|
||||
sequence_(sequence)
|
||||
{
|
||||
setWindowTitle(tr("Export \"%1\"").arg(sequence->name));
|
||||
setWindowTitle(tr("Export \"%1\"").arg(sequence->name()));
|
||||
setup_ui();
|
||||
|
||||
rangeCombobox->setCurrentIndex(0);
|
||||
@@ -110,10 +110,10 @@ ExportDialog::ExportDialog(QWidget *parent, Sequence* sequence) :
|
||||
formatCombobox->setCurrentIndex(FORMAT_MPEG4);
|
||||
|
||||
// default to sequence's native dimensions
|
||||
widthSpinbox->setValue(sequence->width);
|
||||
heightSpinbox->setValue(sequence->height);
|
||||
samplingRateSpinbox->setValue(sequence->audio_frequency);
|
||||
framerateSpinbox->setValue(sequence->frame_rate);
|
||||
widthSpinbox->setValue(sequence->width());
|
||||
heightSpinbox->setValue(sequence->height());
|
||||
samplingRateSpinbox->setValue(sequence->audio_frequency());
|
||||
framerateSpinbox->setValue(sequence->frame_rate());
|
||||
|
||||
// set some advanced defaults
|
||||
vcodec_params.threads = 0;
|
||||
@@ -656,7 +656,7 @@ void ExportDialog::comp_type_changed(int) {
|
||||
case COMPRESSION_TYPE_CBR:
|
||||
case COMPRESSION_TYPE_TARGETBR:
|
||||
videoBitrateLabel->setText(tr("Bitrate (Mbps):"));
|
||||
videobitrateSpinbox->setValue(qMax(0.5, (double) qRound((0.01528 * sequence_->height) - 4.5)));
|
||||
videobitrateSpinbox->setValue(qMax(0.5, (double) qRound((0.01528 * sequence_->height()) - 4.5)));
|
||||
break;
|
||||
case COMPRESSION_TYPE_CFR:
|
||||
videoBitrateLabel->setText(tr("Quality (CRF):"));
|
||||
|
||||
@@ -59,20 +59,20 @@ NewSequenceDialog::NewSequenceDialog(QWidget *parent, Media *existing, Sequence*
|
||||
}
|
||||
|
||||
if (existing_sequence != nullptr) {
|
||||
setWindowTitle(tr("Editing \"%1\"").arg(existing_sequence->name));
|
||||
setWindowTitle(tr("Editing \"%1\"").arg(existing_sequence->name()));
|
||||
|
||||
width_numeric->setValue(existing_sequence->width);
|
||||
height_numeric->setValue(existing_sequence->height);
|
||||
int comp_rate = qRound(existing_sequence->frame_rate*100);
|
||||
width_numeric->setValue(existing_sequence->width());
|
||||
height_numeric->setValue(existing_sequence->height());
|
||||
int comp_rate = qRound(existing_sequence->frame_rate()*100);
|
||||
for (int i=0;i<frame_rate_combobox->count();i++) {
|
||||
if (qRound(frame_rate_combobox->itemData(i).toDouble()*100) == comp_rate) {
|
||||
frame_rate_combobox->setCurrentIndex(i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
sequence_name_edit->setText(existing_sequence->name);
|
||||
sequence_name_edit->setText(existing_sequence->name());
|
||||
for (int i=0;i<audio_frequency_combobox->count();i++) {
|
||||
if (audio_frequency_combobox->itemData(i) == existing_sequence->audio_frequency) {
|
||||
if (audio_frequency_combobox->itemData(i) == existing_sequence->audio_frequency()) {
|
||||
audio_frequency_combobox->setCurrentIndex(i);
|
||||
break;
|
||||
}
|
||||
@@ -100,12 +100,12 @@ void NewSequenceDialog::accept() {
|
||||
|
||||
SequencePtr s = std::make_shared<Sequence>();
|
||||
|
||||
s->name = sequence_name_edit->text();
|
||||
s->width = width_numeric->value();
|
||||
s->height = height_numeric->value();
|
||||
s->frame_rate = frame_rate_combobox->currentData().toDouble();
|
||||
s->audio_frequency = audio_frequency_combobox->currentData().toInt();
|
||||
s->audio_layout = AV_CH_LAYOUT_STEREO;
|
||||
s->set_name(sequence_name_edit->text());
|
||||
s->set_width(width_numeric->value());
|
||||
s->set_height(height_numeric->value());
|
||||
s->set_frame_rate(frame_rate_combobox->currentData().toDouble());
|
||||
s->set_audio_frequency(audio_frequency_combobox->currentData().toInt());
|
||||
s->set_audio_layout(AV_CH_LAYOUT_STEREO);
|
||||
|
||||
ComboAction* ca = new ComboAction();
|
||||
olive::project_model.CreateSequence(ca, s, true, nullptr);
|
||||
@@ -117,7 +117,7 @@ void NewSequenceDialog::accept() {
|
||||
|
||||
ComboAction* ca = new ComboAction();
|
||||
|
||||
double multiplier = frame_rate_combobox->currentData().toDouble() / existing_sequence->frame_rate;
|
||||
double multiplier = frame_rate_combobox->currentData().toDouble() / existing_sequence->frame_rate();
|
||||
|
||||
EditSequenceCommand* esc = new EditSequenceCommand(existing_item, existing_item->to_sequence());
|
||||
esc->name = sequence_name_edit->text();
|
||||
@@ -139,12 +139,12 @@ void NewSequenceDialog::accept() {
|
||||
|
||||
// This dialog was given an existing Sequence without a Media wrapper - therefore just directly apply the settings
|
||||
|
||||
existing_sequence->name = sequence_name_edit->text();
|
||||
existing_sequence->width = width_numeric->value();
|
||||
existing_sequence->height = height_numeric->value();
|
||||
existing_sequence->frame_rate = frame_rate_combobox->currentData().toDouble();
|
||||
existing_sequence->audio_frequency = audio_frequency_combobox->currentData().toInt();
|
||||
existing_sequence->audio_layout = AV_CH_LAYOUT_STEREO;
|
||||
existing_sequence->set_name(sequence_name_edit->text());
|
||||
existing_sequence->set_width(width_numeric->value());
|
||||
existing_sequence->set_height(height_numeric->value());
|
||||
existing_sequence->set_frame_rate(frame_rate_combobox->currentData().toDouble());
|
||||
existing_sequence->set_audio_frequency(audio_frequency_combobox->currentData().toInt());
|
||||
existing_sequence->set_audio_layout(AV_CH_LAYOUT_STEREO);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -89,12 +89,12 @@ PreferencesDialog::PreferencesDialog(QWidget *parent) :
|
||||
setup_kbd_shortcuts(olive::MainWindow->menuBar());
|
||||
|
||||
// set up default sequence
|
||||
default_sequence.name = tr("Default Sequence");
|
||||
default_sequence.width = olive::config.default_sequence_width;
|
||||
default_sequence.height = olive::config.default_sequence_height;
|
||||
default_sequence.frame_rate = olive::config.default_sequence_framerate;
|
||||
default_sequence.audio_frequency = olive::config.default_sequence_audio_frequency;
|
||||
default_sequence.audio_layout = olive::config.default_sequence_audio_channel_layout;
|
||||
default_sequence.set_name(tr("Default Sequence"));
|
||||
default_sequence.set_width(olive::config.default_sequence_width);
|
||||
default_sequence.set_height(olive::config.default_sequence_height);
|
||||
default_sequence.set_frame_rate(olive::config.default_sequence_framerate);
|
||||
default_sequence.set_audio_frequency(olive::config.default_sequence_audio_frequency);
|
||||
default_sequence.set_audio_layout(olive::config.default_sequence_audio_channel_layout);
|
||||
}
|
||||
|
||||
void PreferencesDialog::setup_kbd_shortcut_worker(QMenu* menu, QTreeWidgetItem* parent) {
|
||||
@@ -460,11 +460,11 @@ void PreferencesDialog::accept() {
|
||||
|
||||
|
||||
// Set default sequence options
|
||||
olive::config.default_sequence_width = default_sequence.width;
|
||||
olive::config.default_sequence_height = default_sequence.height;
|
||||
olive::config.default_sequence_framerate = default_sequence.frame_rate;
|
||||
olive::config.default_sequence_audio_frequency = default_sequence.audio_frequency;
|
||||
olive::config.default_sequence_audio_channel_layout = default_sequence.audio_layout;
|
||||
olive::config.default_sequence_width = default_sequence.width();
|
||||
olive::config.default_sequence_height = default_sequence.height();
|
||||
olive::config.default_sequence_framerate = default_sequence.frame_rate();
|
||||
olive::config.default_sequence_audio_frequency = default_sequence.audio_frequency();
|
||||
olive::config.default_sequence_audio_channel_layout = default_sequence.audio_layout();
|
||||
|
||||
// Set all bool options
|
||||
for (int i=0;i<bool_ui.size();i++) {
|
||||
|
||||
@@ -61,7 +61,7 @@ SpeedDialog::SpeedDialog(QWidget *parent, QVector<Clip*> clips) : QDialog(parent
|
||||
grid->addWidget(new QLabel(tr("Duration:"), this), 2, 0);
|
||||
duration = new LabelSlider(this);
|
||||
duration->SetDisplayType(LabelSlider::FrameNumber);
|
||||
duration->SetFrameRate(clips_.first()->track()->sequence()->frame_rate);
|
||||
duration->SetFrameRate(clips_.first()->track()->sequence()->frame_rate());
|
||||
grid->addWidget(duration, 2, 1);
|
||||
|
||||
main_layout->addLayout(grid);
|
||||
|
||||
Reference in New Issue
Block a user