tuttleofx / TuttleOFX

Tuttle OFX is a library to connect and batch operations with OpenFx plugins. It comes with a set of plugins that allows you to batch process on movies and file sequences.
www.TuttleOFX.org
Other
177 stars 64 forks source link

Still Images Do Not Render #106

Closed NickGenArts closed 12 years ago

NickGenArts commented 12 years ago

In the devel branch, the special case code for single images looks for ( timeDomain.min <= kOfxFlagInfiniteMin ) and ( timeDomain.max >= kOfxFlagInfiniteMax ) However, both min and max are set to kOfxFlagInfiniteMin.

The following patch fixes the issue, but I'm not sure it's the best way to fix it.


diff --git a/libraries/tuttle/src/tuttle/host/graph/ProcessGraph.cpp b/libraries/tuttle/src/tuttle/host/graph/ProcessGraph.cpp
index a3ff316..d250abe 100644
--- a/libraries/tuttle/src/tuttle/host/graph/ProcessGraph.cpp
+++ b/libraries/tuttle/src/tuttle/host/graph/ProcessGraph.cpp
@@ -283,7 +283,7 @@ bool ProcessGraph::process( memory::MemoryCache& result, const ComputeOptions& o
            // special case for infinite time domain (eg. a still image)
            if( timeDomain.min <= kOfxFlagInfiniteMin )
                timeDomain.min = 0;
-           if( timeDomain.max >= kOfxFlagInfiniteMax )
+           if( timeDomain.max >= kOfxFlagInfiniteMax || timeDomain.max <= kOfxFlagInfiniteMin)
                timeDomain.max = 0;

            TUTTLE_TCOUT_INFOS;
fabiencastan commented 12 years ago

Ok, this is a bug. "timeDomain.max" should be defined to kOfxFlagInfiniteMax on still images.

fabiencastan commented 12 years ago

I didn't achieve to reproduce it. Could you send a sam-do command line or a python script that shows the problem? Maybe a bug with a particular reader plugin...

fabiencastan commented 12 years ago

Found it. It's only the case with the InputBuffer plugin.