]> git.sesse.net Git - casparcg/commitdiff
2.0. ogl_consumer: deinterlacing is now optional.
authorRonag <Ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Sat, 27 Aug 2011 21:23:33 +0000 (21:23 +0000)
committerRonag <Ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Sat, 27 Aug 2011 21:23:33 +0000 (21:23 +0000)
git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches/2.0.0.2@1302 362d55ac-95cf-4e76-9f9a-cbaa9c17b72d

modules/ogl/consumer/ogl_consumer.cpp

index ab41584fc19a8e6b9069aefa36e27d21441c51f1..11c90d435590449c8720cc6d971784c1d9111020 100644 (file)
@@ -82,12 +82,14 @@ struct configuration
        stretch         stretch;\r
        bool            windowed;\r
        bool            key_only;\r
+       bool            auto_deinterlace;\r
 \r
        configuration()\r
                : screen_index(0)\r
                , stretch(fill)\r
                , windowed(true)\r
                , key_only(false)\r
+               , auto_deinterlace(true)\r
        {\r
        }\r
 };\r
@@ -134,7 +136,7 @@ public:
                , square_height_(format_desc.square_height)\r
                , graph_(diagnostics::create_graph(narrow(print())))\r
                , input_buffer_(core::consumer_buffer_depth()-1)\r
-               , filter_(format_desc.field_mode == core::field_mode::progressive ? L"" : L"YADIF=0:-1", boost::assign::list_of(PIX_FMT_BGRA))\r
+               , filter_(format_desc.field_mode == core::field_mode::progressive || !config.auto_deinterlace ? L"" : L"YADIF=0:-1", boost::assign::list_of(PIX_FMT_BGRA))\r
        {               \r
                frame_buffer_.set_capacity(2);\r
 \r
@@ -482,9 +484,10 @@ safe_ptr<core::frame_consumer> create_ogl_consumer(const std::vector<std::wstrin
 safe_ptr<core::frame_consumer> create_ogl_consumer(const boost::property_tree::ptree& ptree) \r
 {\r
        configuration config;\r
-       config.screen_index = ptree.get("device",   config.screen_index);\r
-       config.windowed         = ptree.get("windowed", config.windowed);\r
-       config.key_only         = ptree.get("key-only", config.key_only );\r
+       config.screen_index             = ptree.get("device",   config.screen_index);\r
+       config.windowed                 = ptree.get("windowed", config.windowed);\r
+       config.key_only                 = ptree.get("key-only", config.key_only);\r
+       config.auto_deinterlace = ptree.get("auto-deinterlace", config.auto_deinterlace);\r
        \r
        auto stretch_str = ptree.get("stretch", "default");\r
        if(stretch_str == "uniform")\r