]> git.sesse.net Git - kdenlive/blobdiff - src/renderwidget.cpp
Revert commit 5845. The consumer producer does not automatically get invoked.
[kdenlive] / src / renderwidget.cpp
index 8c2f9e9d3c5fdbd0388a0e308679acc01ad40689..e4b6b9eaa4e086d3f8909c413aa6846b9947ed01 100644 (file)
@@ -67,8 +67,7 @@ const int FINISHEDJOB = 2;
 RenderWidget::RenderWidget(const QString &projectfolder, bool enableProxy, QWidget * parent) :
         QDialog(parent),
         m_projectFolder(projectfolder),
-        m_blockProcessing(false),
-        m_isPal(true)
+        m_blockProcessing(false)
 {
     m_view.setupUi(this);
     setWindowTitle(i18n("Rendering"));
@@ -985,11 +984,6 @@ int RenderWidget::waitingJobsCount() const
 void RenderWidget::setProfile(MltVideoProfile profile)
 {
     m_profile = profile;
-    //WARNING: this way to tell the video standard is a bit hackish...
-    if (m_profile.description.contains("pal", Qt::CaseInsensitive) || m_profile.description.contains("25", Qt::CaseInsensitive) || m_profile.description.contains("50", Qt::CaseInsensitive))
-        m_isPal = true;
-    else
-        m_isPal = false;
     m_view.scanning_list->setCurrentIndex(0);
     m_view.rescale_width->setValue(KdenliveSettings::defaultrescalewidth());
     if (!m_view.rescale_keep->isChecked()) {
@@ -1086,8 +1080,9 @@ void RenderWidget::refreshView()
         if ((sizeItem->data(GroupRole).toString() == group || sizeItem->data(GroupRole).toString().isEmpty()) && sizeItem->data(MetaGroupRole).toString() == destination) {
             std = sizeItem->data(StandardRole).toString();
             if (!std.isEmpty()) {
-                if (std.contains("PAL", Qt::CaseInsensitive) && m_isPal) dupItem = sizeItem->clone();
-                else if (std.contains("NTSC", Qt::CaseInsensitive) && !m_isPal)  dupItem = sizeItem->clone();
+                if ((std.contains("PAL", Qt::CaseInsensitive) && m_profile.frame_rate_num == 25 && m_profile.frame_rate_den == 1) ||
+                    (std.contains("NTSC", Qt::CaseInsensitive) && m_profile.frame_rate_num == 30000 && m_profile.frame_rate_den == 1001))
+                    dupItem = sizeItem->clone();
             } else {
                 dupItem = sizeItem->clone();
             }
@@ -1172,7 +1167,10 @@ void RenderWidget::refreshView()
     focusFirstVisibleItem();
     m_view.size_list->blockSignals(false);
     m_view.format_list->blockSignals(false);
-    refreshParams();
+    if (m_view.size_list->count() > 0)
+        refreshParams();
+    else
+        m_view.advanced_params->clear();
 }
 
 KUrl RenderWidget::filenameWithExtension(KUrl url, QString extension)
@@ -1244,13 +1242,15 @@ void RenderWidget::refreshParams()
 
     // setup comboBox with bitrates
     m_view.comboBitrates->clear();
-    if (item->data(BitratesRole).canConvert(QVariant::StringList) && item->data(BitratesRole).toStringList().count()) {
+    if (params.contains("bitrate")) {
         m_view.comboBitrates->setEnabled(true);
-        QStringList bitrates = item->data(BitratesRole).toStringList();
-        foreach (QString bitrate, bitrates)
-            m_view.comboBitrates->addItem(bitrate);
-        if (item->data(DefaultBitrateRole).canConvert(QVariant::String))
-            m_view.comboBitrates->setCurrentIndex(bitrates.indexOf(item->data(DefaultBitrateRole).toString()));
+        if ( item->data(BitratesRole).canConvert(QVariant::StringList) && item->data(BitratesRole).toStringList().count()) {
+            QStringList bitrates = item->data(BitratesRole).toStringList();
+            foreach (QString bitrate, bitrates)
+                m_view.comboBitrates->addItem(bitrate);
+            if (item->data(DefaultBitrateRole).canConvert(QVariant::String))
+                m_view.comboBitrates->setCurrentIndex(bitrates.indexOf(item->data(DefaultBitrateRole).toString()));
+        }
     } else {
         m_view.comboBitrates->setEnabled(false);
     }
@@ -1720,12 +1720,12 @@ void RenderWidget::parseScriptFiles()
         item->setData(1, Qt::UserRole, KUrl(target).path());
         item->setData(1, Qt::UserRole + 1, scriptpath.path());
     }
-    bool activate = false;
+//     bool activate = false;
     QTreeWidgetItem *script = m_view.scripts_list->topLevelItem(0);
     if (script) {
         m_view.scripts_list->setCurrentItem(script);
         script->setSelected(true);
-        activate = true;
+//         activate = true;
     }
 //    m_view.start_script->setEnabled(activate);
 //    m_view.delete_script->setEnabled(activate);