]> git.sesse.net Git - casparcg/commitdiff
git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches...
authorronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Sat, 22 Oct 2011 19:09:40 +0000 (19:09 +0000)
committerronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Sat, 22 Oct 2011 19:09:40 +0000 (19:09 +0000)
core/consumer/output.cpp
modules/bluefish/consumer/bluefish_consumer.cpp
modules/decklink/consumer/decklink_consumer.cpp
modules/image/consumer/image_consumer.cpp
modules/oal/consumer/oal_consumer.cpp
modules/ogl/consumer/ogl_consumer.cpp

index f3395c56ae576048dbc2e881b64052505c7c9b6d..195831c77a1e46c39e78809dee3e7920dadf3d63 100644 (file)
@@ -160,7 +160,6 @@ public:
                {               \r
                        try\r
                        {\r
-                               scoped_oversubcription_token oversubscribe;\r
                                if(!pair.second->send(frame))\r
                                        removables.push_back(pair.first);\r
                        }\r
index 62e840670f79c40b74d0479b06d3c96e5109bea8..d45e9f044dfa7ba7aee7a58bde58b65d469e78d4 100644 (file)
@@ -38,6 +38,8 @@
 \r
 #include <tbb/concurrent_queue.h>\r
 \r
+#include <concrt_extras.h>\r
+\r
 #include <boost/timer.hpp>\r
 \r
 #include <memory>\r
@@ -338,6 +340,7 @@ public:
        \r
        virtual bool send(const safe_ptr<core::read_frame>& frame)\r
        {\r
+               Concurrency::scoped_oversubcription_token oversubscribe;\r
                consumer_->send(frame);\r
                return true;\r
        }\r
index dcfbde7f3afcf5dde5bcbe44f6d99e5574b275b8..d86e86ff3e6e0a4782cb2edd50282908a19cc296 100644 (file)
@@ -43,6 +43,8 @@
 #include <boost/circular_buffer.hpp>\r
 #include <boost/timer.hpp>\r
 \r
+#include <concrt_extras.h>\r
+\r
 namespace caspar { namespace decklink { \r
        \r
 struct configuration\r
@@ -437,6 +439,7 @@ public:
        \r
        virtual bool send(const safe_ptr<core::read_frame>& frame)\r
        {\r
+               Concurrency::scoped_oversubcription_token oversubscribe;\r
                context_->send(frame);\r
                return true;\r
        }\r
index bee70d1fc2143fef6d05130fa4d027b5876eae48..5bbf299e23dac3bf120ec81f8f655538313d7e84 100644 (file)
@@ -36,6 +36,8 @@
 \r
 #include <FreeImage.h>\r
 \r
+#include <concrt_extras.h>\r
+\r
 #include <vector>\r
 \r
 namespace caspar { namespace image {\r
@@ -57,6 +59,8 @@ public:
 \r
                if(frames_.size() < core::consumer_buffer_depth())\r
                        return true;\r
+               \r
+               Concurrency::scoped_oversubcription_token oversubscribe;\r
 \r
                auto my_frame = frames_.front();\r
                boost::thread async([=]\r
index 35ef456d06f10f3eba6a2373e05c5733c8d31bfe..7cd65dfb9a086f76ccb6051308eace126931abad 100644 (file)
@@ -37,6 +37,8 @@
 #include <boost/circular_buffer.hpp>\r
 #include <boost/timer.hpp>\r
 \r
+#include <concrt_extras.h>\r
+\r
 #include <tbb/concurrent_queue.h>\r
 \r
 namespace caspar { namespace oal {\r
@@ -91,9 +93,10 @@ public:
                                ++preroll_count_;\r
                        Play();         \r
                }\r
-\r
-               input_.push(std::make_shared<std::vector<int16_t, tbb::cache_aligned_allocator<int16_t>>>(core::audio_32_to_16_sse(frame->audio_data())));\r
-\r
+               \r
+               auto data = std::make_shared<std::vector<int16_t, tbb::cache_aligned_allocator<int16_t>>>(core::audio_32_to_16_sse(frame->audio_data()));\r
+               Concurrency::scoped_oversubcription_token oversubscribe;\r
+               input_.push(data);\r
                return true;\r
        }\r
        \r
index a5cae2673af339db590c2cb7dd9e5fc267c9cedb..a4e098e9c1aa475396e019fc8479f387c02feaae 100644 (file)
@@ -48,6 +48,8 @@
 \r
 #include <boost/assign.hpp>\r
 \r
+#include <concrt_extras.h>\r
+\r
 #include <algorithm>\r
 #include <vector>\r
 \r
@@ -444,6 +446,7 @@ public:
        \r
        virtual bool send(const safe_ptr<core::read_frame>& frame)\r
        {\r
+               Concurrency::scoped_oversubcription_token oversubscribe;\r
                consumer_->send(frame);\r
                return true;\r
        }\r