]> git.sesse.net Git - kdenlive/commitdiff
Show timecode with dvgrab capture:
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Sat, 26 Sep 2009 13:24:18 +0000 (13:24 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Sat, 26 Sep 2009 13:24:18 +0000 (13:24 +0000)
http://www.kdenlive.org/mantis/view.php?id=1142

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

src/recmonitor.cpp
src/recmonitor.h

index 00699796da7a6b1357cfc08a4efda46ddfd1cf94..b40c6437f4238f670add188ce5cf315ca4fb1733 100644 (file)
@@ -91,6 +91,8 @@ RecMonitor::RecMonitor(QString name, QWidget *parent) :
 
     layout->addWidget(toolbar);
 
+    layout->addWidget(&m_dvinfo);
+
 #if KDE_IS_VERSION(4,2,0)
     m_freeSpace = new KCapacityBar(KCapacityBar::DrawTextInline, this);
     m_freeSpace->setMaximumWidth(150);
@@ -373,6 +375,7 @@ void RecMonitor::slotStartCapture(bool play)
         m_captureProcess->setStandardOutputProcess(m_displayProcess);
         m_captureProcess->setWorkingDirectory(KdenliveSettings::capturefolder());
         kDebug() << "Capture: Running dvgrab " << m_captureArgs.join(" ");
+        connect(m_captureProcess, SIGNAL(readyReadStandardError()), this, SLOT(slotReadDvgrabInfo()));
         m_captureProcess->start(KdenliveSettings::dvgrab_path(), m_captureArgs);
         if (play) m_captureProcess->write(" ", 1);
         m_discAction->setEnabled(true);
@@ -683,5 +686,13 @@ void RecMonitor::slotPlay()
 
 }
 
+void RecMonitor::slotReadDvgrabInfo()
+{
+    QString data = m_captureProcess->readAllStandardError().simplified();
+    data = data.section('"', 2, 2).simplified();
+    m_dvinfo.setText(data);
+    m_dvinfo.updateGeometry();
+}
+
 
 #include "recmonitor.moc"
index a7159d4c585887ff6abe8f5a60acc80cbae53639..7eeb0ccb8c9ba1433bf6253156df5f524f2562b6 100644 (file)
@@ -58,6 +58,7 @@ private:
     QString m_name;
     bool m_isActive;
     KDateTime m_captureTime;
+    QLabel m_dvinfo;
 
 #if KDE_IS_VERSION(4,2,0)
     KCapacityBar *m_freeSpace;
@@ -100,6 +101,7 @@ private slots:
     void slotDisconnect();
     //void slotStartGrab(const QRect &rect);
     void slotConfigure();
+    void slotReadDvgrabInfo();
 
 public slots:
     void refreshRecMonitor(bool visible);