code: function VideoAsset(wrappedVideo) {
    this._wrappedVideo = null;
    this._destroyed = false;
    this._emitChange = this.emit.bind(this, 'change');
    this._lastTimestamp = -1;
  
    this.setVideo(wrappedVideo);
  
    this.emptyCanvas = document.createElement('canvas');
    this.emptyCanvas.width = 1;
    this.emptyCanvas.height = 1;
  }
docs: Dynamic asset containing a video element.  The wrappedVideo argument should be an object exposing two methods: - videoElement() returning the actual HTML video element; - drawElement() returning the HTML element to be used as a WebGL texture.  The two available implementations are NullVideoElementWrapper and CanvasHackVideoElementWrapper. See the respective files for an explanation.