iOS: AVPlayer seekToTime reinicia la reproducción del elemento actual

Estoy creando una aplicación que usa AVPlayer. En una de mis vistas, tengo un UISlider con el que el usuario debería poder desplazarse hacia adelante y hacia atrás. Estoy teniendo problemas para conseguirseekToTime para trabajar como yo quiera. Cuando trato de cambiar el tiempo, la reproducción comienza desde 0, y no estoy seguro de cómo resolver esto. Mi implementación actual se ve así:

[self.progressSlider  addTarget:self action:@selector(sliderValueChanged) forControlEvents:UIControlEventValueChanged];

[self.progressSlider  addTarget:self action:@selector(sliderReleased) forControlEvents:UIControlEventTouchUpInside];


- (void)sliderValueChanged {

    [...]
    [player pause];

}

- (void)sliderReleased {

    float timeInSecond = self.progressSlider.value;

    timeInSecond *= 1000;

    // I have trie to hard code this value, but I get the same result.
    CMTime cmTime = CMTimeMake(timeInSecond, NSEC_PER_SEC);

    [player.currentItem seekToTime:cmTime toleranceBefore:kCMTimeZero toleranceAfter:kCMTimeZero completionHandler:^(BOOL finished) {

        if (finished) {
            [player play];
        }
    }];
}

¿Alguna idea sobre lo que estoy haciendo mal?

Puedo mencionar que transmito audio usando AVPlayer:playerItemWithURL si eso hace alguna diferencia

Respuestas a la pregunta(1)

Su respuesta a la pregunta