Tenga en cuenta que, aunque un proyecto es GPL, eso no significa que no pueda contactar al autor sobre una opción LGPL en el código subyacente.
Una posible implementación de su propia solución sería utilizar OpenGL como una superficie de composición para el video y obtener una biblioteca detrás de escena como ffmpeg si necesita procesar tipos de video específicos.
NeHe tiene un ejemplo de la representación de AVI a OpenGL: http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=35
FFMpeg Recientemente se ha portado a iPhone y es un producto a base LGPL: http://geek.thinkunique.org/2008/03/05/ffmpeg-on-the-iphone/
(Nota: Existe un debate sobre el uso comercial de LGPL en iPhone porque la licencia hace referencia a la frase "dinámica" cuando se refiere a enlaces de bibliotecas, lo cual no permite el iPhone. No he visto ningún equipo de proyecto que rechace que su código se use en el iPhone estáticamente, pero debe ponerse en contacto directamente con los autores para aclaración.)
Otro (aunque GPL) versión de un reproductor de vídeo OpenGL es: http://code.google.com/p/glover/
lo que estás haciendo a través de una solución de este tipo es básicamente un bypass en los detalles técnicos específicos iPhone/Mac/CALayer y el aprovechamiento de una base de conocimiento existente de vídeo a través de OpenGL, que aunque no es extenso, todavía es ampliamente compatible.
Si está tratando con un estilo de video específico, entonces es posible que desee ver si una biblioteca está disponible para el formato de video específico directamente del vendedor en lugar de utilizar una herramienta multiuso como FFMpeg. Una vez que tenga la composición funcionando, el video puede provenir de la mayoría de las bibliotecas.
Barney
No estoy de ninguna manera apoyando MPMoviePlayerController, pero sí tiene una propiedad para "initialPlaybackTime". Dependiendo de su necesidad, esto combinado con las notificaciones Play/Finished y un temporizador/hilo puede proporcionar cierto grado de control adicional. ¡No es lindo sin embargo! :) –