]> git.sesse.net Git - casparcg/commitdiff
2.0. core: Since ffmpeg producer is now async, parallel_invoke is not necessary in...
authorRonag <Ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Tue, 9 Aug 2011 18:47:41 +0000 (18:47 +0000)
committerRonag <Ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Tue, 9 Aug 2011 18:47:41 +0000 (18:47 +0000)
git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches/2.0.0.2@1113 362d55ac-95cf-4e76-9f9a-cbaa9c17b72d

core/producer/separated/separated_producer.cpp
core/producer/transition/transition_producer.cpp

index 33b81056640ae677923348bf287b8b463bafea5a..08d41e4a3f4075d7353c030bd2b2b22b14730d4f 100644 (file)
@@ -23,8 +23,6 @@
 \r
 #include <core/producer/frame/basic_frame.h>\r
 \r
-#include <tbb/parallel_invoke.h>\r
-\r
 namespace caspar { namespace core {    \r
 \r
 struct separated_producer : public frame_producer\r
@@ -48,19 +46,11 @@ struct separated_producer : public frame_producer
        \r
        virtual safe_ptr<basic_frame> receive(int hints)\r
        {\r
-               tbb::parallel_invoke\r
-               (\r
-                       [&]\r
-                       {\r
-                               if(fill_ == core::basic_frame::late())\r
-                                       fill_ = receive_and_follow(fill_producer_, hints);\r
-                       },\r
-                       [&]\r
-                       {\r
-                               if(key_ == core::basic_frame::late())\r
-                                       key_ = receive_and_follow(key_producer_, hints | ALPHA_HINT);\r
-                       }\r
-               );\r
+               if(fill_ == core::basic_frame::late())\r
+                       fill_ = receive_and_follow(fill_producer_, hints);\r
+               \r
+               if(key_ == core::basic_frame::late())\r
+                       key_ = receive_and_follow(key_producer_, hints | ALPHA_HINT);\r
 \r
                if(fill_ == basic_frame::eof() || key_ == basic_frame::eof())\r
                        return basic_frame::eof();\r
index 073e6b5176a78d3169f11b52d8efe6dda705d77c..5c87087bca62c66e6c0bfc0b4ac987d20a628cd1 100644 (file)
@@ -27,8 +27,6 @@
 #include <core/producer/frame/image_transform.h>\r
 #include <core/producer/frame/audio_transform.h>\r
 \r
-#include <tbb/parallel_invoke.h>\r
-\r
 namespace caspar { namespace core {    \r
 \r
 struct transition_producer : public frame_producer\r
@@ -68,24 +66,13 @@ struct transition_producer : public frame_producer
                if(current_frame_++ >= info_.duration)\r
                        return basic_frame::eof();\r
                \r
-               auto dest       = core::basic_frame::empty();\r
-               auto source     = core::basic_frame::empty();\r
-\r
-               tbb::parallel_invoke\r
-               (\r
-                       [&]\r
-                       {\r
-                               dest = receive_and_follow(dest_producer_, hints);\r
-                               if(dest == core::basic_frame::late())\r
-                                       dest = dest_producer_->last_frame();\r
-                       },\r
-                       [&]\r
-                       {\r
-                               source = receive_and_follow(source_producer_, hints);\r
-                               if(source == core::basic_frame::late())\r
-                                       source = source_producer_->last_frame();\r
-                       }\r
-               );\r
+               auto dest = receive_and_follow(dest_producer_, hints);\r
+               if(dest == core::basic_frame::late())\r
+                       dest = dest_producer_->last_frame();\r
+\r
+               auto source = receive_and_follow(source_producer_, hints);\r
+               if(source == core::basic_frame::late())\r
+                       source = source_producer_->last_frame();\r
 \r
                return last_frame_ = compose(dest, source);\r
        }\r