]> git.sesse.net Git - casparcg/commitdiff
2.0.0.2: Fixed CG CLEAR and CG STOP.
authorronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Fri, 25 Feb 2011 16:33:00 +0000 (16:33 +0000)
committerronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Fri, 25 Feb 2011 16:33:00 +0000 (16:33 +0000)
git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches/2.0.0.2@479 362d55ac-95cf-4e76-9f9a-cbaa9c17b72d

core/producer/flash/FlashAxContainer.cpp
core/producer/flash/cg_producer.cpp
core/producer/flash/flash_producer.cpp

index 439c7185efe7c5730b40160bc2bafd7918608bf5..746d5997c9d1fc277d1d8f49dabee92bdfc2cf3b 100644 (file)
@@ -892,7 +892,8 @@ bool FlashAxContainer::FlashCall(const std::wstring& str)
        CComPtr<IShockwaveFlash> spFlash;\r
        QueryControl(&spFlash);\r
        CComBSTR request(str.c_str());\r
-\r
+       \r
+       bIsEmpty_ = false;\r
        bCallSuccessful_ = false;\r
        for(size_t retries = 0; !bCallSuccessful_ && retries < 4; ++retries)\r
                spFlash->CallFunction(request, &result);\r
index 80811390e35012667fbd02b8a6287bc8ad295b09..79978512e9b3ef29db7367aa78f9e80783802e77 100644 (file)
@@ -23,6 +23,7 @@ public:
        void clear()\r
        {\r
                flash_producer_ = flash_producer(env::template_host());\r
+               flash_producer_->initialize(safe_ptr<frame_factory>(frame_factory_));\r
        }\r
 \r
        void add(int layer, const std::wstring& filename,  bool play_on_load, const std::wstring& label, const std::wstring& data)\r
@@ -46,7 +47,7 @@ public:
        void stop(int layer, unsigned int)\r
        {\r
                CASPAR_LOG(info) << "Invoking stop-command";\r
-               flash_producer_->param((boost::wformat(L"<invoke name=\"Stop\" returntype=\"xml\"><arguments><array><property id=\"0\"><number>%1%</number></property></array></arguments></invoke>") % layer).str());\r
+               flash_producer_->param((boost::wformat(L"<invoke name=\"Stop\" returntype=\"xml\"><arguments><array><property id=\"0\"><number>%1%</number></property></array><number>0</number></arguments></invoke>") % layer).str());\r
        }\r
 \r
        void next(int layer)\r
index 803bc541de6343a8a6ca220761adb0410278b06d..0b30b0593f431a4a0958a71f89ddbd64c1d24206 100644 (file)
@@ -113,6 +113,7 @@ public:
 \r
                bmp_.reset(CreateDIBSection(static_cast<HDC>(hdc_.get()), &info, DIB_RGB_COLORS, reinterpret_cast<void**>(&bmp_data_), 0, 0), DeleteObject);\r
                SelectObject(static_cast<HDC>(hdc_.get()), bmp_.get()); \r
+               CASPAR_LOG(info) << print() << L" Started";\r
        }\r
 \r
        ~flash_renderer()\r
@@ -138,7 +139,7 @@ public:
                        return draw_frame::empty();\r
 \r
                auto frame = render_simple_frame(has_underflow);\r
-               if(ax_->GetFPS()/2.0 - format_desc_.fps >= 0.0)\r
+               if(abs(ax_->GetFPS()/2.0 - format_desc_.fps) < 0.1)\r
                        frame = draw_frame::interlace(frame, render_simple_frame(has_underflow), format_desc_.mode);\r
                return frame;\r
        }\r