sobota , 21 grudzień 2024

Limon v1.1/Tropyx – opis programu

Opis programu oraz kilka podstawowych zdań o samplowaniu

Co to jest i z czym to się je?

Limon v1.1 to druga odsłona programu do konwersji 8-bitowych sampli do 4-bitowego formatu, którego autorem jest Data/De-Koder/Tropyx. Użytek ten pozwala zaoszczędzić trochę wolnej pamięci w Commodore 64 w przypadku, gdy w naszej produkcji chcemy wykorzystać jakiś sampling. Zanim jednak przejdę do charakterystyki programu, chciałbym przedstawić w skrócie samą ideę.

Garść teorii na temat samplingu

Sampling to nic innego, jak próbkowanie. Tak! Na pierwszy rzut oka pojęcie próbkowania, dla nieobeznanego w temacie czytelnika, może niewiele mówić, lecz już spieszę z wyjaśnieniami. Jest to procedura zapisu sygnału analogowego do postaci cyfrowej, w której co określoną jednostkę czasu (zależną od częstotliwości samplowania), pobierana jest próbka dźwięku i zamieniana na ciąg cyferek. Łatwo się domyślić, że im częściej urządzenie samplujące (zwane potocznie samplerem) będzie pobierało dane do konwersji, tym jakość pliku wyjściowego będzie lepsza. Szczegółowy przebieg próbkowania można odnaleźć w literaturze z zakresu konwersji A/C.

Dawno, dawno temu, na rynku dostępne były samplery do Commodore 64, które po wetknięciu do User Portu, dawały możliwość samplowania analogowego dźwięku, bezpośrednio np. z magnetofonu, walkmana, odtwarzacza CD itp. Była to niezwykle trudna sztuka, zwłaszcza ze względu na ograniczone możliwości późniejszej obróbki. Przez co wiele utworów muzycznych na C64 było zwyczajnie niedoskonałych, nierówno uciętych i źle poskładanych w całość, rażąc przede wszystkim swoim poziomem osoby obdarzone wyostrzonym słuchem muzycznym.

Wraz z rozwojem multiplatformowego oprogramowania, umożliwiającego łatwą edycję dźwięku cyfrowego, analogowe samplery straciły na swojej pierwotnej wartości. Muzycy przenieśli się do świata sztucznego samplingu, polegającego na wycinaniu motywów dźwiękowych z gotowych utworów, odszukanych wcześniej na konkretnych wydawnictwach muzycznych. Z biegiem czasu technika ta stała się tak popularna, że zaczęło dochodzić do sytuacji, w której dany wykonawca wypuszczał na rynek swoją płytę, przepełnioną głównie samplami wyciętymi z mniej, lub bardziej znanych kompozycji muzycznych. Takie posunięcia do dziś wywołują fale dyskusji i kontrowersji, muzyków nierzadko nazywa się złodziejami, a oni sami bronią się stwierdzając, że dokonują jedynie „edycji” sampli i na ich bazie tworzą własne kompozycje.

Amplituda przykładowego sampla stereo

 

Technika samplowania obecna jest w przemyśle muzycznym od dziesiątek lat i pojawiła się po raz pierwszy już w latach 40. XX wieku! Praktykowana była przez wielu wykonawców, m.in. takich, jak The Beatles, Pink Floyd, Mike Oldfield, Erasure, The Prodigy, ScooterDepeche Mode, którzy często wychodzili w plener i nagrywali odgłosy natury, bądź dźwięki uderzeń o konkretne przedmioty. Sampling jest również bardzo popularny w kulturze Hip Hop, gdzie przy produkcji muzyki sięga się coraz chętniej po próbki dźwięków z mało znanych winylowych wydawnictw muzycznych (np. bajki).

Zawartość dyskietki

Limon v1.1 wraz z przykładowymi plikami zajmuje łącznie jedną stronę dyskietki 5’25 cala, a dokładnie 661 bloków. Główny program, zawierający również notkę, został skranczowany do pojemności 45 bloków. Do dyspozycji mamy ponadto cztery przykładowe 8-bitowe sample pod postacią plików .wav, oraz dwa 4-bitowe, poddane wcześniej konwersji Limonem.

Uruchomienie programu i okoliczności jego powstania

Do uruchomienia programu nie jest wymagane stosowanie dopałek do C64, aczkolwiek dla uzyskania możliwie najszybszej transmisji danych z/do stacji dysków, należy odpalić Limona przy włożonym Action Replay’u (bądź Retro Replay’u). Wówczas sam proces wczytania głównego programu skraca się z około 26 do 3 sekund i ma to niebagatelne znaczenie w kontekście pracy z bardzo dużymi plikami.

Kiedy Limon zostanie uruchomiony, można przycisnąć i przytrzymać przez chwilę spację. Pozwoli to na wejście do notki, w której poznamy okoliczności powstania użytku, oraz krótki opis jego obsługi. Tekst okraszony jest muzyką autora, znaną już wcześniej z selektora do kolekcji muzycznej Cast To See, a górną część ekranu zdobi logo we FLI autorstwa Lobo.

Czytając notkę dowiadujemy się przede wszystkim tego, że powstanie Limona możemy zawdzięczać zarówno lenistwu Daty, wynikającego z ręcznego procesu konwercenia sampli z 8 na 4 bity, oraz niespełnionych oczekiwań wobec PC-towych programów do obróbki dźwięku, jak i starych, wysłużonych programów na C64 (przykładowo autorstwa Corletha), które były zwyczaje zbyt wolne.

Warto także przypomnieć, że pierwsza wersja programu, oznaczona numerem 1.0, była dodatkiem do wspomnianej już przed chwilą kolekcji muzycznej Daty o nazwie Cast To See, gdzie w intrze wykorzystano sampling mowy ludzkiej, skonwertowany właśnie Limonem!

Z notki można przejść bezpośrednio do użytku, naciskając klawisz Run/Stop. Po wyświetleniu katalogu dysku możemy następnie wejść do odsłuchu przykładowych sampli.

Ulepszenia konwertera

Limon v1.1 zawiera następujące ulepszenia względem poprzedniej wersji:

– generalnie ulepszona procedura konwersji
64512 bajtów wolnej pamięci dla konwersji (252 bloki na dysku)! (120 bajtów więcej w porównaniu z wersją 1.0 programu)
– przyśpieszona o 10% procedura konwersji
– wykorzystanie zegara 2 Mhz z C128 w trakcie konwersji
– możliwości odtwarzania sampla:

  • odtwarzanie 8-bit4-bit na SIDzie
  • akceptowalne częstotliwości próbki: 2, 4, 8, 11.25, 16 kHz
  • autodetekcja odtwarzanego pliku
  • ogółem 60 kB pamięci na sample
  • odtwarzanie sampla w całej przestrzeni adresowej pamięci C64

– wybierajka plików:

  • możliwość wyboru urządzenia o numerach 8, 9 i 10
  • długość pliku pokazywana jest w bajtach

Obsługa programu

– Klawisz 8/9/1 wczytuje katalog dysku z urządzenia o numerze 8, 9 lub 10
– Kursory góra/dół pozwalają przemieszczać się po wyświetlonym na ekranie katalogu dysku
Return wybiera plik do konwersji (8-bitowe pliki wavraw bez znacznika są automatycznie wykrywane)
Spacja odtwarza wybrany plik (8-bitowe pliki wav4-bitowe pliki raw są automatycznie wykrywane. Stała częstotliwość odtwarzania dla plików raw wynosi 8 kHz)
H uruchamia tryb HQ. W tym trybie uwzględniane są młodsze nibble próbki dźwięku podczas konwersji
Restore wywołuje restart Limona
(strzałka w lewo) powoduje wyjście z programu (przy użytkowaniu Action Replay’a program wskakuje bezpośrednio do procedury Fastload)

Wskazówki

– Chcąc odgrywać 8-bitowe pliki raw, naciśnij klawisz Shift podczas wczytywania pliku
– W przypadku nieoczekiwanego wyjścia z programu przed dokonaniem konwersji i chęci dalszego korzystania z niego, wpisz Old i naciśnij Return, a następnie uruchom ponownie Limona
– Jeżeli na dyskietce znajduje się błąd, to program wyświetli ekran w kolorze czerwonym i zresetuje C64, wskakując do procedury Fastload
– Pliki wejściowe zawsze konwertuj do formatu mono, ponieważ w trakcie konwersji sampla stereo z 8 na 4 bity, zawsze uzyskasz 4-bitowy sampel stereo
– Unikaj konwersji 4-bitowych sampli, ponieważ ich częstotliwość zmniejszy się o połowę

Przygotowanie pliku do konwersji

Istotna jest przede wszystkim precyzja w przygotowaniu konkretnego sampla do konwersji. Można w tym celu wykorzystać jeden z wielu programów do obróbki plików audio, np. pecetowski GoldWave, Cool Edit Pro, czy AudaCity. Mając gotową próbkę dźwięku, w pierwszej kolejności można ją przerobić na tryb mono, aczkolwiek nie jest to wymagane w tym momencie. W przypadku, kiedy plik posiada niski stopień głośności, należy podbić go o kilka decybeli. Albowiem w trakcie testów Limona okazało się, że 8-bitowe sample, po konwersji na 4-bity są pozbawiane cichych dźwięków, które w efekcie czego zapisywane są pod postacią 1-2 bitowych trzasków. Należy zatem przygotować odpowiednio głośną próbkę, jednocześnie nie przesadzając. Optymalne efekty konwersji można uzyskać w trakcie testowania plików o różnorodnej amplitudzie.

Gotowy plik należy zapisać na dysku, najlepiej pod postacią 8-bitową, bez znacznika w trybie mono (PCM 8-bit unsigned mono).

Konwersja pliku

Limon V1.1/TropyxW celu poprawnej pracy z programem, warto umieścić go na pustej stronie dysku, na której następnie należy skopiować sample przeznaczone do konwersji. Można wykorzystać do tego celu menadżera plików, np. Star Commander, bądź 64copy, dostępnych na platformie PC. Jeżeli sampel zajmuje więcej niż 252 bloki, nie będzie możliwa jego konwersja na C64. Generalnie kolejność zapisywanych plików na dyskietce nie ma znaczenia, ale ważne jest to, by na jednej stronie znalazł się Limon, sampel (bądź sample) do konwersji oraz odpowiednia liczba wolnych bloków. Obecna wersja programu nie posiada bowiem detekcji ilości niewykorzystanej przestrzeni na dysku, przez co przy próbie zapisu skonwertowanego sampla niemieszczącego się na nośniku, Limon wskoczy do FastloadaAction Replay’u, bądź zwiesi komputer przy Retro Replay’u. Podobnie zachowa się w momencie podania identycznej nazwy pliku, jaka już istnieje na dysku lub przy próbie odczytu danych ze stacji, z której została wcześniej wyjęta dyskietka.

Przed wybraniem pliku można włączyć także tryb HQ, który pozwoli nam na uwzględnienie podczas konwersji młodszych nibblów próbki dźwięku. Po przetworzeniu sampla na format 4-bitowy, jest on zapisywany na tym samym nośniku. Program następnie wykonuje ciepły start, wskakując do FastloadaAction Replay’u (w Retro Replay’u zawiesi komputer). Tutaj możemy ponownie uruchomić program i dokonać odsłuchu skonwertowanego sampla, i/lub przejść do kolejnej procedury konwersji.

Co dalej z gotowym samplem?

Gotowy 4-bitowy sampel możemy umieścić w naszej produkcji, bądź wykorzystać przy tworzeniu własnego modułu samplowego, przykładowo na Reflextrackerze, bądź Polly Trackerze, obsługującego także 8-bitowe próbki dźwięku. I chociaż na pierwszy rzut oka taka zabawa jest w jakimś stopniu czasochłonna, to jednak może przynieść wiele radości i satysfakcji z odkrywania nowego obszaru tworzenia muzyki z wykorzystaniem Commodore 64.

Co należałoby poprawić?

Program wymaga niewielkiej korekty, która polegałaby na sprawdzaniu, czy na dysku znajduje się wystarczająca ilość wolnego miejsca na zapisanie skonwertowanego sampla. Przydałaby się również obsługa komunikatów błędów, która obecnie zastąpiona jest zwyczajnym zresetowaniem C64 do trybu FastloadAction Replay’u, wymagającym poprawki w stosunku do prawidłowego jego funkcjonowania na Retro Replay’u. Pożądany byłby także tryb normalizacji zbyt cichych sampli, jednakże ze względu na ograniczoną pamięć takie rozwiązanie może być trudne do uzyskania. Przydałaby się także uniwersalna procedura do odtwarzania próbek dźwiękowych, dostępna w postaci np. źródłówki, z której mógłby korzystać każdy użytkownik, nieposiadający konkretnej wiedzy z zakresu programowania na C64. Przy zrestartowaniu programu klawiszem Restore, Limon nieoczekiwanie zaczyna wyświetlać migający kursor przy numerze aktualnie używanego urządzenia wejściowo-wyjściowego.

Na koniec można puścić wodze fantazji i zażyczyć sobie obsługi różnorodnych rozszerzeń pamięci :). Ale w zasadzie program przy obecnej formie spełnia swoje zadania i spisuje się bardzo dobrze zarówno przy konwersji sampli, jak i ich prawidłowemu odtwarzaniu. Polecany jest on wszystkim, którzy nadal pragną korzystać z tego typu możliwości operowania dźwiękiem na C64, bądź chcą postawić swoje pierwsze kroki przy tworzeniu modułów samplowych.

Swoje spostrzeżenia i uwagi spisał:
V-12/Tropyx
Szczecin, 25.01.2010 r.

Przy pisaniu niniejszego artykułu wykorzystałem informacje zawarte w opisywanym programie.


Program pod postacią obrazu dysku w spakowanym pliku .d64 dostępny jest tutaj.