2010-10-20 15 views
5

Estoy trabajando en un proyecto que requiere que envíe datos pcm sin encabezado sin formato o pcm lineales a un servidor.¿Cómo puedo acceder/extraer datos de audio sin formato (sin cabeza) desde un archivo caf en iPhone?

Estoy usando AVAudioRecorder y puedo guardar archivos de audio en el teléfono con bastante facilidad, pero el problema es que no importa lo que intento y hago, se envuelven en un archivo caf o se imprimen con algún tipo de encabezado .

Tengo entendido que un archivo caf es solo un archivo envoltorio para datos de audio en bruto y que estos datos de audio pueden tener varios formatos, incluidos el pcm lineal y el ulaw.

Así que mis preguntas son, ¿cómo puedo generar un archivo de audio sin la envoltura de caf para empezar (es decir, solo el audio sin encabezado relleno en un archivo) o si grabo un café que contiene Ulaw crudo o pcm lineal datos de audio, ¿cómo puedo entrar y extraer fácilmente solo los datos de audio sin procesar del archivo caf y dejar todo lo demás atrás?

+0

Hola, ¿se soluciona esto? También estoy buscando algo similar. ¿Puedes compartir el código? Gracias. – applefreak

+0

¿Podemos usar AVAudioRecorder para guardar en formato RAW directamente? –

Respuesta

1

Si utiliza la API de Audio Queue para grabar, en lugar de AVAudioRecorder, tendrá acceso a los búferes de muestra de PCM en bruto, y puede escribirlos en un archivo plano para enviarlos posteriormente a su servidor.

+0

Si puedo evitar bajar a los Servicios de cola de audio, sería preferible, pero es bueno saber que es una opción posible. ¿Sería difícil extraer los datos pcm o ulaw lineales sin procesar de un archivo caf? ¿Alguna idea sobre cómo se podría hacer? – rhart

1

Si los datos de audio en la CAF ya están en el formato que necesita, utilizaría la API AudioFile para tomar los datos de audio del archivo caf y escribirlos en un archivo sin encabezado/RAW antes de cargarlo en mi servidor.

Si necesita convertir los datos de la CAF, use la API ExtAudioFile en su lugar. De cualquier manera, bastante sencillo.

http://developer.apple.com/library/ios/#documentation/MusicAudio/Reference/AudioFileConvertRef/Reference/reference.html

http://developer.apple.com/library/ios/#documentation/MusicAudio/Reference/ExtendedAudioFileServicesReference/Reference/reference.html

Cuestiones relacionadas