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

Запишите данные к звуковому файлу, получите информацию о файле, и затем считайте данные назад в рабочую область 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 в интерактивном режиме. Выберите 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.

Смотрите также

| |

Похожие темы