videos velocidad reproducir reproduccion poner pantalla online musica mac lento keynote insertar grabar fondo con como cambiar iphone objective-c audio

reproducir - Sonido del iPhone: ajusta la velocidad de reproducción del archivo de audio mientras se reproduce



reproducir audio lento online (3)

¿Hay alguna manera de ajustar la velocidad de reproducción de un audio mientras se reproduce en Objective C para iPhone / iPod touch?

También sería interesante si reproducir un archivo al revés sería posible.

Gracias

Tom


Una forma cursi de hacerlo es ajustar la frecuencia de muestreo cuando la envía al motor de reproducción (Cola de audio, Unidad de E / S remota, OpenAL). Para PCM, y no estoy seguro de que esto funcione para nada más que PCM (por lo que tendría que descomprimir un MP3 o AAC con Audio Converter Services primero), podría acelerar su audio ajustando AudioStreamBasicDescription como este :

audioStreamDesc.mSampleRate = audioStreamDesc.mSampleRate * 1.2;

Tenga en cuenta que esto también cambia el tono de su audio: no solo es más rápido, también es más agudo. La Mac tiene una unidad de audio suministrada por el sistema que le permite cambiar la velocidad de reproducción sin cambiar el tono, pero parece estar ausente en el iPhone.


AVAudioPlayer no le da control de velocidad, pero le permite establecer la posición, por lo que puede hacer que un pobre hombre acelere / retroceda de la misma manera que QuickTime Player: saltando a través del archivo y reproduciendo pequeños fragmentos a velocidad normal.

O puede descomprimir las muestras usted mismo con una AudioQueue sin AudioQueue y hacer la velocidad que desee. Eso es lo que hago.


A partir de iOS 6 (y creo que 5) puede ajustar la velocidad de reproducción dentro de AVAudioPlayer; sin código adicional necesario:

player = [[AVAudioPlayer alloc] initWithContentsOfURL: [NSURL fileURLWithPath:path] error:&err]; player.enableRate=YES; player.rate = 0.5; [player play];

La frecuencia puede oscilar entre .5 y 2.0, y puede ajustarse durante la reproducción, siempre y cuando EnableRate esté configurado en SÍ antes de que comience la reproducción.