title: completionHandler of AVAudioPlayerNode.scheduleFile() is called too early
body: <p>I am trying to use the new AVAudioEngine in iOS 8.</p>
  
  <p>It looks like the completionHandler of player.scheduleFile() is called <strong>before</strong> the sound file has finished playing. </p>
  
  <p>I am using a sound file with a length of 5s -- and the <code>println()</code>-Message appears round about 1 second before the end of the sound.</p>
  
  <p>Am I doing something wrong or do I misunderstand the idea of a completionHandler?</p>
  
  <p>Thanks!</p>
  
  <hr>
  
  <p>Here is some code:</p>
  
  <pre><code>class SoundHandler {
      let engine:AVAudioEngine
      let player:AVAudioPlayerNode
      let mainMixer:AVAudioMixerNode
  
      init() {
          engine = AVAudioEngine()
          player = AVAudioPlayerNode()
          engine.attachNode(player)
          mainMixer = engine.mainMixerNode
  
          var error:NSError?
          if !engine.startAndReturnError(&amp;error) {
              if let e = error {
                  println("error \(e.localizedDescription)")
              }
          }
  
          engine.connect(player, to: mainMixer, format: mainMixer.outputFormatForBus(0))
      }
  
      func playSound() {
          var soundUrl = NSBundle.mainBundle().URLForResource("Test", withExtension: "m4a")
          var soundFile = AVAudioFile(forReading: soundUrl, error: nil)
  
          player.scheduleFile(soundFile, atTime: nil, completionHandler: { println("Finished!") })
  
          player.play()
      }
  }
  </code></pre>