NAGRYWARKI | PROGRAMY | TESTY | DYSKI TWARDE/SSD | BIOSY | ARTYKUŁY | FAQ | NAGRYWANIE od A do Z | ENCYKLOPEDIA | FORUM | Nośniki | Konsole | Księgarnia | Zabezpieczenia płyt | Zaloguj |
Pierwszą, zasadniczą sprawą jest to, że istnieje różnica pomiędzy ZWRACANIEM błędów C2 przez napęd a ich KOREKCJĄ. Właściwie, obsługa (korekcja) błędów C2 należy do firmware'u prawie każdego napędu, bo C2 to standardowy mechanizm korekcji błędów stosowany od początku powstania formatu CD-AUDIO ( tj. lat 80-tych). Część napędów jednak, dodatkowo, zwraca informacje o wystąpieniu i statusie tych błędów (generalnie skorygowany/nieskorygowany). I tu tkwi szczegół, ponieważ mając informację o wystąpieniu takiego błędu, można dokładnie przyjrzeć się zakresowi, w którym wystąpił ( czy wystąpił np. trzask czy ślizg). Poza tym , gdy napęd zwraca informacje o błędach C2, program rippujący typu EAC może założyć pewne uproszczenia podczas zgrywania ścieżek na dysk, co powoduje wzrost szybkości zgrywania (EAC nie odczytuje każdego bloku podwójnie, tylko te, w których wystąpił C2).
(Dla ścisłości- zwracanie C2 to zwracanie informacji o uruchomieniu mechanizmu korekcji C2 podczas odczytu. Napęd zwraca informację do oprogramowania komputera że w danym miejscu na płycie musiał uruchomić mechanizm korekcji błędów C2.)
Żeby jednak nie było tak prosto, to każdy z producentów napędów CD może w różny sposób zaimplementować tę funkcję. Tj. np. niektóre napędy zwracają informację o wystąpieniu błędu C2 i jego status w każdym wypadku, niektóre zaś zwrócą tą informację tylko w momencie gdy błąd C2 był niekorygowalny (wedle myśli, że błąd skorygowany w efekcie przestaje być błędem i po co informować o nim). Jeszcze inne napędy mogą zwracać tylko informacje że błąd taki wystąpił, ale nie dodają czy napęd go skorygował.
Namawiam więc do takiego wniosku: bądźmy ostrożni w osądach napędów zwracających C2. Napędy, które wg specyfikacji technicznej nie zwracają błędów C2 na pewno je obsługują ( za wyjątkiem może niektórych starych napędów CD-ROM marki no-name), tyle że nie zwracają żadnej informacji na ich temat.
Korekcja błędów na płytach CD-AUDIO i CD-ROM ma charakter wielowarstwowy. Korekcja w CD-ROM-ach z danymi jest złożona i wielowartswowa. Korekcja CD-AUDIO jest właściwie dwupoziomowa ( korekcja sprzętowa - istnieje szereg metod programowej korekcji błędów, stanowiących wtedy warstwy wyższe). Bazą dla korekcji błędów jest zapisywanie danych w przeplocie CIRC (sektor 2352 bajty trwający 1/75 sek zawiera 98 ramek po 24 bajty sygnału, fizycznie ramka 24 bajtowa to 588 bitów do zapisu na CD), czyli próbki które powinny następować po sobie są "porozrzucane" do innych ramek. Z owego przeplotu (m.in.) wynikają 2 najniższe metody korekcji błędów - C1 i C2. Odpowiednie sumy kontrolne (bajty Q i P w ramce 588 bitowej) są tak potworzone ( wyliczone z takich bajtów sygnału), że mechanizm C1 jest bardziej odpowiedzialny za pojedyncze, przypadkowe błędy( tzw. random errors) , natomiast C2 odpowiada za błędy seryjne(tzw. burst errors). Warstwowość tych mechanizmów polega na tym, że te błędy z którymi C1 nie może sobie dać rady (czyli wtedy gdy uszkodzonych jest kilka bajtów w ramce tj. więcej niż 2 w ramce 24 - bajtowej czyli 588 bitowej po zapisie na CD) , są przekazywane do warstwy wyższej, C2, i ta warstwa ma szansę na korekcje tego błędu.
Jedna z różnic miedzy CD-AUDIO a CD-DATA : w CD-AUDIO gdy nawet C2 nie może skorygować błędów ( tzw. un-correctable) wtedy podejmowane są odpowiednie akcje. W CD-DATA wtedy sygnalizowany jest błąd odczytu i uszkodzenie pliku. Akcje podejmowane przez odtwarzacz gdy podczas odczytu wystąpi niekorygowalny błąd C2 mogą być różne :
Można sobie prosto wyobrazić, że metody te są niedopuszczalne w przypadku danych CD-ROM. Dlatego tam korekcja błędów jest obudowana w warstwy wyższe od C1 i C2.
Błędy C1 występują ZAWSZE przy odczycie CD. Ich występowanie powodue chociażby rachunek prawdopodobieństwa (prawidłowy BitErrorRatio<10^-5) czy np. wstrząsy podczas odczytu. Błędy C2 natomiast nie musza występować koniecznie, Przy odpowiednich prędkościach odczytu, dobrej jakości mechanizmu odczytującego, jakości nośnika i czystości CD. To właśnie zabrudzenia i zarysowania CD są najczęstszym źródłem występowania błędów C2.
Można sobie wyobrazić, że statystycznie podczas odczytu może zostać przekłamany bit w bajtach Q albo P ( tworzących sumę kontrolną C1 czy C2). Wtedy część lub cała zawartośc ramki jest niezgodna z sumą kontrolną i dla odtwarzacza jest "błędna" pomimo, że to suma kontrolna jest błędna a nie dane! Wtedy dekoder dokonuje procesu "naprawy" poprawnych danych, czyli właściwie "psuje" je. Przypadek taki jest możliwy i jest to tzw. miscorrection, ogranicza go jednak do poziomów marginalnych:
Specjaliści z forum na temat EAC-a oceniają że miscorrection występuje statystycznie nie częściej niż raz na kilkadziesiąt godzin odtwarzania.
Gdy napęd zwraca informację o C2, to dobrze, program bowiem obsługujący tę funkcje może dać nam obraz na temat jakości danego CD, miejsc o podejrzanych trzaskach, przerwach, ślizgach itp. Błędów C1 nie ma sensu zwracać, bo występują ich dziesiątki w każdym kilku minutowym przedziale muzyki i ogromna większość jest na bieżąco korygowana. Błędy C2, jako te, których mechanizm C1 nie skorygował, oraz błędy w dużej ilości próbek, jest sens zwracać, bo stanowi to cenną informację o stanie płyty i o momentach ewentualnych słyszalnych błędów.