<?xml version="1.0" encoding="utf-8" standalone="yes"?>

<?xml-stylesheet href="./_c74_ref.xsl" type="text/xsl"?>

<!--This is an automatically generated file. DO NOT EDIT THIS FILE DIRECTLY. Rather, use the _ref.xml files found in the 'edits' folder.-->
<c74object name="jit.keyscreen" module="jit" category="Jitter Compositing">
	<digest>
		Choke chromakey from 3 sources
	</digest>
	<description>
		Takes three 4-plane char matrix and does an interchangeable choke chromakey between the three sources. Any of the three input matrices can be designated as the <at>key</at> image (from which the image mask is created), the <at>target</at> image (which the mask is overlaid onto), or the <at>mask</at> image (which is placed on top of the <at>target</at> in the shape of the <at>key</at>).
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			Jitter
		</metadata>
		<metadata name="tag">
			Jitter Compositing
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="matrix">
			<digest>
				in
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="1" type="matrix">
			<digest>
				in2
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
		<inlet id="2" type="matrix">
			<digest>
				in3
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<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="3" matrixoutputcount="1">
		<matrixinput name="in2" planelink="1" typelink="1" dimlink="1" minplanecount="4" maxplanecount="4" mindimcount="1" maxdimcount="32" ioproc="resamp">
			<types>
				char
			</types>
		</matrixinput>
		<matrixinput name="in3" planelink="1" typelink="1" dimlink="1" minplanecount="4" maxplanecount="4" mindimcount="1" maxdimcount="32" ioproc="resamp">
			<types>
				char
			</types>
		</matrixinput>
		<matrixoutput name="out" planelink="1" typelink="1" dimlink="1" minplanecount="4" maxplanecount="4" mindimcount="1" maxdimcount="32">
			<types>
				char
			</types>
		</matrixoutput>
	</mop>
	<!--MESSAGES-->
	<jittermethodlist>
		<jittermethod name="bang" />
		<jittermethod name="clear" />
		<jittermethod name="exportattrs" />
		<jittermethod name="exportsummary" />
		<jittermethod name="getattributes" />
		<jittermethod name="getstate" />
		<jittermethod name="jit_matrix" />
		<jittermethod name="importattrs" />
		<jittermethod name="outputmatrix" />
		<jittermethod name="summary" />
	</jittermethodlist>
	<!--ATTRIBUTES-->
	<attributelist>
		<attribute name="alpha" get="1" set="1" type="float" size="1">
			<digest>
				Alpha key value
			</digest>
			<description>
				The alpha (plane 0) value for the chroma key (default = 0.)
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Alpha" />
			</attributelist>
		</attribute>
		<attribute name="alphatol" get="1" set="1" type="float" size="1">
			<digest>
				Alpha tolerance level
			</digest>
			<description>
				The alpha tolerance level for the chroma key (default = 0.)
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Alpha Tolerance" />
			</attributelist>
		</attribute>
		<attribute name="blue" get="1" set="1" type="float" size="1">
			<digest>
				Blue key value
			</digest>
			<description>
				The blue (plane 3) value for the chroma key (default = 0.)
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Blue" />
			</attributelist>
		</attribute>
		<attribute name="bluetol" get="1" set="1" type="float" size="1">
			<digest>
				Blue tolerance level
			</digest>
			<description>
				The blue tolerance level for the chroma key (default = 0.)
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Blue Tolerance" />
			</attributelist>
		</attribute>
		<attribute name="green" get="1" set="1" type="float" size="1">
			<digest>
				Green key value
			</digest>
			<description>
				The green (plane 2) value for the chroma key (default = 0.)
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Green" />
			</attributelist>
		</attribute>
		<attribute name="greentol" get="1" set="1" type="float" size="1">
			<digest>
				Green tolerance level
			</digest>
			<description>
				The green tolerance level for the chroma key (default = 0.)
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Green Tolerance" />
			</attributelist>
		</attribute>
		<attribute name="key" get="1" set="1" type="int" size="1">
			<digest>
				Key matrix inlet
			</digest>
			<description>
				The inlet number for the key matrix (default = 0)
				<br />
				A matrix received in the <at>key</at> inlet is used to build the shape of mask image
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Key Input" />
			</attributelist>
		</attribute>
		<attribute name="mask" get="1" set="1" type="int" size="1">
			<digest>
				Mask matrix inlet
			</digest>
			<description>
				The inlet number for the mask matrix (default = 2)
				<br />
				A matrix received in the <at>mask</at> inlet is shaped by the key image and occludes the target image
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Mask Input" />
			</attributelist>
		</attribute>
		<attribute name="mode" get="1" set="1" type="int" size="1">
			<digest>
				Chomakeying mode
			</digest>
			<description>
				Chomakeying mode (default = 0 (key entire cells))
				<br />
				0 = chroma key entire cells of the input matrices
				<br />
				1 = chroma key individual planes of the input matrices
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="enumvals" get="1" set="1" type="atom" size="3">
					<enumlist>
						<enum name="Wrap">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="Clip">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
						<enum name="Fold">
							<digest>
								TEXT_HERE
							</digest>
							<description>
								TEXT_HERE
							</description>
						</enum>
					</enumlist>
				</attribute>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Keying Mode" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="enumindex" />
			</attributelist>
		</attribute>
		<attribute name="red" get="1" set="1" type="float" size="1">
			<digest>
				Red key value
			</digest>
			<description>
				The red (plane 1) value for the chroma key (default = 0.)
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Red" />
			</attributelist>
		</attribute>
		<attribute name="redtol" get="1" set="1" type="float" size="1">
			<digest>
				Red tolerance level
			</digest>
			<description>
				The red tolerance level for the chroma key (default = 0.)
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Red Tolerance" />
			</attributelist>
		</attribute>
		<attribute name="target" get="1" set="1" type="int" size="1">
			<digest>
				Target matrix inlet
			</digest>
			<description>
				The inlet number for the target matrix (default = 1)
				<br />
				A matrix received in the <at>target</at> inlet is placed behind the mask image
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="atom" size="1" value="1" />
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Behavior" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Target Input" />
			</attributelist>
		</attribute>
	</attributelist>
	<jitterattributelist>
		<jitterattribute name="outputmode" />
		<jitterattribute name="adapt" />
		<jitterattribute name="in2_name" />
		<jitterattribute name="in2_type" />
		<jitterattribute name="in2_dim" />
		<jitterattribute name="in2_planecount" />
		<jitterattribute name="in3_name" />
		<jitterattribute name="in3_type" />
		<jitterattribute name="in3_dim" />
		<jitterattribute name="in3_planecount" />
		<jitterattribute name="out_name" />
		<jitterattribute name="type" />
		<jitterattribute name="dim" />
		<jitterattribute name="planecount" />
	</jitterattributelist>
	<!--EXAMPLE-->
	<examplelist>
		<example img="jit.keyscreen.png" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="jit.alphablend" />
		<seealso name="jit.chromakey" />
		<seealso name="jit.lumakey" />
		<seealso name="jit.op" />
	</seealsolist>
	<discussion>
		The <o>jit.keyscreen</o> object takes a color and a tolerance range for the keying. It can work by cell or by plane (set via the <at>mode</at> attribute).
	</discussion>
</c74object>
