SMS - 2.cvičení: Číslicové signály, 9.října 2017 ----------------------------------------------------------- PŘÍKLAD 1: Harmonické průběhy a) Generujme a zobrazme (20+S) ms harmonického signálu o frekvenci 440 Hz a vzorkovací frekvenci 8 kHz. S ... pořadové číslo studenta ve skupině b) Generujme a zobrazme 4 periody signálu o frekvenci 440+2*S Hz a vzorkovací frekvenci 8 kHz c) Generujme 10*S vzorků signálu o frekvenci 440 Hz a vzorkovací frekvenci 8 kHz S ... pořadové číslo studenta ve skupině ----------------------------------------------------------- PŘÍKLAD 2: Generování telefonních zvuků I a) Oznamovací tón: F = [425 0 425 0 ]; [Hz] T = [0.33 0.33 0.66 0.66 ]; [s] b) Vyzváněcí tón: F = [425 0]; [Hz] T = [1 3]; [s] c) Odkazovací ton: F = [950 0 1400 0 1800 0 ]; [Hz] T = [0.33 0.03 0.33 0.03 0.33 1.25]; [s] d) Obsazovací ton: F = [425 0]; [Hz] T = [0.33 0.42]; [s] ----------------------------------------------------------- PŘÍKLAD 3: Hudební stupnice a) Napišme funkci ton=nota(klavesa,doba), která generuje harmonický signál odpovídající pořadí klávesy na klaviatuře. b) Generujme hudební stupnici pomocí funkce nota. % function ton = nota(klavesa,doba) % funkce generuje sinusovy signal odpovidajici poradi na klavesnici % % vstup: klavesa ... poradi klavesy pozadovane noty % c1=40; d1=42; e1=44; f1=45; g1=47; a1=49; h1=51; c2=52 % doba ... trvani signalu [s] % vystup: ton ... generovany signal [Hz] fs = 8000; % pripadne dat jako parametr funkce f = 440 * 2 ^ ((klavesa-49)/12); t = 0:1/fs:doba-1/fs; ton = sin(2*pi*f*t); ----------------------------------------------------------- PŘÍKLAD 4: Dva tóny Při násobení dvou harmonických signálů vznikne součtová a rozdílová složka a potlačí se původní. Metoda bývá často implementována u zvukových syntezátorů. Jev, který může znít jako cvrkot je slyšitelný nejlépe je-li jedna z frekvencí velmi malá (okolo 10 Hz) a druhá okolo 1 kHz. Generujme signály (4 sec) jako součet dvou sinusových signálů o frekvenci f1 a f2. a) f1 = 220; f2 = 221; (=> fc = 220.5; fm = 0.5;) b) f1 = 220; f2 = 225; (=> fc = 222.5; fm = 2.5;) c) f1 = 220; f2 = 270; (=> fc = 245; fm = 25;) Signály zobrazme a poslouchejme ----------------------------------------------------------- PŘÍKLAD 5: Tónová volba Tónová volba – DTMF (dual tone multifrequency) Stiskneme-li tlačítko telefonu, pak generujeme signál, který obsahuje dvě frekvence podle tabulky. f [Hz] 1209 1336 1477 697 1 2 3 770 4 5 6 852 7 8 9 941 * 0 # Frekvence uvedné v tabulce jsou vybrány tak, aby žádná z frekvencí nebyla: • násobkem (harmonickou) jiné frekvence, • rozdílem dvou libovolných frekvencí • součtem libovolné kombinace frekvencí. a) Napišme funkci tony = DTMFvolba(cisla), kde cisla představují vstupní vektor čisel v rozsahu od 1 to 12 (11 = '*' a 12 = '#') a výstupní vektor tony obsahuje odpovídající DTMF signály (fs = 8 kHz) o délce 0,1 sekundy. b) Generujme, zobrazme a přehrajme DTMF signály. ----------------------------------------------------------- PŘÍKLAD 6: Tabulková (wavetable) syntéza a) Vytvořte jednu periodu sinusovky o frekvenci f0 a transformujte ji na jednu periodu o frekvenci f1. b) Vytvořte jednu periodu sinusovky o frekvenci f0 a transformujte na libovolně dlouhý signál o frekvenci f1. c) Vytvořte jednu periodu sinusovky o frekvenci f0 a transformujte na libovolně dlouhý signál o frekvenci f1 pomocí linearní interpolace. ----------------------------------------------------------- PŘÍKLAD 7: Banjo Pomocí tabulkové syntézy vytvořme banjo. ----------------------------------------------------------- PŘÍKLAD 8: Hudební nástroj Pomocí tabulkové syntézy vytvořte libovolný hudební nástroj. K úloze můžete využít databázi reálných hudebních nástrojů ze stránky: http://amber.feld.cvut.cz/vyu/zzs/zzs3/zzs3.htm