From f22d8758ad36dc2ae07b3708acf9e72608a1bd9c Mon Sep 17 00:00:00 2001 From: Jesper Ek Date: Tue, 28 May 2024 22:57:51 +0200 Subject: [PATCH] decklink: disable keyer --- src/modules/decklink/consumer/config.h | 3 ++- src/modules/decklink/consumer/decklink_consumer.cpp | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/modules/decklink/consumer/config.h b/src/modules/decklink/consumer/config.h index d11ae6c83f..59fa068fa0 100644 --- a/src/modules/decklink/consumer/config.h +++ b/src/modules/decklink/consumer/config.h @@ -58,9 +58,10 @@ struct configuration { enum class keyer_t { + none, internal_keyer, external_keyer, - default_keyer = external_keyer + default_keyer = none }; enum class duplex_t diff --git a/src/modules/decklink/consumer/decklink_consumer.cpp b/src/modules/decklink/consumer/decklink_consumer.cpp index 2bd1aa4c91..eaade29ce7 100644 --- a/src/modules/decklink/consumer/decklink_consumer.cpp +++ b/src/modules/decklink/consumer/decklink_consumer.cpp @@ -172,6 +172,11 @@ void set_keyer(const com_iface_ptr& attributes, CASPAR_LOG(error) << print << L" Failed to set key-level to max."; else CASPAR_LOG(info) << print << L" Enabled external keyer."; + } else if (keyer == configuration::keyer_t::none) { + if (SUCCEEDED(decklink_keyer->Disable()) + CASPAR_LOG(error) << print << L" Failed to disable keyer."; + else + CASPAR_LOG(info) << print << L" Disabled keyer."; } }