audioread
Leer un archivo de audio
Sintaxis
Descripción
Ejemplos
Leer un archivo de audio completo
Cree un archivo WAVE a partir del archivo de ejemplo handel.mat
y lea el archivo en MATLAB®.
Cree un archivo WAVE (.wav
) en la carpeta actual.
load handel.mat filename = 'handel.wav'; audiowrite(filename,y,Fs); clear y Fs
Lea los datos en MATLAB con audioread
.
[y,Fs] = audioread('handel.wav');
Reproduzca el audio.
sound(y,Fs);
Leer parte de un archivo de audio
Cree un archivo FLAC a partir del archivo de ejemplo handel.mat
y, a continuación, lea solo los 2 primeros segundos.
Cree un archivo FLAC (.flac
) en la carpeta actual.
load handel.mat filename = 'handel.flac'; audiowrite(filename,y,Fs);
Lea solo los 2 primeros segundos.
samples = [1,2*Fs]; clear y Fs [y,Fs] = audioread(filename,samples);
Reproduzca las muestras.
sound(y,Fs);
Devolver audio en formato entero nativo
Cree un archivo .flac
, lea los 2 primeros segundos del archivo y después devuelva el audio en el formato entero nativo.
Cree un archivo FLAC (.flac
) en la carpeta actual.
load handel.mat filename = 'handel.flac'; audiowrite(filename,y,Fs);
Lea solo los 2 primeros segundos y especifique los datos. A continuación, visualice el tipo de datos de los datos muestreados y. El tipo de datos de y
es double
.
samples = [1,2*Fs]; clear y Fs [y,Fs] = audioread(filename,samples); whos y
Name Size Bytes Class Attributes y 16384x1 131072 double
Solicite datos de audio en el formato nativo del archivo y, a continuación, visualice el tipo de datos de los datos muestreados y
. Observe el nuevo tipo de datos de y
.
[y,Fs] = audioread(filename,'native'); whos y
Name Size Bytes Class Attributes y 73113x1 146226 int16
Argumentos de entrada
filename
— Nombre del archivo que se desea leer
vector de caracteres | escalar de cadena
Nombre del archivo que se desea leer, especificado como vector de caracteres o escalar de cadena que incluye la extensión del archivo.
En función de la ubicación del archivo, filename
puede tomar una de estas formas.
Carpeta actual | Especifique el nombre del archivo en Ejemplo: | ||||||||
Otras carpetas | Si el archivo no está en la carpeta actual o en una carpeta de la ruta de MATLAB®, especifique el nombre de la ruta completa o relativa en Ejemplo: Ejemplo: | ||||||||
URL de Internet | Si el archivo se especifica como un localizador uniforme de recursos de Internet (URL), Ejemplo: | ||||||||
Ubicación remota | Si el archivo está almacenado en una ubicación remota,
Según la ubicación remota,
Para obtener más información, consulte Trabajar con datos remotos. Ejemplo: |
Ejemplo: 'myFile.mp3'
Ejemplo: '../myFile.mp3'
Ejemplo: 'C:\temp\myFile.mp3'
audioread
es compatible con los siguientes formatos de archivo.
Compatibilidad de las plataformas | Formatos de archivo |
---|---|
Todas las plataformas | AIFC (.aifc ) |
AIFF (.aiff , .aif ) | |
AU (.au ) | |
FLAC (.flac ) | |
OGG (.ogg ) | |
OPUS (.opus ) | |
WAVE (.wav ) | |
Windows® 7 (o posterior), Macintosh y Linux® | MP3 (.mp3 ) |
MPEG-4 AAC (.m4a , .mp4 ) |
En plataformas de Windows anteriores a Windows 7, audioread
no lee archivos WAVE con datos codificados con MP3.
En plataformas de Windows 7 (o posterior), audioread
también puede leer cualquier archivo compatible con Windows Media® Foundation.
En plataformas de Linux, audioread
también puede leer cualquier archivo compatible con GStreamer.
audioread
puede extraer audio de archivos de vídeo MPEG-4 (.mp4
, .m4v
) en Windows 7 o posterior, Macintosh y Linux, y de archivos Windows Media Video (.wmv
) y AVI (.avi
) en plataformas de Windows 7 (o posterior) y Linux.
Tipos de datos: char
| string
samples
— Muestras de audio que se desea leer
[1,inf]
(predeterminado) | vector de dos elementos de enteros escalares positivos
Muestras de audio que se desea leer, especificadas como vector de dos elementos de la forma [start,finish]
, donde start
y finish
son la primera y la última muestra que se desea leer y son enteros escalares positivos.
start
debe ser menor que o igual afinish
.start
yfinish
deben ser menores que el número de muestras de audio del archivo.Puede utilizar
inf
para indicar la última muestra del archivo.
Nota
Al leer una parte de algunos archivos MP3 en plataformas Windows 7 o Windows 10, es posible que audioread
lea un rango de muestras desplazado. Esto se debe a una limitación en el marco subyacente de Windows Media Foundation.
Cuando se lee una parte de archivos MP3 y M4A en plataformas Linux, es posible que audioread
lea un rango de muestras desplazado. Esto se debe a una limitación en el marco subyacente de GStreamer.
Ejemplo: [1,100]
Tipos de datos: double
dataType
— Formato de los datos de audio, y
'double'
(predeterminado) | 'native'
Formato de los datos de audio, y
, especificado como una de las siguientes opciones:
'double' | Muestras normalizadas de doble precisión. |
'native' | Muestras en el formato nativo que se encuentra en el archivo. |
En el caso de formatos de audio comprimidos, como MP3 y MPEG-4 AAC, que no almacenan datos en forma de enteros, 'native'
es 'single'
de forma predeterminada.
Tipos de datos: char
| string
Argumentos de salida
y
— Datos de audio
matriz
Datos de audio del archivo, devueltos como una matriz de m
por n
, donde m
es el número de muestras de audio leídas y n
es el número de canales de audio del archivo.
Si no se especifica el
dataType
o eldataType
es'double'
,y
es de tipodouble
y los elementos de la matriz son valores normalizados entre -1,0 y 1,0.Si el
dataType
es'native'
,y
puede pertenecer a uno de varios tipos de datos de MATLAB, dependiendo del formato del archivo y del valorBitsPerSample
del archivo de entrada. Llame aaudioinfo
para determinar el valorBitsPerSample
del archivo.Formato de archivo BitsPerSample Tipo de datos de y Rango de datos de y WAVE ( .wav
)8 uint8
0 ≤ y
≤ 25516 int16
-32768 ≤ y
≤ +3276724 int32
-2^31 ≤ y
≤ 2^31–132 int32
-2^31 ≤ y
≤ 2^31–132 single
-1.0 ≤ y
≤ +1.064 double
-1.0 ≤ y
≤ +1.0WAVE ( .wav
) (ley Mu)8 int16
-32124 ≤ y
≤ +32124WAVE ( .wav
) (ley A)8 int16
-32256 ≤ y
≤ +32256FLAC ( .flac
)8 uint8
0 ≤ y
≤ 25516 int16
-32768 ≤ y
≤ +3276724 int32
-2^31 ≤ y
≤ 2^31–1MP3 ( .mp3
), MPEG-4 AAC (.m4a
,.mp4
), OGG (.ogg
), OPUS (.opus
) y algunos archivos WAVE comprimidosN/D single
-1.0 ≤ y
≤ +1.0
Nota
Cuando y
es single
o double
y BitsPerSample
es 32 o 64, los valores de y
pueden sobrepasar -1,0 o +1,0.
Fs
— Tasa de muestreo
escalar positivo
Tasa de muestreo, en hercios, de los datos de audio y
, devuelta como un escalar positivo.
Limitaciones
En el caso de archivos de audio MP3, MPEG-4 AAC y AVI en plataformas Windows 7 o posterior y Linux, es posible que
audioread
lea menos muestras de las esperadas. En las plataformas Windows 7, esto se debe a una limitación en el marco subyacente de Media Foundation. En las plataformas Linux, esto se debe a una limitación en el marco subyacente de GStreamer. Si necesita una lectura precisa de las muestras, trabaje con archivos WAV o FLAC.En las plataformas Linux,
audioread
lee los archivos MPEG-4 AAC que contienen datos de un solo canal como datos estéreo.
Capacidades ampliadas
Entorno basado en subprocesos
Ejecute código en segundo plano con MATLAB® backgroundPool
o acelere código con Parallel Computing Toolbox™ ThreadPool
.
Esta función es totalmente compatible con entornos basados en subprocesos. Para obtener más información, consulte Ejecutar funciones de MATLAB en un entorno basado en subprocesos.
Historial de versiones
Introducido en R2012bR2022a: Leer archivos de audio Opus (.opus
)
Puede leer archivos de audio Ogg Opus.
R2021b: Compatibilidad con entornos basados en subprocesos
Puede ejecutar audioread
en segundo plano con backgroundPool
de MATLAB.
R2021a: Leer archivos de audio desde una URL HTTP o HTTPS
Puede leer archivos de audio desde una URL de Internet especificando filename
como un vector de caracteres o cadena que contenga el tipo de protocolo 'http://'
o 'https://'
.
R2020b: Leer archivos de audio desde una ubicación remota
Puede leer archivos de audio almacenados en ubicaciones remotas, como Amazon S3, Windows Azure Blob Storage y HDFS.
Comando de MATLAB
Ha hecho clic en un enlace que corresponde a este comando de MATLAB:
Ejecute el comando introduciéndolo en la ventana de comandos de MATLAB. Los navegadores web no admiten comandos de MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)