These nodes are for working with movie files and with live video from cameras.
The visual part of a video is made up of a sequence of frames. Each frame contains an image. Each frame also contains a time indicating when the frame was recorded or when it’s intended to be played back, relative to the start of the video.
The audio part of a video is made up of a sequence of samples on one or more channels. (For more information about audio, see the
vuo.audio node set documentation.) You can play the audio from a movie, or create a movie with audio, using a combination of nodes from this node set and the
vuo.audio node set.
Receive Live Video node, and related nodes for working with cameras, support any QuickTime device. This includes the built-in iSight/FaceTime cameras in MacBooks and iMacs, iOS devices when connected via a Lightning cable, and many other USB and FireWire cameras.
Nodes that open or save to movie files have a URL input port. You can drag a movie file from Finder onto the input port’s constant value to fill in the URL. Or drag the movie file onto the composition canvas to create a
Play Movie node. These nodes only support file URLs, not HTTP.
A movie file has several characteristics that determine which applications (including Vuo) can play it and how efficiently it can be played.
The file extension (such as .mov or .mp4) tells you which container the movie uses. Different applications support different containers. Vuo’s
Play Movie and
Decode Movie File nodes can open any of the file formats supported by FFmpeg, including .mov, .avi, .dv, .mpeg, .mpg, .mp2, .m4v, .mp4, and .ogv.
Within the container, the way that the video and audio are stored in the file is determined by the encoding. As with containers, different applications support different encodings. Vuo’s
Play Movie and
Decode Movie File nodes can read any of the video encodings supported by FFmpeg.
Some video encodings (delivery codecs) are designed for playing back and sharing movie files, while others (intermediate codecs) are designed for video editing. Delivery codecs tend to produce videos with smaller file sizes and be more efficient when playing video frames in order (for example, with the
Play Movie node at its default playback rate). Intermediate codecs tend to be more efficient when playing frames in reverse or otherwise out of order (for example, with the
Decode Movie Image node).
The table below summarizes some of the video codecs supported by this node set.
|ProRes 422||Intermediate||Only available on systems with Final Cut Pro installed.|
|ProRes 4444||Intermediate||Only available on systems with Final Cut Pro installed.|
Audio is encoded separately from video. Similarly to video encodings, audio encodings have a tradeoff between quality and file size. Lossless encodings preserve the original audio at the expense of larger file sizes. Lossy encodings tend to produce smaller file sizes but may reduce the audio quality.
Play Movie node can read any of the audio encodings supported by FFmpeg. The table below summarizes some of the audio encodings supported by this node set.
|Encoding||Compression|| Supported by
|| Supported by
|Linear PCM||Lossless (uncompressed)||Yes||Yes|
To find out which video and audio encodings a movie file uses, you can open it in QuickTime Player and go to Window > Show Movie Inspector.
Vuo provides 2 nodes for saving images and audio to movie files:
Save Images to Movie— Useful for realtime recording. Simply feed images (and optionally audio) to this node, and it records them in a movie file in realtime. Each frame’s timestamp is derived from the time at which the image or audio event arrives at this node.
Save Frames to Movie— Useful for non-realtime exporting and rotoscoping. This node lets you explicitly specify the timestamps for images and audio sample buffers.
(See Exporting a Movie for information on other ways to create movie files with Vuo.)