title: How to maintain the aspect ratio when using GPUImage?
body: <p>I found the Instagram has a camera window like 300*300？ its a square, then Im trying to use the GPUImage to make the same camera size.so I wrote like this:</p>
  
  <pre><code>primaryView = [GPUImageView alloc] initWithFrame:
                                     CGRectMake(0,0,300,300)];//define a square view
  
  //define a still camera
  stillCamera = [[GPUImageStillCamera alloc]
                initWithSessionPreset:AVCaptureSessionPreset640x480
                cameraPosition:AVCaptureDevicePositionFront];
  
  //make it portrait
  stillCamera.outputImageOrientation = UIInterfaceOrientationPortrait;
  
  //define a filter
  filter = [[GPUImageFilter alloc] init];
  
  //force the output to 300*300
  [filter forceProcessingAtSize:((GPUImageView*)self.primaryView).sizeInPixels];
  
  //set things up
  [stillCamera addTarget: filter];
  [filter addTarget: primaryView];
  [stillCamera startCameraCapture];
  </code></pre>
  
  <p>Now I really get a square view..but the view looks so flat, its completely distortion, I think it might be something wrong with the aspect ratio.then I set the fill mode of the primary view like this:</p>
  
  <pre><code>[primaryView setFillMode:kGPUImageFillModePreserveAspectRatioAndFill];
  </code></pre>
  
  <p>then this:</p>
  
  <pre><code>[primaryView setFillMode:kGPUImageFillModePreserveAspectRatio];
  </code></pre>
  
  <p>then this:</p>
  
  <pre><code>[primaryView kGPUImageFillModeStretch];
  </code></pre>
  
  <p>FINALLY! none of these work..so what I am missing, any one, help.</p>