     public function Video(url: String, width: uint, height: uint, autoplay: Boolean = true, loop: Boolean = true, muted: Boolean = true) {
       super(width, height);
 
-      this.url = url;
-      this.autoplay = autoplay;
-      this.loop = loop;
-      this.muted = muted;
+      this._url = url;
+      this._autoplay = autoplay;
+      this._loop = loop;
+      this._muted = muted;
 
       connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
       connection.connect(null);
     }
 
     public function play(): void {
-      playing = true;
+      _playing = true;
       stream.resume();
     }
 
     public function pause(): void {
-      playing = false;
+      _playing = false;
       stream.pause();
     }
 
     public function isPaused(): Boolean {
-      return !playing;
+      return !_playing;
     }
 
     public function mute(): void {
-      muted = true;
+      _muted = true;
       stream.soundTransform = new SoundTransform(0);
     }
 
     public function unmute(): void {
-      muted = false;
+      _muted = false;
       stream.soundTransform = new SoundTransform(1);
     }
 
     public function isMuted(): Boolean {
-      return muted;
+      return _muted;
+    }
+
+    public function duration(): Number {
+      return _duration;
     }
 
     private function netStatusHandler(e: NetStatusEvent): void {

        case "NetConnection.Connect.Success":
          stream = new NetStream(connection);
          stream.bufferTime = 0.5;
          stream.soundTransform = new SoundTransform(muted ? 0 : 1);
          stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
          attachNetStream(stream);

          stream.play(url);
          if (autoplay) {
            playing = true;
          } else {
            playing = false;
            pause();
          }
          break;
        case "NetStream.Play.Stop":
          if (loop) stream.seek(0);
          break;
      }
    }


  public class Video extends flash.media.Video {

    private var _url: String;
    private var _autoplay: Boolean;
    private var _loop: Boolean;
    private var _muted: Boolean;
    private var _playing: Boolean;
    private var _duration: Number;

    private var stream: NetStream;
    private var connection: NetConnection = new NetConnection();
