Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторна робота 6.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
792 Кб
Скачать
☆

2. Запис wav-файлів

Щоб записати вектор (чи матрицю) на диск у виді wav-файлу, використовується функція wavwrite:

wavwrite (y, Fs, N, filename)

де y – дані, які записуються (вектор для монофонічного запису, двохстовпчикова матриця – для створення стереофайлу), Fs – частота дискретизації в Герцах, N – число біт на відлік (8 або 16), filename - ім’я файлу, який створюється. Параметри N та Fs можна не писати, при цьому використовуються значення по замовчуванню: N = 16; Fs = 8000.

3. Відтворення звуку

У MATLAB можна відтворювати ветктори та матриці в звуковому вигляді. Для цього використовуються три функції:

sound, soundsc, wavplay.

В найпростішому випадку всі три функції викликаються однаково і забезпечують відтворення вектора y (або двохстовпчикової матриці – для стереозвуку), який містить відліки сигналу, з заданою частотою дискретизації Fs (Гц).

sound (y, Fs)

sound (y, Fs)

wavplay (y, Fs).

Різниця між ними полягає у додаткових можливостях, які вони представляють.

4. Готові записи сигналів

В розділі Audio базової бібіліотеки MATLAB і пакеті розширення Signal Processing міститься декілька готових записів сигналів, які збережені у виді MAT-файлів.

Таблиця 1. Записи сигналів, які є в Matlab

Ім’я файлу

Пакет

Ім’я змінної

Розмір

Частота дискретизації, Гц

Характер звуку

chirp.mat

Matlab

y

13129 (1,6 c)

8192

імпульси зі змінною частотою

gong.mat

Matlab

y

42028 (5,1 с)

8192

удар гонгу

handel.mat

Matlab

y

73113 (8,9 с)

8192

хор

laughter.mat

Matlab

y

52634 (6,4 с)

8192

сміх

splat.mat

Matlab

y

10001 (1,2 с)

8192

тон зі змінною частотою, потім звук удару

train.mat

Matlab

y

12880 (1,5 с)

8192

гудок поїзда

mtlb.mat

SP

mtlb

4001 (0,54 с)

7418

слово „Matlab”, яке вимовляється

vcosig.mat

SP

vcosig

19661 (2.4 с)

8192

даний сигнал має дуже забавну спектрограму

5. Ввід в комп’ютер звукового сигналу засобами Matlab

Відбувається з допомогою команди:

X = wavrecord (50000,22050,1,'double');

де n = 50000 – кількість виборок сигналу, які введені в комп’ютер з частотою дискретизації Fs = 22050 Гц. Решта параметрів: 1 – число каналів (тобто моно); ‘double’ – 16-бітовий запис, дані масштабуються в діапазоні -11 і представляються в 8-бітовому форматі з плаваючою комою.

Після вводу сигналу в робочому просторі (workspace) повинна появитися змінна y – масив із 66000 виборок.

Ввід проводиться з допомогою мікрофона, вихід якого підключений до мікрофонного входу звукової карти комп’ютера; перед вводом потрібно перевірити готовність системи сприймати сигнал з виходу мікрофона (Панель управління – звуки і аудіопристрої – аудио – запис звуку – мікрофон включено на максимальну гучність).