anchor.diff:    double get height => _height;
     
     int get textureId => _textureId;
  +
  +  double get aspectRatio => _aspectRatio;
   
     set mirror(bool mirror) {
       _mirror = mirror;
  
positive.code:   void initState() {
      super.initState();
      _setCallbacks();
    }
  
    @override
    void deactivate() {
      super.deactivate();
      renderer.onVideoRotationChanged = null;
      renderer.onVideoSizeChanged = null;
      renderer.onFirstFrameRendered = null;
    }
  
    void _setCallbacks() {
      renderer.onVideoRotationChanged = (int textureId, int rotation) {
        setState(() {
          _updateContainerSize();
        });
      };
      renderer.onVideoSizeChanged = (int textureId, double width, double height) {
        setState(() {
          _updateContainerSize();
        });
      };
      renderer.onFirstFrameRendered = () {
        setState(() {
          _updateContainerSize();
        });
      };
    }
  
    void _updateContainerSize() {
      double textureWidth = 0.0, textureHeight = 0.0;
      if (renderer.rotation == 90 || renderer.rotation == 270) {
        textureWidth = min(renderer.width, renderer.height);
        textureHeight = max(renderer.width, renderer.height);
        aspectRatio = textureWidth / textureHeight;
      } else {
        textureWidth = max(renderer.width, renderer.height);
        textureHeight = min(renderer.width, renderer.height);
        aspectRatio = textureWidth / textureHeight;
      }
    }
  
    @override
  
negative.code: }
  
  class RTCVideoView extends StatefulWidget {
    RTCVideoRenderer renderer;
    RTCVideoView(this.renderer);
    @override
    _RTCVideoViewState createState() => new _RTCVideoViewState(renderer);
  }
  
  class _RTCVideoViewState extends State<RTCVideoView> {
    RTCVideoRenderer renderer;
    double _aspectRatio;
  
    _RTCVideoViewState(this.renderer);
  
  