10. Exporting compositions

When you create something really interesting with Vuo, you might want to share it with the world. Sometimes you may want to share the composition (.vuo) file so that other people with Vuo can see how your composition works and tweak it themselves. But other times you may want to show your work to people who don’t necessarily have Vuo. The best way to do that is to export your composition to a format that other people can easily work with — a movie, an image, or an application.

10.1. Exporting a movie

Vuo offers several ways to create a movie from a composition:

  • For an easy way to record the graphics displayed in a window, in the composition’s menu go to File > Start Recording.

  • For the highest-quality rendering, make your composition use the Image Generator protocol, and in the Vuo Editor go to File > Export > Movie....

  • To control the movie export from within your composition, use the Save Images to Movie node or the Save Frames to Movie node. (See each node’s description for details.)

  • To control the movie export from the command line, use the vuo-export command-line tool. (See Exporting a composition on the command line for details.)

10.1.1. Recording the graphics in a window

To record a movie:

  • Run a composition that shows at least one window.

  • If your composition has more than one window, click on the one you want to record to make it the active (frontmost) window.

  • Go to File > Start Recording. This immediately starts recording the movie.

  • Let the composition run for as long as you want to record the movie. You can interact with the composition while it’s recording.

  • Go to File > Stop Recording. This immediately stops recording the movie and presents a save dialog.

  • In the save dialog, choose the file where you want to save your movie.

When you start recording, the graphics showing in the window at that moment are added as a frame in the movie. After that, each time the window being recorded renders some graphics — in other words, each time the Render Image to Window, Render Layers to Window, or Render Scene to Window node receives an event — a frame is added to the movie. If your composition is rendering about 60 frames per second, then your movie will play back at about 60 frames per second. If your composition renders once, then waits 10 seconds, then renders again, your movie will do the same — show the first frame for 10 seconds, then show the second frame.

The dimensions of the rendered movie match the dimensions of the window’s graphics area at the moment when you start recording. If you resize the window while the recording is in progress, then the recorded images will be scaled to the movie’s dimensions.

If your composition has multiple windows, then the active (frontmost) window at the time when you went to File > Start Recording will be the one recorded. Only the content displayed within the window’s graphics area — not the window’s title bar, not the cursor, and not any audio — will be recorded in the movie.

Although recording from a composition window is an easy way to create a movie, and allows you to interact with the composition while the recording is being made, it does limit the quality of the movie. Recording a movie in real time means that your computer has to do extra processing, beyond just running the composition. Depending on how powerful your computer is, this may slow the composition down or make it render choppily, and do the same to the recorded movie.

The most reliable way to avoid slowness or choppiness is to export a movie from an Image Generator composition, as described in the next section. But if you do want to record from a composition window, here are some ways to improve the quality of your recording:

  • Avoid doing other processor-intensive things on your computer (such as running other compositions) while the recording is in progress.

  • Limit the size of the window that you record. (Larger windows require more processing power.)

  • Avoid resizing the window during a recording. (Scaling the movie frames after the window has been resized requires more processing power.)

10.1.2. Exporting a movie from an Image Generator composition

Another way to create a movie from a composition is with File > Export > Movie... in the Vuo Editor. Instead of recording a composition in real time, this option runs the composition invisibly and takes as long (or short) as needed to render each movie frame. The resulting movie has a precise frame rate and no dropped frames. You can choose the start and end time, frame rate, and dimensions. Optionally, you can add antialiasing and motion blur (if you have Vuo Pro).

To export a movie:

  • Make your composition conform to the Image Generator protocol.

  • Go to File > Export > Movie....

  • In the dialog that appears, choose the movie file to output to and the other settings for your movie.

  • Click the Export button.

When exporting the movie, Vuo sends a series of events through the composition’s published input ports. The time published input port value increases with each event, by an amount determined by the frame rate you chose in the dialog. Each event comes in through all published input ports. Vuo waits for the event to reach the outputImage published output port, and adds that image to the movie.

When setting up your composition to export a movie, make sure that, for each event that comes in through the published input ports, exactly one event goes out through the published output ports. If an event into the published input ports never reaches the published output ports, then the export will hang because Vuo will be stuck waiting for that event. If extra events go out through the published output ports (fired from triggers within the composition), then the exported movie may contain unexpected images.