Technika cyfrowa - synchronizacja - Razem, razem

2012-03-02
Technika cyfrowa - synchronizacja - Razem, razem

Synchronizacja urządzeń cyfrowych odgrywa bardzo istotną rolę. Urządzenia ze sobą niezsynchronizowane, owszem, będą działały, i to nawet poprawnie (nagrywały, miksowały czy co tam jeszcze), tyle że "każde na swoją modłę".

Gdy gra jeden muzyk, nie każdy jest w stanie usłyszeć potknięcia i niezbyt równe granie, jeśli takie istnieją. Gdy gra dwóch, nierównomierności w graniu zaczynają być już bardziej słyszalne - no, chyba że obaj grają idealnie tak samo nierówno, ale to byłby ewenement zasługujący na jakąś prestiżową nagrodę, tak samo jak dwóch wokalistów fałszujących unisono.

W miarę jak przybywa nam muzyków w zespole lub orkiestrze, wszelkie odstępstwa od tempa i rytmu stają się już nie tyle słyszalne, co wręcz nie nadające się do słuchania. Podobnie jest z urządzeniami cyfrowymi, współpracującymi ze sobą. Aby zapewnić możliwość poprawnego "dogadywania" się tych urządzeń ze sobą, musimy zadbać o prawidłową

SYNCHRONIZACJĘ

i o tym właśnie mowa w tym artykule. Co to w ogóle jest ta synchronizacja i czym to się przejawia, albo inaczej - czym przejawia się brak odpowiedniej synchronizacji? Postaram się to wytłumaczyć w oparciu o zasady muzyki.

Z uwagi na to że muzyka, w przeciwieństwie do innych dziedzin sztuki (jak np. malarstwo czy poezja), jest mocno osadzona w czasie i głównie w oparciu o podziały czasowe jest wyrażana, dlatego czas odgrywa tak istotną rolę. Z tego powodu wielkie znaczenie odgrywają tu takie określenia jak: rytm (metrum), tempo, a także artykulacja.

RYTM I METRUM

określają nam uporządkowanie utworu, a dokładniej organizację nut w takcie. Z punktu widzenia synchronizacji nie ma dla nas większego znaczenia czy jest to walczyk na trzy czwarte, czy free jazzowy motyw w rytmie piętnaście ósmych. Dla nas najistotniejsze są dwa następne: tempo utworu i artykulacja.

TEMPO

Już od dawien dawna oznaczano tempo utworu za pomocą adekwatnych określeń słownych, i to, żeby było weselej, po włosku. Np. utwór opisany słowem largo grano wolno, moderato - "z namaszczeniem", allegro - wesoło, a presto - szybko.

Były też określenia pozwalające na dokonywanie zmian tempa w trakcie utworu - ritardando oznaczało, że utwór należy grać coraz wolniej, a widząc accelerando należało przyspieszać.

Cóż to wszak jest to tempo? Tempo określa nam liczbę podstawowych jednostek czasowych mieszczących się w większym przedziale będącym odnośnikiem. No, to teraz żeś pan wyjaśnił!

Spokojnie, spróbujmy na przykładzie. Podstawową jednostkę czasu nazywamy bitem (ang. beat). Liczba bitów w minucie (to jest właśnie ten "większy przedział będący odnośnikiem") określa tempo.

I tak, na przykład, tempo 85 oznacza 85 uderzeń metronomu w ciągu minuty. Współcześnie poczęto więc używać na określenie tempa jednostkę zwaną BPM (ang. beats per minute), czyli bitów na minutę. No, i teraz mamy już obiektywną, mierzalną jednostkę, którą możemy "przetłumaczyć" na język zrozumiały dla, bądź co bądź, ograniczonej maszyny cyfrowej. No, a co z

ARTYKULACJĄ?

Artykulacja, można w skrócie powiedzieć, określa nam długość trwania danej nuty. Ponieważ możliwości jest wiele, nuta może się skończyć wraz z początkiem następnej nuty, a może też na przykład skończyć się zaraz po zabrzmieniu.

I tu znów od dawna stosowano określenia słowne. Na przykład pierwszy przypadek to legato, a drugi - staccato. Procesor mógłby mieć niejakie trudności z odpowiednim wyartykułowaniem w ten sposób opisanych nutek, więc trzeba było znaleźć sposób na jednoznaczne określenie artykulacji nut dźwięku cyfrowego.

Artykulacja w podziale rytmicznym.

Na rysunku powyżej pokazano, jak można ten problem rozwiązać. Początek i czas trwania danego dźwięku określają poszczególne nuty w takcie. Na to wszystko nakłada się niezmienny w swej długości ciąg impulsów, będący odnośnikiem. Dzięki temu za pomocą zapisu liczbowego możemy określać przez ile impulsów sygnału odniesienia będzie trwać nuta, czyli sposób tej artykulacji.

Taka baza, odniesienie dla innych czasów, nazywa się sygnałem  synchronizującym - WORDCLOCK. Jest to fala prostokątna, generowana przez zegar. Jeśli umożliwimy przesyłanie takiego zegara synchronizacyjnego w całym pracującym systemie, będzie możliwe dopasowanie rytmu pracy wszystkich urządzeń i zgodne, bezproblemowe przesyłanie danych audio. Na tym właśnie polega synchronizacja.

SYNCHRONIZUJEMY

Możemy tego dokonać na dwa sposoby. Wiele urządzeń ma wejście lub wyjście (a najczęściej i jedno i drugie) nazwane CLOCK lub TIMEBASE. Jest to złącze pracujące z sygnałami TTL (czyli pracującymi z maksymalnym poziomem napięcia 5 V), przystosowane do pracy z falą prostokątną, podawaną celem synchronizacji z innymi urządzeniami.

Pierwszy sposób synchronizacji polega właśnie na wzajemnym połączeniu wejść i wyjść CLOCK sprzężonych ze sobą urządzeń cyfrowych. Dzięki temu przesyłany sygnał WORDCLOCK pomiędzy tak połączonymi urządzeniami zagwarantuje nam pracę wszystkich urządzeń z tą samą częstotliwością próbkowania, taktowaną w tych samych momentach czasu.

Dopóki urządzenia połączone są szeregowo, nie będzie to istotne (to właśnie drugi sposób synchronizacji, ale o tym za chwilę), jednak w przypadku bardziej rozbudowanych systemów, np. połączonych w systemie "gwiazdy" lub "drzewa", brak sygnału synchronizującego może spowodować znaczne problemy przy ich współpracy lub w ogóle brak współpracy.

Efekt tego może być taki, że na wyjściu zamiast oczekiwanego sygnału usłyszymy trzaski i piski albo i inne "pokwikiwania". Warto jeszcze wspomnieć, że oprócz sygnału WORDCLOCK istnieje sygnał taktujący zwany SUPER CLOCK, opracowany przez firmę Digidesign (obecnie Avid). Jest on wielokrotnością (x256) sygnału WORDCLOCK i stosowany jest we wszystkich urządzeniach tej firmy.

Sygnał WORDCLOCK podawany osobnym łączem nie będzie potrzebny, jeśli, jak już wspomniałem, dokonamy połączenia szeregowego urządzeń. W tym przypadku pierwsze urządzenia znajdujące się w łańcuchu wysyła sygnał cyfrowy generujący zegar według siebie, a wszystkie pozostałe urządzenia "pobierają" tę częstotliwość z tego sygnału, poprzez dokonanie regeneracji sygnału, taktowego z sygnału "użytecznego".

Cyfrowy sygnał foniczny z reguły występuje w postaci szeregowej (czyli przesyłany jest bit po bicie, a nie np. całe słowa lub bajty). Jego przesyłanie opiera się na transmisji asynchronicznej. Zdekodowanie tego typu transmisji po stronie odbiorczej wymaga zatem odtworzenia sygnału taktującego.

Położenie impulsów synchronizujących w ramkach.

Najczęściej słowo synchronizacji (na rysunku oznaczone literką "S") po jego zdekodowaniu nie służy bezpośrednio do regeneracji zegara, lecz jest wykorzystywane do uformowania impulsu kontrolnego, który steruje pętlą PLL, generującą zregenerowany sygnał taktujący. No, ale tu już wkraczamy na "pole" elektroniki, więc poprzestańmy na tym.

Oprócz przedstawionych sposobów synchronizacji: za pomocą zewnętrznego sygnału WORDCLOCK oraz poprzez regenerację zegara z sygnału "użytkowego", można również synchronizować pracę urządzeń cyfrowych korzystając z sygnałów niosących w sobie znaczniki miejsca, czyli

KODÓW CZASOWYCH

Zadaniem kodu czasowego jest dokładne oznaczenie miejsca na "taśmie" poprzez zapisanie godziny, minuty, sekundy i numeru ramki. Te cztery składniki noszą nazwę wartości kodu. Co to jest godzina, minuta i sekunda tłumaczyć nie trzeba. Pojęcie ramki natomiast wywodzi się z techniki telewizyjnej, gdzie stanowi ona odpowiednik jednego obrazu telewizyjnego - została zaadaptowana dla potrzeb audio i zadomowiła się na dobre.

Jednym z najpopularniejszych kodów czasowych jest SMPTE Został on pierwotnie ustanowiony przez Stowarzyszenie Realizatorów Filmowych i Telewizyjnych (Society of Motion Picture and Television Engieneers, w skrócie SMPTE) i stąd jego nazwa. Przypisywał on każdej ramce wizyjnej ramkę kodu zawierającą pewien ciąg binarny.

Ze względu na istnienie kilku standardów telewizyjnych powstało kilka  standardów kodu czasowego. Najpierw wprowadzono standard dla telewizji amerykańskiej. Później Europejska Unia Nadawców (European Broadcasting Union - EBU) wprowadziła jego wersję dla telewizji europejskiej, nadając mu nazwę SMPTE/EBU, i jest on obecnie stosowany na "starym kontynencie", a więc i w Polsce.

Brak sygnału synchronizującego może spowodować znaczne problemy przy współpracy lub w ogóle brak współpracy urządzeń cyfrowych.

Podstawową jednostką kodu jest ramka. Każda ramka składa się z 80-bitów, co oznacza, że w różnych standardach kodu czasowego jest stosowana różna przepływność binarna kodu. Kod jest przesyłany w sposób ciągły, tzn. koniec jednego bitu oznacza początek następnego, a koniec jednej ramki stanowi początek następnej. Informacja o czasie ma format hh:mm:ss:ff, czyli godziny:minuty: sekundy:ramki, i zapisana jest w kodzie BCD.

Istnieją dwie odmiany kodu SMPTE:
- LTC (Longitudal Time Code), inaczej "wzdłużny" kod czasowy
- VITC (Vertical Interval Time Code), zwany "wertykalnym"

Druga odmiana kodu SMPTE, "wertykalna", była zapisywana na ścieżkach wizyjnych magnetowidów.

Kod czasowy nie wymaga do zapisu specjalnej ścieżki, choć dawniej w niektórych magnetofonach dwuśladowych do zapisu kodu czasowego stosowano dodatkową wąską ścieżkę, umieszczoną między ścieżkami fonicznymi. W magnetofonach wielośladowych i magnetowidach kod czasowy mógł być zapisywany na jednej ze ścieżek fonicznych.

Sygnał zapisywany ma postać fali prostokątnej. Aby ograniczyć przesłuchy sygnału kodu czasowego do kanałów fonicznych, zwłaszcza w zakresie wysokich częstotliwości, efektywne pasmo sygnału kodu ograniczone jest od dołu od 17,5 kHz, a sygnał kodu zapisywany jest z poziomem 20 dB niższym w stosunku do poziomu sygnałów fonicznych.

Sygnał WORDCLOCK gwarantuje pracę wszystkich urządzeń z tą samą częstotliwością próbkowania, taktowaną w tych samych momentach czasu.

ABS

No tak, wiadomo z czym typowemu facetowi kojarzy się skrót ABS. Ale w tym przypadku zapomnijmy o ostrych zakrętach i wirażach, gdyż jest to kolejny kod czasowy. Może mniej popularny od SMPTE, ale jest, więc trzeba o nim wspomnieć kilka słów.

Nazwa wzięła się od absolute type, a jest to sygnał zegarowy zgodny ściśle z czasem nośnika. Liczony jest dokładnie według pojemności zapisu, od zera zgodnego z początkiem taśmy lub miejsca umieszczenia danych na innym nośniku, do końca nośnika i czasu oznaczającego jego nieprzekraczalną pojemność.

Posługując się nim można sprawnie określić ilość wolnego miejsca (czasu) na nośniku lub sprawdzić czas trwania nagranego materiału. Wadą jest to, że za jego pomocą nie można kontrolować czasów poszczególnych części składowych materiału, takich jak utwory czy wersje.

MTC

(MIDI Time Code) stanowi odpowiednik kodu SMPTE, przeznaczony do odbioru przez urządzenia pracujące w standardzie MIDI. Dzięki temu informacja o czasie może być dołączana do strumienia innych komunikatów MIDI. Podobnie jak wszystkie inne komunikaty MIDI, MTC nie może być bezpośrednio zapisany na nośniku,
ale dzięki temu, że zawiera informacje równoważne kodowi SMPTE, w tym informacje o liczbie ramek i bity użytkownika, MTC jest wymienny z kodem SMPTE.

Jan Erhard


Jan Erhard z wykształcenia jest informatykiem i specjalistą od sieci cyfrowych, zaś z zamiłowania muzykiem. Zajmuje się też realizacją dźwięku, stąd jego zainteresowania i duża wiedza na temat cyfrowego przetwarzania sygnałów.

Estrada i Studio Kursy
Produkcja muzyczna od podstaw
Produkcja muzyczna od podstaw
50.00 zł
Produkcja muzyczna w praktyce
Produkcja muzyczna w praktyce
120.00 zł
Bitwig Studio od podstaw
Bitwig Studio od podstaw
55.00 zł
Sound Forge od podstaw
Sound Forge od podstaw
40.00 zł
Kontakt 5 Kompedium
Kontakt 5 Kompedium
60.00 zł
Zobacz wszystkie
Live Sound & Instalation Newsletter
Krótko i na temat, zawsze najświeższe informacje