publicarlas - IOS AVAudioRecorder, cómo grabar solo cuando la entrada de audio está presente(sin silencio)
mis grabaciones de pantalla no se escuchan al publicarlas (3)
He encontrado el camino basado en servicios de cola de audio. Es mucho más complicado, pero también más divertido al definir sus buffers de cola para los paquetes de audio entrantes.
Debe definir la devolución de llamada cuando el búfer está lleno, por lo que tiene el búfer lleno de paquetes que puede procesar como desee, en mi caso para detectar el silencio y algunas cosas más.
Más tarde tendré más tiempo para publicar la solución. Si alguien le pide que no pueda esperar, envíeme un correo electrónico y estaré encantado de ayudarle.
Consulte el ejemplo de hablar aquí: http://developer.apple.com/library/ios/#samplecode/SpeakHere/Introduction/Intro.html
Estoy utilizando AVAudioRecorder para grabar audio desde el micrófono del iPhone, pero quiero descartar los periodos de silencio: comenzar a grabar cuando se detecte sonido y dejar de grabar cuando vuelva a silenciarse.
No puedo averiguar cómo hacer eso
¿Algún consejo?
Gracias!
Puede determinar el nivel de audio de fondo grabando en un archivo de basura antes de comenzar a grabar de verdad:
AVAudioRecorder deja de funcionar al escribir en / dev / null en iPhone 5s con iOS 7
Tal vez podría utilizar el soporte de AVAudioRecorder para la medición del nivel de audio para realizar un seguimiento de los niveles de audio y habilitar la grabación cuando los niveles están por encima de un umbral determinado. Necesitarías habilitar la medición con:
[anAVAudioRecorder setMeteringEnabled:YES];
y luego podrías llamar periódicamente:
[anAVAudioRecorder updateMeters];
power = [anAVAudioRecorder averagePowerForChannel:0];
if (power > threshold && anAVAudioRecorder.recording==NO) {
[anAVAudioRecorder record];
} else if (power < threshold && anAVAudioRecorder.recording==YES) {
[anAVAudioRecorder stop];
}
O algo así.