MPMoviePlayerController reproducir películas en reversa (hacia atrás) no es fácil en la aplicación de iPhone?

Esto es probablemente el resultado de la codificación utilizada. Para decodificar un cuadro en particular, el decodificador debe haber decodificado inmediatamente el cuadro anterior (pidiendo n + 1) o necesita encontrar el cuadro más antiguo / anterior / clave y decodificar desde ese punto.

Por lo tanto, cuando juega hacia adelante, siempre se encuentra en la situación de haber decodificado el fotograma anterior (pidiendo n + 1) y se le recompensa con una reproducción suave.

Al jugar hacia atrás, está solicitando un cuadro n-1, por lo que el decodificador debe volver al fotograma clave anterior, decodificar todos los cuadros hasta el anterior y mostrar.

El decodificador puede ser inteligente y cuadros de búfer para n-1 … nk (donde k es el número de cuadros del fotograma clave anterior) para que pueda obtener una reproducción suave para una serie de cuadros. Pero eventualmente tiene que retroceder y decodificar aún más en el pasado y amortiguar otra serie de cuadros, lo que lleva a una reproducción entrecortada.

Las únicas 2 soluciones son:
1) usa un segundo video como sugirió William
2) codifique el video de manera que cada fotograma sea un fotograma clave para que no se requiera almacenamiento en búfer (y vea cómo aumenta el tamaño del archivo)

# He creado Demo para Same, en este usuario puede

1. Convertir video inverso
2. Convertir video en audio
3. Agregar audio y video juntos

Descargue el código aquí : https://github.com/mehulparmar4e

He resuelto este mismo problema en el pasado usando un segundo archivo de video que es la película al revés. Cuando el usuario cambia a reversa, cambie los videos y ajuste el tiempo de reproducción de la cabeza según sea necesario.

Reproducir un video en reversa es más difícil debido a la compresión del archivo; también puede intentar usar un tipo de compresión menor o diferente.