]> git.sesse.net Git - kdenlive/commitdiff
Improvements to DeckLink output:
authorDan Dennedy <dan@dennedy.org>
Tue, 28 Dec 2010 05:37:06 +0000 (05:37 +0000)
committerDan Dennedy <dan@dennedy.org>
Tue, 28 Dec 2010 05:37:06 +0000 (05:37 +0000)
- check for valid consumer
- reduce latency by reducing buffering
- reduce deinterlace quality to reduce performance overhead
  (was defaulting to yadif)

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

src/renderer.cpp

index 5f888ca9512dd7688d30dd5a33e6f624c533f279..d99a2e801e404ddc9f61148aae921246da0d2be9 100644 (file)
@@ -199,10 +199,12 @@ void Render::buildConsumer(const QString profileName)
             tmp = qstrdup(decklink.toUtf8().constData());
             m_mltConsumer = new Mlt::Consumer(*m_mltProfile, tmp);
             delete[] tmp;
-            if (m_mltConsumer) {
+            if (m_mltConsumer->is_valid()) {
                 m_externalConsumer = true;
                 m_mltConsumer->listen("consumer-frame-show", this, (mlt_listener) consumer_frame_show);
                 m_mltConsumer->set("terminate_on_pause", 0);
+                m_mltConsumer->set("buffer", 12);
+                m_mltConsumer->set("deinterlace_method", "onefield");
                 mlt_log_set_callback(kdenlive_callback);
             }
             if (m_mltConsumer && m_mltConsumer->is_valid()) return;