]> git.sesse.net Git - mlt/blobdiff - src/modules/decklink/consumer_decklink.cpp
Enable external keyer on decklink consumer.
[mlt] / src / modules / decklink / consumer_decklink.cpp
index a18486ff4e86a0ff39f3b28ec8343834eabd8c2c..af44a2143eb562191279c88aa4d5a3e05de2a6d2 100644 (file)
@@ -101,7 +101,7 @@ private:
        mlt_frame                   m_frame;
        unsigned                    m_dropped;
        bool                        m_isAudio;
-       bool                        m_isKeyer;
+       int                         m_isKeyer;
        IDeckLinkKeyer*             m_deckLinkKeyer;
 
        IDeckLinkDisplayMode* getDisplayMode()
@@ -241,11 +241,12 @@ public:
                // Set the keyer
                if ( m_deckLinkKeyer && ( m_isKeyer = mlt_properties_get_int( properties, "keyer" ) ) )
                {
-                       bool external = false;
+                       bool external = (m_isKeyer == 2);
                        double level = mlt_properties_get_double( properties, "keyer_level" );
 
                        if ( m_deckLinkKeyer->Enable( external ) != S_OK )
-                               mlt_log_error( getConsumer(), "Failed to enable keyer\n" );
+                               mlt_log_error( getConsumer(), "Failed to enable %s keyer\n",
+                                       external ? "external" : "internal" );
                        m_deckLinkKeyer->SetLevel( level <= 1 ? ( level > 0 ? 255 * level : 255 ) : 255 );
                        m_preroll = 0;
                        m_isAudio = false;