diff --git a/dialogs/exportdialog.cpp b/dialogs/exportdialog.cpp index 206f04158..4f48d80ec 100644 --- a/dialogs/exportdialog.cpp +++ b/dialogs/exportdialog.cpp @@ -515,3 +515,9 @@ void ExportDialog::on_renderCancel_clicked() { et->continueEncode = false; cancelled = true; } + +void ExportDialog::on_vcodecCombobox_currentIndexChanged(int index) { + bool vbrEnabled = (format_vcodecs.size() > 0 && format_vcodecs.at(index) == AV_CODEC_ID_H264); + ui->compressionTypeCombobox->setEnabled(vbrEnabled); + if (!vbrEnabled) ui->compressionTypeCombobox->setCurrentIndex(0); +} diff --git a/dialogs/exportdialog.h b/dialogs/exportdialog.h index e190cc811..683d60b2b 100644 --- a/dialogs/exportdialog.h +++ b/dialogs/exportdialog.h @@ -31,6 +31,8 @@ private slots: void render_thread_finished(); + void on_vcodecCombobox_currentIndexChanged(int index); + private: Ui::ExportDialog *ui; diff --git a/dialogs/exportdialog.ui b/dialogs/exportdialog.ui index 9e1a43f4d..a719903c8 100644 --- a/dialogs/exportdialog.ui +++ b/dialogs/exportdialog.ui @@ -7,7 +7,7 @@ 0 0 358 - 442 + 470 @@ -123,7 +123,7 @@ - Bitrate (Mbps/CBR): + Bitrate (Mbps): @@ -137,6 +137,32 @@ + + + + Compression Type: + + + + + + + + Constant Bitrate + + + + + Variable Bitrate (One-Pass) + + + + + Variable Bitrate (Two-Pass) + + + + diff --git a/panels/timeline.cpp b/panels/timeline.cpp index 9d169f661..c7fb4f027 100644 --- a/panels/timeline.cpp +++ b/panels/timeline.cpp @@ -1242,6 +1242,11 @@ void Timeline::on_addButton_clicked() { toneMenuItem->setData(ADD_OBJ_TONE); add_menu.addAction(toneMenuItem); + QAction* noiseMenuItem = new QAction(&add_menu); + noiseMenuItem->setText("Noise..."); + noiseMenuItem->setData(ADD_OBJ_NOISE); + add_menu.addAction(noiseMenuItem); + connect(&add_menu, SIGNAL(triggered(QAction*)), this, SLOT(addMenuItem(QAction*))); add_menu.exec(QCursor::pos()); diff --git a/panels/timeline.h b/panels/timeline.h index ec16f891a..18891aa11 100644 --- a/panels/timeline.h +++ b/panels/timeline.h @@ -14,6 +14,7 @@ #define ADD_OBJ_SOLID 1 #define ADD_OBJ_BARS 2 #define ADD_OBJ_TONE 3 +#define ADD_OBJ_NOISE 4 class QPushButton; class SourceTable; diff --git a/ui/timelinewidget.cpp b/ui/timelinewidget.cpp index 843f3e0fb..914f3902a 100644 --- a/ui/timelinewidget.cpp +++ b/ui/timelinewidget.cpp @@ -400,6 +400,7 @@ void TimelineWidget::mousePressEvent(QMouseEvent *event) { comp = -1; break; case ADD_OBJ_TONE: + case ADD_OBJ_NOISE: comp = 1; break; } @@ -591,7 +592,11 @@ void TimelineWidget::mouseReleaseEvent(QMouseEvent *event) { break; case ADD_OBJ_TONE: c->name = "Tone"; - c->effects.append(create_effect(VIDEO_TEXT_EFFECT, c)); + c->effects.append(create_effect(AUDIO_TONE_EFFECT, c)); + break; + case ADD_OBJ_NOISE: + c->name = "Noise"; + c->effects.append(create_effect(AUDIO_NOISE_EFFECT, c)); break; }