2010-12-16 12 views
9

Estoy desarrollando una aplicación para iPhone, que registra la voz del usuario y la cambia por una voz femenina like (TALKING TOM e iHOBO). Soy nuevo en la manipulación de audio. Por favor, dime qué API se requiere para hacer esto? ¿Puedo implementar esta característica usando iphone sdk apis? ¿Hay alguna fuente abierta para implementar esta característica? ¿Hay algún tutorial regrading esto?Cambiador de voz para iPhone

Gracias de advace

Respuesta

10

No hay API de iOS integradas que hagan modificaciones independientes en el tiempo.

Hay un código de código abierto que implementa un ajuste de intervalo de tiempo en Audacity, pero no sé si este código se ha portado a iOS. Lo mismo con SoundTouch.

Hay un T ime-Pitch Stretch Tutorial en el sitio DSP Dimensiones.

Actualización: A finales de 2012, la unidad de audio kAudioUnitSubType_NewTimePitch se incluyó e incorporó al lanzamiento de iOS 6, por lo que ahora puede implementar cambios de voz (modificación de tono de tiempo independiente) con las API de iOS. Vea el developer documentation de Apple para más detalles.

+0

Muchas gracias por guiarme. – rat

5

Echa un vistazo a Dirac. Es gratis, aunque no es software libre.

4

el gran enlace para descargar el código de muestra que proporciona todas sus necesidades, here también se refieren a here para obtener más conocimiento sobre su pregunta.

En el método init del código de ejemplo de HelloWorldLayer.mm, u puede ver tres valores de coma flotante como

time  = 0.7; 
pitch  = 0.8; 
formant = pow(2., 0./12.); 

acaba de ajustar el valor de tono a 1,9, sería realmente un sonido agradable gato !!!

+1

pero solo capta la voz durante unos segundos, si el usuario habla durante 15 segundos continuos ....... o más –

+2

@aloksinha Defina sus valores para #definir AUDIOMONITOR_THRESHOLD 0.01 #define MAX_SILENCETIME 0.8 y elimine "[audioMonitor stop]" en el método "if (audioMonitorResults> AUDIOMONITOR_THRESHOLD)" loop on "- (void) monitorAudioController: (ccTime) dt" ... Funcionará ... :) ahora puede grabar durante mucho tiempo n play it .. –

+0

gracias por su respuesta. Estoy probando esto. ¡Entonces le diré! –

Cuestiones relacionadas