videos ver para formato descargar cual convertidor como ios video mpmovieplayercontroller mp4 mainbundle

ios - ver - No se puede reproducir el archivo de video MP4 de mainBundle



formato video iphone 6 (7)

Xcode 9

Aquí hay una imagen actualizada.

Vaya a Crear fases> Copiar recursos de paquete y vea si su archivo está allí. Si no es así, puede agregarlo presionando el botón "+".

Así que estoy tratando de reproducir un sencillo archivo de video de animación de introducción que he arrastrado a mi proyecto en XCode y, por lo tanto, debería poder reproducirlo desde mainBundle, ¿verdad?

Con este código:

NSURL *urlString = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"introvideo" ofType:@"mp4"]]; MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:urlString]; [player play];

Recibo este mensaje de error: * Aplicación de finalización debido a una excepción no detectada ''NSInvalidArgumentException'', razón: ''* - [NSURL initFileURLWithPath:]: parámetro de cadena nulo''

¡Cualquier ayuda sería genial!


Debe verificar si ese video está disponible en el paquete de recursos de su aplicación.

Como mencionó you getting this error message: * Terminating app due to uncaught exception ''NSInvalidArgumentException'', reason: ''* -[NSURL initFileURLWithPath:]: nil string parameter .

Simplemente indica que el problema está en el resourcePath, significa que no existe tal archivo en Resource Bundle. Es por eso que pathForResource devuelve una ruta nil .

Debe volver a colocar ese archivo de video y asegurarse de que ese archivo exista en el paquete de recursos.

Entonces deberías ir al frente con el código como Rehan también publicado.

NSURL *url = [NSURL URLWithString:[[NSBundle mainBundle] pathForResource:@"video" ofType:@"mov" inDirectory:@""]]; MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:url]; [[player view] setFrame:[self.view bounds]]; // Frame must match parent view [self.view addSubview:[player view]]; [player play]; [player release];

Espero que te valga la pena.

Gracias


Esto significa que su código no puede encontrar su archivo introvideo.mp4. Asegúrese de haber agregado exitosamente ese archivo a su paquete. Puede verificar la configuración de su proyecto: Copiar Recurso de paquete.


Parece que pathForResource: ofType: devuelve nil. Mira esto

  1. este archivo se agrega a la fase de compilación "copiar recursos";
  2. no cometió ningún error en el nombre del archivo: las rutas en el dispositivo distinguen entre mayúsculas y minúsculas.

Puse un directorio completo de "Sonidos" en el proyecto y lo agregué a la sección "Copiar recursos del paquete". Funcionaba bien, pero luego comenzó a fallar.

La solución era anteponer el nombre del directorio a los nombres de archivo. Por ejemplo, esto no funcionó:

SKAction.playSoundFileNamed("crash.caf", waitForCompletion: false)

... pero esto funcionó:

SKAction.playSoundFileNamed("Sounds/crash.caf", waitForCompletion: false)


Tu código no es correcto Por favor cambie según lo siguiente. Todavía copie su video en los recursos de su paquete.

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"MacBook Pro with Retina Display" ofType:@"m4v"]]; MPMoviePlayerViewController *playercontroller = [[MPMoviePlayerViewController alloc] initWithContentURL:url]; [self presentMoviePlayerViewControllerAnimated:playercontroller]; playercontroller.moviePlayer.movieSourceType = MPMovieSourceTypeFile; [playercontroller.moviePlayer play]; [playercontroller release]; playercontroller = nil; NSLog(@"Video is Playing");


NSURL *url = [NSURL URLWithString:[[NSBundle mainBundle] pathForResource:@"video" ofType:@"mov" inDirectory:@""]]; MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:url]; [[player view] setFrame:[self.view bounds]]; // Frame must match parent view [self.view addSubview:[player view]]; [player play]; [player release];