]> git.sesse.net Git - kdenlive/commitdiff
Preview monitor volume should not affect rendering:
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Sat, 30 Jul 2011 19:18:11 +0000 (19:18 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Sat, 30 Jul 2011 19:18:11 +0000 (19:18 +0000)
http://kdenlive.org/mantis/view.php?id=2254

svn path=/trunk/kdenlive/; revision=5813

src/kdenlivedoc.cpp
src/mainwindow.cpp

index 8d08faada8b94b854b04d2c3ec5bdd994e1ec13c..8fb4b3761c5b9a4c9a0d22654504063216fb04f3 100644 (file)
@@ -566,6 +566,18 @@ QDomDocument KdenliveDoc::xmlSceneList(const QString &scene, const QStringList e
         return sceneList;
     }
 
+    // Set playlist audio volume to 100%
+    QDomElement tractor = mlt.firstChildElement("tractor");
+    if (!tractor.isNull()) {
+        QDomNodeList props = tractor.elementsByTagName("property");
+        for (int i = 0; i < props.count(); i++) {
+            if (props.at(i).toElement().attribute("name") == "meta.volume") {
+                props.at(i).firstChild().setNodeValue("1");
+                break;
+            }
+        }
+    }
+
     QDomElement addedXml = sceneList.createElement("kdenlivedoc");
     mlt.appendChild(addedXml);
 
index ccda3a2c4495ec45048fc4eb5cea4dfd1d4c6b06..4b534f62d4f630f56cde1cdecc391a763173cacf 100644 (file)
@@ -3884,11 +3884,23 @@ void MainWindow::slotPrepareRendering(bool scriptExport, bool zoneOnly, const QS
     if (m_renderWidget->automaticAudioExport()) {
         exportAudio = m_activeTimeline->checkProjectAudio();
     } else exportAudio = m_renderWidget->selectedAudioExport();
+
+    // Set playlist audio volume to 100%
+    QDomDocument doc;
+    doc.setContent(playlistContent);
+    QDomElement tractor = doc.documentElement().firstChildElement("tractor");
+    if (!tractor.isNull()) {
+        QDomNodeList props = tractor.elementsByTagName("property");
+        for (int i = 0; i < props.count(); i++) {
+            if (props.at(i).toElement().attribute("name") == "meta.volume") {
+                props.at(i).firstChild().setNodeValue("1");
+                break;
+            }
+        }
+    }
     
     // Do we want proxy rendering
     if (m_projectList->useProxy() && !m_renderWidget->proxyRendering()) {
-        QDomDocument doc;
-        doc.setContent(playlistContent);
         QString root = doc.documentElement().attribute("root");
 
         // replace proxy clips with originals
@@ -3932,8 +3944,8 @@ void MainWindow::slotPrepareRendering(bool scriptExport, bool zoneOnly, const QS
                 playlistContent.replace(key, i.value());
             }
         }*/
-        playlistContent = doc.toString();
     }
+    playlistContent = doc.toString();
     
     // Do save scenelist
     QFile file(playlistPath);