Práce se zabývá IP-telefonii v OS Linux. Cílem práce je vytvořit aplikaci umožňující přenos hlasu v podobné kvalitě jako u běžného hovoru přes mobilní telefon. Výsledná aplikace je primárně určena pro vestavěný systém EXM32, kde musí bez problému fungovat.
Anotace v angličtině
This dissertation is about IP-telephony in OS Linux. The target of the dissertation is to create such an application which makes possible voice transmission over IP network in the quality of cell phone calls. The final application is suitable mainly for embedded system EXM32, where it should work without any problems.
Klíčová slova
IP-telefonie, VoIP, Linux, ALSA, sokety, UDP
Klíčová slova v angličtině
IP-telephony, VoIP, Linux, ALSA, sockets, UDP
Rozsah průvodní práce
89 s. (z toho 16 s. přílohy)
Jazyk
CZ
Anotace
Práce se zabývá IP-telefonii v OS Linux. Cílem práce je vytvořit aplikaci umožňující přenos hlasu v podobné kvalitě jako u běžného hovoru přes mobilní telefon. Výsledná aplikace je primárně určena pro vestavěný systém EXM32, kde musí bez problému fungovat.
Anotace v angličtině
This dissertation is about IP-telephony in OS Linux. The target of the dissertation is to create such an application which makes possible voice transmission over IP network in the quality of cell phone calls. The final application is suitable mainly for embedded system EXM32, where it should work without any problems.
Klíčová slova
IP-telefonie, VoIP, Linux, ALSA, sokety, UDP
Klíčová slova v angličtině
IP-telephony, VoIP, Linux, ALSA, sockets, UDP
Zásady pro vypracování
Navrhněte a vytvořte aplikaci pro společnost RADOM, s. r. o., která bude umožňovat IP-telefonii v operačním systému Linux. Aplikace musí fungovat naprosto spolehlivě s důrazem především na dobrou kvalitu zvuku a co možná nejkratší dobu zpoždění (max. 0,5 s). Dále aplikace musí spolehlivě fungovat na vestavěných systémech (konkrétně EXM32 od MSC), na kterých bude reálně využívána k přenosu zvuku.
* V úvodní části práce bude představen zvukový server v Linuxu (ALSA). Instalace, jak funguje, jak ho využít pro vlastní aplikace, důležité funkce API, ukázky jednoduchý zvukových aplikací, ovládání hlasitosti atd.
* Další část se bude zabývat síťovou komunikací v operačním systému Linux (sokety) a mutlithreadingem. Jak fungují, důležité funkce, jednoduché ukázky použití atd. Také bude krátce popsána kompilace pro jiné platformy (tzv. cross-compiling).
* Dále se již přistoupí k samotnému návrhu, implementaci a testování aplikace. Návrh bude doplněn příslušnými diagramy UML. Budou popsány způsoby testování a řešení případných problémů. Musí být vyřešena synchronizace komunikujících stran a komprese komunikace (předpokládá se použití kodeku gsm). Konečná verze aplikace musí dosahovat nízkého zpoždění, dobré kvalitu zvuku a musí fungovat plně duplexně.
Zásady pro vypracování
Navrhněte a vytvořte aplikaci pro společnost RADOM, s. r. o., která bude umožňovat IP-telefonii v operačním systému Linux. Aplikace musí fungovat naprosto spolehlivě s důrazem především na dobrou kvalitu zvuku a co možná nejkratší dobu zpoždění (max. 0,5 s). Dále aplikace musí spolehlivě fungovat na vestavěných systémech (konkrétně EXM32 od MSC), na kterých bude reálně využívána k přenosu zvuku.
* V úvodní části práce bude představen zvukový server v Linuxu (ALSA). Instalace, jak funguje, jak ho využít pro vlastní aplikace, důležité funkce API, ukázky jednoduchý zvukových aplikací, ovládání hlasitosti atd.
* Další část se bude zabývat síťovou komunikací v operačním systému Linux (sokety) a mutlithreadingem. Jak fungují, důležité funkce, jednoduché ukázky použití atd. Také bude krátce popsána kompilace pro jiné platformy (tzv. cross-compiling).
* Dále se již přistoupí k samotnému návrhu, implementaci a testování aplikace. Návrh bude doplněn příslušnými diagramy UML. Budou popsány způsoby testování a řešení případných problémů. Musí být vyřešena synchronizace komunikujících stran a komprese komunikace (předpokládá se použití kodeku gsm). Konečná verze aplikace musí dosahovat nízkého zpoždění, dobré kvalitu zvuku a musí fungovat plně duplexně.
Seznam doporučené literatury
1. MATTHEW, Neil, STONES, Richard. Linux Začínáme programovat. 2000. 912 s. ISBN 8072263072.
2. PRATA, Stephen. Mistrovství v C++. 2007. 1120 s. ISBN 978-80-251-1749-1.
3. ECKEL, Bruce. Myslíme v jazyku C++ - knihovna programátora. 2000. 556 s. ISBN 80-247-9009-2.
4. KYSELA, Jaroslav, et al. ALSA API - doc [online]. c2008 [cit. 2008-10-05]. Text v angličtině. Dostupný z WWW: .
Seznam doporučené literatury
1. MATTHEW, Neil, STONES, Richard. Linux Začínáme programovat. 2000. 912 s. ISBN 8072263072.
2. PRATA, Stephen. Mistrovství v C++. 2007. 1120 s. ISBN 978-80-251-1749-1.
3. ECKEL, Bruce. Myslíme v jazyku C++ - knihovna programátora. 2000. 556 s. ISBN 80-247-9009-2.
4. KYSELA, Jaroslav, et al. ALSA API - doc [online]. c2008 [cit. 2008-10-05]. Text v angličtině. Dostupný z WWW: .
Přílohy volně vložené
1 dvd
Přílohy vázané v práci
-
Převzato z knihovny
Ne
Plný text práce
Přílohy
Posudek(y) oponenta
Hodnocení vedoucího
Záznam průběhu obhajoby
Student odpovídal na otázky kladené komisí a vedoucím práce velice plynule. Jeho prezentace a slovní projev byl jistý. Výsledky diplomové práce jsou možné využít v praxi.