<?xml version="1.0" encoding="utf-8" standalone="yes"?>

<?xml-stylesheet href="./_c74_ref.xsl" type="text/xsl"?>

<c74object category="Jitter Generators" module="jit" name="jit.qt.record" kind="fakeobject">
	<digest>
		Record a movie
	</digest>
	<description>
		The <o>jit.record</o> object take a sequence of Jitter matrices as input, saving the sequence to disk as a movie.
	</description>
	<discussion>
		This document refers to the qt engine version of <o>jit.record</o>.
	</discussion>
	<!--METADATA -->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			Jitter
		</metadata>
	</metadatalist>
	<inletlist>
		<inlet id="0" type="matrix">
			<digest>
				in
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="1" type="matrix">
			<digest>
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<outletlist>
		<outlet id="0" type="matrix">
			<digest>
				out
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="1" type="matrix">
			<digest>
				dumpout
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
	</outletlist>
	<!-- ===================================================
            MOP
   =================================================== -->
	<mop matrixinputcount="1" matrixoutputcount="1">
		<matrixoutput dimlink="1" maxdimcount="32" maxplanecount="32" mindimcount="1" minplanecount="1" name="out" planelink="1" typelink="1">
			<types>
				char long float32 float64
			</types>
		</matrixoutput>
	</mop>
	<!-- ===================================================
            ATTRIBUTES
   =================================================== -->
	<attributelist>
		<attribute get="1" name="adapt" set="1" size="1" type="int">
			<digest>
				Adapt output matrix dimensions
			</digest>
			<description>
				Adapt output matrix dimensions to matrix input. If dimension arguments provided, default = 0, otherwise default = 1.
			</description>
			<attributelist>
				<attribute get="1" name="category" set="1" size="1" type="atom" value="Spatial" />
			</attributelist>
		</attribute>
		<attribute get="1" name="engine" set="1" size="1" type="symbol">
			<digest>
				Video engine backend.
			</digest>
			<description>
				Video engine backend. This argument can only be set in the max box. If not specified, it is determined by the Video Engine Max preference. As of this writing, possible values include <ar>avf</ar> (Mac only), and <ar>qt</ar>.
			</description>
		</attribute>
		<attribute get="1" name="preview" set="1" size="1" type="int">
			<digest>
				Preview flag
			</digest>
			<description>
				Preview flag (default = 0 (off))
				<br />
				Typically, the <o>jit.record</o> object passes input matrices directly to the outlet without any processing. Enabling <at>preview</at> during recording permits viewing of the compressed frames as they are recorded.
			</description>
		</attribute>
		<attribute get="1" name="dstrect" set="1" size="4" type="int">
			<digest>
				The portion of the output matrix written to by the input frame
			</digest>
			<description>
				The portion of the output matrix written to by the input frame (default = 0 0 (matrix width) (matrix height)).
				<br />
				The proportions of the rectangle are expressed in the form <i>left top right bottom</i>. All values are relative to the top left corner of the object's viewing area.
			</description>
		</attribute>
		<attribute get="1" name="interp" set="1" size="1" type="int">
			<digest>
				Interpolation flag
			</digest>
			<description>
				Interpolation flag (default = 0)
				<br />
				When the flag is set, the incoming matrix is interpolated when scaling to display.
			</description>
		</attribute>
		<attribute get="1" name="planemap" set="1" size="4" type="int">
			<digest>
				Plane mapping from input matrix to output movie
			</digest>
			<description>
				The plane mapping from input matrix to output movie (default = 0 1 2 3)
			</description>
		</attribute>
		<attribute get="1" name="realtime" set="1" size="1" type="int">
			<digest>
				Realtime recording mode flag (default = 0 (off))
			</digest>
			<discussion>
				In realtime recording mode, the <o>jit.record</o> object continually writes frames to disk at the framerate specified by the <m>write</m> message. New frames arriving at the object will not be written immediately, but rather at the next media sample time as determined by the frame rate.
			</discussion>
		</attribute>
		<attribute get="1" name="srcrect" set="1" size="4" type="int">
			<digest>
				The portion of the input matrix used when copying an input matrix to the internal matrix
			</digest>
			<description>
				The portion of the input matrix used when copying an input matrix to the internal matrix. (default = 0 0 (matrix width) (matrix height)) The proportions of the rectangle are expressed in the form <i>left top right bottom</i>. All values are relative to the top left corner of the viewing area of the input matrix.
			</description>
		</attribute>
		<attribute get="1" name="time" set="0" size="1" type="int">
			<digest>
				Current duration of media written to disk (QT units)
			</digest>
			<description>
				The current duration, in time units, of media written to disk (default = operation-specific)
				<br />
				The <at>time</at> attribute only returns data during <m>write</m> operations.
			</description>
		</attribute>
		<attribute get="1" name="usedstrect" set="1" size="1" type="int">
			<digest>
				Destination rect flag
			</digest>
			<description>
				Destination rect flag (default = 0)
				<br />
				When the flag is set, the <at>dstrect</at> attributes are used when copying an input matrix to the internal matrix.
			</description>
		</attribute>
		<attribute get="1" name="usesrcrect" set="1" size="1" type="int">
			<digest>
				Source rect flag
			</digest>
			<description>
				Source rect flag (default = 0)
				<br />
				When the flag is set, the <at>srcrect</at> attributes are used when copying an input matrix to the internal matrix.
			</description>
		</attribute>
		<attribute name="fps" get="1" set="1" type="float" size="1">
			<digest>
				Frames Per Second
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Frames Per Second" />
			</attributelist>
		</attribute>
		<attribute name="codec" get="1" set="1" type="symbol" size="1">
			<digest>
				Codec
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="enumvals" get="1" set="1" type="atom" size="4">
					<enumlist>
						<enum name="jpeg">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="h264">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="prores4444">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="prores422">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
					</enumlist>
				</attribute>
				<attribute name="introduced" get="1" set="1" type="symbol" size="1" value="7.0.0" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Codec" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="enum" />
			</attributelist>
		</attribute>
	</attributelist>
	<!-- ===================================================
            METHODS
   =================================================== -->
	<methodlist>
		<method name="stop">
			<arglist />
			<digest>
				Stop recording
			</digest>
			<description>
				Stop recording.
			</description>
		</method>
	</methodlist>
	<!-- ===================================================
            EXAMPLE
   =================================================== -->
	<examplelist>
		<example img="jit.record.png" />
	</examplelist>
	<!-- ===================================================
            SEEALSO
   =================================================== -->
	<seealsolist>
		<seealso display="jit.movie" name="jit.qt.movie" />
		<seealso display="jit.record" name="jit.qt.record" />
		<seealso name="jit.vcr" />
		<seealso module="jit" name="jitterchapter19" type="tutorial" />
		<seealso module="jit" name="jitterchapter21" type="tutorial" />
	</seealsolist>
</c74object>
