Main Content

Esta página es para la versión anterior. La página correspondiente en inglés ha sido eliminada en la versión actual.

readAudio

Leer datos de audio recopilados desde el dispositivo móvil (actualmente solo sensores de dispositivo Android)

Desde R2022b

Descripción

Actualmente, esta función admite el acceso a los micrófonos solo en dispositivos móviles Android.

ejemplo

audioData = readAudio(devObj) lee todos los datos de audio disponibles en la colección del buffer y los devuelve en una matriz doble de tamaño NumSamples por NumChannels.

audioData = readAudio(devObj,span) lee el número de muestras indicadas por span, que usted puede especificar como un valor numérico para el número de muestras o como una duración. En este caso, la función lee el número de muestras para rellenar el intervalo de duración, dependiendo de la tasa de muestreo. Puede ajustar la tasa de muestreo en su dispositivo en el menú Sensores o ajustando el valor de la propiedad SampleRate del objeto de micrófono en MATLAB.

Los datos se leen desde el inicio del buffer, es decir, desde las muestras más tempranas. Con esta operación se borran todos los datos del buffer. La función bloquea MATLAB hasta que se leen el número de muestras solicitadas o hasta que expira el tiempo de espera.

audioData = readAudio(devObj,span,"latest") especifica que deben leerse las muestras recopiladas más recientes desde el buffer de audio. De forma predeterminada, la lectura se realiza hasta las muestras más antiguas. Puede especificar "oldest" para que sea explícito. Leer los últimos datos deja las muestras más tempranas intactas en la colección del buffer. Puede borrar el buffer con discardlogs.

audioData = readAudio(___,OutputFormat=outFmt) especifica el formato de los datos devueltos. El valor de argumento outFmt es una cadena especificada como "matrix" o "timetable". La forma predeterminada es "matrix".

[audioData,timeStamp] = readAudio(___) devuelve una matriz de muestras de datos de audio y su correspondiente marca de tiempo para la primera muestra del buffer. Esta salida de dos variables requiere OutputFormat="matrix" de forma predeterminada, y no está permitida cuando es OutputFormat="timetable".

Ejemplos

contraer todo

Cuando utiliza MATLAB® Mobile™ en su teléfono o tableta, debe activar el acceso al sensor del micrófono en el dispositivo. Seleccione Transmitir a > MATLAB.

En MATLAB, conéctese a su dispositivo y lea las primeras 1000 muestras (las más antiguas) en una matriz.

devObj = mobiledev;
audioData = readAudio(devObj,1000);

Lea los 10 segundos más recientes de datos de audio almacenados en el buffer en un horario.

audioData = readAudio(devObj,seconds(10),"latest",OutputFormat="timetable");

Argumentos de entrada

contraer todo

Dispositivo móvil, especificado como un objeto mobiledev. Utilice la función mobiledev para hacer este objeto y conectar con el dispositivo.

Longitud de la operación de lectura, especificada como una duración o un valor doble. Si esto es un tipo de duración, especifica la duración de las muestras obtenidas. Si es un valor doble, especifica el número de muestras.

Ejemplo: seconds(5)

Tipos de datos: double | duration

Argumentos de salida

contraer todo

Muestras de audio capturadas por el micrófono del dispositivo, devueltas como una matriz de tamaño NumSamples por NumChannels o como un horario, con valores de datos normalizados en el intervalo [-1,1].

Hora de la primera muestra en la colección del buffer, devuelta como fechahora. Este argumento es válido solo cuando OutputFormat está especificado como "matrix".

Historial de versiones

Introducido en R2022b