WEBVTT 1 00:00:08.252 --> 00:00:11.550 Cześć, jestem Monty Montgomery z Red Hat oraz Xiph.Org. 2 00:00:11.550 --> 00:00:18.430 Kilka miesięcy temu, napisałem artykuł na temat cyfrowego dźwięku i dlaczego ściąganie muzyki w 24bit/192kHz nie ma sensu. 3 00:00:18.430 --> 00:00:23.433 W tym artykule, wspomniałem--niemal w dygresji--że cyfrowa fala nie jest wykresem schodkowym, 4 00:00:23.433 --> 00:00:28.680 i z pewnością nie otrzymujesz schodków gdy przetwarzasz z cyfrowego z powrotem do analogowego. 5 00:00:29.865 --> 00:00:33.865 Ze wszystkiego w całym artykule, to była kwestia numer jeden o której ludzie pisali. 6 00:00:33.865 --> 00:00:37.221 Właściwie, więcej niż połowa poczty którą dostałem była wypełniona pytaniami i komentarzami 7 00:00:37.221 --> 00:00:39.663 na temat podstawowych zachowań cyfrowego sygnału. 8 00:00:39.894 --> 00:00:45.285 Skoro jest zainteresowanie, poświęćmy trochę czasu by pobawić się z prostymi cyfrowymi sygnałami. 9 00:00:49.747 --> 00:00:51.006 Udawaj przez chwilę, 10 00:00:51.006 --> 00:00:54.089 że nie mamy pojęcia jak cyfrowe sygnały rzeczywiście się zachowują. 11 00:00:54.734 --> 00:00:56.841 W takim przypadku nie ma dla nas sensu 12 00:00:56.841 --> 00:00:59.049 używanie też cyfrowej aparatury pomiarowej. 13 00:00:59.049 --> 00:01:00.937 Na szczęście dla tego ćwiczenia, wciąż istnieje 14 00:01:00.937 --> 00:01:04.020 sporo działającego analogowego sprzętu laboratoryjnego. 15 00:01:04.020 --> 00:01:05.972 Na początek, potrzebujemy generatora sygnału 16 00:01:05.972 --> 00:01:08.190 który dostarczy nam analogowy sygnał wejściowy-- 17 00:01:08.190 --> 00:01:12.692 w tym przypadku jest to HP3325 z roku 1978. 18 00:01:12.692 --> 00:01:14.153 Wciąż jest to całkiem dobry generator, 19 00:01:14.153 --> 00:01:15.614 więc jeśli nie przeszkadza ci rozmiar, 20 00:01:15.614 --> 00:01:16.532 waga, 21 00:01:16.532 --> 00:01:17.577 zużycie energii, 22 00:01:17.577 --> 00:01:18.910 oraz hałaśliwy wiatraczek, 23 00:01:18.910 --> 00:01:20.329 możesz je znaleźć na eBay-u. 24 00:01:20.329 --> 00:01:23.863 Okazjonalnie tylko za niewiele więcej niż zapłacisz za przesyłkę. 25 00:01:24.617 --> 00:01:28.500 Następnie, obejrzymy nasze analogowe fale na analogowych oscyloskopach, 26 00:01:28.500 --> 00:01:31.550 jak ten Tektronix 2246 z połowy lat 90. 27 00:01:31.550 --> 00:01:34.761 jeden z ostatnich i najlepszych analogowych oscyloskopów jakie kiedykolwiek wyprodukowano. 28 00:01:34.761 --> 00:01:36.807 Każde domowe laboratorium powinno mieć jeden. 29 00:01:37.716 --> 00:01:40.852 I w końcu sprawdzimy widmo częstotliwościowe naszych sygnałów 30 00:01:40.852 --> 00:01:43.177 używając analogowego analizatora widma. 31 00:01:43.177 --> 00:01:47.732 Ten HP3585 z tej samej linii produktów co generator sygnału. 32 00:01:47.732 --> 00:01:50.615 Jak reszta sprzętu tutaj ma on prymitywny 33 00:01:50.615 --> 00:01:52.905 i śmiesznie duży mikrokontroler, 34 00:01:52.905 --> 00:01:56.276 ale ścieżka sygnału od wejścia do tego co widzisz na ekranie 35 00:01:56.276 --> 00:01:58.537 jest całkowicie analogowa. 36 00:01:58.537 --> 00:02:00.329 Cały ten sprzęt jest zabytkowy, 37 00:02:00.329 --> 00:02:01.993 ale pomijając jego wagę, 38 00:02:01.993 --> 00:02:03.844 specyfikacje są wciąż całkiem dobre. 39 00:02:04.536 --> 00:02:06.868 W tym momencie, mamy nasz generator sygnału 40 00:02:06.868 --> 00:02:12.829 ustawiony by wytwarzał piękną sinusoidę o częstotliwości 1kHz i przy 1 wolcie RMS, 41 00:02:13.414 --> 00:02:15.220 widzimy sinusoidę na oscyloskopie, 42 00:02:15.220 --> 00:02:21.428 możemy zweryfikować, że faktycznie ma ona 1kHz przy 1 wolcie RMS, 43 00:02:21.428 --> 00:02:24.108 co daje 2.8V od wirzchołka od wierzchołka, 44 00:02:24.308 --> 00:02:27.561 i to również zgadza się z pomiarem na analizatorze widma. 45 00:02:27.561 --> 00:02:30.644 Analizator również pokazuje nieco białego szumu o niewielkim natężeniu 46 00:02:30.644 --> 00:02:32.190 oraz odrobinę zniekształceń harmonicznych, 47 00:02:32.190 --> 00:02:36.649 z najwyższym szczytem około 70dB poniżej tonu podstawowego. 48 00:02:36.649 --> 00:02:38.612 To nie ma żadnego znaczenia w naszych demonstracjach, 49 00:02:38.612 --> 00:02:40.574 ale chciałem zwrócić na to uwagę teraz, 50 00:02:40.574 --> 00:02:42.452 na wypadek gdybyś zauważył to dopiero póżniej. 51 00:02:44.036 --> 00:02:47.142 Teraz, wrzucimy w środek cyfrowe próbkowanie. 52 00:02:48.557 --> 00:02:51.024 Do przetwarzania będziemy używać nudnego, 53 00:02:51.024 --> 00:02:53.374 konsumenckiej jakości urządzenia dźwiękowego eMagic USB1. 54 00:02:53.374 --> 00:02:55.337 Ponadto ma on w tej chwili więcej niż dziesięć lat, 55 00:02:55.337 --> 00:02:57.257 i zaczyna być przestarzały. 56 00:02:57.964 --> 00:03:02.676 Nowy konwerter z łatwością może przebić jego specyfikację o rząd wielkości. 57 00:03:03.076 --> 00:03:07.924 Płaskość, liniowość, fluktuacje, zachowanie szumu, wszystko... 58 00:03:07.924 --> 00:03:09.353 mogłeś tego nie zauważyć. 59 00:03:09.353 --> 00:03:11.604 To, że możemy zmierzyć poprawę 60 00:03:11.604 --> 00:03:13.609 nie znaczy, że możemy ją usłyszeć, 61 00:03:13.609 --> 00:03:16.404 i nawet te stare konsumenckie skrzynki i tak były 62 00:03:16.404 --> 00:03:18.643 na krawędzi doskonałej przejżystości. 63 00:03:20.244 --> 00:03:22.825 eMagic łączy się z moim ThinkPadem, 64 00:03:22.825 --> 00:03:26.121 który wyświetla cyfrową falę i widmo dla porównania, 65 00:03:26.121 --> 00:03:28.788 potem ThinkPad wysyła cyfrowy sygnał z powrotem na zawnątrz 66 00:03:28.788 --> 00:03:30.921 do eMagic na powtórne przetworzenie go w analogowy 67 00:03:30.921 --> 00:03:33.332 i obserwację na ekranach analizatorów. 68 00:03:33.332 --> 00:03:35.582 Od wejście do wyjścia, od lewej do prawej. 69 00:03:40.211 --> 00:03:41.214 W porządku, czas na starcie. 70 00:03:41.214 --> 00:03:43.924 Zaczynamy od przetworzenia analogowego sygnału w cyfrowy 71 00:03:43.924 --> 00:03:47.347 a potem znowu na analogowy bez żadnych dodatkowych kroków. 72 00:03:47.347 --> 00:03:49.268 Generator sygnału jest ustawiony by dawać 73 00:03:49.268 --> 00:03:52.649 sinusoidę 1kHz tak jak poprzednio. 74 00:03:52.649 --> 00:03:57.428 Widzimy naszą analogową sinusoidę na oscyloskopie po stronie wejścia. 75 00:03:57.428 --> 00:04:01.694 Dygitalizujemy nasz sygnał do 16-bitowego PCM przy 44.1kHz, 76 00:04:01.694 --> 00:04:03.828 takim samym jak na CD. 77 00:04:03.828 --> 00:04:07.156 Widmo zdygitalizowanego sygnału zgadza się z tym co zobaczyliśmy wcześniej. oraz... 78 00:04:07.156 --> 00:04:10.836 z tym, co widzimy teraz na analogowym analizatorze widma, 79 00:04:10.836 --> 00:04:15.154 pomijając fakt, że jego wejście o wysokiej impedancji ma odrobinę więcej szumu. 80 00:04:15.154 --> 00:04:15.956 Teraz 81 00:04:18.248 --> 00:04:20.798 wyświetlacz przebiegu fali pokazuje naszą zdygitalizowaną falę sinusoidalną 82 00:04:20.798 --> 00:04:23.966 jako wzór schodkowy, po jednym schodku na każdą próbkę. 83 00:04:23.966 --> 00:04:26.388 I kiedy spojrzymy na sygnał wyjściowy, 84 00:04:26.388 --> 00:04:29.054 który został przetworzony z cyfrowego z powrotem na analogowy, widzimy... 85 00:04:29.054 --> 00:04:32.052 Że jest on dokładnie taki, jak oryginala fala sinusoidalna. 86 00:04:32.052 --> 00:04:33.483 Nie ma schodków. 87 00:04:33.914 --> 00:04:37.193 W porządku, 1kHz to wciąż dość niska częstotliwość, 88 00:04:37.193 --> 00:04:40.633 może te schodki są po prostu trudne do zobaczenia, albo są wygładzane. 89 00:04:40.739 --> 00:04:49.492 Niech będzie. Wybierzmy wyższą częstotliwość, coś bliskiego częstotliwości Nyqyista, powiedzmy 15kHz. 90 00:04:49.492 --> 00:04:53.545 Teraz sinusoida jest reprezentowana przez mniej niż trzy próbki na cykl, i... 91 00:04:53.545 --> 00:04:55.838 cyfrowy przebieg fali wygląda naprawdę okropnie. 92 00:04:55.838 --> 00:04:59.798 Cóż, wygląd może być zwodniczy. Analogowe wyjście... 93 00:05:01.876 --> 00:05:06.033 jest wciąż dokonałą sinusoidą, dokładnie jak oryginalna. 94 00:05:06.633 --> 00:05:09.228 Chodźmy wyżej. 95 00:05:17.353 --> 00:05:20.151 16kHz.... 96 00:05:23.198 --> 00:05:25.616 17kHz... 97 00:05:28.201 --> 00:05:29.945 18kHz... 98 00:05:33.822 --> 00:05:35.548 19kHz... 99 00:05:40.457 --> 00:05:42.465 20kHz. 100 00:05:49.097 --> 00:05:52.350 Witaj na górnej granicy ludzkiego słuchu. 101 00:05:52.350 --> 00:05:54.377 Wyjściowa fala jest wciąż doskonała. 102 00:05:54.377 --> 00:05:58.025 Nie ma poszarpanych krawędzi, nie ma przerw, nie ma schodków. 103 00:05:58.025 --> 00:06:01.342 Więc gdzie się podziały schodki? 104 00:06:01.342 --> 00:06:03.198 Nie odpowiadaj, to podchwytliwe pytanie. 105 00:06:03.198 --> 00:06:04.318 Nigdy nie istniały. 106 00:06:04.318 --> 00:06:06.652 Rysowanie cyfrowej fali w formie schodków 107 00:06:08.712 --> 00:06:10.772 od początku było błędem. 108 00:06:10.942 --> 00:06:11.998 Dlaczego? 109 00:06:11.998 --> 00:06:14.366 Wykres schodkowy to funkcja ciągła w czasie. 110 00:06:14.366 --> 00:06:16.201 Jest poszarpana i jest podzielona, 111 00:06:16.201 --> 00:06:19.700 ale ma określoną wartość w każdym punkcie w czasie. 112 00:06:19.700 --> 00:06:22.004 Próbkowany sygnał jest całkowicie odmienny. 113 00:06:22.004 --> 00:06:23.337 Jest dyskretny w czasie; 114 00:06:23.337 --> 00:06:27.337 ma wartość dokładnie tylko w każdym momentalnym punkcie próbki 115 00:06:27.337 --> 00:06:32.596 i jest niezdefiniowany, nie ma żadnej wartości, wszędzie pomiędzy. 116 00:06:32.596 --> 00:06:36.666 Sygnał dyskretny w czasie poprawnie przedstawia się na grafie lizakowym. 117 00:06:40.020 --> 00:06:42.974 Ciągły, analogowy odpowiednik cyfrowego sygnału 118 00:06:42.974 --> 00:06:45.364 przechodzi gładko przez każdy punkt próbki, 119 00:06:45.364 --> 00:06:50.153 i jest to tak samo prawdziwe dla wysokich częstotliwości jak jest dla niskich. 120 00:06:50.153 --> 00:06:53.033 Teraz, interesująca choć wcale nie oczywista kwestia to: 121 00:06:53.033 --> 00:06:55.454 istnieje tylko jeden ograniczony pasmowo sygnał, który przechodzi 122 00:06:55.454 --> 00:06:57.417 dokładnie przez każdy punkt próbki. 123 00:06:57.417 --> 00:06:58.708 To unikalne rozwiązanie. 124 00:06:58.708 --> 00:07:01.246 Więc jeśli spróbkujesz sygnał ograniczony pasmowo 125 00:07:01.246 --> 00:07:02.612 i potem przetworzysz go z powrotem, 126 00:07:02.612 --> 00:07:06.462 oryginalne wejście jest także jedynym możliwym wyjściem. 127 00:07:06.462 --> 00:07:07.838 I zanim powiesz, 128 00:07:07.838 --> 00:07:11.721 "Och, mogę narysować inny sygnał, który przechodzi przez te punkty." 129 00:07:11.721 --> 00:07:14.283 Cóż, tak możesz, ale... 130 00:07:17.268 --> 00:07:20.521 jeśli różni się choć odrobinę od oryginalnego, 131 00:07:20.521 --> 00:07:24.905 zawiera częstotliwości na lub powyżej Nyquista, 132 00:07:24.905 --> 00:07:26.185 łamie wymóg ograniczenia pasmowego 133 00:07:26.185 --> 00:07:28.358 i nie jest poprawnym rozwiązaniem. 134 00:07:28.574 --> 00:07:30.036 A więc jak wszyscy się gmatwają 135 00:07:30.036 --> 00:07:32.702 i zaczynają myśleć o cyfrowym sygnale jako schodkach? 136 00:07:32.702 --> 00:07:34.900 Przychodzą mi do głowy dwa dobre powody. 137 00:07:34.900 --> 00:07:37.956 Po pierwsze: Bardzo prosto jest przetworzyć spróbkowany sygnał 138 00:07:37.972 --> 00:07:39.294 na prawdziwe schodki. 139 00:07:39.294 --> 00:07:42.409 Wystarczy wydłużyć wartość każdej próbki w przód aż do kolejnego okresu próbki. 140 00:07:42.409 --> 00:07:44.414 To się nazywa ekstrapolator rzędu zerowego, 141 00:07:44.414 --> 00:07:47.913 i jest ważną częścią tego, jak działają niektóre przetworniki cyfrowo-analogowe, 142 00:07:47.913 --> 00:07:50.089 szczególne te najprostsze. 143 00:07:50.089 --> 00:07:55.591 Więc, każdy kto sprawdza przetwarzanie cyfrowo-analogowe 144 00:07:55.592 --> 00:07:59.550 prawdopodobnie zobaczy gdzieś diagram ze schodkowanym przebiegiem fali, 145 00:07:59.550 --> 00:08:01.982 ale to nie jest ukończona konwersja, 146 00:08:01.982 --> 00:08:04.250 i to nie jest sygnał, który wychodzi na zewnątrz. 147 00:08:04.944 --> 00:08:05.684 Po drugie, 148 00:08:05.684 --> 00:08:07.529 i to jest pewnie bardziej prawdopodobna przyczyna, 149 00:08:07.529 --> 00:08:09.449 inżynierowie, którzy przypuszczalnie wiedzą lepiej, 150 00:08:09.449 --> 00:08:10.441 jak ja, 151 00:08:10.441 --> 00:08:13.193 rysują schodki, pomimo tego, że są one technicznie niepoprawne. 152 00:08:13.193 --> 00:08:15.571 To coś jak jednowymiarowa wersja 153 00:08:15.571 --> 00:08:17.395 powiększenia w programie graficznym. 154 00:08:17.395 --> 00:08:19.241 Pixele też nie są kwadratami, 155 00:08:19.241 --> 00:08:23.081 są próbkami dwuwymiarowej przestrzeni funkcyjnej a więc także są, 156 00:08:23.081 --> 00:08:26.366 koncepcyjnie, nieskończenie małymi punktami. 157 00:08:26.366 --> 00:08:28.500 W praktyce, to prawdziwa udręka widzieć 158 00:08:28.500 --> 00:08:30.804 lub manipulować nieskończenie małym czymkolwiek. 159 00:08:30.804 --> 00:08:32.212 A więc mamy duże kwadraty. 160 00:08:32.212 --> 00:08:35.966 Ryskunki cyfrowych schodków są dokładnie tą samą rzeczą. 161 00:08:35.966 --> 00:08:37.684 To po prostu wygodny rysunek. 162 00:08:37.684 --> 00:08:40.404 Schodków w rzeczywistości nie ma. 163 00:08:45.652 --> 00:08:48.233 Gdy przetwarzamy cyfrowy sygnał z powrotem na analogowy, 164 00:08:48.233 --> 00:08:50.900 wynik jest również gładki bez względu na głębię bitową. 165 00:08:50.900 --> 00:08:53.193 24 bity czy 16 bitów... 166 00:08:53.193 --> 00:08:54.196 albo 8 bitów... 167 00:08:54.196 --> 00:08:55.486 to bez znaczenia. 168 00:08:55.486 --> 00:08:57.534 A więc czy to oznacza, że cyfrowa głębia bitowa 169 00:08:57.534 --> 00:08:58.953 nie robi w ogóle żadnej różnicy? 170 00:08:59.245 --> 00:09:00.521 Oczywiście, że nie. 171 00:09:02.121 --> 00:09:06.046 Kanał drugi tutaj jest tą samą wejściową sinusoidą, 172 00:09:06.046 --> 00:09:09.086 ale kwantyzujemy z ditheringiem do ośmiu bitów. 173 00:09:09.086 --> 00:09:14.174 Na ekranie, wciąż widzimy ładną. gładką falę sinusoidalną na kanale 2. 174 00:09:14.174 --> 00:09:18.014 Spójrz bardzo blisko, a zobaczysz również odrobinę więcej szumu. 175 00:09:18.014 --> 00:09:19.305 To poszlaka. 176 00:09:19.305 --> 00:09:21.273 Jeśli spojrzymy na widmo sygnału... 177 00:09:22.889 --> 00:09:23.732 acha! 178 00:09:23.732 --> 00:09:26.398 Nasza sinusoida wciąż tu jest, nienaruszona, 179 00:09:26.398 --> 00:09:28.490 ale poziom szumu ośmio-bitowego sygnału 180 00:09:28.490 --> 00:09:32.470 na drugim kanale jest znacznie wyższy! 181 00:09:32.948 --> 00:09:36.148 I to właśnie jest różnica, którą daje ilość bitów. 182 00:09:36.148 --> 00:09:37.434 To wszystko! 183 00:09:37.822 --> 00:09:39.956 Kiedy dygitalizujemy sygnał, najpierw go próbkujemy. 184 00:09:39.956 --> 00:09:42.366 Etap próbkowania jest doskonały; nie traci niczego. 185 00:09:42.366 --> 00:09:45.626 Ale potem kwantyzujemy sygnał, a kwantyzacja dodaje szum. 186 00:09:47.827 --> 00:09:50.793 Ilość bitów decyduje o ilości szumu 187 00:09:50.793 --> 00:09:52.569 i stąd poziom szumu bazowego. 188 00:10:00.170 --> 00:10:03.646 Jak brzmi ten szum kwantyzacji po ditheringu? 189 00:10:03.646 --> 00:10:06.012 Posłuchajmy naszej ośmiobitowej sinusoidy. 190 00:10:12.521 --> 00:10:15.273 Tu mogło być trudno usłyszeć cokolwiek poza tonem. 191 00:10:15.273 --> 00:10:18.740 Posłuchajmy tylko szumu po tym jak wytniemy sinusoidę 192 00:10:18.740 --> 00:10:21.683 a potem podkręcimy nieco wzmocnienie, ponieważ szum jest cichy. 193 00:10:32.009 --> 00:10:35.049 Ci z was, którzy używali analogowych urządzeń rejestrujących 194 00:10:35.049 --> 00:10:36.670 mogli pomyśleć sobie, 195 00:10:36.670 --> 00:10:40.382 "Mój Boże! To brzmi jak szum taśmy!" 196 00:10:40.382 --> 00:10:41.929 Cóż, to nie tylko brzmi jak szum taśmy, 197 00:10:41.929 --> 00:10:43.433 to również spełnia jego rolę, 198 00:10:43.433 --> 00:10:45.225 i jeśli użyjemy gaussowskiego dithera 199 00:10:45.225 --> 00:10:47.646 wówczas jest matematycznym odpowiednikiem pod każdym względem. 200 00:10:47.646 --> 00:10:49.225 To jest szum taśmy. 201 00:10:49.225 --> 00:10:51.774 Intuicyjnie, to oznacza że możemy mierzyć szum taśmy, 202 00:10:51.774 --> 00:10:54.196 a więc i poziom szumu tła magnetycznej taśmy, 203 00:10:54.196 --> 00:10:56.233 w bitach, zamiast w decybelach, 204 00:10:56.233 --> 00:10:59.902 aby spojżeć na to z cyfrowej perspektywy. 205 00:10:59.902 --> 00:11:03.028 Kasety kompaktowe... 206 00:11:03.028 --> 00:11:05.449 dla tych z was, którzy mają dość lat by je pamiętać, 207 00:11:05.449 --> 00:11:09.161 mogły osiągnąć tyle co dziewięć bitów w doskonałych warunkach, 208 00:11:09.161 --> 00:11:11.209 chociaż pięć do sześciu bitów było bardziej typowe, 209 00:11:11.209 --> 00:11:13.876 szczególnie jeśli było to nagranie zrobione na magnetofonie. 210 00:11:13.876 --> 00:11:19.422 Tak jest... twoje mikstejpy miały tylko około sześciu bitów głębi... jesli miałeś szczęście! 211 00:11:19.837 --> 00:11:22.345 Najlepsze profesjonalne otwarte magnetofony szpulowe 212 00:11:22.345 --> 00:11:24.553 używane w studiach ledwo potrafiły osiągnąć... 213 00:11:24.553 --> 00:11:26.473 jakieś pomysły?... 214 00:11:26.473 --> 00:11:27.604 13 bitów 215 00:11:27.604 --> 00:11:28.980 z zaawansowaną redukcją szumów. 216 00:11:28.980 --> 00:11:32.062 I dlatego właśnie zobaczyć 'DDD' na płycie kompaktowej 217 00:11:32.062 --> 00:11:35.208 było taką wielką, high-endową rzeczą. 218 00:11:40.116 --> 00:11:42.825 Powtarzam wciąż, że kwantyzuję z ditherem, 219 00:11:42.825 --> 00:11:44.734 więc czym dokładnie jest dither? 220 00:11:44.734 --> 00:11:47.284 I co ważniejsze - co on robi? 221 00:11:47.284 --> 00:11:49.876 Prostą drogą by skwantyzować sygnał jest wybranie 222 00:11:49.876 --> 00:11:52.329 cyfrowej wartości amplitudy najbliższej 223 00:11:52.329 --> 00:11:54.377 do oryginalnej analogowej amplitudy. 224 00:11:54.377 --> 00:11:55.337 Oczywiste, prawda? 225 00:11:55.337 --> 00:11:57.545 Niestety, ścisły szum jaki otrzymasz 226 00:11:57.545 --> 00:11:59.220 z tego prostego schematu kwantyzacji 227 00:11:59.220 --> 00:12:02.174 opiera się w pewien sposób na sygnale wejściowym, 228 00:12:02.174 --> 00:12:04.596 więc możemy otrzymać szum, który jest niespójny, 229 00:12:04.596 --> 00:12:06.142 lub powoduje zniekształcenia, 230 00:12:06.142 --> 00:12:09.054 lub jest niepożądany z innych przyczyn. 231 00:12:09.054 --> 00:12:11.764 Dither jest specjalnie skonstruowanym szumem, który 232 00:12:11.764 --> 00:12:15.273 zastępuje szum powstający przy prostej kwantyzacji. 233 00:12:15.273 --> 00:12:18.025 Dither nie zagłusza czy maskuje szumu kwantyzacji, 234 00:12:18.025 --> 00:12:20.190 on faktycznie go zastępuje 235 00:12:20.190 --> 00:12:22.612 taką charakterystyką szumu jaką sobie wybierzemy, 236 00:12:22.612 --> 00:12:24.794 która nie jest zależna od wejścia. 237 00:12:25.256 --> 00:12:27.081 Zobaczmy co robi dither. 238 00:12:27.081 --> 00:12:30.078 Generator sygnału ma za dużo szumu do tego testu 239 00:12:30.431 --> 00:12:33.161 więc wytworzymy matematycznie 240 00:12:33.161 --> 00:12:34.782 doskonałą falę sinusoidalną za pomocą ThinkPada 241 00:12:34.782 --> 00:12:38.205 i skwantyzujemy ją do ośmiu bitów z ditherem. 242 00:12:39.006 --> 00:12:41.342 Widzimy ładną sinusoidę na wyświetlaczu przebiegu fali 243 00:12:41.342 --> 00:12:43.452 i na oscyloskopie wyjściowym 244 00:12:44.222 --> 00:12:44.972 oraz... 245 00:12:46.588 --> 00:12:49.375 gdy analogowy analizator widma dogoni resztę... 246 00:12:50.713 --> 00:12:53.588 czysty szczyt częstotliwości z jednolitym szumem tła 247 00:12:56.864 --> 00:12:58.611 na obu wyświetlaczach widma 248 00:12:58.611 --> 00:12:59.646 dokładnie jak poprzednio. 249 00:12:59.646 --> 00:13:01.549 Jeszcze raz, to jest z ditherem. 250 00:13:02.196 --> 00:13:04.225 Teraz, wyłączam dither. 251 00:13:05.779 --> 00:13:07.913 Szum kwantyzacji, który dither rozłożył 252 00:13:07.913 --> 00:13:09.577 na ładny, płaski szum tła, 253 00:13:09.577 --> 00:13:12.286 spiętrza się w szczyty zniekształceń harmonicznych 254 00:13:12.286 --> 00:13:16.030 Szum tła jest cichszy, ale poziom zniekształceń staje się niezerowy, 255 00:13:16.030 --> 00:13:19.668 a szczyty zniekształcenia są wyżej niż sięgał szum dithera. 256 00:13:19.668 --> 00:13:22.318 Przy ośmiu bitach ten efekt jest przesadzony. 257 00:13:22.488 --> 00:13:24.200 Przy szesnastu bitach, 258 00:13:24.692 --> 00:13:25.929 nawet bez dithera, 259 00:13:25.929 --> 00:13:28.308 zniekształcenia harmoniczne będą tak nisko, 260 00:13:28.308 --> 00:13:30.708 że będą kompletnie niesłyszalne. 261 00:13:30.708 --> 00:13:34.581 Możemy jednak wciąż użyć dithera by wyeliminować je całkowicie 262 00:13:34.581 --> 00:13:36.489 jeśli tak zdecydujemy. 263 00:13:37.642 --> 00:13:39.273 Wyłączę dither jeszcze na moment, 264 00:13:40.934 --> 00:13:43.444 zauważ, że absolutny poziom zniekształceń 265 00:13:43.444 --> 00:13:47.070 z nieditherowanej kwantyzacji pozostaje w przybliżeniu niezmienny 266 00:13:47.070 --> 00:13:49.033 niezależnie od amplitudy na wejściu. 267 00:13:49.033 --> 00:13:51.998 Jednak gdy poziom sygnału spadnie poniżej pół bita, 268 00:13:51.998 --> 00:13:54.036 wszystko kwantyzuje się do zera. 269 00:13:54.036 --> 00:13:54.910 Poniekąd, 270 00:13:54.910 --> 00:13:58.557 wszystko kwantyzowane do zera jest po prostu 100% zniekształceniem! 271 00:13:58.833 --> 00:14:01.588 Dither eliminuje również i to zniekształcenie. 272 00:14:01.588 --> 00:14:03.599 Na powrót włączamy dither i... 273 00:14:03.599 --> 00:14:06.377 oto wrócił nasz sygnał na 1/4 bita, 274 00:14:06.377 --> 00:14:09.076 z ładnym, płaskim szumem bazowym. 275 00:14:09.630 --> 00:14:11.220 Szum nie musi być płaski. 276 00:14:11.220 --> 00:14:12.798 Dither jest szumem jaki sobie wybierzemy, 277 00:14:12.798 --> 00:14:15.006 więc wybierzmy szum tak subtelny 278 00:14:15.006 --> 00:14:17.017 i trudny do zauważenia, jak to tylko możliwe. 279 00:14:18.142 --> 00:14:22.484 Nasz słuch jest najczulszy w średnicy od 2kHz do 4kHz, 280 00:14:22.484 --> 00:14:25.438 więc to tam szum tła będzie najbardziej oczywisty. 281 00:14:25.438 --> 00:14:29.406 Możemy ukształtować szum kwantyzacji tak, by omijał drażliwe częstotliwości 282 00:14:29.406 --> 00:14:31.241 skupiając swoją energię tam, gdzie słuch jest mniej wrażliwy, 283 00:14:31.241 --> 00:14:33.910 zazwyczaj w najwyższych częstotliwościach. 284 00:14:34.249 --> 00:14:37.460 16-bitowy szum ditheringu jest normalnie o wiele za cichy by go usłyszeć. 285 00:14:37.460 --> 00:14:39.668 ale posłuchajmy naszego przykładu z kształtowaniem szumu, 286 00:14:39.668 --> 00:14:42.234 ponownie ze wzmocnieniem podniesionym mocno w górę... 287 00:14:56.020 --> 00:14:59.977 W końcu, ditherowany szum kwantyzacji ma ogólnie większą moc 288 00:14:59.977 --> 00:15:04.276 niż nieditherowany szum kwantyzacji, nawet wtedy gdy brzmi ciszej. 289 00:15:04.276 --> 00:15:07.902 Możesz to dostrzec na mierniku VU podczas momentów niemal całkowitej ciszy. 290 00:15:07.902 --> 00:15:10.537 Ale dither nie jest tylko opcją włącz lub wyłącz. 291 00:15:10.537 --> 00:15:14.712 Możemy obniżyć moc dithera by zbalansować mniejszą ilość szumu na rzecz 292 00:15:14.712 --> 00:15:18.313 odrobiny zniekształceń by zminimalizować ogólny efekt. 293 00:15:19.605 --> 00:15:22.790 Dodatkowo zmodulujemy sygnał wejściowy w ten sposób: 294 00:15:27.098 --> 00:15:30.206 ...by pokazać jak zmiany na wejściu wpływają na szum kwantyzacji. 295 00:15:30.206 --> 00:15:33.289 Przy pełnej mocy ditheringu, szum jest jednolity, stały, 296 00:15:33.289 --> 00:15:35.643 i bez charakteru dokłanie według przewidywań: 297 00:15:40.937 --> 00:15:42.772 W miarę jak zmniejszamy moc ditheringu, 298 00:15:42.772 --> 00:15:46.356 wzrasta zależność między wejściem a amplitudą i charakterem 299 00:15:46.356 --> 00:15:47.977 szumu kwantyzacji: 300 00:16:09.883 --> 00:16:13.844 Kształtowany dither zachowuje się podobnie, 301 00:16:13.844 --> 00:16:16.553 ale kształtowanie szumu daje jedną niezłą przewagę. 302 00:16:16.553 --> 00:16:18.804 Mówiąc krótko, może korzystać 303 00:16:18.804 --> 00:16:20.937 z niejako mniejszej mocy dithera przed wejściem 304 00:16:20.937 --> 00:16:23.662 mając taki sam effect na wyjściu. 305 00:16:49.172 --> 00:16:51.508 Pomimo całego czasu jaki właśnie poświęciłem ditherowi, 306 00:16:51.508 --> 00:16:53.012 mówimy o różnicach 307 00:16:53.012 --> 00:16:56.372 które zaczynają się 100 decybeli poniżej pełnej skali. 308 00:16:56.372 --> 00:16:59.806 Może jeśli CD byłby 14-bitowy jak oryginalnie go zaprojektowano, 309 00:16:59.806 --> 00:17:01.513 dither mógłby być bardziej znaczący. 310 00:17:01.989 --> 00:17:02.644 Może. 311 00:17:02.644 --> 00:17:05.438 Przy 16 bitach, naprawdę, to w większości strata czasu. 312 00:17:05.438 --> 00:17:08.019 Możesz myśleć o ditherze jako o polisie ubezpieczeniowej 313 00:17:08.019 --> 00:17:11.443 która daje ci kika dodatkowych decybeli zakresu dynamiki 314 00:17:11.443 --> 00:17:12.804 na wszelki wypadek. 315 00:17:12.990 --> 00:17:14.196 Prostym faktem jest, jednak 316 00:17:14.196 --> 00:17:16.361 że nikt nigdy nie zrujnował świetnego nagrania 317 00:17:16.361 --> 00:17:19.182 nie ditherując ostatecznego mastera. 318 00:17:24.414 --> 00:17:25.790 Używaliśmy fal sinusoidalnych. 319 00:17:25.790 --> 00:17:28.254 Są one oczywistym wyborem, gdy chcemy obserwować 320 00:17:28.254 --> 00:17:32.212 zachowanie systemu dla danej wyizolowanej częstotliwości. 321 00:17:32.212 --> 00:17:34.217 Teraz rzućmy okiem na coś nieco bardziej złożonego. 322 00:17:34.217 --> 00:17:35.923 Czego powinniśmy się spodziewać 323 00:17:35.923 --> 00:17:39.671 gdy zmienię wejście na falę prostokątną... 324 00:17:42.718 --> 00:17:45.921 Oscyloskop na wejściu potwierdza naszą falę prostokątną 1kHz. 325 00:17:45.921 --> 00:17:47.351 Wyjściowy oscyloskop pokazuje... 326 00:17:48.614 --> 00:17:51.102 Dokładnie to co powinien. 327 00:17:51.102 --> 00:17:53.900 Czym w rzeczywistości jest fala prostokątna? 328 00:17:54.654 --> 00:17:57.982 Cóż, możemy powiedzieć, że jest to przebieg, który ma pewną pozytywną wartość 329 00:17:57.982 --> 00:18:00.788 przez pół cyklu a następnie przechodzi natychmiastowo 330 00:18:00.788 --> 00:18:02.910 do negatywnej wartości na kolejne poł. 331 00:18:02.910 --> 00:18:05.076 Ale to właściwie nie mówi nam nic użytecznego 332 00:18:05.076 --> 00:18:07.241 na temat tego, jak z tego wejścia, 333 00:18:07.241 --> 00:18:09.378 otrzymujemy to wyjście. 334 00:18:10.132 --> 00:18:12.713 Pamiętamy też, że każdy przebieg 335 00:18:12.713 --> 00:18:15.508 jest również sumą dyskretnych częstotliwości, 336 00:18:15.508 --> 00:18:18.302 i fala prostokątna jest szczególnie prostą sumą 337 00:18:18.302 --> 00:18:19.636 fundamentalnej oraz 338 00:18:19.636 --> 00:18:22.228 nieskończonego szeregu nieparzystych harmonicznych 339 00:18:22.228 --> 00:18:24.597 Dodaj je wszystkie, a otrzymasz falę prostokątną. 340 00:18:26.398 --> 00:18:27.433 Na pierwszy rzut oka, 341 00:18:27.433 --> 00:18:29.225 to nie wydaje się być ani trochę bardziej użyteczne 342 00:18:29.225 --> 00:18:31.561 Musisz zsumować nieskończoną liczbę harmonicznych 343 00:18:31.561 --> 00:18:33.108 by otrzymać wynik. 344 00:18:33.108 --> 00:18:35.977 Ach, ale nie posiadamy nieskończonej liczby harmonicznych. 345 00:18:36.960 --> 00:18:39.902 Używamy całkiem ostrego filtra antyaliasingowego 346 00:18:39.902 --> 00:18:42.206 który odcina tuż powyżej 20kHz 347 00:18:42.206 --> 00:18:44.158 więc nasz sygnał jest ograniczony pasmowo, 348 00:18:44.158 --> 00:18:46.421 co oznacza, że otrzymamy to: 349 00:18:52.500 --> 00:18:56.468 ...i to jest dokładnie to, co widzimy na oscyloskopie wyjściowym. 350 00:18:56.468 --> 00:18:59.550 Falowanie które widzisz w okolicach ostrych krawędzi w sygnale ograniczonym pasmowo 351 00:18:59.550 --> 00:19:00.926 jest nazywane efektem Gibbsa 352 00:19:00.926 --> 00:19:04.137 i następuje zawsze gdy odetniesz część domeny częstotliwości 353 00:19:04.137 --> 00:19:07.006 w środku niezerowej energi. 354 00:19:07.006 --> 00:19:09.854 Generalną zasadą którą usłyszysz jest, że im ostrzejsze cięcie, 355 00:19:09.854 --> 00:19:11.188 tym mocniejsze falowanie, 356 00:19:11.188 --> 00:19:12.777 co w przybliżeniu jest prawdą 357 00:19:12.777 --> 00:19:14.900 ale musimy być ostrożni w jaki sposób o tym myślimy. 358 00:19:14.900 --> 00:19:15.774 Na przykład... 359 00:19:15.774 --> 00:19:19.529 jak sądzisz, co zrobi nasz dość ostry filtr antyaliasingowy 360 00:19:19.529 --> 00:19:23.181 jeśli przepuszczę przez niego nasz sygnał drugi raz? 361 00:19:34.136 --> 00:19:37.588 Pomijając dodanie kilku drobnych cykli opóźnienia, 362 00:19:37.588 --> 00:19:39.348 odpowiedź brzmi... 363 00:19:39.348 --> 00:19:40.857 absolutnie nic. 364 00:19:41.257 --> 00:19:43.302 Sygnał jest już ograniczony w paśmie. 365 00:19:43.656 --> 00:19:46.590 Ponowne ograniczanie go w paśmie niczego nie zmienia. 366 00:19:46.590 --> 00:19:50.686 Drugi przebieg nie może usunąć częstotliwości, które są już usunięte. 367 00:19:52.070 --> 00:19:53.737 I to jest ważne. 368 00:19:53.737 --> 00:19:56.233 Ludzie nierzadko myślą, że falowania są rodzajem artefaktu 369 00:19:56.233 --> 00:19:59.945 który jest dodawany przez filtry antyaliasingowe i rekonstrukcyjne, 370 00:19:59.945 --> 00:20:01.737 zakładając, że falowanie się pogorszy 371 00:20:01.737 --> 00:20:03.913 za każdym razem gdy sygnał przejdzie przez filtr. 372 00:20:03.913 --> 00:20:05.950 Możemy zobaczyć, że w tym przypadku nie miało to miejsca. 373 00:20:05.950 --> 00:20:09.492 Czy więc naprawdę to filtr dodał falowanie przy pierwszym przejściu? 374 00:20:09.492 --> 00:20:10.537 Nie, nie bardzo. 375 00:20:10.537 --> 00:20:12.126 To subtelne rozróżnienie, 376 00:20:12.126 --> 00:20:15.252 ale falowania efektu Gibbsa nie są dodawane przez filtry, 377 00:20:15.252 --> 00:20:18.836 są one po prostu częścią tego, czym ograniczone pasmowo sygnały . 378 00:20:18.836 --> 00:20:20.798 Nawet, gdy syntetycznie skonstruujemy 379 00:20:20.798 --> 00:20:23.508 coś, co wygląda jak doskonała cyfrowa fala prostokątna, 380 00:20:23.508 --> 00:20:26.206 ona wciąż jest ograniczona do szerokości pasma kanału. 381 00:20:26.206 --> 00:20:29.140 Pamiętaj, że schodkowa reprezentacja jest myląca. 382 00:20:29.140 --> 00:20:32.222 Co naprawdę tu mamy, to chwilowe punkty próbek 383 00:20:32.222 --> 00:20:36.148 i tylko jeden ograniczony pasmowo sygnał pasuje do tych punktów. 384 00:20:36.148 --> 00:20:39.614 Wszystko co zrobiliśmy, gdy narysowaliśmy naszą pozornie doskonałą falę prostokątną, 385 00:20:39.614 --> 00:20:43.198 to ułożyliśmy punkty próbek w taki sposób, że wyglądały 386 00:20:43.198 --> 00:20:47.785 jakby nie było falowania, jeśli zagramy w "połącz kropki". 387 00:20:47.785 --> 00:20:49.449 Ale oryginalny, ograniczony w paśmie sygnał 388 00:20:49.449 --> 00:20:52.742 razem z falowaniem, był tam nadal. 389 00:20:54.004 --> 00:20:56.542 I to prowadzi nas do jeszcze jednego ważnego wniosku. 390 00:20:56.542 --> 00:20:59.550 Prawdopodobnie słyszałeś o tym, że precyzja synchronizacji cyfrowego sygnału 391 00:20:59.550 --> 00:21:02.409 jest ograniczona jego częstotliwością próbkowania; innymi słowy, 392 00:21:02.409 --> 00:21:05.140 że cyfrowe sygnały nie mogą odwzorować tego 393 00:21:05.140 --> 00:21:08.041 co znajduje się pomiędzy próbkami... 394 00:21:08.041 --> 00:21:11.422 zakładając, że impulsy czy szybkie ataki muszą się dopasować 395 00:21:11.422 --> 00:21:14.473 dokładnie do próbki, albo synchronizacja się rozjeżdża... 396 00:21:14.473 --> 00:21:16.219 albo po prostu znikają. 397 00:21:16.711 --> 00:21:20.820 Na tym etapie, możemy z łatwością zobaczyć, dlaczego jest to błędne. 398 00:21:20.820 --> 00:21:23.742 Znowu, nasz sygnał jest ograniczony w paśmie. 399 00:21:23.742 --> 00:21:26.036 Każdy cyfrowy sygnał to próbki, 400 00:21:26.036 --> 00:21:29.340 nie schodki, nie "połącz kropki". 401 00:21:31.572 --> 00:21:34.592 Z całą pewnością możemy, dla przykładu, 402 00:21:36.777 --> 00:21:39.337 umieścić wznoszącą się krawędź naszej ograniczonej pasmowo fali prostokątnej, 403 00:21:39.337 --> 00:21:42.004 gdzie nam się tylko podoba pomiędzy próbkami. 404 00:21:42.004 --> 00:21:44.354 Jest to doskonale odwzorowane 405 00:21:47.508 --> 00:21:50.218 i doskonale zrekonstruowane. 406 00:22:04.620 --> 00:22:06.526 Tak samo jak w poprzednim odcinku, 407 00:22:06.526 --> 00:22:08.393 zajęliśmy się szeroką gamą tematów 408 00:22:08.393 --> 00:22:10.868 i nadal ledwie musnęliśmy każdy z nich. 409 00:22:10.868 --> 00:22:13.620 Jeśli cokolwiek, moje grzechy zaniedbania są większe tym razem... 410 00:22:13.620 --> 00:22:16.286 ale to dobry punkt zatrzymania. 411 00:22:16.286 --> 00:22:17.833 A może, dobry punkt startowy? 412 00:22:17.833 --> 00:22:18.708 Kop głębiej. 413 00:22:18.708 --> 00:22:19.710 Eksperymentuj. 414 00:22:19.710 --> 00:22:21.374 Wybrałem moje dema bardzo starannie, 415 00:22:21.374 --> 00:22:23.668 by były proste i dawały jasne rezultaty. 416 00:22:23.668 --> 00:22:26.217 Możesz odtworzyć każdy z nich na własną rękę, jeśli chcesz. 417 00:22:26.217 --> 00:22:28.766 Ale powiedzmy sobie szczerze, czasem uczymy się najwięcej 418 00:22:28.766 --> 00:22:30.516 na temat przedniej zabawki rozpruwając ją 419 00:22:30.516 --> 00:22:32.553 i badając wszystke części które wypadną ze środka. 420 00:22:32.553 --> 00:22:35.230 To w porządku, jesteśmy inżynierami. 421 00:22:35.230 --> 00:22:36.350 Pokombinuj z parametrami dem, 422 00:22:36.350 --> 00:22:37.972 zhackuj kod, 423 00:22:37.972 --> 00:22:39.774 urządź alternatywne eksperymenty. 424 00:22:39.774 --> 00:22:40.692 Kod źródłowy do wszystkiego, 425 00:22:40.692 --> 00:22:42.398 włączając małą aplikację demo z przyciskami, 426 00:22:42.398 --> 00:22:44.361 jest dostępny na Xiph.Org. 427 00:22:44.361 --> 00:22:45.940 W toku eksperymentów, 428 00:22:45.940 --> 00:22:47.401 prawdopodobnie spotkasz się z czymś, 429 00:22:47.401 --> 00:22:49.950 czego się nie spodziewałeś i nie potrafisz wyjaśnić. 430 00:22:49.950 --> 00:22:51.198 Nie przejmuj się! 431 00:22:51.198 --> 00:22:54.537 Pomijając moją poprzednią sarkastyczną uwagę - Wikipedia jest fantastyczna do 432 00:22:54.537 --> 00:22:56.788 właśnie takiego rodzaju niezobowiązujących badań. 433 00:22:56.788 --> 00:22:59.956 Jeśli na poważnie chcesz zrozumieć sygnały, 434 00:22:59.956 --> 00:23:03.337 kilka uniwersytetów udostępnia zaawansowane materiały w sieci. 435 00:23:03.337 --> 00:23:07.380 takie jak moduły 6.003 oraz 6.007 Sygnałów i Systemów 436 00:23:07.380 --> 00:23:08.798 w OpenCourseWare MIT. 437 00:23:08.798 --> 00:23:11.593 I czywiście, zawsze jest społeszność tutaj na Xiph.Org. 438 00:23:12.792 --> 00:23:13.929 Kopiąc głębiej czy nie, 439 00:23:13.929 --> 00:23:14.974 skończyła mi się kawa, 440 00:23:14.974 --> 00:23:16.436 więc, do następnego razu, 441 00:23:16.436 --> 00:23:19.316 udanego hackowania! 442 00:23:17.000 --> 00:23:20.000 Przetłumaczył z angielskiego: unfa <unfa@unfamusic.com>