]> git.sesse.net Git - kdenlive/commitdiff
Disable blackmagic support if no card found
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Tue, 5 Jun 2012 17:00:22 +0000 (19:00 +0200)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Tue, 5 Jun 2012 17:01:00 +0000 (19:01 +0200)
src/kdenlivesettings.kcfg
src/renderer.cpp

index 92c47373faa353da4d276bb41e1c576fdba5dc41..7c68c51f04318883df3ee61fae9dc860f1af6237 100644 (file)
       <label>Additionnal dvgrab parameters.</label>
       <default></default>
     </entry>
+
+    <entry name="decklink_device_found" type="Bool">
+      <label>Enable Blackmagic decklink support.</label>
+      <default>true</default>
+    </entry>
     
     <entry name="decklink_capturedevice" type="UInt">
       <label>default HDMI capture device.</label>
index f4075c16c0a966a8311ee5b7a770828bcb82869e..3f423aea0abea9df85844024a25e224c353cf9d1 100644 (file)
@@ -4404,6 +4404,7 @@ const QString Render::activeClipId()
 //static 
 bool Render::getBlackMagicDeviceList(KComboBox *devicelist)
 {
+    if (!KdenliveSettings::decklink_device_found()) return false;
     Mlt::Profile profile;
     Mlt::Producer bm(profile, "decklink");
     int found_devices = 0;
@@ -4411,6 +4412,7 @@ bool Render::getBlackMagicDeviceList(KComboBox *devicelist)
        bm.set("list_devices", 1);
        found_devices = bm.get_int("devices");
     }
+    else KdenliveSettings::setDecklink_device_found(false);
     if (found_devices <= 0) {
        devicelist->setEnabled(false);
        return false;
@@ -4425,6 +4427,7 @@ bool Render::getBlackMagicDeviceList(KComboBox *devicelist)
 
 bool Render::getBlackMagicOutputDeviceList(KComboBox *devicelist)
 {
+    if (!KdenliveSettings::decklink_device_found()) return false;
     Mlt::Profile profile;
     Mlt::Consumer bm(profile, "decklink");
     int found_devices = 0;
@@ -4432,6 +4435,7 @@ bool Render::getBlackMagicOutputDeviceList(KComboBox *devicelist)
        bm.set("list_devices", 1);
        found_devices = bm.get_int("devices");
     }
+    else KdenliveSettings::setDecklink_device_found(false);
     if (found_devices <= 0) {
        devicelist->setEnabled(false);
        return false;