La prima vedere subiectul pare unul banal. Ne aflăm într-o lume digitală, bitul este bit, ce mare lucru este să transferi conținutul unui CD-Audio pe un PC și să-l arzi pe un blank. Cu toții am făcut lucrul ăsta cel puțin o dată și am obținut o copie care putea fi redată într-un CD-player. Sub simplitatea copierii unui CD-Audio se ascund probleme care pot scăpa de sub control. În concluzie, ar fi bine să știm exact cu ce avem de a face atunci când ne mutăm colecția muzicală de pe discuri pe un server sau dorim să o arhivăm.
Extracția materialului audio conținut de un CD-Audio (Digital Audio Extraction sau DAE) este numită în mod uzual ripping, termen provenit din jargonul utilizatorilor de computere Amiga.
Trebuie precizat de la început faptul că un CD-Audio (CD-DA) pare la fel ca orice CD-ROM dar, din păcate, nu este. Standardul care guvernează CD-ul Audio este numit Red Book și a fost elaborat în 1980 de Philips și Sony. Problema esențială este că, în cazul datelor aflate pe CD-ROM, asigurarea citirii perfecte este o condiție de importanță capitală, dar, în cazul unui CD-Audio aceasta poate fi chiar un inconvenient din punctul de vedere al producătorului care comercializează un produs. Pare o afirmație șocantă, nu-i așa ?
Să zicem că avem un software imprimat pe un CD-ROM. Orice bit citit incorect va face întregul software inoperabil. Din acest motiv, la citirea datelor de pe CD-ROM există mecanisme de siguranță care garantează citirea corectă și care dau acele erori de citire (CRC-Error) în cazul în care apar probleme. Cu alte cuvinte, în cazul unui CD-ROM știm cu siguranță dacă datele au fost citite perfect sau nu, chiar în momentul în care am efectuat operația.
Ce s-ar întâmpla dacă am avea un mecanism similar în cazul unui CD-Audio ? Audiția s-ar opri și aparatul ar afișa un mesaj de eroare. Pentru utilizator ar fi o situație inacceptabilă, mai ales că marea majoritate a erorilor au efecte axtrem de greu audibile (ca să nu zic inaudibile), doar în situațiile extreme ajungându-se la situații în care discul “sare”, produce un artefact audibil sau redarea se oprește (dar aici discutăm de un disc care a suferit traumatisme majore). CD-ul venea să înlocuiască vinilul având în slogan “capacitatea de a cânta în orice condiții”. Muzica nu trebuie să se oprească, utilizatorul trebuie să scape de frustrările provocate de un vinil zgâriat.
Cum este posibil ca datele de pe un CD-Audio să fie citite greșit, atâta timp cât ele sunt digitale, avem 0 și 1, bitul este bit ?
Structura fizică a unui CD-Audio nu diferă față de cea a unui CD-ROM. Datele sunt scrise pe disc sub forma unor găuri microscopice făcute în materialulul din care este confecționat discul, în spatele cărora se află un material reflectant (în mod uzual o foiță din aluminiu, dar care poate fi din argint sau aur). Avem succesiuni de găuri (pits) și de zone pline (lands) scrise pe o pistă spiralată care pornește de la interiorul discului și merge către exterior. În cazul discurilor fabricate, aceste “pits” sunt realizate prin matrițare în policarbonatul din care este fabricat discul. Discurile inscriptibile (inscripționate pe computere) conțin un șanț continuu (pregroove) acoperit cu o substanță organică care se umflă în procesul de ardere pentru a forma succesiunile de pits și lands.
La citire, raza laser este “plimbată” în lungul acestei piste în spirală (relativ, fiindcă practic raza stă pe loc iar discul este rotit). În momentul în care raza laser trece de la pit la land sau invers, apar interferențe iar cititorul optic detectează schimbarea petrecută (traducând schimbarea într-un 1 iar neschimbarea într-un 0).
Diferența între CD-Audio și CD-ROM stă în structura logică a datelor inscripționate. În cazul CD-ului Audio (conform Red-Book) avem două mecanisme de siguranță. În primul rând avem protocolul ECC (Error Correcting Code) care folosește plasarea strategică pe discul fizic a unor date redundante astfel încât o informație care nu poate fi citită să fie recuperată corect (informații redundante sunt plasate în diverse locuri pe suprafața discului astfel încât o zgârietură să afecteze doar una dintre ele, cea de a doua să poată fi citită). Dacă acesta dă greș, se folosește interpolarea pentru a aproxima informația care lipsește, pornind de la valorile vecine pe care le cunoaștem. Această a doua metodă este una aproximativă și poate funcționa în cazul unei piese muzicale, dar este inacceptabilă în cazul în care în loc de muzică ar fi vorba despre un software.
Yellow Book este standardul introdus în 1988 pentru discurile de date (CD-ROM). Interpolarea fiind nefolositoare, s-a renunțat la circa 10% din capacitatea de stocare a discului, spațiul fiind alocat tot unui protocol ECC suplimentar. În acest mod, capacitatea de a corecta erorile de citire a crescut mult față de CD-Audio, acuratețea citirii fiind o condiție sine qua non.
Motive pentru care putem avea erori la citirea unui CD: unități optice de proastă calitate, corecție slabă a jitterului, defecte fizice în stratul reflexiv (foarte apropiat de suprafață), defecte fizice în policarbonatul traversat de laserul care face citirea (zgârieturi), proasta sigilare a conturului discului care poate duce la contaminarea chimică a stratului reflexiv. Nu trebuie uitat că procesul de citire este unul optic, avem o rază care traversează un material transparent și orice imperfecțiune poate duce la defocalizare sau la rezultate false.
Dacă stăm să ne gândim, citirea unui CD-Audio implică un mecanism analogic, chiar dacă rezultatul este tradus în format digital. Mecanismele de protecție a datelor sunt slabe. În cazul citirii într-un CD-player clasic putem afirma că redarea corectă este o chestiune care depinde mult de șansă. Într-un CD-player avansat lucrurile stau ceva mai bine (sunt aparate care citesc pe viteză mărită informațiile într-o memorie tampon și reiau citirea pentru a asigura corectitudinea) dar, în ambele situații operațiunea este netransparentă pentru utilizator (care nu are habar dacă s-au întâlnit erori și care a fost magnitudinea lor). Lucrurile nu stau mai bine nici în cazul utilizării unor programe simple de extracție audio ceea ce ne duce la subiectul discuției, și anume ce programe să folosim pentru a fi cât mai siguri că am obținut rezultate corecte ?
Pentru a extrage informațiile de pe un CD-Audio pe un PC există foarte multe soluții software. Putem obține o citire perfectă cu oricare dintre ele, dar, la fel de bine putem să obținem o citire diferită de original și să nici nu băgăm de seamă. Aici nu discutăm despre erori grosolane ci, pur și simplu, de extragerea unor informații diferite la nivel de bit față de fișierele folosite în momentul matrițării discului (dacă este unul fabricat) sau inscrpționării (dacă este unul scris pe computer). Așa cum am precizat mai sus, în cazul unor erori de citire, prima măsură este încercarea de a reface valoarea lipsă cu ajutorul ECC. Dacă nu se poate, lucrurile devin neclare. Unele unități optice interpolează valorile pe care nu le pot citi, altele transmit valoarea necitită drept un 0, unele unități raportează faptul că au întâmpinat o eroare la citire, iar altele nu o fac deloc.
Rezultate perfecte putem obține cu oricare dintre soluțiile software existente, dar ele vor fi rodul întâmplării, nu vom avea controlul asupra a ceea ce facem. Singurul mod în care ne putem asigura că am făcut o extracție perfectă ar fi compararea fișierului citit cu cel folosit la matrițare, ceea ce este imposibil în cazul unui disc comercial. O strategie utilizată este cea de a repeta citirile și de a le compara între ele. În cazul în care obținem fix aceleași date, avem șanse mari ca citirea să fie cea corectă. Dacă unitatea care face citirea folosește un cache pentru date devine esențial ca acesta să fie dezactivat pe timpul extracției pentru a nu ne fura singuri căciula (software-ul să citească aceeași valoare aflată în cache în loc să repete citirea fizică a discului). O altă soluție este să accesăm o bază de date globală și să comparăm rezultatul citirii noastre cu cel obținut de diverși alți utilizatori (cum este AccurateRip).
Ceea ce se poate observa este faptul că acuratețea citirii datelor de pe un CD-Audio este o chestiune care ține mai degrabă de statistică decât o metodă exactă.
Software recomandat pentru extragerea datelor de pe un CD-Audio în cât mai bune condiții:
Exact Audio Copy ( http://www.exactaudiocopy.de/ ) – Windows și Linux ( cu wine )
dBpoweramp ( http://www.dbpoweramp.com/ ) – Windows
xACT ( http://xact.sourceforge.net/ ) – OS X
XLD ( http://tmkk.undo.jp/xld/index_e.html ) – OS X
Max ( http://sbooth.org/Max/ ) – OS X
Rubyripper ( https://code.google.com/p/rubyripper/ ) – Linux ( nativ ) și OS X