public motionLevel : Number[read-only]
A numeric value from 0 to 100 that specifies the amount of motion required to invoke Camera.onActivity(true). The default value is 50.
Video can be displayed regardless of the value of the motionLevel property. For more information, see Camera.setMotionLevel().
Flash Media Server (not required); Flash Player 6.
The following example continually detects the motion level of a camera feed. Create a new video instance by selecting New Video from the Library panel menu. Add an instance to the Stage and give it the instance name my_video. Add a Label component instance to the Stage and give it the instance name motionLevel_lbl. Add a NumericStepper component with the instance name motionLevel_nstep. Add a ProgressBar component with the instance name motion_pb. Then add the following code to Frame 1 of the Timeline:
var my_cam:Camera = Camera.get();
var my_video:Video;
my_video.attachVideo(my_cam);
// Configure the ProgressBar component instance.
var motion_pb:mx.controls.ProgressBar;
motion_pb.mode = "manual";
motion_pb.label = "Motion: %3%%";
var motionLevel_lbl:mx.controls.Label;
// Configure the NumericStepper component instance.
var motionLevel_nstep:mx.controls.NumericStepper;
motionLevel_nstep.minimum = 0;
motionLevel_nstep.maximum = 100;
motionLevel_nstep.stepSize = 5;
motionLevel_nstep.value = my_cam.motionLevel;
/* Continuously update the progress of the ProgressBar
component instance to the activityLevel
of the current Camera instance, which is defined in my_cam. */
this.onEnterFrame = function() {
motion_pb.setProgress(my_cam.activityLevel, 100);
};
/* When the level of activity goes above or below
the number defined in Camera.motionLevel,
trigger the onActivity event handler. */
my_cam.onActivity = function(isActive:Boolean) {
/* If isActive equals true, set the themeColor variable to "haloGreen".
Otherwise set the themeColor to "haloOrange".*/
var themeColor:String = (isActive) ? "haloGreen" : "haloOrange";
motion_pb.setStyle("themeColor", themeColor);
};
function changeMotionLevel() {
/* Set the motionLevel property for my_cam Camera
instance to the value of the NumericStepper
component instance. Maintain the current
motionTimeOut value of the my_cam Camera instance.*/
my_cam.setMotionLevel(motionLevel_nstep.value, my_cam.motionTimeOut);
}
motionLevel_nstep.addEventListener("change", changeMotionLevel);
Camera.activityLevel, Camera.onActivity(), Camera.onStatus(), Camera.setMotionLevel()