﻿<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- saved from url=(0014)about:internet -->
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta name="book" content="ActionScript&nbsp;3.0&nbsp;Language&nbsp;and&nbsp;Components&nbsp;Reference"><link rel="stylesheet" href="../../style.css" type="text/css" media="screen"><link rel="stylesheet" href="../../print.css" type="text/css" media="print"><link rel="stylesheet" href="../../override.css" type="text/css"><meta name="keywords" content="Camera,flash.media.Camera,NELLYMOSER,SPEEX,activityLevel,activityLevel,album,artist,bandwidth,bufferTime,bufferTime,bytesLoaded,bytesTotal,checkPolicyFile,codec,comment,currentFPS,deblocking,encodeQuality,fps,framesPerPacket,gain,genre,height,id3,index,index,isBuffering,keyFrameInterval,leftPeak,leftToLeft,leftToRight,length,loopback,motionLevel,motionTimeout,muted,muted,name,name,names,names,pan,position,quality,rate,rightPeak,rightToLeft,rightToRight,silenceLevel,silenceTimeout,smoothing,songName,soundTransform,soundTransform,soundTransform,track,url,useEchoSuppression,videoHeight,videoWidth,volume,width,year,areSoundsInaccessible,attachCamera,attachNetStream,clear,close,computeSpectrum,extract,getCamera,getMicrophone,load,play,scanHardware,setKeyFrameInterval,setLoopBack,setLoopback,setMode,setMotionLevel,setQuality,setSilenceLevel,setUseEchoSuppression,stopAll,stop"><title>flash.media.Camera (ActionScript 3.0)</title><script src="../../AC_OETags.js" type="text/javascript"></script></head><body><script language="javascript" type="text/javascript" src="../../asdoc.js"></script><script language="javascript" type="text/javascript" src="../../help.js"></script><script language="javascript" type="text/javascript" src="../../cookies.js"></script><script language="javascript" type="text/javascript">  
            <!--  
			    
				asdocTitle = 'Camera - ActionScript 3.0 Language and Components Reference';

				var baseRef = '../../';

				window.onload = configPage;
			      
			    -->  
            </script>
<script language="javascript" type="text/javascript"><!--
function submitValue(){
var searchStr=document.getElementById('search-livedocs').value;
window.location="../../search.html"+"###"+searchStr;
}
--></script><script type="text/javascript">
		scrollToNameAnchor();
	</script><table class="titleTable" cellpadding="0" cellspacing="0" id="titleTable" style="display:none"><tr><td class="titleTableTitle" align="left">ActionScript 3.0 Language and Components Reference</td><td class="titleTableSearch" align="center"><form class="searchForm" method="get" action="../../search.html" onsubmit="submitValue();"><input class="hidden" name="loc" value="" type="hidden"><input class="hidden" name="termPrefix" value="" type="hidden"><input class="hidden" name="term" value="" type="hidden"><input class="hidden" name="area" value="" type="hidden"><input id="search-livedocs" name="search_text" value="" title="" type="text"> <input type="button" name="action" value="Search" onclick="submitValue()"></form></td><td class="titleTableTopNav" align="right"><a href="../../../../Flash/10.0_Welcome/index.html">Home</a>&nbsp;|&nbsp;<a href="../../package-summary.html" onclick="loadClassListFrame('../../all-classes.html')">All Packages</a>&nbsp;|&nbsp;<a href="../../class-summary.html" onclick="loadClassListFrame('../../all-classes.html')">All Classes</a>&nbsp;|&nbsp;<a href="../../language-elements.html">Language Elements</a>&nbsp;| <a href="../../all-index-Symbols.html" onclick="loadClassListFrame('../../index-list.html')">Index</a>&nbsp;|&nbsp;<a href="../../appendixes.html">Appendixes</a>&nbsp;|&nbsp;<a href="../../conventions.html">Conventions</a>&nbsp;|&nbsp;<a id="framesLink1" href="../../index.html?flash/media/Camera.html&amp;flash/media/class-list.html">Frames</a><a id="noFramesLink1" style="display:none" href="" onclick="parent.location=document.location"> No Frames </a></td><td class="titleTableLogo" align="right" rowspan="3"><img src="../../images/logo.jpg" class="logoImage" alt=" Adobe Logo " title=" Adobe Logo "></td></tr><tr class="titleTableRow2"><td class="titleTableSubTitle" id="subTitle" align="left">Camera</td><td class="titleTableSubNav" id="subNav" align="right" colspan="2"><a href="#propertySummary">Properties</a>&nbsp;| <a href="#methodSummary">Methods</a>&nbsp;| <a href="#eventSummary">Events</a>&nbsp;| <a href="#styleSummary">Styles</a>&nbsp;| <a href="#effectSummary">Effects</a>&nbsp;| <a href="#constantSummary">Constants</a>&nbsp;| <a href="#includeExamplesSummary">Examples</a></td></tr><tr class="titleTableRow3"><td colspan="3">&nbsp;</td></tr></table><script language="javascript" type="text/javascript" xml:space="preserve">
                
                    
                

				<!--

				
				    
				

					if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("Camera"); titleBar_setSubNav(false,true,false	,false,true,false,true,true,false	,false,false,false,false,false);}

				    
				        
				    
				-->
                
                    
                
			</script><div class="MainContent"><table class="classHeaderTable" cellpadding="0" cellspacing="0"><tr><td class="classHeaderTableLabel">Package</td><td><a href="package-detail.html" onclick="javascript:loadClassListFrame('class-list.html')">flash.media</a></td></tr><tr><td class="classHeaderTableLabel">Class</td><td class="classSignature">public final   class  Camera</td></tr><tr><td class="classHeaderTableLabel">Inheritance</td><td class="inheritanceList">Camera  <img src="../../images/inherit-arrow.gif" title="Inheritance" alt="Inheritance" class="inheritArrow"> <a href="../../flash/events/EventDispatcher.html">EventDispatcher</a> <img src="../../images/inherit-arrow.gif" title="Inheritance" alt="Inheritance" class="inheritArrow"> <a href="../../Object.html">Object</a></td></tr></table><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p></p>
        Use the Camera class to capture video from a camera attached to a computer running Flash Player. 
 Use the Video class to monitor the video locally.  
 Use the NetConnection and NetStream classes to transmit the video to Flash Media Server.
 Flash Media Server can send the video stream to other servers and broadcast it to other clients running Flash Player.
        <p>For information about capturing audio, see the Microphone class.</p>
        
               <p>
          
                  <b>Important:</b>
          Flash Player displays a Privacy dialog box that lets the user choose whether 
 to allow or deny access to the camera. Make sure your application window size is at least 215 x 138 pixels; 
 this is the minimum size required to display the dialog box.
        </p>
        
               <p>
          To create or reference a Camera object, use the
          <code>getCamera()</code>
          method.
        </p>
        
            <p></p><p><a href="#includeExamplesSummary">View the examples</a></p><p><span class="classHeaderTableLabel">See also</span></p><div class="seeAlso"><a href="Microphone.html" target="">flash.media.Microphone</a></div><br/><hr></div><a name="propertySummary"></a><div class="summarySection"><div class="summaryTableTitle">Public Properties</div><div class="showHideLinks"><div id="hideInheritedProperty" class="hideInheritedProperty"><a class="showHideLink" href="#propertySummary" onclick="javascript:setInheritedVisible(false,'Property');"><img class="showHideLinkImage" src="../../images/expanded.gif"> Hide Inherited Public Properties</a></div><div id="showInheritedProperty" class="showInheritedProperty"><a class="showHideLink" href="#propertySummary" onclick="javascript:setInheritedVisible(true,'Property');"><img class="showHideLinkImage" src="../../images/collapsed.gif"> Show Inherited Public Properties</a></div></div><table cellspacing="0" cellpadding="3" class="summaryTable " id="summaryTableProperty"><tr><th>&nbsp;</th><th colspan="2">Property</th><th>Defined By</th></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#activityLevel" class="signatureLink">activityLevel</a> : <a href="../../Number.html">Number</a><div class="summaryTableDescription">[read-only] The amount of motion the camera is detecting.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#bandwidth" class="signatureLink">bandwidth</a> : <a href="../../int.html">int</a><div class="summaryTableDescription">[read-only] The maximum amount of bandwidth the current outgoing video feed can use, in bytes.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class="hideInheritedProperty"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><a href="../../Object.html#constructor" class="signatureLink">constructor</a> : <a href="../../Object.html">Object</a><div class="summaryTableDescription">A reference to the class object or constructor function for a given object instance.</div></td><td class="summaryTableOwnerCol"><a href="../../Object.html">Object</a></td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#currentFPS" class="signatureLink">currentFPS</a> : <a href="../../Number.html">Number</a><div class="summaryTableDescription">[read-only] The rate at which the camera is capturing data, in frames per second.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#fps" class="signatureLink">fps</a> : <a href="../../Number.html">Number</a><div class="summaryTableDescription">[read-only] The maximum rate at which the camera can capture data, in frames per second.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#height" class="signatureLink">height</a> : <a href="../../int.html">int</a><div class="summaryTableDescription">[read-only] The current capture height, in pixels.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#index" class="signatureLink">index</a> : <a href="../../int.html">int</a><div class="summaryTableDescription">[read-only] A zero-based integer that specifies the index of the camera, as reflected in
  the array returned by the names property.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#keyFrameInterval" class="signatureLink">keyFrameInterval</a> : <a href="../../int.html">int</a><div class="summaryTableDescription">[read-only] The number of video frames transmitted in full (called keyframes) 
  instead of being interpolated by the video compression algorithm.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#loopback" class="signatureLink">loopback</a> : <a href="../../Boolean.html">Boolean</a><div class="summaryTableDescription">[read-only] Indicates whether a local view of what the camera is capturing is compressed
  and decompressed (true), as it would be for live transmission using
  Flash Media Server, or uncompressed (false).</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#motionLevel" class="signatureLink">motionLevel</a> : <a href="../../int.html">int</a><div class="summaryTableDescription">[read-only] The amount of motion required to invoke the activity event.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#motionTimeout" class="signatureLink">motionTimeout</a> : <a href="../../int.html">int</a><div class="summaryTableDescription">[read-only] The number of milliseconds between the time the camera stops detecting motion and the time the activity event is invoked.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#muted" class="signatureLink">muted</a> : <a href="../../Boolean.html">Boolean</a><div class="summaryTableDescription">[read-only] A Boolean value indicating whether the user has denied access to the camera
  (true) or allowed access (false) in the Flash Player Privacy dialog box.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#name" class="signatureLink">name</a> : <a href="../../String.html">String</a><div class="summaryTableDescription">[read-only] The name of the current camera, as returned by the camera hardware.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#names" class="signatureLink">names</a> : <a href="../../Array.html">Array</a><div class="summaryTableDescription">[static] [read-only] An array of strings indicating the names of all available cameras
  without displaying the Flash Player Privacy dialog box.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class="hideInheritedProperty"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><a href="../../Object.html#prototype" class="signatureLink">prototype</a> : <a href="../../Object.html">Object</a><div class="summaryTableDescription">[static] A reference to the prototype object of a class or function object.</div></td><td class="summaryTableOwnerCol"><a href="../../Object.html">Object</a></td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#quality" class="signatureLink">quality</a> : <a href="../../int.html">int</a><div class="summaryTableDescription">[read-only] The required level of picture quality, as determined by the amount of compression being applied to each video
  frame.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a href="#width" class="signatureLink">width</a> : <a href="../../int.html">int</a><div class="summaryTableDescription">[read-only] The current capture width, in pixels.</div></td><td class="summaryTableOwnerCol">Camera</td></tr></table></div><a name="methodSummary"></a><div class="summarySection"><div class="summaryTableTitle">Public Methods </div><div class="showHideLinks"><div id="hideInheritedMethod" class="hideInheritedMethod"><a class="showHideLink" href="#methodSummary" onclick="javascript:setInheritedVisible(false,'Method');"><img class="showHideLinkImage" src="../../images/expanded.gif"> Hide Inherited Public Methods</a></div><div id="showInheritedMethod" class="showInheritedMethod"><a class="showHideLink" href="#methodSummary" onclick="javascript:setInheritedVisible(true,'Method');"><img class="showHideLinkImage" src="../../images/collapsed.gif"> Show Inherited Public Methods</a></div></div><table cellspacing="0" cellpadding="3" class="summaryTable " id="summaryTableMethod"><tr><th>&nbsp;</th><th colspan="2">Method</th><th>Defined By</th></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../flash/events/EventDispatcher.html#addEventListener()" class="signatureLink">addEventListener</a>(type:<a href="../../String.html">String</a>, listener:<a href="../../Function.html">Function</a>, useCapture:<a href="../../Boolean.html">Boolean</a> = false, priority:<a href="../../int.html">int</a> = 0, useWeakReference:<a href="../../Boolean.html">Boolean</a> = false):<a href="../../specialTypes.html#void">void</a></div><div class="summaryTableDescription">Registers an event listener object with an EventDispatcher object so that the listener 
 receives notification of an event.</div></td><td class="summaryTableOwnerCol"><a href="../../flash/events/EventDispatcher.html">EventDispatcher</a></td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../flash/events/EventDispatcher.html#dispatchEvent()" class="signatureLink">dispatchEvent</a>(event:<a href="../../flash/events/Event.html">Event</a>):<a href="../../Boolean.html">Boolean</a></div><div class="summaryTableDescription">Dispatches an event into the event flow.</div></td><td class="summaryTableOwnerCol"><a href="../../flash/events/EventDispatcher.html">EventDispatcher</a></td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#getCamera()" class="signatureLink">getCamera</a>(name:<a href="../../String.html">String</a> = null):<a href="../../flash/media/Camera.html">Camera</a></div><div class="summaryTableDescription">[static] Returns a reference to a Camera object for capturing video.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../flash/events/EventDispatcher.html#hasEventListener()" class="signatureLink">hasEventListener</a>(type:<a href="../../String.html">String</a>):<a href="../../Boolean.html">Boolean</a></div><div class="summaryTableDescription">Checks whether the EventDispatcher object has any listeners registered for a specific type 
 of event.</div></td><td class="summaryTableOwnerCol"><a href="../../flash/events/EventDispatcher.html">EventDispatcher</a></td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../Object.html#hasOwnProperty()" class="signatureLink">hasOwnProperty</a>(name:<a href="../../String.html">String</a>):<a href="../../Boolean.html">Boolean</a></div><div class="summaryTableDescription">Indicates whether an object has a specified property defined.</div></td><td class="summaryTableOwnerCol"><a href="../../Object.html">Object</a></td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../Object.html#isPrototypeOf()" class="signatureLink">isPrototypeOf</a>(theClass:<a href="../../Object.html">Object</a>):<a href="../../Boolean.html">Boolean</a></div><div class="summaryTableDescription">Indicates whether an instance of the Object class is in the prototype chain of the object specified 
  as the parameter.</div></td><td class="summaryTableOwnerCol"><a href="../../Object.html">Object</a></td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../Object.html#propertyIsEnumerable()" class="signatureLink">propertyIsEnumerable</a>(name:<a href="../../String.html">String</a>):<a href="../../Boolean.html">Boolean</a></div><div class="summaryTableDescription">Indicates whether the specified property exists and is enumerable.</div></td><td class="summaryTableOwnerCol"><a href="../../Object.html">Object</a></td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../flash/events/EventDispatcher.html#removeEventListener()" class="signatureLink">removeEventListener</a>(type:<a href="../../String.html">String</a>, listener:<a href="../../Function.html">Function</a>, useCapture:<a href="../../Boolean.html">Boolean</a> = false):<a href="../../specialTypes.html#void">void</a></div><div class="summaryTableDescription">Removes a listener from the EventDispatcher object.</div></td><td class="summaryTableOwnerCol"><a href="../../flash/events/EventDispatcher.html">EventDispatcher</a></td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#setKeyFrameInterval()" class="signatureLink">setKeyFrameInterval</a>(keyFrameInterval:<a href="../../int.html">int</a>):<a href="../../specialTypes.html#void">void</a></div><div class="summaryTableDescription">Specifies which video frames are transmitted in full (called keyframes)
  instead of being interpolated by the video compression algorithm.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#setLoopback()" class="signatureLink">setLoopback</a>(compress:<a href="../../Boolean.html">Boolean</a> = false):<a href="../../specialTypes.html#void">void</a></div><div class="summaryTableDescription">Specifies whether to use a compressed video stream for a local view of the camera.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#setMode()" class="signatureLink">setMode</a>(width:<a href="../../int.html">int</a>, height:<a href="../../int.html">int</a>, fps:<a href="../../Number.html">Number</a>, favorArea:<a href="../../Boolean.html">Boolean</a> = true):<a href="../../specialTypes.html#void">void</a></div><div class="summaryTableDescription">Sets the camera capture mode to the native mode that best meets the specified requirements.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#setMotionLevel()" class="signatureLink">setMotionLevel</a>(motionLevel:<a href="../../int.html">int</a>, timeout:<a href="../../int.html">int</a> = 2000):<a href="../../specialTypes.html#void">void</a></div><div class="summaryTableDescription">Specifies how much motion is required to dispatch the activity event.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../Object.html#setPropertyIsEnumerable()" class="signatureLink">setPropertyIsEnumerable</a>(name:<a href="../../String.html">String</a>, isEnum:<a href="../../Boolean.html">Boolean</a> = true):<a href="../../specialTypes.html#void">void</a></div><div class="summaryTableDescription">Sets the availability of a dynamic property for loop operations.</div></td><td class="summaryTableOwnerCol"><a href="../../Object.html">Object</a></td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#setQuality()" class="signatureLink">setQuality</a>(bandwidth:<a href="../../int.html">int</a>, quality:<a href="../../int.html">int</a>):<a href="../../specialTypes.html#void">void</a></div><div class="summaryTableDescription">Sets the maximum amount of bandwidth per second or the required picture quality
  of the current outgoing video feed.</div></td><td class="summaryTableOwnerCol">Camera</td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../Object.html#toString()" class="signatureLink">toString</a>():<a href="../../String.html">String</a></div><div class="summaryTableDescription">Returns the string representation of the specified object.</div></td><td class="summaryTableOwnerCol"><a href="../../Object.html">Object</a></td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../Object.html#valueOf()" class="signatureLink">valueOf</a>():<a href="../../Object.html">Object</a></div><div class="summaryTableDescription">Returns the primitive value of the specified object.</div></td><td class="summaryTableOwnerCol"><a href="../../Object.html">Object</a></td></tr><tr class="hideInheritedMethod"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../flash/events/EventDispatcher.html#willTrigger()" class="signatureLink">willTrigger</a>(type:<a href="../../String.html">String</a>):<a href="../../Boolean.html">Boolean</a></div><div class="summaryTableDescription">Checks whether an event listener is registered with this EventDispatcher object or any of 
 its ancestors for the specified event type.</div></td><td class="summaryTableOwnerCol"><a href="../../flash/events/EventDispatcher.html">EventDispatcher</a></td></tr></table></div><a name="eventSummary"></a><div class="summarySection"><div class="summaryTableTitle">Events</div><div class="showHideLinks"><div id="hideInheritedEvent" class="hideInheritedEvent"><a class="showHideLink" href="#eventSummary" onclick="javascript:setInheritedVisible(false,'Event');"><img class="showHideLinkImage" src="../../images/expanded.gif"> Hide Inherited Events</a></div><div id="showInheritedEvent" class="showInheritedEvent"><a class="showHideLink" href="#eventSummary" onclick="javascript:setInheritedVisible(true,'Event');"><img class="showHideLinkImage" src="../../images/collapsed.gif"> Show Inherited Events</a></div></div><table cellspacing="0" cellpadding="3" class="summaryTable " id="summaryTableEvent"><tr><th>&nbsp;</th><th colspan="2">Event</th><th> Summary </th><th>Defined By</th></tr><tr class="hideInheritedEvent"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../flash/events/EventDispatcher.html#event:activate" class="signatureLink">activate</a></div></td><td class="summaryTableDescription summaryTableCol">[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active.</td><td class="summaryTableOwnerCol"><a href="../../flash/events/EventDispatcher.html">EventDispatcher</a></td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#event:activity" class="signatureLink">activity</a></div></td><td class="summaryTableDescription summaryTableCol">Dispatched when a camera begins or ends a session.</td><td class="summaryTableOwnerCol">Camera</td></tr><tr class="hideInheritedEvent"><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img src="../../images/inheritedSummary.gif" alt="Inherited" title="Inherited" class="inheritedSummaryImage"></td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="../../flash/events/EventDispatcher.html#event:deactivate" class="signatureLink">deactivate</a></div></td><td class="summaryTableDescription summaryTableCol">[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive.</td><td class="summaryTableOwnerCol"><a href="../../flash/events/EventDispatcher.html">EventDispatcher</a></td></tr><tr class=""><td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#event:status" class="signatureLink">status</a></div></td><td class="summaryTableDescription summaryTableCol">Dispatched when a camera reports its status.</td><td class="summaryTableOwnerCol">Camera</td></tr></table></div><script language="javascript" type="text/javascript"><!--
                      showHideInherited();
                      --></script><div class="MainContent"><div class="detailSectionHeader">Property Detail</div><a name="propertyDetail"></a><a name="activityLevel"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">activityLevel</td><td class="detailHeaderType">property</td></tr></table><div class="detailBody"><code>activityLevel:<a href="../../Number.html">Number</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The amount of motion the camera is detecting. Values range from 0 (no motion is being detected) to 
  100 (a large amount of motion is being detected). The value of this property can help you determine if you need to pass a setting 
  to the
          <code>setMotionLevel()</code>
          method.
          <p>
            If the camera is available but is not yet being used because the
            <code>Video.attachCamera()</code>
            method has not been called, this property
  is set to -1.
          </p>
          
          <p>If you are streaming only uncompressed local video, this property is set only if you have assigned a function to the  event 
  handler. Otherwise, it is undefined.</p>
          
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get activityLevel():<a href="../../Number.html">Number</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#motionLevel" target="">motionLevel</a><br/><a href="Camera.html#setMotionLevel()" target="">setMotionLevel()</a></div></div><a name="propertyDetail"></a><a name="bandwidth"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">bandwidth</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>bandwidth:<a href="../../int.html">int</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The maximum amount of bandwidth the current outgoing video feed can use, in bytes. 
  A value of 0 means the feed can use as much bandwidth as needed to maintain the desired frame quality.
          <p>
            To set this property, use the
            <code>setQuality()</code>
            method.
          </p>
          
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get bandwidth():<a href="../../int.html">int</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setQuality()" target="">setQuality()</a></div></div><a name="propertyDetail"></a><a name="currentFPS"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">currentFPS</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>currentFPS:<a href="../../Number.html">Number</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The rate at which the camera is capturing data, in frames per second. 
  This property cannot be set; however, you can use the
          <code>setMode()</code>
          method
  to set a related property&mdash;
          <code>fps</code>
          &mdash;which specifies the maximum
  frame rate at which you would like the camera to capture data.
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get currentFPS():<a href="../../Number.html">Number</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setMode()" target="">setMode()</a></div></div><a name="propertyDetail"></a><a name="fps"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">fps</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>fps:<a href="../../Number.html">Number</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The maximum rate at which the camera can capture data, in frames per second. 
  The maximum rate possible depends on the capabilities of the camera; this frame rate may not be achieved.
          <ul><li>
              To set a desired value for this property, use the
              <code>setMode()</code>
              method.
            </li><li>
              To determine the rate at which the camera is currently capturing data, use the
              <code>currentFPS</code>
              property.
            </li></ul>
          
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get fps():<a href="../../Number.html">Number</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#currentFPS" target="">currentFPS</a><br/><a href="Camera.html#setMode()" target="">setMode()</a></div></div><a name="propertyDetail"></a><a name="height"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">height</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>height:<a href="../../int.html">int</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The current capture height, in pixels. To set a value for this property, 
  use the
          <code>setMode()</code>
          method.
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get height():<a href="../../int.html">int</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#width" target="">width</a><br/><a href="Camera.html#setMode()" target="">setMode()</a></div></div><a name="propertyDetail"></a><a name="index"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">index</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>index:<a href="../../int.html">int</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          A zero-based integer that specifies the index of the camera, as reflected in
  the array returned by the
          <code>names</code>
          property.
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get index():<a href="../../int.html">int</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#names" target="">names</a><br/><a href="Camera.html#getCamera()" target="">getCamera()</a></div></div><a name="propertyDetail"></a><a name="keyFrameInterval"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">keyFrameInterval</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>keyFrameInterval:<a href="../../int.html">int</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The number of video frames transmitted in full (called
          <i>keyframes</i>
          ) 
  instead of being interpolated by the video compression algorithm. 
  The default value is 15, which means that every 15th frame is a keyframe.
  A value of 1 means that every frame is a keyframe. The allowed values are
  1 through 48.
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get keyFrameInterval():<a href="../../int.html">int</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setKeyFrameInterval()" target="">setKeyFrameInterval()</a></div></div><a name="propertyDetail"></a><a name="loopback"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">loopback</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>loopback:<a href="../../Boolean.html">Boolean</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Indicates whether a local view of what the camera is capturing is compressed
  and decompressed (
          <code>true</code>
          ), as it would be for live transmission using
  Flash Media Server, or uncompressed (
          <code>false</code>
          ). The default value is
          <code>false</code>
          .
          <p>Although a compressed stream is useful for testing, such as when previewing
  video quality settings, it has a significant processing cost. The local view
  is compressed, edited for transmission as it would be over a live connection,
  and then decompressed for local viewing.</p>
          
          <p>
            To set this value, use
            <code>Camera.setLoopback()</code>
            . To set the amount of 
  compression used when this property is true, use
            <code>Camera.setQuality()</code>
            .
          </p>
          
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get loopback():<a href="../../Boolean.html">Boolean</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setLoopback()" target="">setLoopback()</a><br/><a href="Camera.html#setQuality()" target="">setQuality()</a></div></div><a name="propertyDetail"></a><a name="motionLevel"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">motionLevel</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>motionLevel:<a href="../../int.html">int</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The amount of motion required to invoke the
          <code>activity</code>
          event. Acceptable values range from 0 to 100. 
  The default value is 50.
          <p>
            Video can be displayed regardless of the value of the
            <code>motionLevel</code>
            property. For more information, see
            <code>setMotionLevel()</code>
            .
          </p>
          
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get motionLevel():<a href="../../int.html">int</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setMotionLevel()" target="">setMotionLevel()</a></div></div><a name="propertyDetail"></a><a name="motionTimeout"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">motionTimeout</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>motionTimeout:<a href="../../int.html">int</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The number of milliseconds between the time the camera stops detecting motion and the time the
          <code>activity</code>
          event is invoked. The 
  default value is 2000 (2 seconds).
          <p>
            To set this value, use
            <code>setMotionLevel()</code>
            .
          </p>
          
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get motionTimeout():<a href="../../int.html">int</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setMotionLevel()" target="">setMotionLevel()</a></div></div><a name="propertyDetail"></a><a name="muted"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">muted</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>muted:<a href="../../Boolean.html">Boolean</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          A Boolean value indicating whether the user has denied access to the camera
  (
          <code>true</code>
          ) or allowed access (
          <code>false</code>
          ) in the Flash Player Privacy dialog box. 
    When this value changes, the
          <code>status</code>
          event is dispatched.
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get muted():<a href="../../Boolean.html">Boolean</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#getCamera()" target="">getCamera()</a><br/><a href="Camera.html#event:status" target="">status</a></div></div><a name="propertyDetail"></a><a name="name"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">name</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>name:<a href="../../String.html">String</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>The name of the current camera, as returned by the camera hardware.</p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get name():<a href="../../String.html">String</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#names" target="">names</a><br/><a href="Camera.html#getCamera()" target="">getCamera()</a></div></div><a name="propertyDetail"></a><a name="names"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">names</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>names:<a href="../../Array.html">Array</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          An array of strings indicating the names of all available cameras
  without displaying the Flash Player Privacy dialog box. This array behaves in the
  same way as any other ActionScript array, implicitly providing the zero-based
  index of each camera and the number of cameras on the system (by means of
          <code>names.length</code>
          ). For more information, see the
          <code>names</code>
          Array class entry.
          <p>
            Calling the
            <code>names</code>
            property requires an extensive examination of the hardware,
  and it may take several seconds to build the array. In most cases, you can just use the 
  default camera.
          </p>
          
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public static function get names():<a href="../../Array.html">Array</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#getCamera()" target="">getCamera()</a><br/><a href="Camera.html#index" target="">index</a><br/><a href="Camera.html#name" target="">name</a></div></div><a name="propertyDetail"></a><a name="quality"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">quality</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>quality:<a href="../../int.html">int</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The required level of picture quality, as determined by the amount of compression being applied to each video
  frame. Acceptable quality values range from 1 (lowest quality, maximum compression) to 100 (highest quality, no compression). The 
  default value is 0, which means that picture quality can vary as needed to avoid exceeding available bandwidth.
          <p>
            To set this property, use the
            <code>setQuality()</code>
            method.
          </p>
          
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get quality():<a href="../../int.html">int</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setQuality()" target="">setQuality()</a></div></div><a name="propertyDetail"></a><a name="width"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">width</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code>width:<a href="../../int.html">int</a></code>&nbsp;&nbsp;[read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          The current capture width, in pixels. To set a desired value for this property, 
  use the
          <code>setMode()</code>
          method.
        </p><br/><br/><span class="label"> Implementation </span><br/><code>&nbsp;&nbsp;&nbsp;&nbsp;public function get width():<a href="../../int.html">int</a></code><br/><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setMode()" target="">setMode()</a></div></div><a name="methodDetail"></a><div class="detailSectionHeader">Method Detail</div><a name="getCamera()"></a><a name="getCamera(String)"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">getCamera</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td></tr></table><div class="detailBody"><code> public static function getCamera(name:<a href="../../String.html">String</a> = null):<a href="../../flash/media/Camera.html">Camera</a></code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Returns a reference to a Camera object for capturing video. To begin capturing
  the video, you must attach the Camera object to a Video object (see
          <code>Video.attachCamera()</code>
          ). To transmit video to Flash Media Server, call
          <code>NetStream.attachCamera()</code>
          to attach the Camera object to a NetStream object.
          <p>
            Multiple calls to the
            <code>getCamera()</code>
            method reference the same camera driver.
  Thus, if your code contains code like
            <code>firstCam:Camera = getCamera()</code>
            and
            <code>secondCam:Camera = getCamera()</code>
            ,
  both
            <code>firstCam</code>
            and
            <code>secondCam</code>
            reference the same camera,
  which is the user's default camera.
          </p>
          
          <p>
            In general, you shouldn't pass a value for the
            <code>name</code>
            parameter; simply use
            <code>getCamera()</code>
            to return a reference to the default camera. By means of the Camera
  settings panel (discussed later in this section), the user can specify the default camera
  Flash Player should use.
          </p>
          
          <p>
            You can't use ActionScript to set a user's Allow or Deny permission setting
     for access to the camera, but you can display the Adobe Flash Player Settings camera 
     setting dialog box where the user can set the camera permission. When a SWF file using 
     the
            <code>attachCamera()</code>
            method tries to 
    attach the camera returned by the
            <code>getCamera()</code>
            method to a Video or 
    NetStream object, Flash Player displays a dialog box that lets the user choose  
    to allow or deny access to the camera. (Make sure your application window size is at least 
    215 x 138 pixels; this is the minimum size Flash Player requires to display the dialog box.) 
    When the user responds to the camera setting dialog box, Flash Player returns an 
     information object in the
            <code>status</code>
            event that indicates the user's response:
            <code>Camera.muted</code>
            indicates 
    the user denied access to a camera;
            <code>Camera.Unmuted</code>
            indicates the user allowed access 
    to a camera. To determine whether the user has denied or allowed access to the camera without 
    handling the
            <code>status</code>
            event, use the
            <code>muted</code>
            property.
          </p>
          
          <p>The user can specify permanent privacy settings for a particular domain by right-clicking
  (Windows and Linux) or Control-clicking (Macintosh) while a SWF file is playing, selecting Settings, 
    opening the Privacy dialog, and selecting Remember. If the user selects Remember, Flash Player no longer 
    asks the user whether to allow or deny SWF files from this domain access to your camera.</p>
          
          <p>
            <b>Note:</b>
            The
            <code>attachCamera()</code>
            method will not invoke the dialog box
     to Allow or Deny access to the camera if the user has denied access by selecting Remember 
     in the Flash Player Settings dialog box. In this case, you can prompt the user to change the
     Allow or Deny setting by displaying the Flash Player Privacy panel for the user 
     using
            <code>Security.showSettings(SecurityPanel.PRIVACY)</code>
            .
          </p>
          
          <p>
            If
            <code>getCamera()</code>
            returns
            <code>null</code>
            , either the camera is in use by another
   application, or there are no cameras installed on the system. To determine whether any cameras
   are installed, use the
            <code>names.length</code>
            property. To display the Flash Player Camera Settings panel,
   which lets the user choose the camera to be referenced by
            <code>getCamera()</code>
            , use
            <code>Security.showSettings(SecurityPanel.CAMERA)</code>
            .
          </p>
          
          <p>
            Scanning the hardware for cameras takes time. When Flash Player finds at least one camera, 
  the hardware is not scanned again for the lifetime of the player instance. However, if
  Flash Player doesn't find any cameras, it will scan each time
            <code>getCamera</code>
            is called.
  This is helpful if a user has forgotten to connect the camera; if your SWF file provides a
  Try Again button that calls
            <code>getCamera</code>
            , Flash Player can find the camera without the
  user having to restart the SWF file.
          </p>
          
        </p><p><span class="label"> Parameters </span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20px"></td><td><code><span class="label">name</span>:<a href="../../String.html">String</a></code> (default = <code>null</code>)<code></code> &mdash; 
              Specifies which camera to get, as determined from the array
   returned by the
              <code>names</code>
              property. For most applications, get the default camera 
   by omitting this parameter. To specify a value for this parameter, use the string representation
     of the zero-based index position within the Camera.names array. For example, to specify the third
     camera in the array, use
              <code>Camera.getCamera("2")</code>
              .
            </td></tr></table></p><p></p><span class="label">Returns</span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20"></td><td><code><a href="../../flash/media/Camera.html">Camera</a></code> &mdash; 
              If the
              <code>name</code>
              parameter is not specified, this method returns a reference
   to the default camera or, if it is in use by another application, to the first
   available camera. (If there is more than one camera installed, the user may specify
   the default camera in the Flash Player Camera Settings panel.) If no cameras are available
   or installed, the method returns
              <code>null</code>
              .
            </td></tr></table><br/><span class="label">Events</span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20px"></td><td><code><b>status</b>:<a href="../../flash/events/StatusEvent.html"><code>StatusEvent</code></a></code> &mdash; Dispatched when a camera reports its status. 
  If the value of the <code>code</code> property is <code>"Camera.muted"</code>,
  the user has refused to allow the SWF file access to the user's camera.
  If the value of the <code>code</code> property is <code>"Camera.Unmuted"</code>,
  the user has allowed the SWF file access to the user's camera.</td></tr></table><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#index" target="">index</a><br/><a href="Camera.html#muted" target="">muted</a><br/><a href="Camera.html#names" target="">names</a><br/><a href="Camera.html#setMode()" target="">setMode()</a><br/><a href="Camera.html#event:status" target="">status</a><br/><a href="Video.html#attachCamera()" target="">Video.attachCamera()</a></div><br/><span class="label"> Example </span><br/><br/><div class="detailBody">
          In the following example, after the user allows access to the camera, the attached 
 camera is used to capture video images. Information about the video stream, such as 
 the current frames per second, is also displayed.
          <p>
            The
            <code>Camera.getCamera()</code>
            method returns a reference to a camera object, or returns null if 
 no camera is available or installed. The if statement checks whether the camera was found and whether 
 the user allowed access to the camera. If the user denied access, the
            <code>muted</code>
            property is set to
            <code>true</code>
            .
          </p>
          
          <p>
            Usually, when the
            <code>attachCamera()</code>
            method is invoked, a dialog box appears and prompts the 
 user to allow or deny Flash Player access to the camera. However, if the user denied access 
 and selected the
            <code>Remember</code>
            option, the dialog box does not appear and nothing displays. 
 To make sure the user has the option to allow access to the camera, the
            <code>myTextField</code>
            text field 
 instructs the user to click the text field to invoke the Flash Player Settings dialog box.
          </p>
          
          <p>
            The
            <code>clickHandler()</code>
            method calls
            <code>Security.showSettings()</code>
            method, which 
 displays the
            <code>PRIVACY</code>
            panel of the Settings dialog box. If the user allows access, 
 the
            <code>StatusEvent.STATUS</code>
            event is dispatched and the value of the event's
            <code>code</code>
            property is set to
            <code>Camera.Unmuted</code>
            . (The camera object's
            <code>mute</code>
            property is also 
 set to
            <code>false</code>
            .)
          </p>
          
          <p>
            The
            <code>statusHandler()</code>
            method, added to listen to the status change of the user's setting, 
 invokes the
            <code>connectCamera()</code>
            method, if the user allows access. The
            <code>connectCamera()</code>
            method instantiates a video object with the captured stream's width and height. To display the 
 camera's captured video, the reference to the video stream is attached to the video object, and the video 
 object is added to the display list.
          </p>
          
          <p>
            A Timer object also is started. Every second, a Timer object's timer event is dispatched and the
            <code>timerHandler()</code>
            method is invoked. The
            <code>timerHandler()</code>
            method is displayed and updates 
 a number of properties of the Camera object.
          </p>
          
          <p>
            <b>Note:</b>
            For this example, the only property that changes 
 is the
            <code>currentFPS</code>
            property.
          </p>
          
          <div class="listing"><pre>package {
    import flash.display.Sprite;
    import flash.media.Camera;
    import flash.media.Video;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    import flash.utils.Timer;
    import flash.events.TimerEvent;
    import flash.events.StatusEvent;
    import flash.events.MouseEvent;
    import flash.system.SecurityPanel;
    import flash.system.Security;

    public class Camera_getCameraExample extends Sprite {
        private var myTextField:TextField;
        private var cam:Camera;
        private var t:Timer = new Timer(1000);
        
        public function Camera_getCameraExample() {
            myTextField = new TextField();
            myTextField.x = 10;
            myTextField.y = 10;
            myTextField.background = true;
            myTextField.selectable = false;
            myTextField.autoSize = TextFieldAutoSize.LEFT;    
        
            cam = Camera.getCamera();
            
            if (!cam) {
                myTextField.text = "No camera is installed.";
                
            } else if (cam.muted) {
                myTextField.text = "To enable the use of the camera,\n"
                                 + "please click on this text field.\n" 
                                 + "When the Flash Player Settings dialog appears,\n"
                                 + "make sure to select the Allow radio button\n" 
                                 + "to grant access to your camera.";

                myTextField.addEventListener(MouseEvent.CLICK, clickHandler);

            }else {
                myTextField.text = "Connecting";
                connectCamera(); 
            }
   
            addChild(myTextField);

            t.addEventListener(TimerEvent.TIMER, timerHandler);
        }

        private function clickHandler(e:MouseEvent):void {
            Security.showSettings(SecurityPanel.PRIVACY);

            cam.addEventListener(StatusEvent.STATUS, statusHandler);

            myTextField.removeEventListener(MouseEvent.CLICK, clickHandler);
        }

        private function statusHandler(event:StatusEvent):void {

            if (event.code == "Camera.Unmuted") {
                connectCamera(); 
                cam.removeEventListener(StatusEvent.STATUS, statusHandler);
            }
        }

        private function connectCamera():void {
                var vid:Video = new Video(cam.width, cam.height);
                vid.x = 10;
                vid.y = 10;
                vid.attachCamera(cam);
                addChild(vid);    

                t.start();
        }

        private function timerHandler(event:TimerEvent):void {
            myTextField.y = cam.height + 20;
            myTextField.text = "";
            myTextField.appendText("bandwidth: " + cam.bandwidth + "\n");
            myTextField.appendText("currentFPS: " + Math.round(cam.currentFPS) + "\n");
            myTextField.appendText("fps: " + cam.fps + "\n");
            myTextField.appendText("keyFrameInterval: " + cam.keyFrameInterval + "\n");
        }
    }
}</pre></div>
        </div></div><a name="setKeyFrameInterval()"></a><a name="setKeyFrameInterval(int)"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">setKeyFrameInterval</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code> public function setKeyFrameInterval(keyFrameInterval:<a href="../../int.html">int</a>):<a href="../../specialTypes.html#void">void</a></code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Specifies which video frames are transmitted in full (called
          <i>keyframes</i>
          )
  instead of being interpolated by the video compression algorithm. This method
  is applicable only if you are transmitting video using Flash Media Server.
          <p>The Flash Video compression algorithm compresses video by transmitting
  only what has changed since the last frame of the video; these portions are 
  considered to be interpolated frames. Frames of a video can be interpolated according
  to the contents of the previous frame. A keyframe, however, is a video frame that
  is complete; it is not interpolated from prior frames.</p>
          
          <p>
            To determine how to set a value for the
            <code>keyFrameInterval</code>
            parameter,
  consider both bandwidth use and video playback accessibility. For example, 
  specifying a higher value for
            <code>keyFrameInterval</code>
            (sending keyframes less frequently)
  reduces bandwidth use. 
  However, this may increase the amount of time required to position the playhead
  at a particular point in the video; more prior video frames may have to be interpolated
  before the video can resume.
          </p>
          
          <p>
            Conversely, specifying a lower value for
            <code>keyFrameInterval</code>
            (sending keyframes more frequently) increases bandwidth use because entire video frames
  are transmitted more often, but may decrease the amount of time required to seek a 
  particular video frame within a recorded video.
          </p>
          
        </p><p><span class="label"> Parameters </span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20px"></td><td><code><span class="label">keyFrameInterval</span>:<a href="../../int.html">int</a></code> &mdash; A value that specifies which video frames are transmitted in full
  (as keyframes) instead of being interpolated by the video compression algorithm. 
  A value of 1 means that every frame is a keyframe, a value of 3 means that every third frame
  is a keyframe, and so on. Acceptable values are 1 through 48.</td></tr></table></p><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#keyFrameInterval" target="">keyFrameInterval</a></div></div><a name="setLoopback()"></a><a name="setLoopback(Boolean)"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">setLoopback</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code> public function setLoopback(compress:<a href="../../Boolean.html">Boolean</a> = false):<a href="../../specialTypes.html#void">void</a></code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Specifies whether to use a compressed video stream for a local view of the camera.
  This method is applicable only if you are transmitting video using Flash Media Server;
  setting
          <code>compress</code>
          to
          <code>true</code>
          lets you see more precisely how the video
  will appear to users when they view it in real time.
          <p>Although a compressed stream is useful for testing purposes, such as previewing video
  quality settings, it has a significant processing cost, because the local view is not 
  simply compressed; it is compressed, edited for transmission as it would be over a live
  connection, and then decompressed for local viewing.</p>
          
          <p>
            To set the amount of compression used when you set
            <code>compress</code>
            to
            <code>true</code>
            ,
  use
            <code>Camera.setQuality()</code>
            .
          </p>
          
        </p><p><span class="label"> Parameters </span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20px"></td><td><code><span class="label">compress</span>:<a href="../../Boolean.html">Boolean</a></code> (default = <code>false</code>)<code></code> &mdash; 
              Specifies whether to use a compressed video stream (
              <code>true</code>
              ) 
  or an uncompressed stream (
              <code>false</code>
              ) for a local view of what the camera
  is receiving.
            </td></tr></table></p><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#setQuality()" target="">setQuality()</a></div></div><a name="setMode()"></a><a name="setMode(int,int,Number,Boolean)"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">setMode</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code> public function setMode(width:<a href="../../int.html">int</a>, height:<a href="../../int.html">int</a>, fps:<a href="../../Number.html">Number</a>, favorArea:<a href="../../Boolean.html">Boolean</a> = true):<a href="../../specialTypes.html#void">void</a></code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Sets the camera capture mode to the native mode that best meets the specified requirements.
  If the camera does not have a native mode that matches all the parameters you pass, 
  Flash Player selects a capture mode that most closely synthesizes the requested mode. 
  This manipulation may involve cropping the image and dropping frames.
          <p>
            By default, Flash Player drops frames as needed to maintain image size. To minimize the number
  of dropped frames, even if this means reducing the size of the image, pass
            <code>false</code>
            for the
            <code>favorArea</code>
            parameter.
          </p>
          
          <p>
            When choosing a native mode, Flash Player tries to maintain the requested aspect ratio
  whenever possible. For example, if you issue the command
            <code>myCam.setMode(400, 400, 30)</code>
            ,
  and the maximum width and height values available on the camera are 320 and 288, Flash Player sets
  both the width and height at 288; by setting these properties to the same value, Flash Player 
  maintains the 1:1 aspect ratio you requested.
          </p>
          
          <p>
            To determine the values assigned to these properties after Flash Player selects the mode
  that most closely matches your requested values, use the
            <code>width</code>
            ,
            <code>height</code>
            ,
  and
            <code>fps</code>
            properties.
          </p>
          
          <p>
            If you are using Flash Media Server, you can also capture single frames or create time-lapse
  photography. For more information, see
            <code>NetStream.attachCamera()</code>
            .
          </p>
          
        </p><p><span class="label"> Parameters </span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20px"></td><td><code><span class="label">width</span>:<a href="../../int.html">int</a></code> &mdash; The requested capture width, in pixels. The default value is 160.</td></tr><tr><td class="paramSpacer">&nbsp;</td></tr><tr><td width="20px"></td><td><code><span class="label">height</span>:<a href="../../int.html">int</a></code> &mdash; The requested capture height, in pixels. The default value is 120.</td></tr><tr><td class="paramSpacer">&nbsp;</td></tr><tr><td width="20px"></td><td><code><span class="label">fps</span>:<a href="../../Number.html">Number</a></code> &mdash; The requested rate at which the camera should capture data, in frames per second.
  The default value is 15.</td></tr><tr><td class="paramSpacer">&nbsp;</td></tr><tr><td width="20px"></td><td><code><span class="label">favorArea</span>:<a href="../../Boolean.html">Boolean</a></code> (default = <code>true</code>)<code></code> &mdash; 
              Specifies whether to manipulate the width, height, and frame rate if 
  the camera does not have a native mode that meets the specified requirements. 
  The default value is
              <code>true</code>
              , which means that maintaining capture size
  is favored; using this parameter selects the mode that most closely matches
              <code>width</code>
              and
              <code>height</code>
              values, even if doing so adversely affects 
  performance by reducing the frame rate. To maximize frame rate at the expense 
  of camera height and width, pass
              <code>false</code>
              for the
              <code>favorArea</code>
              parameter.
            </td></tr></table></p><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#fps" target="">fps</a><br/><a href="Camera.html#height" target="">height</a><br/><a href="Camera.html#width" target="">width</a><br/><a href="../../flash/net/NetStream.html#attachCamera()" target="">flash.net.NetStream.attachCamera()</a></div><br/><span class="label"> Example </span><br/><br/><div class="detailBody">
          In the following example, when a user clicks on the Stage, the video
 is resized and the frames per second capture rate is set to a new value.
          <p>
            The Stage is set so it does not scale. The
            <code>Camera.getCamera()</code>
            method 
 returns a reference to a camera object, or returns null if no camera is available or installed. 
 If a camera exists, the
            <code>connectCamera()</code>
            method is called.
 The
            <code>connectCamera()</code>
            method instantiates a video object. To 
 display the camera's captured video, the reference to the video stream is attached 
 to the video object, and the video object is added to the display list. An event listener 
 also is set for a
            <code>MouseEvent.CLICK</code>
            event. After the user clicks on the Stage, 
 the
            <code>clickHandler()</code>
            method is invoked. The method checks the width of the 
 captured video and sets the camera capture mode's width, height, and the frame per second 
 request rate. In order for these setting to take effect, the video object must be removed 
 and re-created. The video's width and height also must be set to the camera object's width 
 and height.
          </p>
          
          <div class="listing"><pre>package {
    import flash.display.Sprite;
    import flash.media.Camera;
    import flash.media.Video;
    import flash.events.MouseEvent;
    import flash.display.StageScaleMode;

    public class Camera_setModeExample extends Sprite {
        private var cam:Camera;
        private var vid:Video;

        public function Camera_setModeExample() {
            stage.scaleMode = StageScaleMode.NO_SCALE;

            cam = Camera.getCamera();
            
            if (!cam) {
                trace("No camera is installed.");
            }else {
                connectCamera();
            }
        }

        private function connectCamera():void {
            vid = new Video();
            vid.width = cam.width;
            vid.height = cam.height; 
            vid.attachCamera(cam);
            addChild(vid);    

            stage.addEventListener(MouseEvent.CLICK, clickHandler);
        }
    
        private function clickHandler(e:MouseEvent):void {

            switch (cam.width) {
                case 160:
                cam.setMode(320, 240, 10); 
                break;
                case 320:
                cam.setMode(640, 480, 5); 
                break;
                default:
                cam.setMode(160, 120, 15); 
                break;
            } 

            removeChild(vid);           
            connectCamera();
        }
    }
}</pre></div>
        </div></div><a name="setMotionLevel()"></a><a name="setMotionLevel(int,int)"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">setMotionLevel</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code> public function setMotionLevel(motionLevel:<a href="../../int.html">int</a>, timeout:<a href="../../int.html">int</a> = 2000):<a href="../../specialTypes.html#void">void</a></code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Specifies how much motion is required to dispatch the
          <code>activity</code>
          event. 
  Optionally sets the number of milliseconds that must elapse without activity before 
  Flash Player considers motion to have stopped and dispatches the event.
          <p>
            <b>Note:</b>
            Video can be displayed regardless of the value of the
            <code>motionLevel</code>
            parameter. This parameter determines only when and under
  what circumstances the event is dispatched&mdash;not whether video is actually being 
  captured or displayed.
          </p>
          
          <p>
            To prevent the camera from detecting motion at all, pass a value of 100 for the
            <code>motionLevel</code>
            parameter; the
            <code>activity</code>
            event is never dispatched. 
  (You would probably use this value only for testing purposes&mdash;for example, to 
  temporarily disable any handlers that would normally be triggered when the event is dispatched.)
          </p>
          
          <p>
            To determine the amount of motion the camera is currently detecting, use the
            <code>activityLevel</code>
            property. 
  Motion sensitivity values correspond directly to activity values.
  Complete lack of motion is an activity value of 0. Constant motion is an activity value of 100.
  Your activity value is less than your motion sensitivity value when you're not moving; 
  when you are moving, activity values frequently exceed your motion sensitivity value.
          </p>
          
          <p>
            This method is similar in purpose to the
            <code>Microphone.setSilenceLevel()</code>
            method; 
  both methods are used to specify when the
            <code>activity</code>
            event
  should be dispatched. However, these methods have a significantly different impact
  on publishing streams:
          </p>
          
          <ul><li>
              <code>Microphone.setSilenceLevel()</code>
              is designed to optimize bandwidth. 
  When an audio stream is considered silent, no audio data is sent. Instead, a single message
  is sent, indicating that silence has started.
            </li><li>
              <code>Camera.setMotionLevel()</code>
              is designed to detect motion and does not affect
  bandwidth usage. Even if a video stream does not detect motion, video is still sent.
            </li></ul>
          
        </p><p><span class="label"> Parameters </span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20px"></td><td><code><span class="label">motionLevel</span>:<a href="../../int.html">int</a></code> &mdash; 
              Specifies the amount of motion required to dispatch the
              <code>activity</code>
              event. Acceptable values range from 0 to 100. The default value is 50.
            </td></tr><tr><td class="paramSpacer">&nbsp;</td></tr><tr><td width="20px"></td><td><code><span class="label">timeout</span>:<a href="../../int.html">int</a></code> (default = <code>2000</code>)<code></code> &mdash; 
              Specifies how many milliseconds must elapse without activity 
  before Flash Player considers activity to have stopped and dispatches the
              <code>activity</code>
              event.
  The default value is 2000 milliseconds (2 seconds).
            </td></tr></table></p><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#motionLevel" target="">motionLevel</a><br/><a href="Camera.html#motionTimeout" target="">motionTimeout</a><br/><a href="Microphone.html#setSilenceLevel()" target="">Microphone.setSilenceLevel()</a></div><br/><span class="label"> Example </span><br/><br/><div class="detailBody">
          In the following example, the user's camera is used as a monitor or 
 a surveillance camera. The camera detects motion and a text field shows 
 the activity level. (The example can be extended to sound an alarm or 
 send a message through a web service to other applications.)
          <p>
            The
            <code>Camera.getCamera()</code>
            method returns a reference to a camera object,  
 or returns null if no camera is available or installed. The if statement checks whether a camera 
 is available, and invokes the
            <code>connectCamera()</code>
            method when it is available. 
 The
            <code>connectCamera()</code>
            method instantiates a video object with the captured stream's 
 width and height. To display the camera's captured video, the reference to the 
 video stream is attached to the video object, and the video object is added to the display list.
 (Usually, when the
            <code>attachCamera()</code>
            method is invoked, a dialog box appears and 
 prompts the user to allow or deny Flash Player access to the camera. However, if the 
 user denied access and selected the
            <code>Remember</code>
            option, the dialog box does not appear 
 and nothing is displayed. To make sure the user has the option to allow access to the camera, use the
            <code>system.Security.showSettings()</code>
            method to invoke the Flash Player 
 Settings dialog box.)
          </p>
          
          <p>
            The
            <code>setMotionLevel()</code>
            method sets the level of activity (amount of motion), before 
 the activity event is invoked, to five, for minimal motion. The time between when the camera stops 
 detecting motion and when the activity event is invoked, is set to 1 second (1000 millisecond). After 1  second 
 passes without activity or the level of activity reaches five, the
            <code>ActivityEvent.ACTIVITY</code>
            event is dispatched and the
            <code>activityHandler()</code>
            method is invoked. If the event
 was triggered by the level of activity, the
            <code>activating</code>
            property is set to
            <code>true</code>
            and a Timer object is started. Every second, a Timer object’s timer event 
 is dispatched and the
            <code>timerHandler()</code>
            method is invoked, which displays the current 
 level of activity. (Although a level of five or larger triggers the timer, the displayed
 current level of activity might be a smaller number.)
          </p>
          
          <div class="listing"><pre>package {
    import flash.display.Sprite;
    import flash.media.Camera;
    import flash.media.Video;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    import flash.utils.Timer;
    import flash.events.TimerEvent;
    import flash.events.ActivityEvent;

    public class Camera_setMotionLevelExample extends Sprite {
        private var myTextField:TextField;
        private var cam:Camera;
        private var t:Timer = new Timer(1000);

        public function Camera_setMotionLevelExample() {
            myTextField = new TextField();
            myTextField.background = true;
            myTextField.selectable = false;
            myTextField.autoSize = TextFieldAutoSize.LEFT;    
        
            cam = Camera.getCamera();
            
            if (!cam) {
                myTextField.text = "No camera is installed.";

            }else {
                myTextField.text = "Waiting to connect.";
                connectCamera(); 
            }

            addChild(myTextField);

            t.addEventListener(TimerEvent.TIMER, timerHandler);
        }

        private function connectCamera():void {
                var vid:Video = new Video(cam.width, cam.height);
                vid.x = 10;
                vid.y = 10;
                vid.attachCamera(cam);
                addChild(vid);    

                cam.setMotionLevel(5, 1000);
                cam.addEventListener(ActivityEvent.ACTIVITY, activityHandler);
        }

        private function activityHandler(e:ActivityEvent):void {
            if (e.activating == true) {
                t.start();    
            } else {
                myTextField.text = "Everything is quiet.";
                t.stop();
            }    
        }

        private function timerHandler(event:TimerEvent):void {
             myTextField.x = 10;
             myTextField.y = cam.height + 20;
             myTextField.text = "There is some activity. Level: " + cam.activityLevel;
        }
    }
}</pre></div>
        </div></div><a name="setQuality()"></a><a name="setQuality(int,int)"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">setQuality</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><code> public function setQuality(bandwidth:<a href="../../int.html">int</a>, quality:<a href="../../int.html">int</a>):<a href="../../specialTypes.html#void">void</a></code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Sets the maximum amount of bandwidth per second or the required picture quality
  of the current outgoing video feed. This method is generally applicable only if
  you are transmitting video using Flash Media Server.
          <p>Use this method to specify which element of the outgoing video feed is more
  important to your application&mdash;bandwidth use or picture quality.</p>
          
          <ul><li>
              To indicate that bandwidth use takes precedence, pass a value for
              <code>bandwidth</code>
              and 0 for
              <code>quality</code>
              . Flash Player transmits video at the highest quality
  possible within the specified bandwidth. If necessary, Flash Player reduces picture
  quality to avoid exceeding the specified bandwidth. In general, as motion increases,
  quality decreases.
            </li><li>
              To indicate that quality takes precedence, pass 0 for
              <code>bandwidth</code>
              and a numeric value for
              <code>quality</code>
              . Flash Player uses as much bandwidth
  as required to maintain the specified quality. If necessary, Flash Player reduces the frame
  rate to maintain picture quality. In general, as motion increases, bandwidth use also
  increases.
            </li><li>To specify that both bandwidth and quality are equally important, pass numeric 
  values for both parameters. Flash Player transmits video that achieves the specified quality
  and that doesn't exceed the specified bandwidth. If necessary, Flash Player reduces the 
  frame rate to maintain picture quality without exceeding the specified bandwidth.</li></ul>
          
        </p><p><span class="label"> Parameters </span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20px"></td><td><code><span class="label">bandwidth</span>:<a href="../../int.html">int</a></code> &mdash; 
              Specifies the maximum amount of bandwidth that the current outgoing video
  feed can use, in bytes per second. To specify that Flash Player video can use as much bandwidth
  as needed to maintain the value of
              <code>quality</code>
              , pass 0 for
              <code>bandwidth</code>
              . The default value is 16384.
            </td></tr><tr><td class="paramSpacer">&nbsp;</td></tr><tr><td width="20px"></td><td><code><span class="label">quality</span>:<a href="../../int.html">int</a></code> &mdash; 
              An integer that specifies the required level of picture quality,
  as determined by the amount of compression being applied to each video frame. 
  Acceptable values range from 1 (lowest quality, maximum compression) to 100 (highest 
  quality, no compression). To specify that picture quality can vary as needed to avoid 
  exceeding bandwidth, pass 0 for
              <code>quality</code>
              .
            </td></tr></table></p><p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#getCamera()" target="">getCamera()</a><br/><a href="Camera.html#quality" target="">quality</a></div></div><div class="detailSectionHeader"> Event Detail </div><a name="event:activity"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">activity</td><td class="detailHeaderType"> Event </td></tr></table><div class="detailBody"><span class="label">Event Object Type: </span><a href="../../flash/events/ActivityEvent.html"><code>flash.events.ActivityEvent</code></a><br/><span class="label">property ActivityEvent.type  =  </span><a href="../../flash/events/ActivityEvent.html#ACTIVITY"><code>flash.events.ActivityEvent.ACTIVITY</code></a><br/><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Dispatched when a camera begins or ends a session. 
 Call
          <code>Camera.setMotionLevel()</code>
          to specify the amount of motion
 required to trigger an
          <code>activity</code>
          event with an
          <code>activating</code>
          value of
          <code>true</code>
          , or the time without activity
 that must elapse before triggering an
          <code>activity</code>
          event with an
          <code>activating</code>
          value of
          <code>false</code>
          .
        </p>
          The
          <code>ActivityEvent.ACTIVITY</code>
          constant defines the value of the
          <code>type</code>
          property of an
          <code>activity</code>
          event object.
          <p>This event has the following properties:</p>
          
          <table class="innertable" ><tr><th>Property</th><th>Value</th></tr><tr><td>
                    <code>activating</code>
                  </td><td>
                    <code>true</code>
                    if the device is activating or
                    <code>false</code>
                    if it is deactivating.
                  </td></tr><tr><td>
                    <code>bubbles</code>
                  </td><td>
                    <code>false</code>
                  </td></tr><tr><td>
                    <code>cancelable</code>
                  </td><td>
                    <code>false</code>
                    ; there is no default behavior to cancel.
                  </td></tr><tr><td>
                    <code>currentTarget</code>
                  </td><td>The object that is actively processing the Event 
 object with an event listener.</td></tr><tr><td>
                    <code>target</code>
                  </td><td>The object beginning or ending a session, such as a Camera or 
 Microphone object.</td></tr></table>
          
        </div><a name="event:status"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">status</td><td class="detailHeaderType"> Event </td><td class="detailHeaderRule">&nbsp;</td></tr></table><div class="detailBody"><span class="label">Event Object Type: </span><a href="../../flash/events/StatusEvent.html"><code>flash.events.StatusEvent</code></a><br/><span class="label">property StatusEvent.type  =  </span><a href="../../flash/events/StatusEvent.html#STATUS"><code>flash.events.StatusEvent.STATUS</code></a><br/><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Language Version:&nbsp;</b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b>Runtime Versions:&nbsp;</b></td><td>AIR 1.0, Flash Player 9</td></tr></table><p></p><p></p><p>
          Dispatched when a camera reports its status. 
 If the value of the
          <code>code</code>
          property is
          <code>"Camera.Muted"</code>
          ,
 the user has refused to allow the SWF file access to the user's camera.
 If the value of the
          <code>code</code>
          property is
          <code>"Camera.Unmuted"</code>
          ,
 the user has allowed the SWF file access to the user's camera.
        </p>
          Defines the value of the
          <code>type</code>
          property of a
          <code>status</code>
          event object.
          <p>This event has the following properties:</p>
          
          <table class="innertable" ><tr><th>Property</th><th>Value</th></tr><tr><td>
                    <code>bubbles</code>
                  </td><td>
                    <code>false</code>
                  </td></tr><tr><td>
                    <code>cancelable</code>
                  </td><td>
                    <code>false</code>
                    ; there is no default behavior to cancel.
                  </td></tr><tr><td>
                    <code>code</code>
                  </td><td>A description of the object's status.</td></tr><tr><td>
                    <code>currentTarget</code>
                  </td><td>The object that is actively processing the Event 
  object with an event listener.</td></tr><tr><td>
                    <code>level</code>
                  </td><td>
                    The category of the message, such as
                    <code>"status"</code>
                    ,
                    <code>"warning"</code>
                    or
                    <code>"error"</code>
                    .
                  </td></tr><tr><td>
                    <code>target</code>
                  </td><td>The object reporting its status.</td></tr></table>
          
        <p><span class="label">See also</span></p><div class="seeAlso"><a href="Camera.html#getCamera()" target="">Camera.getCamera()</a></div></div><a name="includeExamplesSummary"></a><div class="detailSectionHeader">Examples<span class="usage"><a href="../../ExampleInstruct.html"> How to use examples </a></span></div><div class="exampleHeader">CameraExample.as</div><br/><div class="detailBody">
        The following example shows the image from a camera after acknowledging the
 security warning.  The Stage is set such that it cannot be scaled and is aligned to the
 top-left of the player window.  The
        <code>activity</code>
        event is dispatched at the
 start and end (if any) of the session and is captured by the
        <code>activityHandler()</code>
        method, which prints out information about the event.
        <p>
          <b>Note:</b>
          A camera must be attached to your computer for this example
 to work correctly.
        </p>
        
        <div class="listing"><pre>package {
    import flash.display.Sprite;
    import flash.display.StageAlign;
    import flash.display.StageScaleMode;
    import flash.events.*;
    import flash.media.Camera;
    import flash.media.Video;

    public class CameraExample extends Sprite {
        private var video:Video;
        
        public function CameraExample() {
            stage.scaleMode = StageScaleMode.NO_SCALE;
            stage.align = StageAlign.TOP_LEFT;
            
            var camera:Camera = Camera.getCamera();
            
            if (camera != null) {
                camera.addEventListener(ActivityEvent.ACTIVITY, activityHandler);
                video = new Video(camera.width * 2, camera.height * 2);
                video.attachCamera(camera);
                addChild(video);
            } else {
                trace("You need a camera.");
            }
        }
        
        private function activityHandler(event:ActivityEvent):void {
            trace("activityHandler: " + event);
        }
    }
}</pre></div>
      </div><br/><br/><hr><br/><p></p><center class="copyright"> &copy; 2004-2008 Adobe Systems Incorporated. All rights reserved. <br/>Thu Oct 30 2008, 07:08 PM -07:00  </center><div style="display:none">Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera Camera </div><div style="display:none">flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera flash.media.Camera </div></div></body></html><!-- &copy; 2004-2008 Adobe Systems Incorporated. All rights reserved. <br/>Thu Oct 30 2008, 07:08 PM -07:00  -->
