exponenta event banner

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

Запишите данные в аудиофайл, получите информацию о файле, а затем прочитайте их обратно в рабочую область MATLAB ®.

Запись в аудиофайл

Загрузите образцы данных из файла, handel.mat

load handel.mat

Рабочая область теперь содержит матрицу аудиоданных, yи частота выборки, Fs.

Используйте audiowrite функция для записи данных в файл WAVE с именем handel.wav в текущей папке.

audiowrite('handel.wav',y,Fs)
clear y Fs

audiowrite функция также может выполнять запись в другие форматы аудиофайлов, такие как OGG, FLAC и MPEG-4 AAC.

Получить информацию об аудиофайле

Используйте audioinfo для получения информации о файле WAVE, handel.wav.

info = audioinfo('handel.wav')
info = 
             Filename: 'pwd\handel.wav'
    CompressionMethod: 'Uncompressed'
          NumChannels: 1
           SampleRate: 8192
         TotalSamples: 73113
             Duration: 8.9249
                Title: []
              Comment: []
               Artist: []
        BitsPerSample: 16

audioinfo возвращает массив структуры «1 к 1». SampleRate поле указывает частоту дискретизации аудиоданных в герцах. Duration указывает продолжительность файла в секундах.

Чтение аудиофайла

Используйте audioread функция для чтения файла, handel.wav. audioread может поддерживать файлы WAVE, OGG, FLAC, AU, MP3 и MPEG-4 AAC.

[y,Fs] = audioread('handel.wav');

Воспроизвести звук.

sound(y,Fs)

Вы также можете читать файлы WAV, AU или SND в интерактивном режиме. Выберите «Импорт данных» или дважды щелкните имя файла в браузере «Текущая папка».

Печать аудиоданных

Создание вектора t той же длины, что и y, что представляет прошедшее время.

t = 0:seconds(1/Fs):seconds(info.Duration);
t = t(1:end-1);

Постройте график аудиоданных как функции времени.

plot(t,y)
xlabel('Time')
ylabel('Audio Signal')

Figure contains an axes. The axes contains an object of type line.

См. также

| |

Связанные темы