title: Proper way to quickly switch between videos
body: <p>I am creating an application which displays a certain video based on an external event, which may require the playing video to change quickly - once per second or more.  However, there must not be a gap or lag between the videos.</p>
  
  <p>What is the best way to do this?  There are only four videos, each about two megabytes.  </p>
  
  <p>I was considering creating four <code>MPMoviePlayerControllers</code>, and have their views added to the main view but hidden, and switching by pausing and hiding the current video, then unhiding and playing the next video.  Is there a more elegant solution?</p>
  
  <h2>Edit</h2>
  
  <p>Here's some more information for my exact sitaution:</p>
  
  <ul>
  <li>The different video frames share mostly common pixels- so it's OK for a frame to stick during switch, but NOT okay for black frames to appear.</li>
  <li>Each video is only about ten seconds long, and there are only four videos.  The general state transitions are 1&lt;->2&lt;->3&lt;->4->1.  </li>
  <li><strong>The video playback should compatible with simultaneous AVAudioRecorder recording.</strong>  As far as I can tell, <code>MPMoviePlayerController</code> is not.</li>
  </ul>