]> git.sesse.net Git - kdenlive/blobdiff - src/mainwindow.cpp
Fix the H.264 profiles so that they honor the bitrate and 2 pass does not
[kdenlive] / src / mainwindow.cpp
index 46f0fd9c81338a378f28e377d2a4aeb4f3d1c1eb..b2e6a87d6a7d0caddc58595ff14aaec832b43fd0 100644 (file)
@@ -1527,6 +1527,7 @@ void MainWindow::slotEditProjectSettings()
         if (m_renderWidget) m_renderWidget->setDocumentPath(w->selectedFolder().path());
         if (m_activeDocument->profilePath() != profile) {
             // Profile was changed
+            double dar = m_activeDocument->dar();
             m_activeDocument->setProfilePath(profile);
             KdenliveSettings::setCurrent_profile(profile);
             KdenliveSettings::setProject_fps(m_activeDocument->fps());
@@ -1535,7 +1536,7 @@ void MainWindow::slotEditProjectSettings()
             if (m_renderWidget) m_renderWidget->setProfile(m_activeDocument->mltProfile());
             m_timelineArea->setTabText(m_timelineArea->currentIndex(), m_activeDocument->description());
             m_activeDocument->clipManager()->resetProducersList(m_projectMonitor->render->producersList());
-
+            if (dar != m_activeDocument->dar()) m_projectList->reloadClipThumbnails();
             // We need to desactivate & reactivate monitors to get a refresh
             m_monitorManager->switchMonitors();
         }
@@ -1653,7 +1654,7 @@ void MainWindow::slotDoRender(const QStringList args, const QStringList overlay_
 
             QTextStream outStream(&file);
             outStream << "#! /bin/sh" << "\n" << "\n";
-            outStream << "SOURCE=" << "\"" + scriptExport + ".westley\"" << "\n";
+            outStream << "SOURCE=" << "\"" + scriptExport + ".mlt\"" << "\n";
             outStream << "TARGET=" << "\"" + dest + "\"" << "\n";
             outStream << renderer << " " << args.join(" ") << "\n" << "\n";
             if (file.error() != QFile::NoError) {
@@ -1943,6 +1944,9 @@ void MainWindow::updateConfiguration()
     }
     m_buttonAudioThumbs->setChecked(KdenliveSettings::audiothumbnails());
     m_buttonVideoThumbs->setChecked(KdenliveSettings::videothumbnails());
+
+    // Update list of transcoding profiles
+    loadTranscoders();
 #ifndef NO_JOGSHUTTLE
     activateShuttleDevice();
 #endif /* NO_JOGSHUTTLE */
@@ -2661,7 +2665,8 @@ void MainWindow::loadTranscoders()
 {
     QMenu *transMenu = static_cast<QMenu*>(factory()->container("transcoders", this));
     transMenu->clear();
-    KSharedConfigPtr config = KGlobal::config();
+
+    KSharedConfigPtr config = KSharedConfig::openConfig("kdenlivetranscodingrc");
     KConfigGroup transConfig(config, "Transcoding");
     // read the entries
     QMap< QString, QString > profiles = transConfig.entryMap();
@@ -2674,17 +2679,16 @@ void MainWindow::loadTranscoders()
     }
 }
 
-void MainWindow::slotTranscode(QString url)
+void MainWindow::slotTranscode(KUrl::List urls)
 {
     QString params;
-    if (url.isEmpty()) {
-        url = m_projectList->currentClipUrl();
+    if (urls.isEmpty()) {
+        urls.append(m_projectList->currentClipUrl());
         QAction *action = qobject_cast<QAction *>(sender());
         params = action->data().toString();
-
     }
-    if (url.isEmpty()) return;
-    ClipTranscode *d = new ClipTranscode(url, params);
+    if (urls.isEmpty()) return;
+    ClipTranscode *d = new ClipTranscode(urls, params);
     connect(d, SIGNAL(addClip(KUrl)), this, SLOT(slotAddProjectClip(KUrl)));
     d->show();
     //QProcess::startDetached("ffmpeg", parameters);
@@ -2692,9 +2696,9 @@ void MainWindow::slotTranscode(QString url)
 
 void MainWindow::slotTranscodeClip()
 {
-    KUrl url = KFileDialog::getOpenUrl(KUrl("kfiledialog:///projectfolder"));
-    if (url.isEmpty()) return;
-    slotTranscode(url.path());
+    KUrl::List urls = KFileDialog::getOpenUrls(KUrl("kfiledialog:///projectfolder"));
+    if (urls.isEmpty()) return;
+    slotTranscode(urls);
 }
 
 #include "mainwindow.moc"