exponenta event banner

читать

Чтение следующего последовательного аудиофайла

Описание

пример

data = read(ADS) возвращает звук, извлеченный из хранилища данных. Каждый последующий вызов read функция продолжает чтение из оконечного устройства предыдущего вызова.

пример

[data,info] = read(ADS) также возвращает информацию об извлеченных аудиоданных.

Примеры

свернуть все

Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.

folder = fullfile(matlabroot,'toolbox','audio','samples');
ADS = audioDatastore(folder);

Если хранилище аудиоданных содержит непрочитанные файлы, считывайте из него последовательные файлы. Использовать progress для контроля доли прочитанных файлов.

while hasdata(ADS)
    data = read(ADS);
    fprintf('Fraction of files read: %.2f\n',progress(ADS))
end
Fraction of files read: 0.03
Fraction of files read: 0.06
Fraction of files read: 0.09
Fraction of files read: 0.12
Fraction of files read: 0.15
Fraction of files read: 0.18
Fraction of files read: 0.21
Fraction of files read: 0.24
Fraction of files read: 0.26
Fraction of files read: 0.29
Fraction of files read: 0.32
Fraction of files read: 0.35
Fraction of files read: 0.38
Fraction of files read: 0.41
Fraction of files read: 0.44
Fraction of files read: 0.47
Fraction of files read: 0.50
Fraction of files read: 0.53
Fraction of files read: 0.56
Fraction of files read: 0.59
Fraction of files read: 0.62
Fraction of files read: 0.65
Fraction of files read: 0.68
Fraction of files read: 0.71
Fraction of files read: 0.74
Fraction of files read: 0.76
Fraction of files read: 0.79
Fraction of files read: 0.82
Fraction of files read: 0.85
Fraction of files read: 0.88
Fraction of files read: 0.91
Fraction of files read: 0.94
Fraction of files read: 0.97
Fraction of files read: 1.00

Укажите путь к файлу образцов звука, которые требуется включить в хранилище данных звука. В этом примере образцы расположены на локальном рабочем столе. Создайте хранилище аудиоданных, указывающее на указанную папку.

folder = 'C:\Users\bhemmat\Desktop';
ADS = audioDatastore(folder,'LabelSource','foldernames');

При чтении данных из хранилища данных можно дополнительно вернуть информацию о данных в виде структуры. Информационная структура содержит имя файла, все метки, связанные с файлом, и частоту выборки файла.

[data,info] = read(ADS);
info
info = 

  struct with fields:

    SampleRate: 44100
      FileName: 'C:\Users\bhemmat\Desktop\Turbine-16-44p1-mono-22secs.wav'
         Label: Desktop

Входные аргументы

свернуть все

Определить ADS как audioDatastore объект.

Выходные аргументы

свернуть все

Аудиоданные, возвращаемые в виде матрицы M-by-N, где:

  • M - всего выборок на канал в файле.

  • N - количество каналов в файле.

Информация об аудиоданных, возвращаемая в виде структуры со следующими полями:

  • FileName - Имя текущего файла.

  • Label - Все метки файла.

  • SampleRate - Частота выборки файла.

Представлен в R2018b