However, it is not crucial to have the commercial version for this Tutorial, nor is audio. Indeed you can achieve most of what I have described with OBS Studio, an open source streaming platform, that we are also going to use to encode our TouchDesigner Output to Facebook live. What you can not achieve with OBS though
is all the beautiful mindfuck, that you can do live with TouchDesigner, while you are broadcasting.
So, let's get started!
You can open more of these windows and send more test patterns if you want. Next, open Studio Monitor
It does not matter if they are open on the same computer or on another network computer. Again you can open more than one Studio Monitor to preview different sources. Next, open Scan Converter
when you right-click that icon, you can select which windows you want to capture as NDI sources.
It even works to have two or more Chrome windows open in fullscreen and get the respective outputs as different NDI sources (while having TouchDesigner open in the foreground). By the way, with the Adobe CC NDI Plugins, you can send NDI streams directly from the timeline of PremierePro and Character Animator.
NDI in TOP, NDI out TOP, Movie file in TOP Nodes. In the NDI in parameters notice that you can select all the NDI sources on the network, our Test Pattern among them. Select the Test Pattern and give it a little time, before the signal becomes available. Connect an info CHOP to see the resolution of the source.
give the NDI stream a name in the parameter window. Use another info CHOP to learn about this nodes resolution. We will work with 1280x720 in this tutorial, just to make it easier on everybody. Go back to the NDI Studio Monitor and select the source coming from TouchDesigner. Voila, your TD output is another NDI source.
First, open Open Broadcast Studio. Set it to Studio Mode (lower right corner) and create a scene (lower left corner). A scene can hold different sources. You can add new sources to the scene by pressing the plus button.
We are going back to TouchDesigner and start with a clean slate.
Then we lay down a container COMP with a resolution of 1280x720, rename it to Switcher and dive into it.
into the Background Color parameters:
The error message basically says: There is no Parameter called Title in the object, that is my parent.
And it's true, there isn't and that's why we are going to put it there now. The parent in this case is the container COMP we have been working in. So lets move up one level and give this "parent" a parameter called Title. To do so, right click onto the container and select Customize Component.
We could have done that before, but we forgot.
This way, we use the automatically created names of the replicants to drive the content inside the node, like the number and the Background Color.
Jump back into Switcher and lay down a container COMP called Selector_A.
Set Output Resolution to 640 x 360, set Node View to Default Viewer and give it ./out_A as Background TOP.
Set sizex = 1 and sizey = me.par.sizex * 9 / 16 - Remember to turn Display and Render Flags on.
Connect the Render TOP to an Out TOP. Rename it to Out_A.
Connect it to a Sopto CHOP, a Merge CHOP and a Null CHOP.
If you make the node viewer active , right click and select Dot per Sample, you get a better feel for what we are doing.
on the top level of the project, inside the source_ [1-16] containers. If your render still doesnt show anything, move the light and the camera to a higher z position. In my case 6.1 for the camera and 5 for the light work well.
For me sizex = 3.75 for grid1 SOP and sizex = 1.2 for rectangle1 look allright. The respective sizey is automaticall kept in a 16/9 aspect through the expressions.
On the Instance page of the geo1 node, set the Parameters SX and SY to select.
Now the switch should output the source that you clicked on.
Now that we have the ability to select 2 sources out of 16, we want to be able to switch between them. As we can select the sources by clicking on them, we should use the same method to select the output. We add another Container COMP by the name of Select_A, 640x360 by size and jump into it. Here we connect a Panel CHOP to an Out CHOP. Set the Panel CHOPs Select Parameter to select only. We want to know if this container has been clicked or not. We do not care where it has been clicked this time.
Border Width to 10 Pixels.
Now, when you activate the Select_A/B containers and click them,
you should see state jump between zero and one.
Use this value to drive the cross1 TOP.
Let's jump into the Select_A container and write the following expression into the Border Alpha parameter:
We repeat this for Select_B, but this time with this expression:
On the Children page we set Align to Left to Right.
This should make the containers switch order.
Next to the Switcher container create another container COMP, set the Size to 1280x720 and call it Output.
128 x1440 resolution vs 2560 x 720 in a horizontal arrangement.
I am still learning and would love to hear your feedback about this method.