Aby celowo uzyskać aliasing na Macu, użyj efektu Bitcrusher w Logic Pro na wygenerowanym tonie. Apple opisuje wprost sztuczny aliasing uzyskiwany przez dzielenie częstotliwości próbkowania, co czyni tę metodę obsługiwaną alternatywą, gdy resampling w Audacity usuwa częstotliwości, które chcesz zawinąć z powrotem do niższego pasma. Dokumentacja Bitcrushera.

Ten poradnik jest przeznaczony dla użytkownika Audacity, który chce wygenerować ton syntetyczny, celowo uzyskać zawijanie częstotliwości i zapisać wynik do dalszej edycji. Wymaga Logic Pro na Maca. Poniższe ustawienia to przykładowy eksperyment oparty na oficjalnej dokumentacji; przewidywane częstotliwości to obliczenia, a nie wyniki testów odsłuchowych.

Dlaczego zmiana częstotliwości próbkowania w Audacity daje inne wyniki

Aliasing występuje, gdy proces próbkowania napotyka częstotliwości wykraczające poza zakres, który można przedstawić. Częstotliwość Nyquista stanowi połowę częstotliwości próbkowania. Filtr antyaliasingowy usuwa częstotliwości, które w przeciwnym razie zawinęłyby się do niższego pasma, dlatego prawidłowo filtrowana konwersja może wyeliminować właśnie ten materiał, który chcesz przekształcić w efekt. Podstawy cyfrowego audio w Audacity.

Audacity rozróżnia też zmianę częstotliwości ścieżki od resamplingu jej dźwięku. Dokumentacja menu ścieżki wyjaśnia, że zmiana Rate rozsuwa istniejące próbki lub je ściska, zmieniając czas trwania i wysokość dźwięku. Tracks > Resample zmienia liczbę próbek, zachowując czas trwania i szybkość odtwarzania. Żadna z tych operacji nie jest tam opisana jako celowy efekt aliasingu. Menu rozwijane ścieżki audio.

Ustawienia jakości konwertera służą innemu celowi: regulują jakość konwersji podczas odtwarzania oraz renderowania lub eksportowania. Nie opisują przełącznika wyłączającego filtrację antyaliasingową. Obniżenie ustawienia jakości nie zapewnia więc udokumentowanego, przewidywalnego sposobu wykonania tego zadania. Zamiast tego użyj procesora zaprojektowanego specjalnie do generowania aliasingu. Ustawienia jakości.

Wygeneruj kontrolowany ton sinusoidalny w Logic Pro

Zacznij od jednej fali sinusoidalnej, aby eksperyment miał pojedynczą częstotliwość wejściową. Złożony przebieg wprowadziłby więcej składowych do śledzenia.

Skonfiguruj projekt i kanał

W nowym projekcie Logic wybierz File > Project Settings > Audio i ustaw Sample Rate na 48 kHz. Zachowaj tę częstotliwość projektu przez cały eksperyment. Apple opisuje to ustawienie niezależnie od przetwarzania efektów i odradza jego zmianę po dodaniu plików audio. Ustawianie częstotliwości próbkowania projektu.

Utwórz ścieżkę audio za pomocą skrótu Option-Command-N, wybierz Audio, a następnie Mic or Line. Odznacz Load Default Patch, aby rozpocząć bez efektów, pozostaw Input Monitoring i Record Enable wyłączone, wybierz główne wyjście stereo i kliknij Create. Sygnał zostanie wygenerowany wewnętrznie. Tworzenie ścieżek w projekcie Logic Pro na Maca.

Dodaj generator

Kliknij puste pole Audio Effect na pasku kanału ścieżki i wybierz Utility > Test Oscillator. Wybierz Test Tone, wybierz przebieg sinusoidalny, kliknij dwukrotnie Frequency i wpisz 7000, aby uzyskać ton o częstotliwości 7,000 Hz. Ustaw Level na przykładową wartość początkową −18 dB. Apple opisuje bezpośrednie wpisywanie częstotliwości w zakresie od 1 Hz do 22 kHz. Dokumentacja Test Oscillator.

Generator uruchamia się natychmiast w trybie Test Tone; do wygenerowania sygnału nie jest potrzebna nuta MIDI ani nagrany region. Obejście Test Oscillator zatrzymuje generowanie tonu. Oznacza to również, że zatrzymanie transportu nie jest udokumentowanym sposobem wyłączenia generatora. Dokumentacja Test Oscillator.

Zastosuj redukcję częstotliwości próbkowania, która celowo tworzy aliasing

W kolejnym pustym polu efektu wybierz Distortion > Bitcrusher. Umieść go pod Test Oscillator, aby generator przekazywał sygnał do procesora. Efekty wstawiane w Logic działają szeregowo, przekazując wyjście jednego procesora do następnego. Bitcrusher; Prowadzenie sygnału audio przez efekty wstawiane.

Użyj tych ustawień początkowych, aby skupić się na redukcji częstotliwości próbkowania:

Parametr Ustawienie początkowe Cel
Drive 0 dB Uniknięcie dodatkowego wzmocnienia sygnału wejściowego
Resolution 24 bits Ograniczenie zniekształceń związanych z głębią bitową
Clip Level 0 dB Utrzymanie wybranego tonu poniżej progu przesterowania
Mix 100% Odsłuch samego przetworzonego sygnału
Downsampling Zacznij od 1x, a następnie wybierz 8x Porównanie ustawienia bazowego z redukcją częstotliwości

Są to proponowane ustawienia eksperymentu oparte na parametrach opisanych przez Apple. Parametry Bitcrushera.

Apple definiuje 1x jako brak zmian, 2x jako połowę pierwotnej częstotliwości próbkowania, a wyższe wartości jako dalsze podziały. Stwierdzenie, że downsampling nie zmienia szybkości odtwarzania ani wysokości dźwięku, oznacza brak operacji zmieniającej szybkość; efekt nadal celowo tworzy aliasowane składowe częstotliwościowe. Dokumentacja Bitcrushera.

Przewidź zawijanie częstotliwości przed zmianą ustawień

W przykładowym projekcie o częstotliwości 48,000 Hz podzielenie jej przez osiem daje efektywną częstotliwość próbkowania 6,000 Hz i granicę Nyquista na poziomie 3,000 Hz. Wejściowa częstotliwość 7,000 Hz przekracza tę granicę. Przy idealnym, niefiltrowanym próbkowaniu odpowiadający jej alias w paśmie podstawowym ma częstotliwość 1,000 Hz: odejmij jedną efektywną częstotliwość próbkowania, uzyskując 7000 − 6000 = 1000. To zastosowanie granicy próbkowania opisanej w dokumentacji podstaw Audacity.

Te same obliczenia dają użyteczną mapę ustawień:

Współczynnik downsamplingu Efektywna częstotliwość Granica Nyquista Idealna częstotliwość w paśmie podstawowym dla sygnału wejściowego 7,000 Hz
1x 48,000 Hz 24,000 Hz 7,000 Hz
2x 24,000 Hz 12,000 Hz 7,000 Hz
4x 12,000 Hz 6,000 Hz 5,000 Hz
8x 6,000 Hz 3,000 Hz 1,000 Hz
10x 4,800 Hz 2,400 Hz 2,200 Hz

Są to obliczone przewidywania dla idealnego próbkowania, a nie specyfikacja wszystkich składowych widma ani ich amplitud w implementacji Apple. W przypadku 4x sygnał wejściowy przekracza granicę 6,000 Hz o 1,000 Hz, więc odbija się do 5,000 Hz. W przypadku 10x odjęcie 4,800 Hz daje 2,200 Hz, czyli wartość poniżej nowej granicy.

Praktyczna zasada jest taka: wybierz częstotliwość źródła wyższą od efektywnej granicy Nyquista procesora, ale niższą od pierwotnej granicy projektu. Tutaj 7,000 Hz jest poniżej granicy 24,000 Hz projektu, ale powyżej granicy 3,000 Hz przy 8x. Dzięki temu można oddzielić generowanie sygnału źródłowego od późniejszej operacji aliasingu.

Podczas zmiany współczynnika utrzymuj stałą częstotliwość źródła. W przeciwnym razie zmienią się jednocześnie dwie wartości, przez co trudniej będzie zinterpretować wynik. Tabela pokazuje też, dlaczego zwiększanie współczynnika redukcji nie musi powodować stałego obniżania się aliasu: zawijanie zależy od relacji między tonem a efektywną częstotliwością próbkowania.

Zapisz efekt i sprawdź go w Audacity

Wybierz File > Bounce > Project or Section. Ustaw jawny, krótki zakres za pomocą pól Start i End; nie polegaj na braku nagranych regionów przy określaniu czasu trwania. W tym eksperymencie wybierz Realtime, ustaw Normalize na Off i odznacz Include Audio Tail. Apple wyraźnie ostrzega, że testowy oscylator może sprawić, że bounce będzie nadmiernie długi, jeśli włączono uwzględnianie wybrzmienia. Eksportowanie projektu do pliku audio.

W bieżących opcjach bounce wybierz Uncompressed, wybierz WAVE, ustaw Sample Rate na 48 kHz, wybierz głębię 24-bit i użyj opcji Interleaved, aby uzyskać pojedynczy plik stereo. Są to ustawienia pliku wyjściowego; zachowaj częstotliwość próbkowania projektu używaną w obliczeniach. Opcje bounce bez kompresji.

Zapisz jeden plik bazowy z pominiętym Bitcrusherem i drugi z włączonym proponowanym przetwarzaniem. W Logic można pominąć wtyczkę z jej pola lub z nagłówka okna wtyczki, a bounce projektu uwzględnia aktywne efekty. Użyj odrębnych nazw plików, aby zachować obie wersje. Dodawanie, usuwanie, przenoszenie i kopiowanie wtyczek; Bounce projektu.

Otwórz każdy plik w Audacity, zaznacz stabilny fragment z dala od jego granic i wybierz Analyze > Plot Spectrum. Użyj algorytmu Spectrum i tych samych ustawień dla obu plików. Większa wartość Size poprawia rozdzielczość częstotliwościową; jeśli Audacity zgłosi, że zaznaczony fragment jest za krótki, zaznacz więcej dźwięku albo zmniejsz tę wartość. Wykres widma.

Potraktuj obliczoną tabelę jako hipotezę: porównaj szczyt częstotliwości wejściowej w pliku bazowym z zawartością o niższych częstotliwościach w przetworzonym pliku. Dodatkowe szczyty nie oznaczają automatycznie, że eksperyment się nie powiódł, ponieważ tabela przewiduje idealne położenie w paśmie podstawowym, a nie pełny sygnał wyjściowy procesora. Porównanie widm jest bardziej miarodajne niż ocenianie aliasingu wyłącznie na podstawie wyglądu przebiegu.

Co sprawdzić, gdy wynik jest niejasny

Zanim wypróbujesz bardziej skrajne ustawienia, sprawdź cały tor sygnału:

  • Upewnij się, że Test Oscillator generuje ton bazowy, gdy procesor jest pominięty.
  • Upewnij się, że generator znajduje się przed procesorem. W razie potrzeby przeciągnij wtyczki między polami.
  • Pomiń tylko procesor na potrzeby porównania; pominięcie generatora usuwa źródło sygnału.
  • Upewnij się, że oba pliki mają ten sam zakres bounce i częstotliwość próbkowania wyjścia.

Logic opisuje przenoszenie i pomijanie efektów w instrukcjach zarządzania wtyczkami.

W osobnym eksperymencie z generowaniem przebiegu pomiń procesor, wybierz Square Wave w Test Oscillator i wyłącz Anti Aliased. Apple wyraźnie udostępnia aliasowane i antyaliasowane wersje Square Wave oraz Needle Pulse. Ten przełącznik dotyczy tych przebiegów; nie jest opisany jako ogólny przełącznik antyaliasingu dla generowania sinusoidy ani resamplingu projektu. Dokumentacja Test Oscillator.

Użyj schematu sinusoidy przepuszczonej przez procesor, gdy chcesz kontrolować obliczenia zawijania częstotliwości i wyeksportować efekt. Użyj opcji przebiegu oscylatora, gdy chcesz bezpośrednio badać generowanie aliasowanych przebiegów. W obu przypadkach zachowaj plik bazowy i ustawienia razem z wyrenderowanym plikiem, aby można było odtworzyć wynik i dalej go edytować.

Źródła