Abonare Newsletter

Selecteaza Domeniu:

Care sunt erorile care apar in transportul continutului Audio/Video?

Modul in care apar erorile in crearea sau transmiterea pachetelor de date si modul in care acestea afecteaza transportul continutului media este, in general, un concept inteles gresit, legat de retelele IP. Acest lucru se datoreaza probabil continutului media care a fost initial transmis intr-un format analog sau ca flux digital nepachetizat. Nu vom examina aceste formate. Mai degraba, sa investigam modul in care erorile influenteaza transportul IP al continutului audio si video.

 

 

Sursele erorilor

 

Pachetele eronate rezulta, in general, dintr-una din cele trei cauze. Exista fie o eroare fizica de semnalizare, o coada de asteptare (tampon) respinsa sau o corupere cauzata de un dispozitiv.

 

 

In primul rand, un semnal cu fir sau wireless care reprezinta unul sau mai multi biti poate fi distorsionat. Cu cat este mai complexa forma de unda utilizata, cu atat este mai mare numarul de biti care pot fi interpretati gresit de catre receiver. De exemplu, daca un semnal QAM-64 ajunge deformat, acesta ar putea afecta pana la sase biti.

 

 

Tampoanele sau cozile sunt utilizate in timpul procesului de trimitere si primire. Aplicatia pune in coada un mesaj atunci cand este trimis fie la functia TCP, fie la functia UDP. Driverul de interfata de retea Ethernet pune in coada pachetul pana cand hardware-ul este capabil sa il stocheze si sa il trimita. Si, fiecare retea moderna de comutare sau dispozitiv de rutare are buffere (tampoane) pentru intrare si iesire, care decid cum sa gestioneze si sa retransmita pachetele. Oricare dintre aceste buffere poate fi umplut excesiv. Cand se intampla acest lucru, politica implicita nu este de a extinde tamponul. Mai degraba, este de a renunta la datele care au cauzat supraincarcarea acestuia. Ar putea parea o idee rea. Totusi, se presupune ca o alta componenta a sistemului va detecta pierderea si va atenua greseala.

 

 

In al treilea caz, dispozitivele pot face erori in modul in care scriu pachete. Este posibil ca acestea sa nu fie programate corect sau sa nu fie actualizate cu cel mai recent software.

 

Verificarea erorilor

 

Codurile de verificare a erorilor sunt denumite adesea “sume de control”. Asadar, vom folosi acest termen chiar daca initial s-a referit la o tehnica specifica.

 

 

Ideea este urmatoarea: expeditorul calculeaza un cod care deriva din secventa de biti care urmeaza a fi expediata. Codul este atasat mesajului. Receptorul calculeaza din nou codul utilizand acelasi algoritm. In cazul in care codul este diferit de cel care a fost transmis, receptorul stie ca ceva din mesaj a fost corupt. Majoritatea “sumelor de control” moderne sunt foarte fiabile. Ethernet face o verificare de eroare numita Frame Check Sequence (FCS). Este ultimul camp din fiecare cadru Ethernet. IP, UDP si TCP efectueaza si verificari de eroare separate.

 

Efectele erorilor

 

Atunci cand bitii sunt corupti si cadrele in care se afla sunt reduse, impactul poate varia considerabil. De exemplu, in cazul in care continutul video este transportat utilizand protocolul UDP, cum se intampla in cazul videoconferintelor, IPTV sau digital signage-ului, rezultatul este, de obicei, prelucrat. Vedem acest lucru atunci cand mici semne sau dungi negre apar pe ecran, culoarea gresita, sau acestea sunt distorsionate. Acestea deriva din pachetele lipsa care ar fi permis receptorului sa reconstruiasca corect aceste blocuri. Pe de alta parte, daca se utilizeaza TCP ca protocol L4, poate aparea un rezultat complet diferit. Rezultatul pierderii de pachete va fi intarzierea in livrarea tuturor pachetelor ramase. Daca memoria tampon a receptorului nu se goleste, este posibil sa nu aiba niciun efect. In caz contrar, daca tamponul de iesire este golit, va exista o pauza in videoclip. Adaptive Rate Bit (ABR) video, cum ar fi Apple HLS, Microsoft Smooth Streaming sau DASH, utilizeaza TCP.

 

 

Atenuarea erorilor

 

Atenuarea erorilor poate fi, de asemenea, diferentiata in functie de protocolul L4 utilizat. Cu UDP, in general, nu este timp pentru o retransmitere. Deci, receptorul trebuie sa incerce sa compenseze. Unele software-uri sau encodere vor incerca sa isi dea seama (sa estimeze) care sunt datele care lipsesc. De exemplu, daca un bloc este distorsionat in mijlocul unui cer albastru, receiverul poate estima ca blocul ar trebui sa arate la fel ca blocurile video din jur. Uneori poate fi folosit FEC (forward error correction). Cumva ca o verificare de eroare preventiva, expeditorul calculeaza un cod de corectie si il ataseaza datelor trimise. Receptorul foloseste acest cod pentru a repara bitii corupti. FEC este utilizat adesea in domeniul audio. In plus, este o caracteristica standard in SRT (Secure Reliable Transport), care a fost introdus recent de Wowza si Haivision.

 

Evident, erorile in transmisiile prin retea nu sunt un lucru bun. Dar, tehnicile de atenuare a acestor erori au devenit atat de robuste incat consideram ca transmisiile pe Internet o chestiune de rutina. Cu douazeci si cinci de ani in urma, am fi crezut ca acest lucru este imposibil.