documented config
This commit is contained in:
@@ -77,28 +77,28 @@ $(function() {
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
|
||||
Public Attributes</h2></td></tr>
|
||||
<tr class="memitem:a14cd6939729b5280466954797512df90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_viewer.html">Viewer</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a14cd6939729b5280466954797512df90">viewer</a></td></tr>
|
||||
<tr class="memdesc:a14cd6939729b5280466954797512df90"><td class="mdescLeft"> </td><td class="mdescRight">Reference to the <a class="el" href="class_viewer.html">Viewer</a> class that's calling compose_sequence() <a href="#a14cd6939729b5280466954797512df90">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:a14cd6939729b5280466954797512df90"><td class="mdescLeft"> </td><td class="mdescRight">Reference to the <a class="el" href="class_viewer.html">Viewer</a> class that's calling <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> <a href="#a14cd6939729b5280466954797512df90">More...</a><br /></td></tr>
|
||||
<tr class="separator:a14cd6939729b5280466954797512df90"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a489d2c9b71e24f5c451cd97e6b99d154"><td class="memItemLeft" align="right" valign="top">QOpenGLContext * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a489d2c9b71e24f5c451cd97e6b99d154">ctx</a></td></tr>
|
||||
<tr class="memdesc:a489d2c9b71e24f5c451cd97e6b99d154"><td class="mdescLeft"> </td><td class="mdescRight">The OpenGL context to use while rendering. <a href="#a489d2c9b71e24f5c451cd97e6b99d154">More...</a><br /></td></tr>
|
||||
<tr class="separator:a489d2c9b71e24f5c451cd97e6b99d154"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a185442a89326d3e5171cb023a4723be1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_sequence.html">Sequence</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a185442a89326d3e5171cb023a4723be1">seq</a></td></tr>
|
||||
<tr class="memdesc:a185442a89326d3e5171cb023a4723be1"><td class="mdescLeft"> </td><td class="mdescRight">The sequence to compose. <a href="#a185442a89326d3e5171cb023a4723be1">More...</a><br /></td></tr>
|
||||
<tr class="separator:a185442a89326d3e5171cb023a4723be1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:abfe01c624fc05291c00b1b62a7e858f7"><td class="memItemLeft" align="right" valign="top">QVector< <a class="el" href="class_clip.html">Clip</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#abfe01c624fc05291c00b1b62a7e858f7">nests</a></td></tr>
|
||||
<tr class="memdesc:abfe01c624fc05291c00b1b62a7e858f7"><td class="mdescLeft"> </td><td class="mdescRight">Array to store the nested sequence hierarchy. <a href="#abfe01c624fc05291c00b1b62a7e858f7">More...</a><br /></td></tr>
|
||||
<tr class="separator:abfe01c624fc05291c00b1b62a7e858f7"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae553daee9d1555337a78f28a1500708e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="clip_8h.html#a2a0d48184294d399b0adc41f6e1de6c7">SequencePtr</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#ae553daee9d1555337a78f28a1500708e">seq</a></td></tr>
|
||||
<tr class="memdesc:ae553daee9d1555337a78f28a1500708e"><td class="mdescLeft"> </td><td class="mdescRight">The sequence to compose. <a href="#ae553daee9d1555337a78f28a1500708e">More...</a><br /></td></tr>
|
||||
<tr class="separator:ae553daee9d1555337a78f28a1500708e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a9812ba14b9e30e5b82e5545afa6874ba"><td class="memItemLeft" align="right" valign="top">QVector< <a class="el" href="cacher_8h.html#a06b2300f462978e17d9b586991a0af3f">ClipPtr</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a9812ba14b9e30e5b82e5545afa6874ba">nests</a></td></tr>
|
||||
<tr class="memdesc:a9812ba14b9e30e5b82e5545afa6874ba"><td class="mdescLeft"> </td><td class="mdescRight">Array to store the nested sequence hierarchy. <a href="#a9812ba14b9e30e5b82e5545afa6874ba">More...</a><br /></td></tr>
|
||||
<tr class="separator:a9812ba14b9e30e5b82e5545afa6874ba"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ac2002668089d1fe63177933242f284d5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#ac2002668089d1fe63177933242f284d5">video</a></td></tr>
|
||||
<tr class="memdesc:ac2002668089d1fe63177933242f284d5"><td class="mdescLeft"> </td><td class="mdescRight">Set compose mode to video or audio. <a href="#ac2002668089d1fe63177933242f284d5">More...</a><br /></td></tr>
|
||||
<tr class="separator:ac2002668089d1fe63177933242f284d5"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aa72c5ce883c42734fc86f841e78a6c7f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_effect.html">Effect</a> ** </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#aa72c5ce883c42734fc86f841e78a6c7f">gizmos</a></td></tr>
|
||||
<tr class="memdesc:aa72c5ce883c42734fc86f841e78a6c7f"><td class="mdescLeft"> </td><td class="mdescRight">Set to the <a class="el" href="class_effect.html">Effect</a> whose gizmos were chosen to be drawn on screen. <a href="#aa72c5ce883c42734fc86f841e78a6c7f">More...</a><br /></td></tr>
|
||||
<tr class="separator:aa72c5ce883c42734fc86f841e78a6c7f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a69f91937c67d10c8327a5b908911557e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="effect_8h.html#a76f90640a8579a0d9d52d40f7147f969">EffectPtr</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a69f91937c67d10c8327a5b908911557e">gizmos</a></td></tr>
|
||||
<tr class="memdesc:a69f91937c67d10c8327a5b908911557e"><td class="mdescLeft"> </td><td class="mdescRight">Set to the <a class="el" href="class_effect.html">Effect</a> whose gizmos were chosen to be drawn on screen. <a href="#a69f91937c67d10c8327a5b908911557e">More...</a><br /></td></tr>
|
||||
<tr class="separator:a69f91937c67d10c8327a5b908911557e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a66ee6093b239f9a46d83a729a0f702ba"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a66ee6093b239f9a46d83a729a0f702ba">texture_failed</a></td></tr>
|
||||
<tr class="memdesc:a66ee6093b239f9a46d83a729a0f702ba"><td class="mdescLeft"> </td><td class="mdescRight">A variable that compose_sequence() will set to <b>TRUE</b> if any of the clips couldn't be shown. <a href="#a66ee6093b239f9a46d83a729a0f702ba">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:a66ee6093b239f9a46d83a729a0f702ba"><td class="mdescLeft"> </td><td class="mdescRight">A variable that <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> will set to <b>TRUE</b> if any of the clips couldn't be shown. <a href="#a66ee6093b239f9a46d83a729a0f702ba">More...</a><br /></td></tr>
|
||||
<tr class="separator:a66ee6093b239f9a46d83a729a0f702ba"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae3bc6f6e6766e44dfbd4f82b60f45689"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#ae3bc6f6e6766e44dfbd4f82b60f45689">single_threaded</a></td></tr>
|
||||
<tr class="memdesc:ae3bc6f6e6766e44dfbd4f82b60f45689"><td class="mdescLeft"> </td><td class="mdescRight">Run all cachers in the same thread that compose_sequence() is in. <a href="#ae3bc6f6e6766e44dfbd4f82b60f45689">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ae3bc6f6e6766e44dfbd4f82b60f45689"><td class="mdescLeft"> </td><td class="mdescRight">Run all cachers in the same thread that <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> is in. <a href="#ae3bc6f6e6766e44dfbd4f82b60f45689">More...</a><br /></td></tr>
|
||||
<tr class="separator:ae3bc6f6e6766e44dfbd4f82b60f45689"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a24021c50259cb0ee3260e82ee59916ce"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a24021c50259cb0ee3260e82ee59916ce">playback_speed</a></td></tr>
|
||||
<tr class="memdesc:a24021c50259cb0ee3260e82ee59916ce"><td class="mdescLeft"> </td><td class="mdescRight">Set the current playback speed (adjusted with Shuttle Left/Right) <a href="#a24021c50259cb0ee3260e82ee59916ce">More...</a><br /></td></tr>
|
||||
@@ -127,10 +127,16 @@ Public Attributes</h2></td></tr>
|
||||
<tr class="memitem:a682c8f279c61f9fe89cc642e21c34089"><td class="memItemLeft" align="right" valign="top">GLuint </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a682c8f279c61f9fe89cc642e21c34089">backend_attachment2</a></td></tr>
|
||||
<tr class="memdesc:a682c8f279c61f9fe89cc642e21c34089"><td class="mdescLeft"> </td><td class="mdescRight">Backend OpenGL framebuffer 2's texture attachment. <a href="#a682c8f279c61f9fe89cc642e21c34089">More...</a><br /></td></tr>
|
||||
<tr class="separator:a682c8f279c61f9fe89cc642e21c34089"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a5e790eddc0fb55df981a49ac8f935bf6"><td class="memItemLeft" align="right" valign="top">QOpenGLShaderProgram * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#a5e790eddc0fb55df981a49ac8f935bf6">ocio_shader</a></td></tr>
|
||||
<tr class="memdesc:a5e790eddc0fb55df981a49ac8f935bf6"><td class="mdescLeft"> </td><td class="mdescRight">OpenGL shader containing OpenColorIO shader information. <a href="#a5e790eddc0fb55df981a49ac8f935bf6">More...</a><br /></td></tr>
|
||||
<tr class="separator:a5e790eddc0fb55df981a49ac8f935bf6"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ac5f9b7bb2db527158e76d6fc5916a576"><td class="memItemLeft" align="right" valign="top">GLuint </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_compose_sequence_params.html#ac5f9b7bb2db527158e76d6fc5916a576">ocio_lut_texture</a></td></tr>
|
||||
<tr class="memdesc:ac5f9b7bb2db527158e76d6fc5916a576"><td class="mdescLeft"> </td><td class="mdescRight">OpenGL texture containing LUT obtained form OpenColorIO. <a href="#ac5f9b7bb2db527158e76d6fc5916a576">More...</a><br /></td></tr>
|
||||
<tr class="separator:ac5f9b7bb2db527158e76d6fc5916a576"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>The <a class="el" href="struct_compose_sequence_params.html" title="The ComposeSequenceParams struct.">ComposeSequenceParams</a> struct. </p>
|
||||
<p>Struct sent to the compose_sequence() function. </p>
|
||||
<p>Struct sent to the <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> function. </p>
|
||||
</div><h2 class="groupheader">Member Data Documentation</h2>
|
||||
<a id="ad1594ae236345177e82216365c4d5208"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad1594ae236345177e82216365c4d5208">◆ </a></span>backend_attachment1</h2>
|
||||
@@ -179,7 +185,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Backend OpenGL framebuffer 1 used for further processing before rendering to main_buffer. </p>
|
||||
<p>In some situations, compose_sequence() will do some processing through shaders that requires "ping-ponging" between framebuffers. backend_buffer1 and backend_buffer2 are used for this purpose. </p>
|
||||
<p>In some situations, <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> will do some processing through shaders that requires "ping-ponging" between framebuffers. backend_buffer1 and backend_buffer2 are used for this purpose. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -196,7 +202,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Backend OpenGL framebuffer 2 used for further processing before rendering to main_buffer. </p>
|
||||
<p>In some situations, compose_sequence() will do some processing through shaders that requires "ping-ponging" between framebuffers. backend_buffer1 and backend_buffer2 are used for this purpose. </p>
|
||||
<p>In some situations, <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> will do some processing through shaders that requires "ping-ponging" between framebuffers. backend_buffer1 and backend_buffer2 are used for this purpose. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -214,7 +220,7 @@ Public Attributes</h2></td></tr>
|
||||
|
||||
<p>Blending mode shader. </p>
|
||||
<p>Used only for video rendering. Never accessed with audio rendering.</p>
|
||||
<p>A program containing the current active blending mode shader that can be bound during rendering. Must be compiled and linked beforehand. See RenderThread::blend_mode_program for how this is properly set up.</p>
|
||||
<p>A program containing the current active blending mode shader that can be bound during rendering. Must be compiled and linked beforehand. See <a class="el" href="class_render_thread.html#a79f92524aef4af170706f10741c65e2f">RenderThread::blend_mode_program</a> for how this is properly set up.</p>
|
||||
<dl class="section see"><dt>See also</dt><dd><a class="el" href="struct_compose_sequence_params.html#ac2002668089d1fe63177933242f284d5" title="Set compose mode to video or audio.">ComposeSequenceParams::video</a> </dd></dl>
|
||||
|
||||
</div>
|
||||
@@ -237,14 +243,14 @@ Public Attributes</h2></td></tr>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="aa72c5ce883c42734fc86f841e78a6c7f"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aa72c5ce883c42734fc86f841e78a6c7f">◆ </a></span>gizmos</h2>
|
||||
<a id="a69f91937c67d10c8327a5b908911557e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a69f91937c67d10c8327a5b908911557e">◆ </a></span>gizmos</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname"><a class="el" href="class_effect.html">Effect</a>** ComposeSequenceParams::gizmos</td>
|
||||
<td class="memname"><a class="el" href="effect_8h.html#a76f90640a8579a0d9d52d40f7147f969">EffectPtr</a>* ComposeSequenceParams::gizmos</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
@@ -286,24 +292,56 @@ Public Attributes</h2></td></tr>
|
||||
|
||||
<p>The OpenGL framebuffer object that the final texture to be shown is rendered to. </p>
|
||||
<p>Used only for video rendering. Never accessed with audio rendering.</p>
|
||||
<p>When compose_sequence() is rendering the final image, this framebuffer will be bound. </p>
|
||||
<p>When <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> is rendering the final image, this framebuffer will be bound. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="abfe01c624fc05291c00b1b62a7e858f7"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#abfe01c624fc05291c00b1b62a7e858f7">◆ </a></span>nests</h2>
|
||||
<a id="a9812ba14b9e30e5b82e5545afa6874ba"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9812ba14b9e30e5b82e5545afa6874ba">◆ </a></span>nests</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">QVector<<a class="el" href="class_clip.html">Clip</a>*> ComposeSequenceParams::nests</td>
|
||||
<td class="memname">QVector<<a class="el" href="cacher_8h.html#a06b2300f462978e17d9b586991a0af3f">ClipPtr</a>> ComposeSequenceParams::nests</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Array to store the nested sequence hierarchy. </p>
|
||||
<p>Should be left empty. This array gets passed around compose_sequence() as it calls itself recursively to handle nested sequences. </p>
|
||||
<p>Should be left empty. This array gets passed around <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> as it calls itself recursively to handle nested sequences. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ac5f9b7bb2db527158e76d6fc5916a576"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ac5f9b7bb2db527158e76d6fc5916a576">◆ </a></span>ocio_lut_texture</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">GLuint ComposeSequenceParams::ocio_lut_texture</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>OpenGL texture containing LUT obtained form OpenColorIO. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a5e790eddc0fb55df981a49ac8f935bf6"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a5e790eddc0fb55df981a49ac8f935bf6">◆ </a></span>ocio_shader</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">QOpenGLShaderProgram* ComposeSequenceParams::ocio_shader</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>OpenGL shader containing OpenColorIO shader information. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -339,24 +377,24 @@ Public Attributes</h2></td></tr>
|
||||
|
||||
<p>Premultiply alpha shader. </p>
|
||||
<p>Used only for video rendering. Never accessed with audio rendering.</p>
|
||||
<p>compose_sequence()'s internal composition expects premultipled alpha, but it will pre-emptively multiply any footage that is not set as already premultiplied (see Footage::alpha_is_premultiplied) using this shader. Must be compiled and linked beforehand. See RenderThread::premultiply_program for how this is properly set up. </p>
|
||||
<p><a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a>'s internal composition expects premultipled alpha, but it will pre-emptively multiply any footage that is not set as already premultiplied (see <a class="el" href="struct_footage.html#a6ca2a6f9f1435915d800c7c90d892b2f">Footage::alpha_is_premultiplied</a>) using this shader. Must be compiled and linked beforehand. See <a class="el" href="class_render_thread.html#ad43fce825d8d316d4aba120b5f00b47c">RenderThread::premultiply_program</a> for how this is properly set up. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a185442a89326d3e5171cb023a4723be1"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a185442a89326d3e5171cb023a4723be1">◆ </a></span>seq</h2>
|
||||
<a id="ae553daee9d1555337a78f28a1500708e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae553daee9d1555337a78f28a1500708e">◆ </a></span>seq</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname"><a class="el" href="struct_sequence.html">Sequence</a>* ComposeSequenceParams::seq</td>
|
||||
<td class="memname"><a class="el" href="clip_8h.html#a2a0d48184294d399b0adc41f6e1de6c7">SequencePtr</a> ComposeSequenceParams::seq</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>The sequence to compose. </p>
|
||||
<p>In addition to clips, sequences also contain the playhead position so compose_sequence() knows which frame to render. </p>
|
||||
<p>In addition to clips, sequences also contain the playhead position so <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> knows which frame to render. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -372,8 +410,8 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Run all cachers in the same thread that compose_sequence() is in. </p>
|
||||
<p>Standard behavior is that all clips cache frames in their own thread and signals are sent between compose_sequence() and the clip's cacher thread regarding which frames to display and cache without stalling the compose_sequence() thread. Setting this to <b>TRUE</b> will run all cachers in the same thread creating a technically more "perfect" connection between them that will also stall the compose_sequence() thread. Used when rendering as timing isn't as important as creating output frames as quickly as possible.</p>
|
||||
<p>Run all cachers in the same thread that <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> is in. </p>
|
||||
<p>Standard behavior is that all clips cache frames in their own thread and signals are sent between <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> and the clip's cacher thread regarding which frames to display and cache without stalling the <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> thread. Setting this to <b>TRUE</b> will run all cachers in the same thread creating a technically more "perfect" connection between them that will also stall the <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> thread. Used when rendering as timing isn't as important as creating output frames as quickly as possible.</p>
|
||||
<dl class="section note"><dt>Note</dt><dd>Exporting should probably be rewritten without this. While running all the cachers in one thread makes it easier to synchronize everything, export performance could probably benefit from keeping them in separate threads and syncing up with them. See <a class="el" href="struct_compose_sequence_params.html#a66ee6093b239f9a46d83a729a0f702ba" title="A variable that compose_sequence() will set to TRUE if any of the clips couldn't be shown.">ComposeSequenceParams::texture_failed</a> for a similar function that could be removed. </dd></dl>
|
||||
|
||||
</div>
|
||||
@@ -390,11 +428,11 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>A variable that compose_sequence() will set to <b>TRUE</b> if any of the clips couldn't be shown. </p>
|
||||
<p>A footage item or shader may not be ready at the time this frame is drawn. If compose_sequence() couldn't draw any of the clips in the scene, this variable is set to <b>TRUE</b> indicating that the image rendered is a "best effort", but not the actual image.</p>
|
||||
<p>This variable should be checked after compose_sequence() and a repaint should be triggered if it's <b>TRUE</b>.</p>
|
||||
<p>A variable that <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> will set to <b>TRUE</b> if any of the clips couldn't be shown. </p>
|
||||
<p>A footage item or shader may not be ready at the time this frame is drawn. If <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> couldn't draw any of the clips in the scene, this variable is set to <b>TRUE</b> indicating that the image rendered is a "best effort", but not the actual image.</p>
|
||||
<p>This variable should be checked after <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> and a repaint should be triggered if it's <b>TRUE</b>.</p>
|
||||
<dl class="section note"><dt>Note</dt><dd>This variable is probably bad design and is a relic of an earlier rendering backend. There may be a better way to communicate this information.</dd></dl>
|
||||
<p>Additionally, since compose_sequence() for video will now always run in a separate thread anyway, there's no real issue with stalling it to wait for footage to complete opening or whatever may be lagging behind. A possible side effect of this though is that the preview may become less responsive if it's stuck trying to render one frame. With the current system, the preview may show incomplete frames occasionally but at least it will show something. This may be preferable. See <a class="el" href="struct_compose_sequence_params.html#ae3bc6f6e6766e44dfbd4f82b60f45689" title="Run all cachers in the same thread that compose_sequence() is in.">ComposeSequenceParams::single_threaded</a> for a similar function that could be removed. </p>
|
||||
<p>Additionally, since <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> for video will now always run in a separate thread anyway, there's no real issue with stalling it to wait for footage to complete opening or whatever may be lagging behind. A possible side effect of this though is that the preview may become less responsive if it's stuck trying to render one frame. With the current system, the preview may show incomplete frames occasionally but at least it will show something. This may be preferable. See <a class="el" href="struct_compose_sequence_params.html#ae3bc6f6e6766e44dfbd4f82b60f45689" title="Run all cachers in the same thread that compose_sequence() is in.">ComposeSequenceParams::single_threaded</a> for a similar function that could be removed. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -427,8 +465,8 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Reference to the <a class="el" href="class_viewer.html">Viewer</a> class that's calling compose_sequence() </p>
|
||||
<p>Primarily used for calling Viewer::play_wake() when appropriate. </p>
|
||||
<p>Reference to the <a class="el" href="class_viewer.html">Viewer</a> class that's calling <a class="el" href="renderfunctions_8cpp.html#a478845e39064301011d72a81b2a10b57" title="Compose a frame of a given sequence.">compose_sequence()</a> </p>
|
||||
<p>Primarily used for calling <a class="el" href="class_viewer.html#ad6bed17848f88c86ce9f20629e82c021">Viewer::play_wake()</a> when appropriate. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user