]> git.sesse.net Git - kdenlive/blobdiff - src/monitor.cpp
Stop using 'mlt_profile' in render profiles. Instead use 's' and 'aspect'.
[kdenlive] / src / monitor.cpp
index efc1d036ada17f7037f73a1a89c3e67cb9187fc2..54c708bdff3f45f00dea25f0a7c884410badf69c 100644 (file)
@@ -736,7 +736,7 @@ void Monitor::stop()
 
 void Monitor::start()
 {
-    if (render) render->start();
+    if (render && (m_name != "clip" || m_currentClip != NULL)) render->start();
     connect(render, SIGNAL(rendererPosition(int)), this, SLOT(seekCursor(int)));
 }
 
@@ -771,11 +771,12 @@ void Monitor::slotPlay()
     if (render->playSpeed() == 0) {
         //m_playAction->setChecked(true);
         m_playAction->setIcon(m_pauseIcon);
+        render->switchPlay(true);
     } else {
         //m_playAction->setChecked(false);
         m_playAction->setIcon(m_playIcon);
+        render->switchPlay(false);
     }
-    render->switchPlay();
 }
 
 void Monitor::slotPlayZone()
@@ -825,7 +826,9 @@ void Monitor::slotSetXml(DocClipBase *clip, QPoint zone, const int position)
             // MLT CONSUMER is broken
             kDebug(QtWarningMsg) << "ERROR, Cannot start monitor";
         }
-    } else if (position != -1) render->seek(position);
+    } else {
+        if (position != -1) render->seek(position);
+    }
     if (!zone.isNull()) {
         m_ruler->setZone(zone.x(), zone.y());
         render->seek(zone.x());
@@ -849,7 +852,7 @@ void Monitor::slotOpenFile(const QString &file)
 void Monitor::slotSaveZone()
 {
     if (render == NULL) return;
-    emit saveZone(render, m_ruler->zone());
+    emit saveZone(render, m_ruler->zone(), m_currentClip);
 
     //render->setSceneList(doc, 0);
 }