MPEG-TS
Transportstrømmen ( TS , TP , MPEG-TS eller M2TS ) er en protokol til transmission af lyd- og videodata beskrevet i MPEG2 del 1 [1] . Målet med at udvikle denne standard er at multiplekse lyd- og videodata og synkronisere deres output. Transport Stream åbner muligheder for fejlretning af køretøjer som DVB og ATSC .
TS er et mediecontainerformat , der indkapsler pakker med elementære strømme og andre data.
Flowstruktur
I transportstrømmen kan der skelnes mellem flere abstraktionsniveauer, hvis hierarkiske struktur ligner OSI-netværksmodellen . For eksempel kan en strøm, der indeholder video, repræsenteres som følger:
- En blanding af forskellige programmer.
- Pakkeiseret elementær strøm (PES)
- Elementær strøm (ES)
- Gruppe af billeder (GOP) - giver tilfældig adgang til billedet
- Enkelt billede (ramme)
- Udsnit - en del af rammen tildelt for at forhindre udbredelse af kvantiseringsfejl
- Makroblok - i sammensætningen - fra 6 til 12 DCT-blokke.
- Elementær kodningsblok (DCT-blok) 8x8 pixels
Vigtige elementer i trafikstrømmen
Pakke
Pakke, den grundlæggende enhed i en transportstrøm.
Pakkeoverskrift:
- headeren starter med en foruddefineret synkroniseringsbyte (8 bit) 0x47 (0100 0111).
- De næste tre bitflag bruges til at angive, hvordan nyttelasten skal håndteres.
- 1. Det første flag angiver en transportfejl (Transport Error Indicator)
- 2. Det andet flag angiver begyndelsen af nyttelasten (Startindikator for nyttelastenhed). Når pakkens Transport Stream-nyttelast indeholder PSI-data, er payload_unit_start_indicator sat til 1. Hvis Transport Stream-pakken ikke indeholder nogen PSI-data, vil værdien af payload_unit_start_indicator være 0. Se afsnit 2.4.4.1 og 2.4.4.2. Dette gælder også for private streams med stream_type 5 (se tabel 2-29).
- 3. Det tredje flag angiver transportprioritetsbit (Transport Priority)
- flag er ledsaget af en pakke-id (13 bit) - PID. Bruges til entydigt at identificere den strøm, som en pakke tilhører (f.eks. PES-pakker svarende til ES), genereret af multiplekseren. PID'en gør det muligt for modtageren at differentiere det flow, som hver modtaget pakke tilhører. Nogle PID-værdier er foruddefinerede og bruges til at angive forskellige strømme af kontrolinformation. En pakke med et ukendt PID, som ikke kræves af modtageren, kasseres simpelthen. Den PID-specifikke værdi 0x1FFF er reserveret til at angive, at pakken er en nul-pakke (og bør ignoreres af modtageren).
- de følgende to servicebits bruges af de betingede adgangsprocedurer til den krypterede nyttelast af nogle TS-pakker (Transport Scrambling Control):
- 1.00 - Ukrypteret pakke.
- 2.01 - RESERVERET til fremtidig brug.
- 3.10 - Pakken er krypteret med en lige nøgle.
- 4. 11 - Pakken er krypteret med en ulige nøgle.
- To servicebits af tilpasningsfeltet, som kan have fire værdier:
- 1. 01 - intet tilpasningsfelt (adaptation_field), kun nyttelast (payload_data)
- 2. 10 - kun tilpasningsfelter (adaptation_field), ingen nyttelast (payload_data)
- 3. 11 - tilpasningsfelter (adaptation_field) efterfulgt af nyttelast (payload_data)
- 4.00 - RESERVERET af ISO/IEC til fremtidig brug
- Endelig er der kontinuitetstælleren (4 bit)
Resten af pakken består af nyttig information. Pakker er 188 bytes lange, men kommunikationsmiljøet kan tilføje nogle bytes for at rette pakkefejl. DVB-ASI bruger 204 bytes og 208 bytes ATSC som transportstrømpakken. (DVB t=8 og ATSC t=10, dvs. yderligere bytes = 2*t). ATSC-transmissionen tilføjer 20 bytes Reed-Solomon avanceret fejlkorrektion for at skabe en pakke, der er 208 bytes lang. Pakkestørrelsen på 188 byte blev oprindeligt valgt for kompatibilitet med ATM-systemer.
Tilpasningsfelt
AF titel:
- AF-længde - byte, AF-længde før pakkedata
- DI (Discontinuity Indicator) - indstillet til 1, hvis denne pakke har en diskontinuitet i CC- eller PCR-flowet.
- RAI (Random Access Indicator) - installeret i en pakke, hvorfra det er muligt at starte afkodning uden fejl
- Prioritetsindikator for elementær strøm - indstillet til, at en elementær strøm skal behandles som "høj prioritet"
- PCR til stede - indstilles, hvis AF indeholder et PCR-felt (programurreference, 48 bit)
- OPCR til stede - indstil hvis AF indeholder OPCR-felt (Original Program clock reference, 48 bit), bruges ved kopiering af TS
- Splejsningspunktflag - indstilles, hvis AF indeholder et splejsningsnedtællingsfelt (8 bit)
- Transport privat dataflag - indstil hvis AF indeholder private data (længdefelt 8 bit + data)
- Tilpasningsfeltudvidelsesflag - indstilles hvis AF-udvidelse (header + data) er til stede i pakken
PID
Hver tabel eller elementær strøm i en transportstrøm er identificeret med en 13-bit PID. Demultiplekseren udtrækker elementære strømme fra den fælles transportstrøm og kombinerer dem til strømme med samme PID. De fleste applikationer planlægger at bruge tidsmultipleksing til at bestemme, hvor ofte en bestemt PID skal vises i transportstrømmen.
Programmer
Transportstrømmen bruger begrebet "program". Hvert program er beskrevet i en programkorttabel (PMT), som har et unikt PID, og de elementære strømme, der er knyttet til dette program, som har deres egne PID'er, er opført i PMT. For eksempel kan en transportstrøm, der bruges i digitalt tv, bestå af tre programmer og have tre tv-kanaler. Antag, at hver kanal består af en videostream og en eller to lydstreams og alle nødvendige metadata. En modtager, der ønsker at afkode en af kanalerne, bruger kun kanaler til afkodning, som har PID'er, der er knyttet til programmet af interesse.
Programspecifik information (PSI)
Programspecifik information
- Program Association Table (PAT),
- Programkorttabel (PMT),
- Tabel med betinget adgang (CAT),
- Netværksinformationstabel (NIT).
MPEG-2-specifikationen specificerer ikke CAT- og NIT-formatet.
PAT
Program Association Table (PAT) indeholder PID'erne for alle PMT'er. Hendes egen PID er altid 0x0.
PMT
Programkorttabellen (PMT) indeholder PID'erne og hovedegenskaberne for de elementære strømme i et bestemt program - video, lyd, yderligere data. Hvert program har sit eget PMT med sit eget PID. Derudover indeholder PMT'en CA ECM-meddelelser, hvis programmet indeholder krypterede elementære strømme.
PCR
For at en dekoder kan afspille programmer på det rigtige tidspunkt, med den korrekte hastighed og synkroniseret, er det almindeligt, at programmer periodisk sender en Program Clock Reference eller PCR i en af programmets streams. Dette kaldes også 'Master Clock'. Tidsintervaller i MPEG2 beregnes ud fra denne frekvens. For eksempel svarer tidsstemplet, præsentation ( PTS ), til PCR. De første 33 bit svarer til en referencefrekvens på 90 kHz. En sekvensudvidelse på 9 bit svarer til en frekvens på 27 MHz.
Nul-pakker
Nogle transmissionsprotokoller, såsom dem i ATSC- og DVB-standarderne , er stærkt begrænset af transportstrømmens bithastighedskrav. For at datastrømmen kan opretholde en konstant hårdkodet bithastighed, skal multiplekseren således være i stand til at tilføje yderligere pakker til strømmen. Pakker med PID 0x1FFF tjener kun dette formål. Nyttefeltet for disse pakker indeholder ingen nyttig information, så modtageren, der modtager en sådan pakke, ignorerer dens indhold.
Transport Stream Modification, Random Media Access Specification (M2TS)
tidskode
Transportstrømmen blev oprettet til kassette og udsendelse, så ændringer var nødvendige for brug i medieenheder med tilfældig adgang, såsom den nye generation af digitale kameraer, der optager til DVD, Blu-ray, harddiske eller SSD, hukommelseskort.
Random access-systemet kan gemme pakkedata i en buffer, hvis lagerenheden ikke er klar (f.eks. mens enheden starter op).
Pakker er skrevet ude af drift. Et særligt spor gemmer deres 4-byte tidskode (TC) tilføjet til standard 188-byte pakker. Resultatet er en 192-byte pakke. Alt dette kaldes uformelt en M2TS-stream. Blu-ray Disc Association kaldte det "BDAV MPEG-2 transportstream". JVC kaldte det TOD (måske et akronym for "Transport stream on disc"), da det brugte det i HDD-videokameraer som GZ-HD7. M2TS-transportstrømmen bruges også til AVCHD-videofiler, som ofte har MTS-udvidelsen.
Programmer, der understøtter M2TS filer
Multiplatform
Noter
- ↑ net.net - En af internettets premiereadresser (utilgængeligt link) . Hentet 6. juli 2008. Arkiveret fra originalen 11. juni 2010. (ubestemt)
- ↑ Går ind på MPlayers hjemmeside . Hentet 8. juli 2009. Arkiveret fra originalen 16. juni 2008. (ubestemt)
- ↑ VideoLAN - Officiel webside for VLC-medieafspiller, en open source-videoramme . Dato for adgang: 8. juli 2009. Arkiveret fra originalen den 23. februar 2011. (ubestemt)
- ↑ CCCP - Combined Community Codec Pack (downlink) . Hentet 29. august 2018. Arkiveret fra originalen 9. juni 2017. (ubestemt)
- ↑ KMPlayers fora . Dato for adgang: 14. september 2009. Arkiveret fra originalen 24. december 2009. (ubestemt)
- ↑ 1 2 Squared 5-MPEG Streamclip videokonverter til Mac og Windows . Hentet 13. maj 2022. Arkiveret fra originalen 09. maj 2022. (ubestemt)
- ↑ VideoReDo MPEG-videoredigeringssoftware . Hentet 13. maj 2022. Arkiveret fra originalen 17. maj 2008. (ubestemt)
- ↑ Free-Codecs.com:: Download VobEdit 0.6 : VobEdit er et værktøj til at sammenføje, klippe, de-multiplexe DVD VOB-filer . Hentet 8. juli 2009. Arkiveret fra originalen 3. august 2009. (ubestemt)
- ↑ Medieafspiller, filmafspiller, YouTube-afspiller, videoafspiller, AVCHD-afspiller, divx-afspiller, gratis afspiller - BS.Player.com . Hentet 13. maj 2022. Arkiveret fra originalen 24. december 2017. (ubestemt)
- ↑ JetAudio . Hentet 29. december 2009. Arkiveret fra originalen 30. december 2009. (ubestemt)
Links
MPEG (Moving Picture Experts Group) |
---|
|
MPEG-1 sektioner |
|
---|
MPEG-2 sektioner |
|
---|
MPEG-4 sektioner |
|
---|
MPEG-7 sektioner |
- Del 2: Definition Beskrivelse Sprog (DDL)
|
---|
MPEG-21 sektioner |
- Del 2, 3 og 9: Digitalt objekt
- Del 5: Rettighedsbeskrivelse Sprog (REL)
|
---|
MPEG-D sektioner |
- Del 1: MPEG Spatial Audio
|
---|