Audio sub Linux — JACK Audio Connection Kit

 Mulţumesc pentru interesul acordat subiectului şi în subsidiar, autorului articolelor!

Spuneam în articolul precedent că am întâmpinat mari dificultăţi într-o zonă critică în ceea ce priveşte muzica şi audio sub Linux.

Înainte de toate, trebuie să clarific un aspect care ţine de felul în care trebuie privit subsistemul audio, în orice calculator.

Subsistemul audio, mai ales în ultima vreme, a devenit o întreagă industrie SCALABILĂ, graţie perfecţionării interfeţei de conectare USB.

Dată fiind rata de transfer asigurată de USB 2.0, de 480 Mbps (480 Mbps = 60 MBytes/secundă), acum pot fi conectate o multitudine de echipamente care vehiculează fluxuri de date de ordinul a zeci de MB/secundă, între care hard-discuri de mare capacitate, CD/DVD writere dar şi interfeţe audio, ale căror procesoare DSP, necesită uriaşe transferuri de date în modul DUPLEX, ÎN TIMP REAL!

Pe de altă parte, conectarea fizică prin USB, rezolvă doar o parte din nevoile audio şi DSP Digital Signal Processing.

Ca exemplu, dau o claviatură MIDI şi un DAW. O claviatură MIDI sau alt dispozitiv MIDI, comunică pe 16 canale simultan, în modul duplex, ceea ce înseamnă 16 intrări şi 16 ieşiri pe care circulă datele SIMULTAN. Dacă avem legate la calculator 4 dispozitive MIDI, atunci vom avea nevoie să conectăm 4×16 = 64 intrări şi 64 ieşiri, deci în total, 128 conexiuni de făcut. De pildă, avem 3 claviaturi MIDI: o claviatură controller , un sintetizator dedicat şi un arranger dedicat şi un controller pentru mastering. Asta înseamnă posibilităţi nelimitate din perspectiva creativităţii. Totuşi, ne izbim de nişte limite fizice: posibilităţile de calcul ale maşinii şi capabilităţile de gestionare a fluxurilor de date ale programelor cu care lucrăm!

Dacă la această zestre mai adăugăm şi câteva instrumente acustice, atunci avem o imagine destul de bună a ceea ce înseamnă „haos”.

Pentru a putea face ordine în acest haos, s-au creat nişte aplicaţii speciale, numite servere audio, care au tocmai rolul de a gestiona aceste fluxuri de date şi a permite interconectarea la nivel LOGIC a multitudinii de intrări şi ieşiri, atât fizice cât şi virtuale. Şi ajunşi în acest punct, atingem „zona dureroasă”.

Într-un sistem dedicat audio, circulă două tipuri de fluxuri de date: audio, care sunt semnale analogice digitizate (eşantionate), cum ar fi coloana sonoră a unui film sau videoclip, semnalele de avertizare ale sistemului de operare (system sounds), muzică wav, mp3, ogg sau alt format şi „muzică” DIGITALĂ, adică de fapt, semnale electrice în cod binar, care pot fi fie coduri MIDI, care circulă între componentele fizice şi sequencerele virtuale gen Ardour, QTractor, Rosegarden, PodiumFREE, MuLAB, Roland Cakewalk Sonar, Steinberg Cubase, Avid Pro Tools, etc., FIE date privind procesarea semnalelor digitale.

Dacă o componentă fizică are intrări şi ieşiri limitate ca număr, un DAW gen Rosegarden, Cakewalk (versiunile profesionale) sau Sonar (versiunile profesionale), au număr nelimitat de canale şi piste MIDI. Cu alte cuvinte, pot să dirijez semnalul de la un canal MIDI în altul, să aplic o serie de efecte, apoi îl dirijez la intrarea altui canal pe care aplic alte procesări digitale (DSP) şi tot aşa, cât îmi permite calculatorul! Dar pistele MIDI, pot fi şi ele înlănţuite la rândul lor!

Astfel, ajungem la un lanţ de conexiuni logice signal routing, dirijarea semnalului pe un traseu pe care semnalul iniţial îl parcurge, înainte de a deveni undă sonoră!

Aici, intervin o multitudine de factori care se îmbină în doi parametri esenţiali pentru procesarea sunetelor: LATENŢA şi modul de acces la procesor REAL TIME, procesarea datelor în timp real.

Mă opresc aici şi în subcapitolul următor, voi vorbi despre LATENŢĂ ŞI REAL TIME.

Închei precizînd că, sub Linux, avem două servere audio, despre care voi vorbi mai departe PulseAudio şi JACK şi SISTEMUL DE DRIVERE şi reguli de conectare a componentelor (API), care poartă denumirea generică de ALSAAdvanced Linux Sound Architecture.


Vizualizări articol: (621)

Articole înrudite:
Scuze! M-am străduit, dar... fără rezultat! :( .

4 thoughts on “Audio sub Linux — JACK Audio Connection Kit


  1. Nu mai zic nimic. Cu articolul asta mi-ai aratat ca te documentezi bine si stii sa ne explici sa intelegem tot.

    Astept mai multe informatii. Citesc ce ma anunti pe g+ mereu cu sufletul la gura. Nu uita ca poate mai sunt si altii ca mine care intra numai daca vad ceva in email. In rest, toate laudele pentru munca ce o depui.


    • Salut, Bogdan!
      Ce să zic, eu cu mailul, mai puţin. Dar cred că ai dreptate. Când eram pe 56K, mă uitam doar la mail şi cam atât, că mă usca la factură…
      Voi ţine cont pe viitor de asta! Cred că sunt mulţi care sunt în situaţia de a apela la 3G din cauza accesibilităţii geografice reduse.
      Anca Rus de pildă, e la fel, tot pe USB are net. Credeam că s-a mai schimbat în 5 ani, de când m-am interesat ultima oară de net pe mobil…


    • Mulţumesc, Yamasha!
      (Ia-mă aşa? :) )
      Momentan, am nevoie de o pauză mai lungă.
      Cele peste 150 de ore de cercetare şi documentare, apoi orele prelungite de practică,
      m-au suprasolicitat (eufemism… M-AM suprasolicitat e de fapt Realitatea…) şi am nevoie să schimb prespectiva pentru o vreme.
      Oricum, de lucrat voi lucra în domeniu şi este de fapt motivul principal pentru care fac pauză.
      Am de finalizat nişte proiecte şi de făcut nişte materiale video, deci TESTEZ, EXPERIMENTEZ, ÎNVĂŢ.
      Pe de altă parte, atunci când s-a defectat HDD-ul care a condus la mutarea pe Linux,
      am pierdut cam tot ce aveam făcut pe partea de pre-producţie video.
      Deci, “d’a capo!”, cum zic conaţionalii lui Enrico Caruso şi Franco Zefirelli, că tot vorbim de audio & video.

Comments are closed.