Bachelor's Thesis

Modular Audio Effect for Voice Signal Processing

Final Thesis 2.95 MB Appendix 10.05 MB

Author of thesis: Bc. Štěpán Kučera

Acad. year: 2025/2026

Supervisor: Ing. David Leitgeb

Reviewer: Ing. Vojtěch Kovanda

Abstract:

This bachelor thesis focuses on the development of a sound effect for basic human voice processing. The effect is compiled as a modular VST3 plugin. The plugin is developed in C++ language using the JUCE framework. It includes frequency-limiting filters and eight slots, which allow the user to choose from following implemented effects: a noise gate, a modular equalizer and a compressor. The effect parameters are controlled via a simple user interface.

Keywords:

VST3 plugin, modularity, JUCE, DSP, audio effects, frequency filters, dynamic range control

Date of defence

18.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

Process of defence

Student prezentoval výsledky své práce a komise byla seznámena s posudky. Student obhájil bakalářskou práci a odpověděl na otázky členů komise a oponenta. Otázky členů komise a oponenta: - Proč je vhodné mít až osm slotů pouze pro tři různé efekty? Uveďte příklad použití, kdy využíváte více slotů než tři. - Jaké další efekty pro zpracování řeči by se daly do vašeho pluginu přidat a jakým způsobem byste to konkrétně realizoval?

Language of thesis

Czech

Faculty

Department

Study programme

Audio Engineering (BPC-AUD)

Specialization

Audio Production and Recording (AUDB-ZVUK)

Composition of Committee

doc. Ing. Petr Sysel, Ph.D. (předseda)
MgA. Michal Indrák, Ph.D. (místopředseda)
Ing. Ondřej Krajsa, Ph.D. (člen)
Ing. David Leitgeb (člen)
Ing. Matěj Ištvánek, Ph.D. (člen)

Supervisor’s report
Ing. David Leitgeb

Cílem bakalářské práce byla implementace zásuvného modulu (tzv. plug-inu) zaměřeného na zpracování hlasového signálu. Navržený plug-in byl zkompilován do formátu VST3 a je možné jej použít při živém vysílání (tzv. streamování), což bylo hlavním cílem práce. Student na tématu aktivně pracoval a pravidelně předkládal výsledky své práce ke kontrole na konzultacích. Na začátku letního semestru se student na určitou dobu odmlčel, což se do jisté míry promítlo do výsledné podoby textové i praktické části práce. Cíle stanovené v zadání však byly přesto splněny.

Text práce je logicky členěný a jednotlivé kapitoly na sebe vhodně navazují. Po formální stránce práce splňuje základní typografická pravidla. Práce byla s předstihem zaslána ke kontrole, nicméně i v odevzdané verzi zůstaly některé překlepy a nevhodně zvolené formulace. Na některých místech by bylo vhodné použité zdroje důkladněji ocitovat. Například u zásuvných modulů uvedených v kapitole 4 zcela chybí citace, případně alespoň odkazy v poznámce pod čarou. Další nedostatek vnímám v kapitole věnované testování, kde by grafické ukázky mohly být ještě mírně upraveny, například z hlediska rozměrů, způsobu použití mřížky nebo volby barev. S ohledem na časové možnosti však již tyto úpravy nebyly provedeny. V této části by také mohla být zahrnuta čistě zvuková ukázka zaměřená na použití navrženého plug-inu přímo na hlasový signál, která byla prezentována v rámci obhajoby semestrální práce.

Navržený zásuvný modul byl implementován v jazyce C++ s využitím frameworku JUCE. Studentovi se i přes původní neznalost jazyka C++ a frameworku JUCE podařilo v problematice rychle zorientovat a následně všechny požadované části bez větších problémů samostatně implementovat. Úspěšně vyřešil i systém modularity, který byl od počátku považován za největší překážku zadání. Navržený plug-in obsahuje také vlastní pokročilé uživatelské prostředí. Oceňuji systém ukládání stavu efektu (tzv. presetů), který byl sice na doporučení vedoucího zpracován podle citovaného zdroje, nicméně byl doplněn i o další funkce. Student měl původně v plánu navržený zásuvný modul rozšířit o další funkce, které by dále zvýšily jeho praktickou využitelnost. Jednalo se například o de-esser, saturaci, převodní charakteristiku kompresoru s nastavitelným plynulejším přechodem v okolí prahové hodnoty (tzv. soft knee) a také o další vizuální prvky, které by uživateli poskytly lepší přehled o tom, jak je signál zpracováván. Tento potenciál však nebyl z časových důvodů nakonec naplněn. Všechny požadavky stanovené v zadání však byly přesto implementovány. Jako jedinou výraznější nevýhodu tak v kontextu zadání vnímám pouze absenci většího počtu továrních presetů, ze kterých by si uživatel mohl vybrat. Points proposed by supervisor: 95

Grade proposed by supervisor: A

Reviewer’s report
Ing. Vojtěch Kovanda

Bakalářská práce se zabývá návrhem, implementací a testováním VST3 pluginu určeného pro zpracování řečového signálu v reálném čase.
Autor samostatně navrhl a implementoval plugin založený na filtraci, kompresi a šumové bráně, které je možno volit v osmi po sobě jdoucích slotech. Plugin je komplexní a funkční. Oceňuji především vlastní grafické uživatelské prostředí a funkci presetů.
U některých částí působí grafické uživatelské rozhraní místy jako nedokončené a v některých detailech by si zasloužilo další úpravy vedoucí k lepší uživatelské zkušenosti (například volné místo u kompresoru). Tyto připomínky však vnímám spíše jako náměty pro další vývoj produktu než jako zásadní nedostatky práce.
Text práce je přehledný a jednotlivé kapitoly na sebe plynule navazují. Nevykazuje zjevné technické ani formální nedostatky. Rozsah práce odpovídá náročnosti tématu. Mírný nedostatek vidím v ne příliš častém citování (například u srovnání s existujícími pluginy).
Celkově hodnotím bakalářskou práci jako velmi zdařilou. Autor prokázal schopnost samostatně navrhnout, implementovat a ověřit komplexní softwarové řešení s praktickým využitím, které potvrzuje splnění cílů bakalářské práce. Topics for thesis defence:
  1. Proč je vhodné mít až osm slotů pouze pro tři různé efekty? Uveďte příklad použití, kdy využíváte více slotů než tři.
  2. Jaké další efekty pro zpracování řeči by se daly do vašeho pluginu přidat a jakým způsobem byste to konkrétně realizoval?
Points proposed by reviewer: 95

Grade proposed by reviewer: A

Responsibility: Mgr. et Mgr. Hana Odstrčilová