Estoy interesado en crear una aplicación para iPhone que pueda transmitir video desde un servidor central, el estilo de YouTube. Me preguntaba si alguien ha intentado hacer esto antes, ¿cuál es el camino de las API existentes menos resistentes, etc.? Realmente no sé nada sobre cómo esto se hace generalmente. ¿Estaría trabajando con enchufes? Solo estoy buscando alguna dirección aquí. ¡Gracias!Escribir una aplicación para transmitir video a iPhone
Respuesta
Si tiene el servidor de transmisión listo y listo, es bastante fácil implementar un controlador de video que aparece en el estilo de youtube.
NSString *videoURLString = @"http://path-to-iphone-compliant-video-stream";
NSURL *videoURL = [NSURL URLWithString:videoURLString];
MPMoviePlayerController moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];
[moviePlayer prepareToPlay];
[moviePlayer play];
[self.view addSubview:moviePlayer.view];
que necesita para manejar el controlador que deben mostrarse vista del reproductor de vídeo (que es self
en este caso).
En iOS 3.2+ MPMoviePlayerViewController hacer aún más fácil:
NSString *videoURLString = @"http://path-to-iphone-compliant-video-stream";
NSURL *videoURL = [NSURL URLWithString:videoURLString];
MPMoviePlayerViewController *moviePlayerView = [[[MPMoviePlayerViewController alloc] initWithContentURL:videoURL] autorelease];
[self presentMoviePlayerViewControllerAnimated:moviePlayerView];
presentMoviePlayerViewControllerAnimated
es un método adicional de MediaPlayer a FWViewController
que se encuentra en iOS 3.2+ y se encarga de crear un controlador de vista y empujándolo en la pila, animándola con una animación deslizante desde abajo, como en youtube.app.
Los videos de QuickTime ya se transmiten al teléfono. La ruta de menor resistencia sería usar el controlador del reproductor de medios y dirigirlo a un archivo multimedia de transmisión en un servidor de transmisión.
Apple tiene un artículo detallado acerca de la configuración del lado del servidor para streaming de medios de comunicación:
y Buenas Prácticas Nota:
https://developer.apple.com/library/content/technotes/tn2224/_index.html
No sólo contiene información sobre la arquitectura de servicio de streaming y herramientas utilizadas para construirlo, pero también tiene algunos requisitos para ese tipo de servicio que debe cumplirse y referencias a transmisiones de prueba en vivo.
Utilice este código para usar poca memoria. En la transmisión de vídeo ....
-(IBAction)playMovie:(NSURL *) theURL
{
NSURL *fileURL = theURL;
MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(moviePlaybackComplete:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
[self.view addSubview:moviePlayerController.view];
moviePlayerController.useApplicationAudioSession = NO;
moviePlayerController.fullscreen = YES;
[moviePlayerController play];
}
- (void)moviePlaybackComplete:(NSNotification *)notification
{
MPMoviePlayerController *moviePlayerController = [notification object];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
[moviePlayerController.view removeFromSuperview];
[moviePlayerController release];
}
Si bien las respuestas existentes son buenas, si es necesario utilizar corrientes no HTTP (MMS o RTMP por ejemplo) o no de Apple apoyaron códecs de audio/vídeo, las cosas se ponen un poco más Complicado.
No soy un experto, pero he estado usando este VideoStreaming SDK para resolver esos problemas, y hace que personalizar al cliente sea mucho más fácil (transmisión de fondo, pausar transmisiones, etc.). Puede valer la pena si también tienes esos requisitos.
respuesta Puede utilizar AVPlayerViewController
desde MPMoviePlayerController
está obsoleta desde IOS 9
NSURL *url = [NSURL URLWithString:videoUrl];
_playerViewController = [[AVPlayerViewController alloc] init];
_playerViewController.player = [AVPlayer playerWithURL:url];
_playerViewController.player.volume = 1;
_playerViewController.showsPlaybackControls = YES;
_playerViewController.view.frame = CGRectMake(....);
[self.view addSubview:_playerViewController.view];
- 1. Transmitir transmisión de video en vivo iPhone SDK de iPhone
- 2. Transmitir video Desde iPhone o Android a RTMP
- 3. aplicación wpf para transmitir video con retraso de 15 segundos
- 4. ¿Cómo transmitir video en vivo desde una aplicación Java?
- 5. Transmitir video en Java
- 6. Transmitir una aplicación de PowerBuilder a .NET
- 7. ¿Cómo puedo transmitir video y reproducirlo?
- 8. ¿Transmitir y guardar un video simultáneamente?
- 9. Transmitir video desde el servidor php a Android programáticamente
- 10. ¿Cómo transmitir contenido de video en asp.net?
- 11. Cómo transmitir video en vivo en HTML5?
- 12. Uso de Ir a escribir una biblioteca para una aplicación de iPhone
- 13. Transmitir video en vivo al navegador (con baja latencia)
- 14. Transmitir una aplicación Delphi 2006 unicode a Delphi 2009
- 15. ¿Cómo puedo transmitir video de webcam con C#?
- 16. degradación a una versión anterior de una aplicación para iphone
- 17. OpenGL para video en el iPhone
- 18. Transmitir video desde ffmpeg y capturar con OpenCV
- 19. ¿Incrustar video para jugar en iPhone?
- 20. Cómo grabar video filtrado para iPhone?
- 21. Aprendiendo a escribir una interfaz de usuario de iPhone personalizada
- 22. dónde colocar videos para transmitir Android
- 23. Transmite video MP4 en iPhone directamente desde S3?
- 24. conecte una aplicación iOS (iPhone) a mac?
- 25. Empezar a escribir una aplicación de escritorio que habla con un iPhone
- 26. Implementar una aplicación de iphone de xcode a iphone
- 27. Android MediaRecorder setOutPutFile() para transmitir usando Socket
- 28. Identificador único para una aplicación de iPhone
- 29. Transmitir una biblioteca muy Pythonesque a .NET
- 30. Orientación sobre cómo transmitir archivos m38u a la aplicación de estilo Metro (WinRT)
Esto no está funcionando para mí de ninguna manera. – Deepukjayan
usa este código para transmitir? – Dilip