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

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

Запись в Audio Файл

Загрузите выборочные данные из файла, 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. The SampleRate поле указывает частоту дискретизации звуковых данных в hertz. The Duration поле указывает длительность файла в секундах.

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

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

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

Воспроизведение аудио.

sound(y,Fs)

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

Постройте графические Данные

Создайте вектор 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.

См. также

| |

Похожие темы