¿Cómo detectar el modo de pantalla completa usando AVPlayerViewController en Swift?

Estoy tratando de detectar cuando elAVPlayerViewController está en modo de pantalla completa, pero estoy teniendo dificultades para lograrlo. Me gustaría saber cuándo el usuario selecciona el botón expandir para ingresar a pantalla completa como se muestra aquí:

He agregado el observador apropiado según estas sugerencias:

Detectar video que se reproduce a pantalla completa en vertical u horizontalCómo detectar el modo de pantalla completa de AVPlayerViewController

El código apropiado:

var avWidth:CGFloat = 375
var avHeight:CGFloat = 300

override func viewDidLoad()
{
    super.viewDidLoad()

    let path = NSBundle.mainBundle().pathForResource("cable pressback", ofType: "mp4")
    let url = NSURL.fileURLWithPath(path!)
    let player = AVPlayer(URL: url)

    playerViewController.player = player

    playerViewController.view.frame = CGRectMake(0, 100, self.view.frame.size.width, 300)

    playerViewController.view.translatesAutoresizingMaskIntoConstraints = true

    view.addSubview(playerViewController.view)

    self.addChildViewController(playerViewController)

    [playerViewController .addObserver(self, forKeyPath:"videoBounds" , options: NSKeyValueObservingOptions.New, context: nil)]

}

override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>)
{
    print("playerViewController.view.frame = \(playerViewController.view.frame)")

    if keyPath == "videoBounds"
    {
        let rect = change!["new"]! as! NSValue

        if let newrect = rect.CGRectValue() as CGRect?
        {
            if newrect.width > 0 || newrect.height > 0
            {
                if avWidth > 0 || avHeight > 0
                {
                    if newrect.width > avWidth || newrect.height > avHeight
                    {
                        print("Full Screen")
                    }
                    else if newrect.width < avWidth || newrect.height < avHeight
                    {
                        print("Normal screen")
                    }
                }
                avWidth = newrect.width
                avHeight = newrect.height
            }
        }
    }
}

Sin embargo, parece que nunca llega al código.print("Full Screen"). Esta golpeandoprint("Normal Screen") independientemente de si el reproductor está en modo normal o de pantalla completa.

¡Gracias!

Respuestas a la pregunta(4)

Su respuesta a la pregunta