<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Manipulate timeline from plugin]]></title><description><![CDATA[<p dir="auto">I want to create a plugin for Cinema4D SDK, I have a few questions regarding it.</p>
<ol>
<li>Can I have an audio input field in my plugin where user can import audio?</li>
<li>Can I manipulate the timeline from plugin (like adding an audio to the timeline from my plugin)?</li>
<li>This one is not related to the above two. I want to add custom boxes like asset boxes in my plugin panel, where I can show 3D object. When a button is clicked from the plugin, I want to capture the 3D object being rendered at the moment in the app's canvas and show that 3D object in my plugin's asset box.</li>
</ol>
]]></description><link>http://developers.maxon.net/forum/topic/15573/manipulate-timeline-from-plugin</link><generator>RSS for Node</generator><lastBuildDate>Mon, 10 Aug 2026 20:06:13 GMT</lastBuildDate><atom:link href="http://developers.maxon.net/forum/topic/15573.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 20 Jun 2024 10:23:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Manipulate timeline from plugin on Thu, 20 Jun 2024 12:11:45 GMT]]></title><description><![CDATA[<p dir="auto">Hello <a class="plugin-mentions-user plugin-mentions-a" href="/forum/user/veenamandhan">@<bdi>veenamandhan</bdi></a>,</p>
<p dir="auto">Welcome to the Maxon developers forum and its community, it is great to have you with us!</p>
<h4>Getting Started</h4>
<p dir="auto">Before creating your next postings, we would recommend making yourself accustomed with our forum and support procedures. You did not do anything wrong, we point all new users to these rules.</p>
<ul>
<li><a href="topic/15242/" target="_blank" rel="noopener noreferrer nofollow ugc">Forum Overview</a>: Provides a broad overview of the fundamental structure and rules of this forum, such as the purpose of the different sub-forums or the fact that we will ban users who engage in hate speech or harassment.</li>
<li><a href="/topic/15244/" target="_blank" rel="noopener noreferrer nofollow ugc">Support Procedures</a>: Provides a more in detail overview of how we provide technical support for APIs here. This topic will tell you how to ask good questions and limits of our technical support.</li>
<li><a href="/topic/15243/" target="_blank" rel="noopener noreferrer nofollow ugc">Forum Features</a>: Provides an overview of the technical features of this forum, such as Markdown markup or file uploads.</li>
</ul>
<p dir="auto">It is <strong>strongly</strong> recommended to read the first two topics carefully, especially the section <a href="/topic/15244/" target="_blank" rel="noopener noreferrer nofollow ugc">Support Procedures: Asking Questions</a>.</p>
<h4>About your First Question</h4>
<p dir="auto">First of all, you first posting is a violation of our "one subject per topic" rule. When you have questions about multiple subjects, you must open multiple postings. For details on this subject, please see <a href="https://developers.maxon.net/forum/topic/15244/support-procedures/4" target="_blank" rel="noopener noreferrer nofollow ugc">Support Procedures: Asking Questions</a>.</p>
<p dir="auto">We usually cut newcomers some slack in this regard as they cannot know our rules in advance and one usually also has more questions than there are atoms in the universe when starting out with a new API. But we must ask you to conform to this rule in future postings.</p>
<p dir="auto">Regarding your questions:</p>
<ol>
<li>It depends a bit on what you would expect from an "audio input field", but generally, yes. We have the <a href="https://developers.maxon.net/docs/cpp/2024_4_0/class_filename_custom_gui.html#a6c32b86d483acbbc05d18d9704fdc104" target="_blank" rel="noopener noreferrer nofollow ugc">FilenameCusstomGui</a> and the <a href="https://developers.maxon.net/docs/cpp/2024_4_0/class_sound_effector_custom_gui.html" target="_blank" rel="noopener noreferrer nofollow ugc">SoundEffectorCustomGui</a>. The former is for letting the user select arbitrary files, the latter is a specialized GUI for sound files (but also hooks into tracks). In the end this also depends a bit on what plugin type you want to use, because not all plugins use the same <a href="https://developers.maxon.net/docs/cpp/2024_4_0/page_maxonapi_gui_interaction.html" target="_blank" rel="noopener noreferrer nofollow ugc">GUI paradigms</a>.<br />
<img src="/forum/assets/uploads/files/1718883285369-352630af-9dba-4e39-ac71-5f40da6d26ab-image.png" alt="352630af-9dba-4e39-ac71-5f40da6d26ab-image.png" class=" img-fluid img-markdown" />.</li>
<li>Yes, that is possible. You are however bound by the <a href="https://developers.maxon.net/docs/cpp/2024_4_0/page_manual_cinemathreads.html" target="_blank" rel="noopener noreferrer nofollow ugc">threading restrictions here</a> as inserting tracks (your "audio") means modifying the scene graph. Which in turn means that you cannot do this in any of the major payload methods of scene element plugins like <code>ObjectData::GetVirtualObjects</code>, or <code>TagData::Execute</code> as they all run off-main thread. You can do this with all plugin types but for scene elements (everything derived from <code>NodeData</code>) you must usually be a bit more careful, as a lot of methods are there being called in parallel.</li>
<li>That is a very ambiguous question. I am not really sure what you mean with <em>"custom boxes like asset boxes"</em>, but in general you can implement any kind of custom GUI you want in C++. It again depends a bit on the plugin type you use. For dialogs, custom GUIs are realized by <code>GeUserArea</code>, for descriptions, i.e., stuff in the Attribute Manager, you will have to implement a <code>CustomGuiData</code> (and possibly a custom data type). The <a href="https://developers.maxon.net/docs/cpp/2024_4_0/page_maxonapi_gui_interaction.html" target="_blank" rel="noopener noreferrer nofollow ugc">GUI paradigms</a> manual is here also entry point for this subject.</li>
</ol>
<p dir="auto">In general I would recommend opening a thread for each of these subjects, as this thread will become otherwise very convoluted and hard to read and understand for both you and future readers. Before you do that, I would however recommend that you start a thread asking for help which plugin type to choose, while briefly explaining what you want to do.</p>
<p dir="auto">Cheers,<br />
Ferdinand</p>
]]></description><link>http://developers.maxon.net/forum/post/74491</link><guid isPermaLink="true">http://developers.maxon.net/forum/post/74491</guid><dc:creator><![CDATA[ferdinand]]></dc:creator><pubDate>Thu, 20 Jun 2024 12:11:45 GMT</pubDate></item></channel></rss>