]> git.sesse.net Git - casparcg/blobdiff - core/video_channel.cpp
2.0 image_mixer: Refactored, core: Fixed destruction proxy usage.
[casparcg] / core / video_channel.cpp
index 3519e2f3c5836179ce1f4d9499fcbd8d48214847..267a821dbd50723cbc53edddbb2e18bdb2a5c2ae 100644 (file)
@@ -32,6 +32,8 @@
 #include <common/concurrency/executor.h>\r
 #include <common/diagnostics/graph.h>\r
 \r
+#include "mixer/gpu/ogl_device.h"\r
+\r
 #include <boost/timer.hpp>\r
 \r
 #ifdef _MSC_VER\r
@@ -62,10 +64,10 @@ public:
                , stage_(new caspar::core::stage(context_))     \r
        {\r
                diag_->add_guide("produce-time", 0.5f); \r
-               diag_->set_color("produce-time", diagnostics::color(1.0f, 0.0f, 0.0f));\r
-               diag_->set_color("tick-time", diagnostics::color(0.1f, 0.7f, 0.8f));    \r
+               diag_->set_color("produce-time", diagnostics::color(0.0f, 1.0f, 0.0f));\r
+               diag_->set_color("tick-time", diagnostics::color(0.0f, 0.6f, 0.9f));    \r
                diag_->set_color("output-time", diagnostics::color(1.0f, 0.5f, 0.0f));\r
-               diag_->set_color("mix-time", diagnostics::color(0.0f, 1.0f, 0.0f));\r
+               diag_->set_color("mix-time", diagnostics::color(1.0f, 1.0f, 0.9f));\r
 \r
                CASPAR_LOG(info) << print() << " Successfully Initialized.";\r
                context_.execution().begin_invoke([this]{tick();});\r
@@ -137,6 +139,7 @@ public:
                context_.execution().begin_invoke([=]\r
                {\r
                        stage_->clear();\r
+                       context_.ogl().gc().wait();\r
                        context_.set_format_desc(format_desc);\r
                });\r
        }\r
@@ -150,5 +153,6 @@ safe_ptr<output> video_channel::output() { return impl_->output_;}
 video_format_desc video_channel::get_video_format_desc() const{return impl_->context_.get_format_desc();}\r
 void video_channel::set_video_format_desc(const video_format_desc& format_desc){impl_->set_video_format_desc(format_desc);}\r
 std::wstring video_channel::print() const { return impl_->print();}\r
+video_channel_context& video_channel::context(){return impl_->context_;}\r
 \r
 }}
\ No newline at end of file