]> 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>
Sun, 15 May 2011 09:47:02 +0000 (09:47 +0000)
committerronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Sun, 15 May 2011 09:47:02 +0000 (09:47 +0000)
core/producer/frame/basic_frame.cpp
core/producer/separated/separated_producer.cpp
modules/ffmpeg/producer/ffmpeg_producer.cpp
shell/caspar.config

index 23b41493f8ac27e7f1b58ff92eeba9b0eb51799f..619fc4cf096d42cfa18d0e7615d6538eae0a6b3a 100644 (file)
@@ -140,7 +140,7 @@ safe_ptr<basic_frame> basic_frame::fill_and_key(const safe_ptr<basic_frame>& fil
        if(fill == basic_frame::eof() && key == basic_frame::eof())\r
                return basic_frame::eof();\r
 \r
-       if(key == basic_frame::empty())\r
+       if(key == basic_frame::empty() || key == basic_frame::eof())\r
                return fill;\r
 \r
        std::vector<safe_ptr<basic_frame>> frames;\r
index b159fdf6db905d1f82d6f55aad360bd0313f163b..eb30310320c1eb6624d808d8a938243fdab33b75 100644 (file)
@@ -66,17 +66,10 @@ struct separated_producer : public frame_producer
                if(last_fill_ == core::basic_frame::late() || last_key_ == core::basic_frame::late()) // One of the producers is lagging, keep them in sync.\r
                        return last_frame_;\r
                \r
-               if(last_key_ == basic_frame::eof())\r
-               {\r
-                       last_frame_ = last_fill_;\r
-                       last_fill_ = basic_frame::empty();\r
-               }\r
-               else\r
-               {\r
-                       last_frame_= basic_frame::fill_and_key(last_fill_, last_key_);\r
-                       last_fill_ = basic_frame::empty();\r
-                       last_key_ = basic_frame::empty();\r
-               }\r
+               last_frame_= basic_frame::fill_and_key(last_fill_, last_key_);\r
+\r
+               last_fill_ = basic_frame::empty();\r
+               last_key_ = basic_frame::empty();\r
 \r
                return last_frame_;\r
        }\r
index eec215c625fea64b0966b4289c487c32f4af21f6..540ff12a73a7699a8d6594ce28047111e729bf00 100644 (file)
@@ -207,7 +207,7 @@ public:
                }\r
                else if(!video_frame_buffer_.empty() && !audio_decoder_)\r
                {\r
-                       frame = video_frame_buffer_.front();                            \r
+                       frame = std::move(video_frame_buffer_.front());                         \r
                        video_frame_buffer_.pop_front();\r
                        frame->get_audio_transform().set_has_audio(false);      \r
                }\r
index 950d5984c87f8d48086fbe0d2b5a26aa79b6d262..341647651cf97f28b7c768803d3e18bc85be3502 100644 (file)
     <channel>\r
       <videomode>1080i5000</videomode>\r
       <consumers>\r
-        <!--<decklink>\r
+        <decklink>\r
           <device>1</device>\r
           <embedded-audio>true</embedded-audio>\r
           <latency>low</latency>\r
           <key>external</key>\r
-        </decklink>-->\r
-        <ogl>\r
+        </decklink>\r
+        <!--<ogl>\r
           <device>1</device>\r
           <stretch>uniform</stretch>\r
           <windowed>true</windowed>\r
-        </ogl>\r
+        </ogl>-->\r
         <audio/>\r
         <!--<bluefish>\r
           <device>1</device>\r