MPEG2-TS 傳輸串流(MPEG-2 Transport Stream;又稱MPEG-TS、MTS、TS)是一種標準數碼封裝格式,用來傳輸和儲存視像、音訊與頻道、節目資訊,應用於數字電視廣播系統,如DVBATSCISDB[3]:118IPTV等。

MPEG2 傳輸串流格式
Transport Stream
副檔名
.ts, .tsv, .tsa
網路媒體型式
video/MP2T[1]:38
開發者MPEG
首次發佈1995年 (1995)[2]
格式類型影片檔格式(媒體流格式)
作為容器音訊、視像、數據
延伸為M2TS, TOD
標準ISO/IEC 13818-1, ITU-T Recommendation H.222.0[2]

MPEG2-TS定義於MPEG-2第一部份:系統(即ISO/IEC標準13818-1或ITU-T Rec. H.222.0)。[2]

MPEG2-TS面向的傳輸媒介是地面衛星可靠性較低的傳輸媒介,這一點與面向較可靠媒介如DVD等的MPEG PS英語MPEG PS不同。[3]:117

傳輸協定 編輯

 
電影、新聞、體育轉播等節目內容與各種包含控制資訊的表,如節目資訊(PSI)、電子節目表(EPG)都被封裝進TS封包(TS packet),在TS中多路復用,並通過天線以射頻電磁波傳輸到終端裝置。終端裝置(如具備地面數字電視功能的電視機)接收射頻訊號並解碼後進行播放

1個TS(傳輸流)中封裝了多個子TS。通常子TS是封包化基本流英語Packetized elementary streamPES, Packetized elementary stream);封包化基本流中封裝基本流英語Elementary StreamES,Elementary Stream),或者非MPEG的編碼流,例如AC-3DTS音訊流,MJPEGJPEG 2000視像流、字幕所需要的文字和圖像、用於定義基本流的表、乃至電視台定義的電子節目表(EPG)等。[3]:117

一些相互獨立的流可以被復用在一個TS里,例如幾個不同的電視頻道或者同一個電影的多個拍攝角度。

每個傳輸流被分割為大小最大為188位元組的TS封包(TS Packet),它是多路復用(multiplexing)的基本單位。多個不同的ES(基本流)的內容會分別被封裝到TSP中通過同一個TS傳輸。由於封包(封包)尺寸較小,復用對各個ES造成的時延也較低,對傳輸誤碼的耐受性也強於那些將一影格畫面封裝到一整個包里的容器格式,如MPEG PS和AVIMOV/MP4MKV[4]。這對於視像會議等對即時性要求高的場景特別有意義,因為單個封包損壞不會造成很大的語音延遲。

TS通常以固定位元速率傳輸。固定位元速率傳輸時,如果上層待傳輸內容不足,會傳送空封包[5]以佔位。藍光光碟中使用的MPEG-2 TS也使用了固定位元速率。

下表為MPEG-2 TS協定的一個實際應用的例子:日本地面數字電視ISDB-T。表中列舉了TS、PES、ES層次上,ISDB-T這個具體的系統使用的具體標準。[3]:118

MPEG-2 TS
協定層次劃分
ISDB-T的協定棧
ES/Table MPEG-2 視像(H.262
(ISO/IEC 13818-2)
MPEG-2 AAC
(ISO/IEC 13818-7)
數據服務(獨立PES模式)
(ARIB STD-B24)
PSI/SI
(ISO/IEC 13818-1、ARIB STD-B10)
數據服務(輪播英語Data_and_object_carousel模式[註 1]
(ARIB STD-B24)
TRMP日語コンテンツ権利保護専用方式(加密)
ARIB STD-B25)
PES/Section MPEG-2 PES
(ISO/IEC 13818-1、ARIB STD-B32)
表的分節(Table Section[註 2]
(ISO/IEC 13818-1、ARIB STD-B32)
TS MPEG-2 TS
(ISO/IEC 13818-1)

TS中的主要概念 編輯

TS封包 編輯

TS封包(TS packet)是TS的基本傳輸單位。在TS範圍以外並不存在描述一個TS的屬性的全域性的描述體。TS自身的全部資訊僅由其自身描述,TS僅由一系列的TS封包構成。

每個TS封包以固定的同步位元組英語Syncword起始,這個同步位元組的值為0x47,它也是TS封包頭的一部分[3]:126。TS封包的必選頭長度為4位元組,其後為可選部分,為載荷適配域。TS封包的頭部固定以大端序讀寫。TS封包長度為188位元組。

如同所有的傳輸協定一樣,雖然TS封包本身長度為188位元組,其底層傳輸機制可以為每個TS封包附加一些資訊以便傳輸,例如前向錯誤更正用的校驗部分。DVBISDB數字電視格式的前向錯誤更正資訊有16個位元組,而ATSC格式有20個位元組[7]

TS封包格式 編輯

TS封包包括頭部和載荷兩部分。頭部包括固定長度部分和可選部分,可選部分中包括適配域。適配域有可選的擴充部分。[3]:125,126

本節介紹TS封包頭部中的固定部分和適配域(不包含適配域擴充部分)。

TS封包格式[3]:126
名稱 位元 描述
固定部分
(4位元組)
同步位元組 sync byte 8 0x47
傳輸錯誤指示位 Transport Error Indicator (TEI) 1 傳送時(調制前)值為0。接收方的解調器在無法成功解調(即使有前向錯誤更正機制)TS封包內容時,將該位設置為1,表示該TS封包損壞。[8]
載荷單元開始指示位 Payload Unit Start Indicator 1 負載單元起始標示符,一個完整的封包開始時標記為1, 表示攜帶的是PSIPES英語Packetized Elementary Stream第一個包
傳輸優先級 Transport Priority 1 值為1時,在相同PID的封包中具有更高的優先權。
封包ID PID 13 用於辨識TS封包的ID。一個PID對應一種特定的PSI訊息或者一個特定的PES。
傳輸加擾控制 Transport Scrambling control (TSC) 2 值為'00'時表示載荷未加密。其餘值由具體系統定義。以DVBCSA英語Common Scrambling Algorithm[9]:8ATSCDCS為例:
  • '01' = 保留 (供未來使用),
  • '10' = 以偶數金鑰加密
  • '11' = 以奇數金鑰加密
適配域存在標誌 Adaptation field exist 2
  • '00' = 保留 (供未來使用)
  • '01' = 無適配域,僅有載荷
  • '10' = 僅有適配域
  • '11' = 適配域和載荷都存在
連續性計數器 Continuity counter 4 取值為0x00到0x0F,迴圈。用於檢查同一個PID的TS封包的連續性。每當一個TS封包中包含載荷時,該計數器加1。
可選部分 適配域 Adaptation field 0或更多 當適配域存在標誌為'10'或'11'時存在
載荷 Payload Data 0或更多 當適配域存在標誌為'01'或'11'時存在

適配域 編輯

適配域格式[3]:128
名稱 位元數 描述
固定部分
(2位元組)
適配域長度 Adaptation Field Length 8 適配域的長度,單位為位元組,不包含當前位元組。
不連續指示位 Discontinuity indicator 1 如果根據連續性計數器或PCR計算,確認當前封包處於不連續狀態,則取值為1。
隨機訪問指示位 Random Access indicator 1 如果當前封包是一個PES的起始,取值為1。
ES優先級指示位 Elementary stream priority indicator 1 取值為1時ES優先級更高。
PCR標識 PCR flag 1 1表示適配域中有PCR域
OPCR標識 OPCR flag 1 1表示適配域中有OPCR域
接續點標識 Splicing point flag 1 1表示適配域中有接續倒數計數器域
傳輸私有數據標識 Transport private data flag 1 1表示適配域中有私有數據域
適配域擴充標識 Adaptation field extension flag 1 1表示適配域中有適配域擴充域
可選部分 PCR 33+6+9 Program Clock Reference。結構為33位的低精度部分+6位的填充部分+9位的高精度部分。具體說明參見PCR一節。
原PCR OPCR 33+6+9 Original PCR。格式與PCR相同。在TS複製時使用。
接續倒數計時器 Splice countdown 8 指示從當前封包起多少個封包之後接續點出現(取值可為負)。
填充位元組 可變長度

PID 編輯

每一種PSI表和每個ES都對應一個PID值,它是將TS解復用為ES和PSI表的依據。常見的實現中,多個PES在TS中以時分複用方式存在,故而各ES的PID會輪流出現。

節目 編輯

節目(Program)這個概念存在於TS中。每個節目在TS中對應一個節目對映表PMT),不同的節目的PMT具有不同的PID。PMT中會指定與這個節目相關的所有ES的PID。

數字電視的一個TS中可能包含3個或更多[註 3]的節目。假設每個節目包含1個視像ES,1到2個音訊ES,以及一些對應的PSI、數據服務等,播放電視節目的裝置並不需要解析所有節目的視像、音訊流,只需要根據PID,選擇相應的ES,解析並播放即可,與節目無關的PID對應的TS封包可以全部丟棄。

包含多個節目的TS稱為多節目TS(MPTS),只包含1個節目的TS成為單節目TS(SPTS)。

PSI 編輯

節目專用資訊(PSI,Program Specific Information),描述特定節目相關的屬性。MPEG-2標準規定了4種PSI:節目關聯表(PAT,Program Association Table)、節目對映表(PMT,Program Map Table)、條件訪問表(CAT,Conditional Access Table)以及網絡資訊表(NIT,Network Information Table)[10]:107。其中MPEG-2標準規定了PAT和PMT的具體結構。

在基於MPEG-2 TS的一些系統,如地面數字電視DVB[11]:17,18ATSC[12][註 4]ISDB-T[13]等擴充了MPEG2-TS,引入了服務資訊(SI,Service Information)這一概念。SI是PSI的補充,在協定層次上與PSI相同[3]:123

PAT 編輯

PAT (PAT: Program Association Table)列出該TS內所有節目。其PID固定為0x0000。每個節目由一個16位元的欄位program_number指定。每個program_number都有一個對應的PID,用來指定該節目的PMT。PAT中不包含節目資訊時,program_number為0x0000,則應從NIT(PID為0x0010)取得節目資訊。[3]:128,129

PMT 編輯

PMT (PMT: Program Map Table)包含特定節目相關的資訊,每一個節目有一個PMT。雖然MPEG-2協定標準允許多個PMT使用相同的PID,常見的系統中,如ATSC、SCTE中,不同的PMT有各自的PID。

PMT包含的資訊有特定節目的program_number,以及該節目對應的所有ES的PID[註 5]。此外還有可選的描述子用來提供整個MPEG-2系統的屬性和特定ES的屬性。[3]:129

CAT 編輯

CAT (CAT: Conditional Access Table) 用於節目的加密與解密。CAT對應PID為0x0001。

NIT 編輯

NIT (NIT: Network Information Table 網絡資訊表)提供TS的相關資訊,如頻率、調制方式。在掃描所有頻道的節目時,關鍵資訊來自各頻道的TS中的NIT。[3]:130

PCR 編輯

節目時鐘參考(PCR,Program Clock Reference)使得解碼後的內容可以正確地同步播放。最多每100ms,接收方會從TS封包的適配域中得到特定節目的PCR值,PCR的PID由該節目的PMT中的PCR_PID域指定。解碼系統應當基於PCR生成高精度的系統校時時鐘(System Timing Clock,STC),用於同步聲音ES和視像ES的內容。STC是MPEG-2系統裏校時的基準。例如,表示時間戳英語Presentation timestamp(Presentation timestamp,PTS)的值即是以PCR值為基準的偏移量。[10]:46,47

PCR包括一個33位元的低精度部分(90kHz)和一個9位元的高精度部分(27MHz,取值為0-299)[3]:134。PCR容許的最大抖動[註 6]為+/-500ns[10]:12

空封包 編輯

空封包(null packet)存在於某些使用MPEG2-TS的系統中,例如地面數字電視系統ATSC和DVB,用於保證固定位元速率。在從ES復用到TS的過程中,如果ES的數據量不足用盡TS的位元速率,則復用器模組會插入空封包。空封包使用保留的PID值0x1FFF。空封包的載荷沒有意義,接收者應當丟棄[10]:8,19,20

數字電視以外的應用 編輯

數碼攝像放像機 編輯

MPEG-2 TS原本的設計用途是數字電視廣播,不過後來用在數碼攝像放像機、錄像機、播放機上。用於非廣播類用途時,其TS封包格式有所不同:在封包上增加了4個位元組長的時間碼(Time Code),使封包長度變為192位元組[14]:15[15]。時間碼使得播放系統可以在允許隨機讀取的儲存媒介中快速找到特定時間點的視像內容[16]。藉助時間碼也可以用來同步多個攝像放像機拍攝的內容。

JVC在基於硬碟儲存的數碼攝像放像機英語camcorder產品中將這種流稱為TOD英語MOD and TOD[17]

藍光 編輯

以前述格式構成的流被藍光光碟聯盟稱為「BDAV MPEG-2 transport stream」(字面意思為BDAV版本的MPEG2-TS),其副檔名為.m2ts[14]:15[16],俗稱M2TS流。藍光的影碟以BDAV(Blu-ray Disc Movie)格式的BDMV容器儲存音訊、視像以及其他內容,用於BD-R和BD-RE等格式的錄製中[18][19]。由於藍光的M2TS和標準的MPEG TS格式基本相同,其裝置能夠以非常小的延遲轉錄數字電視內容[15]。由於MPEG-2 TS原本就是面向即時播放的格式,使得藍光的內容可以簡單地從流中截取任意一段,降低了視像剪輯的處理成本。此外,這種流格式也使得儲存媒介的物理損壞對內容的影響降到最小[20]:22

關聯條目 編輯

註釋 編輯

  1. ^ 依據ISO/IEC 13818-6[6]
  2. ^ 參看英文維基百科條目Program-specific_information#Table Sections
  3. ^ 日本格式ISDB-T中,1個TS通常含有3個標清節目和1個1Seg節目
  4. ^ 節目與系統資訊協定英語Program and System Information Protocol(PSIP)
  5. ^ 準確地說是PES的PID
  6. ^ 例如復用、解復用、傳輸造成的抖動

參考來源  編輯

  1. ^ [RFC3555]MIME Type Registration of RTP Payload Formats. IETF. 2003-07 [2018-06-05]. (原始內容存檔於2017-07-07) (英語). 
  2. ^ 2.0 2.1 2.2 Recommendation H.222.0 Information technology – Generic coding of moving pictures and associated audio information: Systems. ITU-T. [2018-06-05]. (原始內容存檔於2019-12-25) (英語). 
  3. ^ 3.00 3.01 3.02 3.03 3.04 3.05 3.06 3.07 3.08 3.09 3.10 3.11 3.12 川口英; 辰巳博章. 地デジ受信機のしくみ. CQ出版. 2010-06. ISBN 978-4789845434 (日語). 
  4. ^ MPEG2-TS(トランスポートストリーミング)について解説. ハイテックインター株式會社. 2018-01-18 [2018-06-06]. (原始內容存檔於2018-06-06) (日語). 
  5. ^ Gorry Fairhurst. MPEG-2 Transmission. 阿伯丁大學. 2001-01 (英語). 
  6. ^ 標準規格概要(STD-B24). 電波產業會. [2018-06-05]. (原始內容存檔於2020-08-06) (日語). 
  7. ^ Wes Simpson. The Question: To FEC Or Not To FEC?. TV Technology. 2013-09-16 (英語). [永久失效連結]
  8. ^ FAQ. COOLSTF.com. [2018-06-05]. (原始內容存檔於2020-07-05) (英語). 
  9. ^ Support for use of the DVB Scrambling Algorithm version 3 within digital broadcasting systems v1.1.1 (PDF). ETSI. 2013-11 [2018-06-05]. (原始內容 (PDF)存檔於2019-02-17) (英語). 
  10. ^ 10.0 10.1 10.2 10.3 ISO/IEC 13818-1: Information technology — Generic coding of moving pictures and associated audio information: Systems 2000(E) (PDF). ISO/IEC. 2000 [2018-06-06]. (原始內容存檔 (PDF)於2020-12-03) (英語). 
  11. ^ Final draft ETSI EN 300 468 V1.13.1 Digital Video Broadcasting (DVB); Specification for Service Information (SI) in DVB systems (PDF). ETSI. [2018-06-07]. (原始內容存檔 (PDF)於2020-07-11) (英語). 
  12. ^ Service Information In ATSC And OpenCable Networks. TV without borders. [2018年6月7日]. (原始內容存檔於2018年6月7日) (英語). 
  13. ^ 標準規格概要(STD-B10). 電波產業會. [2018-06-07]. (原始內容存檔於2018-06-12) (日語). 
  14. ^ 14.0 14.1 2.B Audio Visual Application Format Specifications for BD-ROM (PDF). 藍光光碟聯盟. 2005-03 [2018-06-06]. (原始內容 (PDF)存檔於2009-07-30) (英語). 
  15. ^ 15.0 15.1 Audio Visual Application Format Specification for BD-RE Version 2.1 (PDF). 藍光光碟聯盟. 2008-03 [2018-06-06]. (原始內容 (PDF)存檔於2009-07-30) (英語). 
  16. ^ 16.0 16.1 poisondeathray. HFS10 - AVCHD how to maintain quality?. videohelp.com. 2009-06-03 [2018-06-06]. (原始內容存檔於2018-06-06) (英語). 
  17. ^ ビデオカメラ&付属アプリケーションと各種OS動作確認情報. JVC. [2018-06-06]. (原始內容存檔於2020-11-27) (日語). 
  18. ^ BDMV. afterdawn.com. [2018-06-06]. (原始內容存檔於2009-07-29) (英語). 
  19. ^ BDAV. afterdawn.com. [2018年6月6日]. (原始內容存檔於2012年12月9日) (英語). 
  20. ^ White Paper Blu-ray Disc™ Format General 2nd edition (PDF). 藍光光碟聯盟. 2010-10 [2018-06-06]. (原始內容 (PDF)存檔於2009-06-12) (英語). 

外部連結 編輯