reproduccion quitar modo garageband for descargar como apple app aleatorio aleatoria iphone audio avaudioplayer

garageband - quitar modo aleatorio en iphone



Reproduce mĂșltiples archivos de audio usando AVAudioPlayer (2)

Estoy planeando lanzar 10 de mis grabaciones de canciones de forma gratuita, pero incluido en una aplicación de iPhone. No están disponibles en la web o iTunes o en cualquier lugar a partir de ahora.

Soy nuevo en iphone sdk (último) como te puedes imaginar, así que he estado revisando la documentación del desarrollador, varios foros y stackoverflow para aprender.

La aplicación de muestra avTouch de Apple fue un gran comienzo. Pero quiero que mi aplicación reproduzca las 10 pistas una por una. Todas las canciones se agregan a la carpeta de recursos y se nombran como track1, track2 ... track10.

En el código de la aplicación avTouch puedo ver las 2 partes siguientes, que es donde creo que necesito hacer cambios para lograr lo que estoy buscando. Pero estoy perdido.

// Load the array with the sample file NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: [[NSBundle mainBundle] pathForResource:@"sample" ofType:@"m4a"]]; - (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag { if (flag == NO) NSLog(@"Playback finished unsuccessfully"); [player setCurrentTime:0.]; [self updateViewForPlayerState]; }

¿Alguien puede por favor ayudarme en
1. cómo cargar la matriz con todas las 10 pistas que se agregan a la carpeta de recursos
2. y cuando presiono play, el jugador debería comenzar la primera pista. cuando la primera pista finaliza, la segunda pista debe comenzar y así sucesivamente para las pistas restantes.

Gracias


En su código U puede recuperar su reproductor y reproducir el sonido nuevamente en audioPlayerDidFinishPlaying y realizar un seguimiento de la cantidad de pistas (usando Counter).

Hacer el código de acondicionamiento u gestionar su reproductor para reproducir repetidamente 10 pistas una y otra vez .....

Para obtener más funciones obtienes Referencia de la clase de reproductor AVAudio Referencia ...

Para una mejor apariencia, puedes poner un botón diferente y un volumen personalizado rotar noob .... usando CoreAnimation Class ....

La mejor de las suertes


inScript, ¿encontró una solución para esto todavía? Es posible que desee seguir con algo simple como una declaración if { // do something } else { // do something else } para reproducirlos de forma consecutiva.

Para cargar en una matriz, cree un nuevo archivo plist (haga clic con el botón derecho en el árbol de directorios -> Agregar -> Nuevo archivo "y encuentre una lista de propiedades allí; nombre la lista de sonidos del archivo. Luego abra ese archivo nuevo, haga clic derecho sobre él dice "Diccionario" de forma predeterminada, vaya a "Tipo de valor" y seleccione "Matriz" ... Si mira a la derecha de esa línea, verá un pequeño botón de 3 barras, haga clic para agregar su primer elemento. Ahora agrega un elemento a la vez, "track01", "track02", etc ... uno por línea.

Este código va en su archivo .h:

NSArray* soundsList;

Este código va en su archivo .m:

NSString *soundsPath = [[NSBundle mainBundle] pathForResource:@"soundslist" ofType:@"plist"]; soundsList = [[NSArray alloc] initWithContentsOfFile:soundsPath];

Las matrices siempre comienzan en el índice n. ° 0 ... por lo que si tiene 5 pistas, la pista01 sería el índice 0, la pista02 sería el índice 1, y así sucesivamente. Si desea sondear rápidamente su matriz para ver qué hay en ella, puede agregar este fragmento de código:

int i = 0; for (i; i <= ([soundsList count] - 1); i++) { NSLog(@"soundsList contains %@", [soundsList objectAtIndex:i]); }

Todo lo que hace es contar cuántos elementos hay en su matriz (es decir, 5 o 10 o la cantidad de canciones) y objectAtIndex: devolverá el objeto al número de índice que envíe.

Para jugar de forma consecutiva, simplemente audioPlayerDidFinishPlaying la instrucción if-then en el método audioPlayerDidFinishPlaying

Si quieres reproducir el archivo, puedes hacer:

NSString* filename = [soundsList objectAtIndex:YOURINDEXNUMBER]; NSString *path = [[NSBundle mainBundle] pathForResource:filename ofType:@"mp3"]; AVAudioPlayer * newAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; self.theAudio = newAudio; // automatically retain audio and dealloc old file if new file is loaded [newAudio release]; // release the audio safely theAudio.delegate = self; [theAudio prepareToPlay]; [theAudio setNumberOfLoops:0]; [theAudio play];

donde YOURINDEXNUMBER es el track # que quieras tocar (recuerda, 0 = track01, 1 = track02, etc.)

Si necesita ayuda para configurar las variables en su archivo .h, avíseme y le guiaré para que lo haga. Además, recuerde liberar el theAudio en su método dealloc para que lo libere cuando el programa finalice.