]> git.sesse.net Git - casparcg/blobdiff - modules/decklink/consumer/decklink_consumer.cpp
2.0. ogl_consumer: Refactored
[casparcg] / modules / decklink / consumer / decklink_consumer.cpp
index 9ead7d9bbf1ace07d8975cb2e7591d27ad60a771..601d875175c1a61da4864983787a1f73d062de1b 100644 (file)
@@ -169,8 +169,6 @@ public:
 \r
                if(!config.embedded_audio)\r
                        start_playback();\r
-                               \r
-               CASPAR_LOG(info) << print() << L" Successfully Initialized.";   \r
        }\r
 \r
        ~decklink_consumer()\r
@@ -395,11 +393,20 @@ public:
                , fail_count_(0)\r
        {\r
        }\r
+\r
+       ~decklink_consumer_proxy()\r
+       {\r
+               auto str = print();\r
+               context_.reset();\r
+               CASPAR_LOG(info) << str << L" Successfully Uninitialized.";     \r
+       }\r
        \r
        virtual void initialize(const core::video_format_desc& format_desc)\r
        {\r
                format_desc_ = format_desc;\r
-               context_.reset([&]{return new decklink_consumer(config_, format_desc_);});\r
+               context_.reset([&]{return new decklink_consumer(config_, format_desc_);});              \r
+                               \r
+               CASPAR_LOG(info) << print() << L" Successfully Initialized.";   \r
        }\r
        \r
        virtual bool send(const safe_ptr<core::read_frame>& frame)\r
@@ -427,7 +434,7 @@ public:
        \r
        virtual std::wstring print() const\r
        {\r
-               return context_->print();\r
+               return context_ ? context_->print() : L"decklink_consumer";\r
        }\r
 \r
        virtual bool key_only() const\r