国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

數(shù)字電視TS碼流協(xié)議簡(jiǎn)要分析

2021-08-12 10:53:42唐文昊廖斌蘭唐霓云莫東海
視聽 2021年8期
關(guān)鍵詞:視頻流碼流信源

唐文昊 廖斌蘭 唐霓云 莫東海

一、IP封裝的TS碼流

TS碼流經(jīng)過IP打包后能被網(wǎng)絡(luò)設(shè)備轉(zhuǎn)發(fā)和交換,通過光纖、衛(wèi)星、微波等方式接入各個(gè)臺(tái)站。信源交換機(jī)的監(jiān)控口靜態(tài)綁定了碼流的組播地址,使監(jiān)控口始終轉(zhuǎn)發(fā)碼流。通過抓包可以觀察到標(biāo)準(zhǔn)網(wǎng)絡(luò)幀結(jié)構(gòu)。每個(gè)幀長(zhǎng)為1358字節(jié),包括MAC頭(14字節(jié))、IP頭(20字節(jié))、UDP頭(8字節(jié))和7個(gè)碼流包(每個(gè)188字節(jié))共1358字節(jié)。一個(gè)幀最多封裝七個(gè)碼流包,否則會(huì)超過以太幀的最大長(zhǎng)度上限1518字節(jié)而無法傳輸。

如圖1所示,抓包工具Wireshark中顯示的幀結(jié)構(gòu),有七個(gè)以ISO/IEC開頭的行,每行標(biāo)識(shí)一個(gè)標(biāo)準(zhǔn)碼流包。PID和CC是碼流包頭部中的兩個(gè)重要參數(shù):包ID和連續(xù)計(jì)數(shù)。

圖1 衛(wèi)星接收機(jī)發(fā)出的被封裝的TS碼流

二、TS碼流包及其頭部

TS碼流傳輸使用了IP組播技術(shù),組播地址為IP報(bào)文的目的地址,一份碼流能同時(shí)被轉(zhuǎn)發(fā)到多個(gè)設(shè)備(如IP復(fù)用器、碼流記錄儀、分析儀、自臺(tái)監(jiān)控服務(wù)器等),只需給接收設(shè)備添加組播地址加入組播組即可。分析時(shí)根據(jù)邏輯連接進(jìn)行過濾,把光纖信源中央八套節(jié)目碼流(12.171.30.93:2560->239.171.30.5:4000)分離出來,再將各底層頭部剝除,留下應(yīng)用層的碼流包。碼流包長(zhǎng)度為188字節(jié),包含4字節(jié)頭部和184字節(jié)載荷。載荷既可以是音視頻編碼數(shù)據(jù),也可以是控制信息表PSISI。圖2為光纖信源中央八套節(jié)目TS碼流中的“空”碼流包。

圖2 光纖信源中央八套節(jié)目TS碼流中的“空”碼流包

TS碼流包中的數(shù)據(jù)是大尾(big-endian)字節(jié)序,數(shù)據(jù)的低位保存在內(nèi)存的高地址,與Windows系統(tǒng)相反?!翱铡贝a流包的載荷部分全部是0xff,只有頭部有數(shù)據(jù)。4字節(jié)的頭部包含了8個(gè)參數(shù),分別是同步字節(jié)、傳輸誤碼指示符、有效荷載單元起始指示符、傳輸優(yōu)先級(jí)、PID、傳輸加擾控制、自適應(yīng)控制和連續(xù)計(jì)數(shù)器。第一個(gè)字節(jié)是固定的0x47,‘G’的ASCII碼,標(biāo)識(shí)碼流包起始位置,錯(cuò)誤或丟失將產(chǎn)生290一級(jí)錯(cuò)誤中的同步字節(jié)錯(cuò)誤或同步丟失錯(cuò)誤。PID(Packet ID)用中間的13個(gè)比特表示,標(biāo)識(shí)此碼流包的類型,即數(shù)據(jù)載荷解析的方式,標(biāo)識(shí)此包是音、視頻還是信息表。PID為0x1ffff時(shí)為“空”包,載荷不需要解析。連續(xù)計(jì)數(shù)用末尾的4個(gè)比特標(biāo)識(shí),同類型的下一個(gè)包的計(jì)數(shù)值會(huì)遞增,計(jì)數(shù)值累計(jì)到0xf之后再回到0。組播的傳輸層是UDP協(xié)議,沒有保證可靠交付,網(wǎng)絡(luò)不良時(shí)會(huì)使連續(xù)計(jì)數(shù)亂序、丟失,從而產(chǎn)生一級(jí)錯(cuò)誤中的連續(xù)計(jì)數(shù)錯(cuò)誤。

三、PSI(節(jié)目專用信息)

TS碼流中還存在其他控制信息PSI和SI(業(yè)務(wù)信息)。PSI定義了4種表(有資料說5種),SI定義了9種表。PSI的作用是從碼流中定位節(jié)目的音視頻流,是必備的。SI根據(jù)業(yè)務(wù)功能不同是可選的。PSI中用于定位節(jié)目音視頻流的表有兩種:PAT(節(jié)目關(guān)聯(lián)表)和PMT(節(jié)目映射表)。定位過程如下。

1.PAT的PID固定為0,可從碼流中直接找出PAT,一個(gè)碼流只有一個(gè)PAT流;

2.PAT中包含一或多個(gè)PMT的PID,可根據(jù)PAT找出碼流中所有的PMT,碼流中有多少個(gè)節(jié)目就有多少個(gè)PMT流;

3.PMT中包含節(jié)目的音、視頻流的PID,可根據(jù)PMT找出碼流中的音視頻流并提取出PES(打包的基本流);

4.由PES解包出ES(基本流)再送入解碼器解碼。

在光纖信源中央八套節(jié)目碼流中,每秒傳輸5個(gè)PAT包。其數(shù)據(jù)載荷是一樣的,只有頭部的連續(xù)計(jì)數(shù)在遞增。光纖信源中央八套節(jié)目TS碼流PAT包的頭部如圖3所示。包頭以0x47開頭,PID為0,數(shù)據(jù)載荷作為PAT解析。第三項(xiàng)Payload Unit Start Indicator:1,說明這是PAT的第一個(gè)碼流包,如果表很大,會(huì)被分到多個(gè)碼流包中。

圖3 光纖信源中央八套節(jié)目TS碼流PAT包的頭部

如圖4,PSI的第一個(gè)碼流包中,頭部之后的一字節(jié)(第5個(gè)字節(jié))表示指針域(也叫適配域長(zhǎng)度),指出到PAT還有多少字節(jié)。這里為0,所以PAT從第6個(gè)字節(jié)開始,再根據(jù)PAT第四項(xiàng)表示的長(zhǎng)度45字節(jié)(從此項(xiàng)之后開始算),PAT到第54個(gè)字節(jié)結(jié)束,只占用一個(gè)碼流包,之后用0xff填充。

圖4 光纖信源中央八套節(jié)目TS碼流PAT包

PAT前8字節(jié)的結(jié)構(gòu)固定,第4、5字節(jié)表示碼流ID,占16bit,理論上一個(gè)連接可以傳輸65535個(gè)碼流。從第9字節(jié)開始,是包含九個(gè)元素的數(shù)組,每個(gè)元素4字節(jié),共36字節(jié)。每個(gè)元素包含2字節(jié)的節(jié)目號(hào)和2字節(jié)的PMT的PID,PID用低13位標(biāo)識(shí),但第一個(gè)元素是例外,它的節(jié)目號(hào)為0,PID是NIT(網(wǎng)絡(luò)信息表)的PID(固定的0x10)。之后的八個(gè)元素對(duì)應(yīng)了中央八套節(jié)目。以第二個(gè)元素為例,節(jié)目號(hào)為0x12d,它的PMT的PID是0x101,如圖5所示。

圖5 節(jié)目號(hào)0x12d的PMT包

每秒鐘有3、4個(gè)同節(jié)目的PMT包傳輸。PMT表從第6個(gè)字節(jié)開始,前12個(gè)字節(jié)的結(jié)構(gòu)固定。第11、12字節(jié)的低12位表示節(jié)目的描述信息長(zhǎng)度,這里為5,此后緊跟5字節(jié)的描述信息。信息類型由第1字節(jié)的tag決定,這里是最大傳輸比特率。描述信息之后緊接著多個(gè)流信息,流信息前5個(gè)字節(jié)的結(jié)構(gòu)是固定的。此PMT中總共包含兩個(gè)流信息,第1字節(jié)表示流的類型,值分別為0x42和0x6,表示AVS視頻和AC3音頻。第2、3字節(jié)的低13位表示流的PID,值分別為0x200和0x28a。第4、5字節(jié)的低12位表示流描述信息總長(zhǎng)度。因?yàn)槊枋鲂畔⒈旧砗虚L(zhǎng)度,所以可以判斷出每個(gè)描述信息的位置。第一個(gè)流信息包含2個(gè)描述信息,第二個(gè)流信息則包含4個(gè)描述信息。描述信息包括流ID、最大比特率、注冊(cè)信息、網(wǎng)絡(luò)層信息等。至此,節(jié)目的AVS視頻流PID=0x200、AC3音頻流PID=0x28a已找出。

四、時(shí)鐘與節(jié)目名稱

PCR是節(jié)目參考時(shí)鐘,由編碼器生成,供解碼器解碼時(shí)進(jìn)行同步。PMT開頭第9、10字節(jié)低13位標(biāo)識(shí)PCR存在的PID,在圖5中是0x200。也就是說,這里的PCR只穿插在視頻流中,音頻流中沒有(PCR可以插入音頻流,也可以使用自己獨(dú)立的PID)。帶有PCR的視頻流包每秒有5個(gè)。PCR存在于視頻流中的適配域,頭部之后的第5字節(jié)指針域(適配域長(zhǎng)度)在PAT、PMT中為0,而帶有PCR的視頻流包中是7。7字節(jié)中的第1字節(jié)是8個(gè)標(biāo)志位,PCR標(biāo)志置1。后6字節(jié)是參考時(shí)鐘,參考時(shí)鐘會(huì)有規(guī)律地遞增。實(shí)際上PCR只用了42位,包括33位基礎(chǔ)位和9位擴(kuò)展位。擴(kuò)展位是基礎(chǔ)位的低位,表達(dá)更精細(xì)的數(shù)值,最大值是300而不是512,超過300歸零并給基礎(chǔ)位加1。除了PCR,PES層中還有兩個(gè)同步信息DTS和PTS,同步機(jī)制比較復(fù)雜,這里不詳細(xì)展開。

SDT(服務(wù)描述表)中包含了節(jié)目的類型、名稱等信息,它的PID是固定的0x11。SDT表起始的11個(gè)字節(jié)的頭部也是固定的。在中央八套節(jié)目TS碼流的SDT中,頭部之后跟著的是8個(gè)服務(wù)(節(jié)目)描述信息。第一個(gè)描述信息描述了節(jié)目號(hào)為0x12d的節(jié)目。在描述信息的服務(wù)名字段中,可以看到節(jié)目名稱為CCTV-1。

五、總結(jié)

ISO13818-1碼流標(biāo)準(zhǔn)已經(jīng)使用了十幾年,它詳細(xì)地定義了音視頻流及其控制信息,是一套非常成熟的傳輸標(biāo)準(zhǔn)。標(biāo)準(zhǔn)中定義的TS流不但能單獨(dú)傳輸,也容易被TCP/IP等網(wǎng)絡(luò)承載。碼流的使用者只要了解重要的部分,借助碼流分析儀或碼流分析軟件,就能迅速地判斷碼流信號(hào)質(zhì)量的高低,分析碼流質(zhì)量變差的原因,找到問題根源,對(duì)碼流進(jìn)行恢復(fù)。

猜你喜歡
視頻流碼流信源
邊緣實(shí)時(shí)視頻流分析系統(tǒng)配置動(dòng)態(tài)調(diào)整算法研究
基于極化碼的分布式多信源信道聯(lián)合編碼
無線電工程(2022年4期)2022-04-21 07:19:44
分布式碼流實(shí)時(shí)監(jiān)控與錄制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
基于視頻流傳輸中的擁塞控制研究
信源控制電路在功率容量測(cè)試系統(tǒng)中的應(yīng)用
電子世界(2017年16期)2017-09-03 10:57:36
美國(guó)視頻流市場(chǎng)首現(xiàn)飽和征兆
信源自動(dòng)切換裝置的設(shè)計(jì)及控制原理
一種比較ASN.1碼流差異的方法
基于梯度的CCSDS壓縮碼流控制算法研究
IRD對(duì)TS流的處理
蚌埠市| 遂宁市| 化德县| 广汉市| 合川市| 孙吴县| 沙雅县| 开化县| 冕宁县| 红桥区| 扬中市| 武鸣县| 永胜县| 昔阳县| 南昌市| 江西省| 郑州市| 博白县| 萨迦县| 关岭| 峨山| 平果县| 泌阳县| 康平县| 阿拉尔市| 北川| 高青县| 高邑县| 钟山县| 星座| 潍坊市| 普格县| 盖州市| 分宜县| 柘城县| 台江县| 西乌| 大城县| 禹城市| 大方县| 团风县|