- •Загрузка сигналу
- •Перегляд графіку сигналу
- •Спектральний аналіз сигналу
- •Розрахунок фільтра
- •Перегляд характеристик фільтра
- •Фільтрація сигналу
- •Збереження результатів роботи
- •І. Робота зі звуковими файлами в середовищі matlab
- •1. Читання wav-файлів
- •2. Запис wav-файлів
- •3. Відтворення звуку
- •4. Готові записи сигналів
- •5. Ввід в комп’ютер звукового сигналу засобами Matlab
- •6. Перевірка якості введеного сигналу
- •II. Робота з пакетом sptool
- •1. Активация пакету та імпорт звукового файлу із середовища Matlab
- •2. Перегляд, прослуховування і збереження зображення форми звукового сигналу
- •3. Обчислення спектра звукового сигналу
- •4. Формування засобами spTool фільтра Кайзера
- •5. Фільтрація звукового сигналу отриманим фільтром
- •Хід роботи
- •I. Робота із звуковим файлом в середовищі matlab
- •II. Робота із звуковим файлом в середовищі spTool
- •Індивідуальні завдання
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-бітовий запис, дані масштабуються в діапазоні -11 і представляються в 8-бітовому форматі з плаваючою комою.
Після вводу сигналу в робочому просторі (workspace) повинна появитися змінна y – масив із 66000 виборок.
Ввід проводиться з допомогою мікрофона, вихід якого підключений до мікрофонного входу звукової карти комп’ютера; перед вводом потрібно перевірити готовність системи сприймати сигнал з виходу мікрофона (Панель управління – звуки і аудіопристрої – аудио – запис звуку – мікрофон включено на максимальну гучність).
