Below is the Main mxml page developed using Adobe Flash Builder, SDK 4.1, Flash Player version 10.1.0. In this example I am doing a screen capture of the stage.

I have added a video and placed 3 buttons, Record, Stop and Play.
On clicking on the Record button, the recording of the page starts. Once you click on stop, it stops recording.
Then click on Play button to see the recorded version. You may have other things/animations on stage for recording too, I have just tried with an flv.
The recording play is basically bytesArray of an FLV created on run-time. You can save it to your server by passing this binary data to any back-end technology – ASP.Net or PHP, etc.

//Main.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"<span> </span>
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
width="955" height="600"
addedToStage="onInit();"
frameRate="24" >
<pre>     <fx:Script>
<![CDATA[
             import com.dd.screencapture.ScreenCapture;
             import com.dd.screencapture.SimpleFlvWriter;

             private var screenCapture:ScreenCapture;

             private function onInit():void
             {
                  screenCapture = ScreenCapture.getInstance();
                  screenCapture.source = stage;
                  screenCapture.fps = 12;
                  screenCapture.size( 400, 300 );
                  screenCapture.x = 400;
                  screenCapture.y = 250;
                  stage.addChild( screenCapture );
             }

             private function startRecord( event:MouseEvent ):void
             {
                   screenCapture.record();
             }

             private function stopRecord( event:MouseEvent ):void
             {
                  screenCapture.stop();
             }

             private function playVideo( event:MouseEvent ):void
             {
                  screenCapture.play();
             }
      ]]>
   </fx:Script>
   <s:VideoDisplay width="400" height="300" source="assets/myVideo.flv" />

   <mx:HBox >
       <s:Button label="Record" click="startRecord( event );" />
       <s:Button label="Stop" click="stopRecord( event );" />
       <s:Button label="Play" click="playVideo( event );" />
   </mx:HBox>
</s:Application>


Place this swc in library of the flex project. You may also use this for ActionScript 3.0 projects as well.
Kindly note that this requires Flash Player 10.1 to run properly. No audio capabilities here.
Interestingly, you can save the screen capture as FLV format by using this piece of code below:

var saveFile:FileReference = new FileReference();
saveFile.save( screenCapture.data, "video.flv" );//screenCapture is the ScreenCapture instance created in the above code block.


Resources used: http://www.zeropointnine.com/blog/simpleflvwriteras-as3-class-to-create-flvs/
The links shows how to save BitmapData to an FLV in binary format and then save to dish using Adobe AIR, using FileStream. I have taken the part of writing the binary data for FLV and playing that FLV as stream on run-time.

Do leave me a note if this helps you.
Cheers :)