MPEG-TS
Fluxul de transport ( TS , TP , MPEG-TS sau M2TS ) este un protocol pentru transmiterea de date audio și video descris în MPEG2 Partea 1 [1] . Scopul dezvoltării acestui standard este de a multiplexa date audio și video și de a sincroniza ieșirea acestora. Transport Stream deschide oportunități pentru corectarea erorilor vehiculelor precum DVB și ATSC .
TS este un format de container media care încapsulează pachete de fluxuri elementare și alte date.
Structura fluxului
În fluxul de transport, pot fi distinse mai multe niveluri de abstractizare, a căror structură ierarhică seamănă cu modelul de rețea OSI . De exemplu, un flux care conține videoclip poate fi reprezentat după cum urmează:
- Un amestec de programe diferite.
- Flux elementar pachetizat (PES)
- Flux elementar (ES)
- Grup de imagini (GOP) - oferă acces aleatoriu la imagine
- O singură imagine (cadru)
- Slice - parte a cadrului alocată pentru a preveni propagarea erorilor de cuantizare
- Macroblock - în compoziție - de la 6 la 12 blocuri DCT.
- Bloc de codare elementar (DCT-block) 8x8 pixeli
Elemente importante ale fluxului de trafic
Pachetul
Pachetul, unitatea de bază a unui flux de transport.
Antetul pachetului:
- antetul începe cu un octet de sincronizare predefinit (8 biți) 0x47 (0100 0111).
- Următorii trei indicatori de biți sunt folosiți pentru a indica modul în care ar trebui să fie tratată sarcina utilă.
- 1. Primul steag indică o eroare de transport (indicator de eroare de transport)
- 2. Al doilea indicator indică începutul încărcăturii utile (Indicatorul de pornire a unității de sarcină utilă). Când încărcarea utilă Transport Stream a pachetului conține date PSI, payload_unit_start_indicator este setat la 1. Dacă pachetul Transport Stream nu conține date PSI, atunci valoarea payload_unit_start_indicator va fi 0. Consultați Secțiunile 2.4.4.1 și 2.4.4.2. Acest lucru se aplică și fluxurilor private cu stream_type 5 (consultați Tabelul 2-29).
- 3. Al treilea flag indică bitul de prioritate de transport (Prioritate de transport)
- steagurile sunt însoțite de un identificator de pachet (13 biți) - PID. Folosit pentru a identifica în mod unic fluxul căruia îi aparține un pachet (de exemplu, pachetele PES corespunzătoare ES) generate de multiplexor. PID-ul permite receptorului să diferențieze fluxul căruia îi aparține fiecare pachet primit. Unele valori PID sunt predefinite și sunt utilizate pentru a indica diferite fluxuri de informații de control. Un pachet cu un PID necunoscut care nu este cerut de destinatar este pur și simplu aruncat. Valoarea specifică PID 0x1FFF este rezervată pentru a indica faptul că pachetul este un pachet nul (și ar trebui ignorat de receptor).
- următorii doi biți de serviciu sunt utilizați de procedurile de acces condiționat la sarcina utilă criptată a unor pachete TS (Transport Scrambling Control):
- 1.00 - Pachet necriptat.
- 2.01 - REZERVAT pentru utilizare viitoare.
- 3.10 - Pachetul este criptat cu o cheie pară.
- 4. 11 - Pachetul este criptat cu o cheie impară.
- Doi biți de serviciu ai câmpului de adaptare, care pot avea patru valori:
- 1. 01 - nici un câmp de adaptare (adaptare_field), numai sarcină utilă (payload_data)
- 2. 10 - numai câmpuri de adaptare (adaptare_field), fără încărcătură (payload_data)
- 3. 11 - câmpuri de adaptare (adaptation_field) urmate de payload (payload_data)
- 4.00 - REZERVAT de ISO/IEC pentru utilizare viitoare
- În cele din urmă există contorul de continuitate (4 biți)
Restul pachetului constă în informații utile. Pachetele au o lungime de 188 de octeți, dar mediul de comunicare poate adăuga câțiva octeți pentru a corecta erorile de pachet. DVB-ASI folosește 204 octeți și 208 octeți ATSC ca pachet de flux de transport. (DVB t=8 și ATSC t=10, adică octeți suplimentari = 2*t). Transmisia ATSC adaugă 20 de octeți de corectare avansată a erorilor Reed-Solomon pentru a crea un pachet cu o lungime de 208 de octeți. Dimensiunea pachetului de 188 de octeți a fost aleasă inițial pentru compatibilitatea cu sistemele ATM.
Câmpul de adaptare
Titlul AF:
- Lungime AF - octet, lungime AF înainte de pachete de date
- DI (Indicator de discontinuitate) - setat la 1 dacă acest pachet are o discontinuitate în fluxul CC sau PCR.
- RAI (Random Access Indicatior) - instalat într-un pachet din care este posibil să începeți decodarea fără erori
- Indicator de prioritate a fluxului elementar - setat, pentru ca un flux elementar să fie tratat ca „prioritate ridicată”
- PCR prezent - setați dacă AF conține un câmp PCR (referință ceas program, 48 de biți)
- OPCR prezent - setați dacă AF conține câmp OPCR (referința ceasului programului original, 48 de biți), utilizat la copierea TS
- Indicator punct de îmbinare - setați dacă AF conține un câmp de numărătoare inversă Splice (8 biți)
- Flag de transport date private - setați dacă AF conține date private (câmp de lungime 8 biți + date)
- Flag extensie câmp de adaptare - setați dacă extensia AF (antet + date) este prezentă în pachet
PID
Fiecare tabelă sau flux elementar dintr-un flux de transport este identificat printr-un PID de 13 biți. Demultiplexorul extrage fluxuri elementare din fluxul de transport comun, combinându-le în fluxuri cu același PID. Majoritatea aplicațiilor intenționează să utilizeze multiplexarea în timp pentru a decide cât de des va apărea un anumit PID în fluxul de transport.
Programe
Fluxul de transport folosește conceptul de „program”. Fiecare program este descris într-un tabel de hartă de program (PMT), care are un PID unic, iar fluxurile elementare asociate cu acel program, care au propriile PID-uri, sunt listate în PMT. De exemplu, un flux de transport utilizat în televiziunea digitală poate consta din trei programe și poate transporta trei canale de televiziune. Să presupunem că fiecare canal constă dintr-un flux video și unul sau două fluxuri audio și orice metadate necesare. Un receptor care dorește să decodeze unul dintre canale folosește pentru decodare numai canale care au PID-uri care sunt asociate cu programul de interes.
Informații specifice programului (PSI)
Informații specifice programului
- Tabelul Asociației Programului (PAT),
- Tabelul hărților programului (PMT),
- Tabel de acces condiționat (CAT),
- Tabelul de informații de rețea (NIT).
Specificația MPEG-2 nu specifică formatul CAT și NIT.
PAT
Tabelul de asociere a programelor (PAT) conține PID-urile tuturor PMT-urilor. Propul ei PID este întotdeauna 0x0.
PMT
Program Map Map (PMT) conține PID-urile și principalele caracteristici ale fluxurilor elementare ale unui anumit program - video, sunet, date suplimentare. Fiecare program are propriul PMT cu propriul PID. În plus, PMT conține mesaje CA ECM dacă programul conține fluxuri elementare criptate.
PCR
Pentru ca un decodor să redea programe la momentul corect, la viteza corectă și în sincronizare, este obișnuit ca programele să transmită periodic o referință de ceas de program , sau PCR, într-unul dintre fluxurile programului. Acesta se mai numește și „Ceasul principal”. Intervalele de timp în MPEG2 sunt calculate din această frecvență. De exemplu, marcajul de timp, prezentare ( PTS ), corespunde PCR. Primii 33 de biți corespund unei frecvențe de referință de 90 kHz. O extensie a secvenței de 9 biți corespunde unei frecvențe de 27 MHz.
Pachete nule
Unele protocoale de transmisie, cum ar fi cele din standardele ATSC și DVB , sunt sever limitate de cerințele de bitrate ale fluxului de transport. Astfel, pentru ca fluxul de date să mențină o rată de biți codificată constantă, Multiplexorul trebuie să fie capabil să adauge pachete suplimentare la flux. Pachetele cu PID 0x1FFF servesc doar acestui scop. Câmpul de sarcină utilă al acestor pachete nu conține nicio informație utilă, astfel încât receptorul, care primește un astfel de pachet, ignoră conținutul acestuia.
Modificarea fluxului de transport, specificația de acces aleatoriu la media (M2TS)
timecode
Fluxul de transport a fost creat pentru casetă și difuzare, așa că au fost necesare modificări pentru utilizarea în dispozitivele media cu acces aleatoriu, cum ar fi noua generație de camere digitale care înregistrează pe DVD, Blu-ray, hard disk-uri sau SSD, carduri de memorie.
Sistemul de acces aleatoriu poate stoca pachete de date într-un buffer dacă dispozitivul de stocare nu este pregătit (de exemplu, în timp ce dispozitivul pornește).
Pachetele sunt scrise în afara ordinii. O pistă specială stochează codul de timp de 4 octeți (TC) adăugat la pachetele standard de 188 de octeți. Rezultatul este un pachet de 192 de octeți. Toate acestea se numesc în mod informal flux M2TS. Asociația de discuri Blu-ray l-a numit „BDAV MPEG-2 transport stream”. JVC l-a numit TOD (poate un acronim pentru „Transport stream on disc”) atunci când l-a folosit în camerele video HDD precum GZ-HD7. Fluxul de transport M2TS este folosit și pentru fișierele video AVCHD, care au adesea extensia MTS.
Programe care acceptă fișiere M2TS
Multiplatformă
Note
- ↑ net.net - Una dintre adresele principale ale Internetului (link indisponibil) . Preluat la 6 iulie 2008. Arhivat din original la 11 iunie 2010. (nedefinit)
- ↑ Accesarea paginii de pornire MPlayer . Consultat la 8 iulie 2009. Arhivat din original la 16 iunie 2008. (nedefinit)
- ↑ VideoLAN - Pagina web oficială pentru VLC media player, un cadru video open source . Data accesului: 8 iulie 2009. Arhivat din original la 23 februarie 2011. (nedefinit)
- ↑ CCCP - Combined Community Codec Pack (link descendent) . Preluat la 29 august 2018. Arhivat din original la 9 iunie 2017. (nedefinit)
- ↑ Forumurile KMPlayer . Data accesului: 14 septembrie 2009. Arhivat din original la 24 decembrie 2009. (nedefinit)
- ↑ 1 2 Squared 5 - Convertor video MPEG Streamclip pentru Mac și Windows . Preluat la 13 mai 2022. Arhivat din original la 09 mai 2022. (nedefinit)
- ↑ Software de editare video VideoReDo MPEG . Preluat la 13 mai 2022. Arhivat din original la 17 mai 2008. (nedefinit)
- ↑ Free-Codecs.com:: Descărcați VobEdit 0.6: VobEdit este un instrument pentru alăturarea, tăierea, demultiplexarea fișierelor VOB DVD . Preluat la 8 iulie 2009. Arhivat din original la 3 august 2009. (nedefinit)
- ↑ Playerul media, playerul de film, playerul YouTube, playerul video, playerul AVCHD, playerul divx, playerul gratuit - BS.Player.com . Preluat la 13 mai 2022. Arhivat din original la 24 decembrie 2017. (nedefinit)
- ↑ JetAudio . Consultat la 29 decembrie 2009. Arhivat din original la 30 decembrie 2009. (nedefinit)
Link -uri
MPEG (Moving Picture Experts Group) |
---|
|
Secțiuni MPEG-1 |
|
---|
Secțiuni MPEG-2 |
|
---|
Secțiuni MPEG-4 |
|
---|
Secțiuni MPEG-7 |
- Partea 2: Limbajul de descriere a definiției (DDL)
|
---|
Secțiuni MPEG-21 |
- Părțile 2, 3 și 9: Obiect digital
- Partea 5: Limbajul de descriere a drepturilor (REL)
|
---|
Secțiuni MPEG-D |
- Partea 1: Audio spațial MPEG
|
---|