訊編解碼技術shyang/dtv/mpeg1,2.pdfitu為低頻寬傳輸網路(如傳輸碼率為28.8...

82
數位電視之 MPEG-1/2 訊編解碼技術 楊士萱 國立台北科技大學資訊工程系

Upload: others

Post on 17-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

數位電視之MPEG-12視訊編解碼技術

楊士萱

國立台北科技大學資訊工程系

2

大綱

視訊編碼標準概觀

MPEG-12視訊編解碼原理與核心演算法

MPEG-12視訊位元串流語法及語意分析

視訊編碼標準概觀

4

採用標準的優缺點

優點

提供較佳的互通性(inter-operability)提高被大眾接受的機會再透過大量生產降低成本

節省各廠商在研發上的投資

大家集思廣益以得到較好的解決方案

缺點

失去市場獨占或競爭優勢

標準推出的時機未必適當

5

數位視訊與數位音訊編碼總覽

數位視訊與音訊編碼標準是所有標準中發展最成功的一類目前最常用者包括

JPEG JPEG-2000靜態影像標準

MPEG (Moving Pictures Experts Group) 視訊與音訊標準其正式的名稱為ISOIEC JTC 1SC 29WG 11ISO為了動態影音資料之壓縮解壓縮處理與編碼表示及其他應用需求所制定的國際標準

H26x視訊標準

SDTV採用MPEG-2視訊格式與MPEG-12音訊格式

HDTV採用MPEG-4 AVC視訊格式與MPEG-4 HE-AAC音訊格式

6

JPEGISO針對連續色調靜態影像的所訂定的第一個壓縮標準JPEG委員會由ISOIEC 與ITU於1986年共同組成並在1992完成其主要部份

JPEG標準包含四種操作模式循序式DCT (sequential DCT) 其中的基線(baseline)模式應用最廣泛如數位相機與網際網路上的照片多屬之

漸進式DCT (progressive DCT)無失真 (lossless)階層式 (hierarchical)

JPEG基線模式採用以DCT為基礎的轉換編碼並成為MPEG-1與MPEG-2畫面內編碼(intraframe coding)的主體

7

JPEG-2000

ISO繼JPEG之後所提出的通用靜態影像壓縮標準其主要技術(part 1)於2001年正式成為國際標準

JPEG-2000是以離散小波轉換(discrete wavelet transform DWT)為核心的演算法

相較於JPEGJPEG-2000的優點包括適用的影像類型更廣包括連續色調影像與二值影像大型影像複合型文件(compound documents)等

有較優異的低位元率壓縮表現

提供品質與解析度的漸進式傳輸(quality and resolution scalability)失真及無失真壓縮採用單一的位元串流

提供對抗傳輸錯誤的強健性(error robustness)

8

MPEG-1 概述MPEG (Moving Pictures Experts Group) MPEG-1(ISO 11172 1992)

ldquoCoding of Moving Pictures and Associated Audio for Digital Storage Media up to About 15 MbitssrdquoISO針對數位影音儲存媒體所提出的編碼方案其殺手級應用(killer application)為VCD

MPEG-1可以在15 Mbs的碼率下提供VHS影帶的品質並提供以畫面為基礎的隨機讀取

其編碼核心技術是兼用畫面間的預測編碼與空間域的DCT轉換編碼

MPEG-1 Layer III音訊編碼通稱為MP3目前已成為網路音樂格式的主流

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 2: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

2

大綱

視訊編碼標準概觀

MPEG-12視訊編解碼原理與核心演算法

MPEG-12視訊位元串流語法及語意分析

視訊編碼標準概觀

4

採用標準的優缺點

優點

提供較佳的互通性(inter-operability)提高被大眾接受的機會再透過大量生產降低成本

節省各廠商在研發上的投資

大家集思廣益以得到較好的解決方案

缺點

失去市場獨占或競爭優勢

標準推出的時機未必適當

5

數位視訊與數位音訊編碼總覽

數位視訊與音訊編碼標準是所有標準中發展最成功的一類目前最常用者包括

JPEG JPEG-2000靜態影像標準

MPEG (Moving Pictures Experts Group) 視訊與音訊標準其正式的名稱為ISOIEC JTC 1SC 29WG 11ISO為了動態影音資料之壓縮解壓縮處理與編碼表示及其他應用需求所制定的國際標準

H26x視訊標準

SDTV採用MPEG-2視訊格式與MPEG-12音訊格式

HDTV採用MPEG-4 AVC視訊格式與MPEG-4 HE-AAC音訊格式

6

JPEGISO針對連續色調靜態影像的所訂定的第一個壓縮標準JPEG委員會由ISOIEC 與ITU於1986年共同組成並在1992完成其主要部份

JPEG標準包含四種操作模式循序式DCT (sequential DCT) 其中的基線(baseline)模式應用最廣泛如數位相機與網際網路上的照片多屬之

漸進式DCT (progressive DCT)無失真 (lossless)階層式 (hierarchical)

JPEG基線模式採用以DCT為基礎的轉換編碼並成為MPEG-1與MPEG-2畫面內編碼(intraframe coding)的主體

7

JPEG-2000

ISO繼JPEG之後所提出的通用靜態影像壓縮標準其主要技術(part 1)於2001年正式成為國際標準

JPEG-2000是以離散小波轉換(discrete wavelet transform DWT)為核心的演算法

相較於JPEGJPEG-2000的優點包括適用的影像類型更廣包括連續色調影像與二值影像大型影像複合型文件(compound documents)等

有較優異的低位元率壓縮表現

提供品質與解析度的漸進式傳輸(quality and resolution scalability)失真及無失真壓縮採用單一的位元串流

提供對抗傳輸錯誤的強健性(error robustness)

8

MPEG-1 概述MPEG (Moving Pictures Experts Group) MPEG-1(ISO 11172 1992)

ldquoCoding of Moving Pictures and Associated Audio for Digital Storage Media up to About 15 MbitssrdquoISO針對數位影音儲存媒體所提出的編碼方案其殺手級應用(killer application)為VCD

MPEG-1可以在15 Mbs的碼率下提供VHS影帶的品質並提供以畫面為基礎的隨機讀取

其編碼核心技術是兼用畫面間的預測編碼與空間域的DCT轉換編碼

MPEG-1 Layer III音訊編碼通稱為MP3目前已成為網路音樂格式的主流

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 3: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

視訊編碼標準概觀

4

採用標準的優缺點

優點

提供較佳的互通性(inter-operability)提高被大眾接受的機會再透過大量生產降低成本

節省各廠商在研發上的投資

大家集思廣益以得到較好的解決方案

缺點

失去市場獨占或競爭優勢

標準推出的時機未必適當

5

數位視訊與數位音訊編碼總覽

數位視訊與音訊編碼標準是所有標準中發展最成功的一類目前最常用者包括

JPEG JPEG-2000靜態影像標準

MPEG (Moving Pictures Experts Group) 視訊與音訊標準其正式的名稱為ISOIEC JTC 1SC 29WG 11ISO為了動態影音資料之壓縮解壓縮處理與編碼表示及其他應用需求所制定的國際標準

H26x視訊標準

SDTV採用MPEG-2視訊格式與MPEG-12音訊格式

HDTV採用MPEG-4 AVC視訊格式與MPEG-4 HE-AAC音訊格式

6

JPEGISO針對連續色調靜態影像的所訂定的第一個壓縮標準JPEG委員會由ISOIEC 與ITU於1986年共同組成並在1992完成其主要部份

JPEG標準包含四種操作模式循序式DCT (sequential DCT) 其中的基線(baseline)模式應用最廣泛如數位相機與網際網路上的照片多屬之

漸進式DCT (progressive DCT)無失真 (lossless)階層式 (hierarchical)

JPEG基線模式採用以DCT為基礎的轉換編碼並成為MPEG-1與MPEG-2畫面內編碼(intraframe coding)的主體

7

JPEG-2000

ISO繼JPEG之後所提出的通用靜態影像壓縮標準其主要技術(part 1)於2001年正式成為國際標準

JPEG-2000是以離散小波轉換(discrete wavelet transform DWT)為核心的演算法

相較於JPEGJPEG-2000的優點包括適用的影像類型更廣包括連續色調影像與二值影像大型影像複合型文件(compound documents)等

有較優異的低位元率壓縮表現

提供品質與解析度的漸進式傳輸(quality and resolution scalability)失真及無失真壓縮採用單一的位元串流

提供對抗傳輸錯誤的強健性(error robustness)

8

MPEG-1 概述MPEG (Moving Pictures Experts Group) MPEG-1(ISO 11172 1992)

ldquoCoding of Moving Pictures and Associated Audio for Digital Storage Media up to About 15 MbitssrdquoISO針對數位影音儲存媒體所提出的編碼方案其殺手級應用(killer application)為VCD

MPEG-1可以在15 Mbs的碼率下提供VHS影帶的品質並提供以畫面為基礎的隨機讀取

其編碼核心技術是兼用畫面間的預測編碼與空間域的DCT轉換編碼

MPEG-1 Layer III音訊編碼通稱為MP3目前已成為網路音樂格式的主流

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 4: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

4

採用標準的優缺點

優點

提供較佳的互通性(inter-operability)提高被大眾接受的機會再透過大量生產降低成本

節省各廠商在研發上的投資

大家集思廣益以得到較好的解決方案

缺點

失去市場獨占或競爭優勢

標準推出的時機未必適當

5

數位視訊與數位音訊編碼總覽

數位視訊與音訊編碼標準是所有標準中發展最成功的一類目前最常用者包括

JPEG JPEG-2000靜態影像標準

MPEG (Moving Pictures Experts Group) 視訊與音訊標準其正式的名稱為ISOIEC JTC 1SC 29WG 11ISO為了動態影音資料之壓縮解壓縮處理與編碼表示及其他應用需求所制定的國際標準

H26x視訊標準

SDTV採用MPEG-2視訊格式與MPEG-12音訊格式

HDTV採用MPEG-4 AVC視訊格式與MPEG-4 HE-AAC音訊格式

6

JPEGISO針對連續色調靜態影像的所訂定的第一個壓縮標準JPEG委員會由ISOIEC 與ITU於1986年共同組成並在1992完成其主要部份

JPEG標準包含四種操作模式循序式DCT (sequential DCT) 其中的基線(baseline)模式應用最廣泛如數位相機與網際網路上的照片多屬之

漸進式DCT (progressive DCT)無失真 (lossless)階層式 (hierarchical)

JPEG基線模式採用以DCT為基礎的轉換編碼並成為MPEG-1與MPEG-2畫面內編碼(intraframe coding)的主體

7

JPEG-2000

ISO繼JPEG之後所提出的通用靜態影像壓縮標準其主要技術(part 1)於2001年正式成為國際標準

JPEG-2000是以離散小波轉換(discrete wavelet transform DWT)為核心的演算法

相較於JPEGJPEG-2000的優點包括適用的影像類型更廣包括連續色調影像與二值影像大型影像複合型文件(compound documents)等

有較優異的低位元率壓縮表現

提供品質與解析度的漸進式傳輸(quality and resolution scalability)失真及無失真壓縮採用單一的位元串流

提供對抗傳輸錯誤的強健性(error robustness)

8

MPEG-1 概述MPEG (Moving Pictures Experts Group) MPEG-1(ISO 11172 1992)

ldquoCoding of Moving Pictures and Associated Audio for Digital Storage Media up to About 15 MbitssrdquoISO針對數位影音儲存媒體所提出的編碼方案其殺手級應用(killer application)為VCD

MPEG-1可以在15 Mbs的碼率下提供VHS影帶的品質並提供以畫面為基礎的隨機讀取

其編碼核心技術是兼用畫面間的預測編碼與空間域的DCT轉換編碼

MPEG-1 Layer III音訊編碼通稱為MP3目前已成為網路音樂格式的主流

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 5: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

5

數位視訊與數位音訊編碼總覽

數位視訊與音訊編碼標準是所有標準中發展最成功的一類目前最常用者包括

JPEG JPEG-2000靜態影像標準

MPEG (Moving Pictures Experts Group) 視訊與音訊標準其正式的名稱為ISOIEC JTC 1SC 29WG 11ISO為了動態影音資料之壓縮解壓縮處理與編碼表示及其他應用需求所制定的國際標準

H26x視訊標準

SDTV採用MPEG-2視訊格式與MPEG-12音訊格式

HDTV採用MPEG-4 AVC視訊格式與MPEG-4 HE-AAC音訊格式

6

JPEGISO針對連續色調靜態影像的所訂定的第一個壓縮標準JPEG委員會由ISOIEC 與ITU於1986年共同組成並在1992完成其主要部份

JPEG標準包含四種操作模式循序式DCT (sequential DCT) 其中的基線(baseline)模式應用最廣泛如數位相機與網際網路上的照片多屬之

漸進式DCT (progressive DCT)無失真 (lossless)階層式 (hierarchical)

JPEG基線模式採用以DCT為基礎的轉換編碼並成為MPEG-1與MPEG-2畫面內編碼(intraframe coding)的主體

7

JPEG-2000

ISO繼JPEG之後所提出的通用靜態影像壓縮標準其主要技術(part 1)於2001年正式成為國際標準

JPEG-2000是以離散小波轉換(discrete wavelet transform DWT)為核心的演算法

相較於JPEGJPEG-2000的優點包括適用的影像類型更廣包括連續色調影像與二值影像大型影像複合型文件(compound documents)等

有較優異的低位元率壓縮表現

提供品質與解析度的漸進式傳輸(quality and resolution scalability)失真及無失真壓縮採用單一的位元串流

提供對抗傳輸錯誤的強健性(error robustness)

8

MPEG-1 概述MPEG (Moving Pictures Experts Group) MPEG-1(ISO 11172 1992)

ldquoCoding of Moving Pictures and Associated Audio for Digital Storage Media up to About 15 MbitssrdquoISO針對數位影音儲存媒體所提出的編碼方案其殺手級應用(killer application)為VCD

MPEG-1可以在15 Mbs的碼率下提供VHS影帶的品質並提供以畫面為基礎的隨機讀取

其編碼核心技術是兼用畫面間的預測編碼與空間域的DCT轉換編碼

MPEG-1 Layer III音訊編碼通稱為MP3目前已成為網路音樂格式的主流

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 6: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

6

JPEGISO針對連續色調靜態影像的所訂定的第一個壓縮標準JPEG委員會由ISOIEC 與ITU於1986年共同組成並在1992完成其主要部份

JPEG標準包含四種操作模式循序式DCT (sequential DCT) 其中的基線(baseline)模式應用最廣泛如數位相機與網際網路上的照片多屬之

漸進式DCT (progressive DCT)無失真 (lossless)階層式 (hierarchical)

JPEG基線模式採用以DCT為基礎的轉換編碼並成為MPEG-1與MPEG-2畫面內編碼(intraframe coding)的主體

7

JPEG-2000

ISO繼JPEG之後所提出的通用靜態影像壓縮標準其主要技術(part 1)於2001年正式成為國際標準

JPEG-2000是以離散小波轉換(discrete wavelet transform DWT)為核心的演算法

相較於JPEGJPEG-2000的優點包括適用的影像類型更廣包括連續色調影像與二值影像大型影像複合型文件(compound documents)等

有較優異的低位元率壓縮表現

提供品質與解析度的漸進式傳輸(quality and resolution scalability)失真及無失真壓縮採用單一的位元串流

提供對抗傳輸錯誤的強健性(error robustness)

8

MPEG-1 概述MPEG (Moving Pictures Experts Group) MPEG-1(ISO 11172 1992)

ldquoCoding of Moving Pictures and Associated Audio for Digital Storage Media up to About 15 MbitssrdquoISO針對數位影音儲存媒體所提出的編碼方案其殺手級應用(killer application)為VCD

MPEG-1可以在15 Mbs的碼率下提供VHS影帶的品質並提供以畫面為基礎的隨機讀取

其編碼核心技術是兼用畫面間的預測編碼與空間域的DCT轉換編碼

MPEG-1 Layer III音訊編碼通稱為MP3目前已成為網路音樂格式的主流

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 7: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

7

JPEG-2000

ISO繼JPEG之後所提出的通用靜態影像壓縮標準其主要技術(part 1)於2001年正式成為國際標準

JPEG-2000是以離散小波轉換(discrete wavelet transform DWT)為核心的演算法

相較於JPEGJPEG-2000的優點包括適用的影像類型更廣包括連續色調影像與二值影像大型影像複合型文件(compound documents)等

有較優異的低位元率壓縮表現

提供品質與解析度的漸進式傳輸(quality and resolution scalability)失真及無失真壓縮採用單一的位元串流

提供對抗傳輸錯誤的強健性(error robustness)

8

MPEG-1 概述MPEG (Moving Pictures Experts Group) MPEG-1(ISO 11172 1992)

ldquoCoding of Moving Pictures and Associated Audio for Digital Storage Media up to About 15 MbitssrdquoISO針對數位影音儲存媒體所提出的編碼方案其殺手級應用(killer application)為VCD

MPEG-1可以在15 Mbs的碼率下提供VHS影帶的品質並提供以畫面為基礎的隨機讀取

其編碼核心技術是兼用畫面間的預測編碼與空間域的DCT轉換編碼

MPEG-1 Layer III音訊編碼通稱為MP3目前已成為網路音樂格式的主流

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 8: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

8

MPEG-1 概述MPEG (Moving Pictures Experts Group) MPEG-1(ISO 11172 1992)

ldquoCoding of Moving Pictures and Associated Audio for Digital Storage Media up to About 15 MbitssrdquoISO針對數位影音儲存媒體所提出的編碼方案其殺手級應用(killer application)為VCD

MPEG-1可以在15 Mbs的碼率下提供VHS影帶的品質並提供以畫面為基礎的隨機讀取

其編碼核心技術是兼用畫面間的預測編碼與空間域的DCT轉換編碼

MPEG-1 Layer III音訊編碼通稱為MP3目前已成為網路音樂格式的主流

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 9: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

9

MPEG-1的構成方塊

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 10: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

10

MPEG-1的第一

第一個整合音訊及視訊壓縮的標準

第一個定義接收方(receiver)而不是傳送方(transmitter)的標準

第一個完全使用軟體定義的標準

第一個包含參考軟體(C程式)的標準

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 11: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

11

MPEG-2 概述

MPEG-2 (ISO 13818 ITU-T H262 1995)ldquoGeneric Coding of Moving Pictures and Associated AudiordquoMPEG-2的目標是用4 Mbs到20 Mbs的碼率提供標準解析度到高解析度畫質的影像並配合電視支援交錯式畫面

MPEG-2的應用數位影音儲存媒體(DVD)數位電視廣播(DTV)

MPEG-2是世界上最成功的標準之一目前全世界已銷售出超過十億個DVD解碼器及數位電視的機上盒

MPEG-2的應用層面較廣因此採用類似工具箱的作法層次(profile)代表功能性(如是否具備漸進式傳輸能力)位階(level)代表複雜度(如畫面大小與碼率)

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 12: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

12

MPEG-2 的前7個部份

Part 1 系統(Systems)MPEG-2的資料串流有兩種不同的格式節目串流(Program Stream)與MPEG-1所定義的節目串流格式非常相似主要用於數位影音儲存媒體

傳輸串流(Transport Stream)主要用於會有失真或雜訊的傳輸環境

Part 2 視訊(Video)其核心技術與MPEG-1相近並且與MPEG-1視訊向後相容

Part 3 音訊(Audio)向後相容於MPEG-1音訊

Part 4 一致性測試(Conformance testing)Part 5 軟體模擬(Software simulation)Part 6 數位儲存媒體命令與控制之延伸(DSM-CC)

用在衛星及有線電視的機上盒

Part 7 先進音訊編碼(Advanced Audio Coding AAC)這個部份沒有向後相容於MPEG-1音訊

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 13: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

13

MPEG-4 概述MPEG-4 (ISO 14496)

ldquoCoding of Audio-Visual Objectsrdquo原本是為了發展極低位元率的編碼技術後來延伸到更廣泛的多媒體應用

MPEG-4視訊被獨立定義在part 2和part 10兩個部份

MPEG-4 part 2以物件做為處理的基本單元做為場景配置及人機互動的基礎

首次引入合成影像與聲音的編解碼

並且增加抗錯與精細可尺度性等功能以提供在不同網路環境下全面接取的服務

MPEG-4 part 2已被用在新一代的行動通訊系統與網際網路的影音串流

MPEG-4 part 10亦稱為AVC (advanced video coding)或H264主要致力於壓縮效率的提升而不求與之前的MPEG視訊編碼標準相容

與MPEG-2比較MPEG-4 AVC可節省50以上的位元率

在高畫質數位電視影音串流與行動視訊中將極具應用價值

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 14: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

14

MPEG-7 與 MPEG-21

從MPEG-7開始的MPEG標準除了探討視訊與音訊的編碼技術也逐漸擴及整個多媒體利用的相關課題

MPEG-7(ISO 15938)ldquoMultimedia Content Description Interfacerdquo 主要探討多媒體內容描述介面

提供以影音內容為基礎的描述檢索辨識驗證分類與摘要等應用

MPEG-21 (ISO 21000)ldquoMultimedia Frameworkrdquo 主要探討多媒體架構

探討多媒體從產製傳輸到利用整個傳送消費鏈(delivery and consumption chain)的架構及各環節的互通介面

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 15: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

15

ISO MPEG系列音訊編碼標準

MPEG-1音訊三個層級(layer)其中layer III用於數位電視及數位廣播layer III = MP-3

MPEG-2MPEG-2 part 3針對低取樣頻率及多聲道部份擴充MPEG-1音訊的不足此標準之layer II也用於數位電視的多聲道廣播MPEG-2 part 7稱為AAC (Advanced Audio Coding)目前用於日本的整合服務數位廣播

MPEG-4MPEG-4音訊也改以物件為基礎並加入更多元的編碼功能此標準除了提供一般自然音訊的編碼外也提供語音編碼並支援合成音樂另外提供抗錯及精細可尺度性的技巧

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 16: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

16

ITU-T H26x系列視訊編碼標準

H261 (1990) ldquoVideo codec for audiovisual services at p x 64 kbitsrdquoITU在ISDN上為視訊電話與視訊會議(video-conferencing)所訂定的標準其傳輸速率為64 kbs的整數倍其部份編碼技術後來被用在MPEG-1中

H262 = MPEG-2H263 (1995) H263+ (1997) H263++ (2000)

ldquoVideo coding for low bit rate communicationrdquoITU為低頻寬傳輸網路(如傳輸碼率為288 kbs或336 kbs)所訂定的雙向影音通訊服務標準其部份編碼技術後來被用在MPEG-4中

H264 = MPEG-4 AVC

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 17: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

MPEG-12視訊編解碼原理與核心演算法

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 18: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

18

數位電視與MPEG視訊標準

依據ETSI對於DVB-T的最新規範以及政府公告之「地面數位電視接收機基本技術規範」

SDTV採用MPEG-2 MPML視訊編碼

HDTV採用MPEG-4 AVC HPL4視訊編碼

為求最大相容性並開放廠商自由競爭最佳編碼機制MPEG標準均僅定義解碼流程

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 19: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

19

MPEG-12的編碼流程

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 20: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

20

MPEG-12 編碼流程概述

1 前處理 (未指定於標準中)Color conversion to YCbCrPre-filtering and subsampling

2a 畫面內編碼 (intraframe coding)DCT transformationCoefficients quantizationVariable-length Huffman coding

2b畫面間編碼 (interframe coding)ME outputting the entropy-coded motion vectorForming the difference (prediction error) between the macroblock of the current picture and that from MEFollowing similar procedures as the intraframe coding for the residual blocks Different quantization and Huffman tables may be used

3 碼率控制

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 21: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

21

MPEG-12的畫面類型

I-畫面 (Intra-pictures)採用與JPEG極為相似的畫面內編碼壓縮率較低

壓縮時不參考其他畫面但可以做為P-畫面與B-畫面的參考畫面以及隨機讀取(如快轉快回段落選取)的依據解碼品質不會受到其他畫面的影響

2 P-畫面 (Predicted pictures)利用過去最近的一張I-畫面或P-畫面做為向前預測的參考畫面

壓縮率比I-畫面高可以做為其他畫面的參考畫面但不能做為隨機讀取的依據

3 B-畫面 (Bidirectional predictiveinterpolated pictures)參考前後最近的I-畫面或P-畫面壓縮率比P-畫面更高不能做為其他畫面編碼時的參考畫面也不能做為隨機讀取的依據

會造成編碼延遲比較不適合視訊電話及視訊會議等即時性的應用

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 22: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

22

MPEG-12各畫面類型的特性

畫面特性 I-畫面 P-畫面 B-畫面

是否參考其他畫面編碼 否 是 是

是否可做為參考畫面 是 是 否

是否可隨機讀取 是 否 否

是否會造成編碼延遲 否 否 是

壓縮率 低 中 高

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 23: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

23

IP及B畫面的相互參考關係

編碼傳送或解碼的順序為1 4 2 3 7 5 6 8

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 24: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

24

參考畫面的相關課題

參考畫面的取得(採用封閉迴路的架構)做為參考畫面的I-畫面必須經由反量化與反轉換得到

做為參考之P-畫面除了反量化與反轉換外還必須進行動作補償

編解碼器儲存的畫面張數解碼器前後兩張參考畫面(I-畫面或P-畫面)編碼器除了前後兩張參考畫面(I-畫面或P-畫面)還必須將尚未編碼之B-畫面先加以儲存

並非P-畫面(以及B-畫面)的每一個巨區塊都必須採用畫面間編碼編碼器可以視情形決定是否改採畫面內編碼

Inter區塊使用畫面間編碼的區塊

Intra區塊使用畫面內編碼的區塊

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 25: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

25

MPEG-12 B-畫面的前向後向雙向動作補償

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 26: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

26

MPEG-12 的動作估計

在MPEG-12中動作估計的結果為編碼巨區塊(macroblock)相對於還原之參考畫面的動作向量巨區塊代表大小為16times16的亮度資料(Y)及其對應範圍內的彩度資料(Cb及Cr)除了參考畫面的選擇之外P-畫面或B-畫面的巨區塊在編碼時的選項包括

是否略過不做動作估計(逕行估測動作向量)是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

進行轉換編碼時是否改變量化步階

B-畫面中的巨區塊可以選擇僅用前向僅用後向或用雙向的動作估計

動作向量編碼時先減去其預測值所得的殘差向量則再經由霍夫曼編碼產生輸出位元

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 27: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

27

MPEG-12轉換編碼(13)區塊是由顏色分量構成大小為8 times 8的矩陣MPEG-1規定使用420的格式所以一個巨區塊包含6個區塊(4Y 1Cb 1Cr)區塊經過二維DCT轉換得到的DCT係數F(uv)即進行量化其量化步階會依照使用的量化矩陣Q(uv)及量化尺度因子q而調整

量化後的係數QF(uv)範圍會落在[-255 255]之間MPEG-12 Intra區塊預設的量化矩陣(包括亮度與彩度成分)為

⎥⎦

⎤⎢⎣

⎡=

)()(16Integer)(vuqQvuFvuQF

⎥⎥⎥⎥⎥⎥⎤

⎢⎢⎢⎢⎢⎢⎡

=4840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥

⎦⎢⎢⎢⎢⎢

⎣ 836956463835292769564638342927265848403532292726

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 28: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

28

MPEG-12的轉換編碼(23)

Inter區塊係數預設的量化矩陣Qinter其所有數值均設為16 (包括亮度與彩度成分)Inter區塊使用相同的量化步階主要是因為殘差影像的DCT係數並不具有Intra區塊DCT係數高低頻成分的概念

Intra區塊量化後的DC值編碼方式採用DPCM一階預測差值編碼

用前一個同顏色成分(YCb或Cr)量化後的DC值做為預測值差值再以(size differential)的形式進行壓縮

預測值在每一個畫面片段(slice)或Inter巨區塊或略過巨區塊之後重設回DC係數範圍的中間值(128)size用變動長度碼(VLC)代表差值編碼所需的位元數實際差值differential以其1補數表示

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 29: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

29

MPEG-12的轉換編碼(33)

Intra區塊量化後的AC係數與Inter區塊量化後的所有係數

以之字形掃描(zigzag scan)順序讀出讀出的數字序列以數對(run level)表示

run代表到前一個非零係數間0的個數level代表此非零係數的絕對值最後再加一個位元代表非零係數的符號(0為正1為負)當編碼數對之後全部為0時則以單一符號End_of_Block代表

為了降低霍夫曼表的大小MPEG-12只提供出現頻率較高的(run level)數對(包括End_of_Block)的變動長度碼對於沒有列在表中的(run level)數對則是用例外碼做起始標記後面再分別用固定長度碼代表run以及level

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 30: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

30

MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 31: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

31

MPEG-1 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 32: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

32

MPEG-1 區塊編碼(例續)

MPEG-1 Intra區塊預設的量化矩陣

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

8369564638352927695646383429272658484035322927264840353229272622403734292726222238343429272622193734292724221616342927262219168

intraQ

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

00000000000000000000000000000000000000000000000100000001000000277

QY

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 33: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

33

MPEG-1 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為81)則編碼的DC值為77-81 = -4size = 3 (因為 |-4| 介於22到23之間)其霍夫曼碼為101differential編碼結果為011 平方量化誤差為|619 ndash (-4+81)times8|2 = 9

AC係數 (run level) ldquozigzag + Huffmanrdquo之字形掃描讀出的數字序列為 -2 1 1 EOB對應的數對序列為(02-) (01+) (01+) EOB

AC係數霍夫曼碼的編碼結果為(01001) (110) (110) (10)本區塊總共使用19個位元其位元率為0297 bpp

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 34: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

34

MPEG-12的解碼流程

多工器

可變長度解碼器

前一張參考畫面

後一張參考畫面

Q-1

IDCT

+

輸入緩衝區

輸出

輸入

輸出緩衝區+12

0

動作補償

量化步階

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 35: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

35

MPEG-12 的碼率控制

碼率控制(rate control)每個畫面經過MPEG-12編碼產生的實際位元數依其畫面類型與畫面複雜度會有所變動

傳輸通道或儲存媒介通常都有固定位元率(constant bit rate)的限制所以編碼器必須藉由碼率控制(rate control)搭配輸出緩衝區(output buffer)來產生固定位元率的輸出

MPEG-12的碼率可以透過改變量化矩陣(即量化步階)來做調整其他可以調整碼率的機制包括

IPB畫面的配置

IPB畫面內的巨區塊是否改採畫面內編碼

殘差區塊是否需要再進行轉換編碼

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 36: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

36

MPEG-2與MPEG-1的主要差異

提供交錯式影片的處理與編碼

針對高碼率高畫質的視訊而設計

提供可尺度性(scalability)層次(profile)與位階(level)的設計

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 37: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

37

交錯式影片的新增選項

視訊序列「漸進式」vs「交錯式」

編碼結構「畫框畫面」vs「圖場畫面」

參考畫面以畫框為單位(frame-based motion compensation) vs以圖場為單位(field-based motion compensation)

巨區塊「畫框DCT編碼」vs「圖場DCT編碼」

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 38: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

38

畫框畫面與圖場畫面

畫框畫面(frame picture)在進行動作估計時編碼畫面以畫框為單元

圖場畫面(field picture)在進行動作估計時編碼畫面以圖場(上圖場或下圖場)為單元

交錯式影片編碼時可以選擇採用畫框畫面或圖場畫面兩種編碼結構漸進式影片編碼時則必須採用畫框畫面

畫框畫面還是可以選擇使用漸進式顯示或是交錯式顯示

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 39: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

39

畫框畫面的參考畫面

MPEG-2的編碼結構採用畫框畫面時其參考畫面取自前後的I-畫框或P-畫框

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Not yet decoded)

Reference Frame

Possible Intervening B-pictures

(Already decoded)

編碼畫面為P-畫框 編碼畫面為B-畫框

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 40: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

40

圖場畫面參考圖場的選擇(13)

Case I 編碼P-圖場是畫框時間上的第一個圖場(或是編碼P-畫框選擇以圖場為單位的預測)

圖場畫面不管是向前預測或是向後預測都各有兩個候選參考圖場(時間上最接近編碼圖場的I-圖場或P-圖場)其中一個是上圖場另一個是下圖場圖場畫面的各巨區塊可任選兩個候選參考圖場其中之一做為參考圖場

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 41: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

41

圖場畫面參考圖場的選擇(23)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Top Reference

Field

Bottom Reference

FieldPossible

Intervening B-pictures

(Not yet decoded)

Case II(a) 編碼P-圖場是畫框的第二個圖場且其為下圖場

Case II(b) 編碼P-圖場是畫框的第二個圖場且其為上圖場

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 42: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

42

圖場畫面參考圖場的選擇(33)

Top Reference

Field

Bottom Reference

Field

Possible Intervening B-pictures

(Not yet decoded)

Possible Intervening B-pictures

(Already decoded)

Top Reference

Field

Bottom Reference

Field

Case III B-圖場的候選參考圖場

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 43: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

43

參考圖場的選擇(例)

假設一個交錯式的MPEG-2影像序列採用圖場畫面做為編碼單元其畫框內圖場顯示順序為(1a)I (1b)I (2a)B (2b)B (3a)P (3b)P (4a)B (4b)B (5a)I (5b)I各畫框第一個圖場(a)為上圖場第二個圖場(b)為下圖場

該影像序列的編碼順序為(1a) (1b) (3a) (3b) (2a) (2b) (5a) (5b) (4a) (4b)

編碼畫面 前向參考畫面 後向參考畫面

(2a)B (1a)或(1b) (3a)或(3b)

(2b)B (1a)或(1b) (3a)或(3b)

(3a)P (1a)或(1b) 無

(3b)P (1b)或(3a) 無

(4a)B (3a)或(3b) (5a)或(5b)

(4b)B (3a)或(3b) (5a)或(5b)

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 44: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

44

「畫框DCT編碼」與「圖場DCT編碼」

MPEG-2圖場畫面的巨區塊一定由同一圖場(全為上圖場或全為下圖場)的像素點所構成

MPEG-2畫框畫面的巨區塊則有「畫框DCT編碼」與「圖場DCT編碼」兩種選擇

420格式的彩度分量一定採用畫框結構

(a) 畫框DCT編碼(b) 圖場DCT編碼

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 45: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

45

MPEG-2與MPEG-1的其他差異(12)

MPEG-2 提高影像品質的作法三種YCbCr彩度次取樣的格式420422與444(MPEG-1只能選擇420)Intra區塊的DC係數(範圍從0到2048)有4種量化步階的選擇8 4 2 1分別對應到8 9 10 11位元的整數精確度(MPEG-1只能選擇量化步階為8對應到8位元的精確度)量化後的係數除了選擇原來MPEG-1定義的之字形掃描(zigzag scan)還可以選擇間隔掃描(alternate scan)MPEG-2額外設計了一組可變長度碼供Intra區塊的掃描數對(run level)使用

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 46: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

46

MPEG-2與MPEG-1的其他差異(22)

除了原有MPEG-1的線性量化尺度因子表MPEG-2也提供額外的非線性量化尺度因子表以增加碼率控制的彈性MPEG-2的動作向量一律採用半像素的解析度(MPEG-1動作向量的解析度可以選擇採用全像素或半像素)MPEG-2 提供反DCT轉換精準度誤差的控制MPEG-2 的畫面片段必須開始與終止於同一個水平列對於沒有列在表中的(run level)數對MPEG-2用例外碼lsquo0b000001rsquo起始後面再分別用6個位元的固定長度碼代表run用12個位元的固定長度碼代表level及其符號(例外碼與MPEG-1略有不同)

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 47: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

47

MPEG-2 區塊編碼(例)

二維DCT轉換後係數矩陣Y

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

minusminusminusminusminusminusminusminus

minusminusminusminusminus

minusminusminusminusminusminusminusminus

minusminus

=

3111251311121428222021218003112623700510230434501132070462210312829619

Y

假設DC值的精確度為10位元(量化步階為2)量化後的AC係數選擇間隔掃描並使用Table zero的霍夫曼表

量化後的係數矩陣

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎡ minus

=

000000000000000000000000000000000000000000000001000000010000002310

QY

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 48: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

48

MPEG-2 區塊編碼(例續)

DC係數編碼 (size differential) ldquoDPCM + Huffmanrdquo假設前一個編碼影像亮度區塊的DC係數值為650(量化後為325)編碼DC值為310-325 = -15size = 4 (因為 |-15| 介於23到24之間)其霍夫曼碼為110differential編碼結果為0000其平方量化誤差為|619 ndash (-15+325)times2|2 =1

AC係數 (run level) ldquozigzag + Huffmanrdquo間隔掃描讀出的數字序列為1 1 0 -2 EOB對應的(run level)數對序列為 (01+) (01+) (12-) EOB使用Table zero的霍夫曼表AC係數的編碼結果為(110) (110) (0001101) (10)(比之字形掃描多花了2個位元)

本區塊總共使用22個位元其位元率為0344 bpp

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 49: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

49

MPEG-2的「層次」與「位階」

為滿足不同應用的需求並簡化解碼器的設計MPEG-2共定義Simple(沒有B畫面)MainSNR ScalableSpatially Scalable及High五個層次(profiles)MPEG-2共定義Low(最大畫面解析度為CIF30 fps)Main(最大畫面解析度為SD)High-1440(最大畫面解析度為1440times115260 fps)及High(最大畫面解析度為1920times115260 fps)四個位階(levels)SDTV和DVD使用main profile main level (MPML)

main profile限制使用420的顏色格式採用不具有漸近式解碼能力的單一資料串流而且DC係數精確度最高為10位元

main level限制畫面解析度最高為720times57630 fps

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 50: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

MPEG-2視訊位元串流語法及語意分析

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 51: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

51

MPEG-2的資料階層(data hierarchy)

視訊序列(video sequence)群組畫面(group of pictures GoP)畫面(picture)畫面片段(slice)巨區塊(macroblock)區塊(block)

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 52: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

52

資料階層語法

在畫面片段及以上的資料階層都會以一個32位元的起始碼(start code) lsquo0x000001yzrsquo (0x代表其後為16進位數字)做為起始不同yz的值代表不同的資料階層或副階層由於MPEG-2視訊編碼向後相容於MPEG-1所以兩者的語法基本上相通MPEG-2新增的部份則定義在相關資料階層的延伸(extension)之中

名稱 yz的數值(hex)picture_start_code 00

slice_start_code (註一) 01 through AF

reserved B0

reserved B1

user_data_start_code B2

sequence_header_code B3

sequence_error_code B4

extension_start_code B5

reserved B6

sequence_end_code B7

group_start_code B8

system start codes (註二) B9 through FF

註一slice_start_code 代表 slice 的垂直位置註二system start codes 定義於 MPEG-2 Systems 中

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 53: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

53

延伸類型及其對應的識別位元

資料階層延伸以extension_start_codelsquo0x000001B5rsquo起頭後面再加4個識別位元以代表不同的延伸類型

名稱 識別位元 (binary)reserved 0000

Sequence Extension ID 0001

Sequence Display Extension ID 0010

Quant Matrix Extension ID 0011

Copyright Extension ID 0100

Sequence Scalable Extension ID 0101

reserved 0110

Picture Display Extension ID 0111

Picture Coding Extension ID 1000

Picture Spatial Scalable Extension ID 1001

Picture Temporal Scalable Extension ID 1010

reserved 1011~1111

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 54: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

54

視訊序列 (Sequences)

一個視訊序列通常代表一段影片其中包含了多張編碼畫面

視訊序列以sequence_header()起始以sequence_end_codelsquo0x000001B7rsquo終止

MPEG-2視訊在每一個sequence_header之後都會馬上接著一個sequence_extension()藉以區隔其與MPEG-1視訊的不同若無sequence_extension則表示其為MPEG-1的視訊序列

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 55: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

55

sequence_header的語法sequence_header() No of bits

sequence_header_code 32

horizontal_size_value 12

vertical_size_value 12

aspect_ratio_information 4

frame_rate_code 4

bit_rate_value 18

marker_bit 1

vbv_buffer_size_value 10

constrained_parameters_flag 1

load_intra_quantiser_matrix 1

if ( load_intra_quantiser_matrix )

intra_quantiser_matrix[64] 8times64

load_non_intra_quantiser_matrix 1

if ( load_non_intra_quantiser_matrix )

non_intra_quantiser_matrix[64] 8times64

next_start_code()

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 56: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

56

sequence_header的語意(12)

sequence_header_code lsquo0x000001B3rsquohorizontal_size_value 畫面水平寬度的後12位元以亮度的像素點為單位

vertical_size_value 畫面垂直高度的後12位元以亮度的像素點為單位

MPEG-1的畫面最大尺寸為4096times4096 (= 212times212)而MPEG-2的畫面最大尺寸為16384times16384 (= 214times214)MPEG-2畫面大小的兩個MSBs 則於sequence_extension中描述

aspect_ratio_information 描述畫面的寬高比以適用不同寬高比(如43或169)的螢幕

frame_rate_code 設定畫面速率如24 fps 25 fps 30 fps 50 fps 或60 fps

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 57: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

57

sequence_header的語意(22)

bit_rate_value 位元率的後18位元以400 bps為單位位元率的前12位元於sequence_extension中描述

marker_bit 設為lsquo1rsquo以減少本段資料被誤判為起始碼的機會

vbv_buffer_size_value VBV (Video Buffering Verifier)大小的後10個位元以2048 bytes為單位前8個位元於sequence_extension中描述VBV代表解碼緩衝區的最小容量

constrained_parameters_flag 在MPEG-2中設為lsquo0rsquoload_intra_quantiser_matrix load_non_intra_quantiser_matrix是否不用預設的量化表分intra與non_intra兩種情形

intra_quantiser_matrix non_intra_quantiser_matrix不用預設的量化表時載入之新量化表

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 58: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

58

sequence_extension的語法sequence_extension() No of bits

extension_start_code 32

extension_start_code_identifier 4

profile_and_level_indication 8

progressive_sequence 1

chroma_format 2

horizontal_size_extension 2

vertical_size_extension 2

bit_rate_extension 12

marker_bit 1

vbv_buffer_size_extension 8

low_delay 1

frame_rate_extension_n 2

frame_rate_extension_d 5

next_start_code()

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 59: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

59

sequence_extension的語意

extension_start_code_identifier 00012

profile_and_level_indication 設定層次與位階

progressive_sequence 視訊序列為漸進式或交錯式

chroma_format 選擇YCbCr顏色次取樣格式為444422或420但main層次只能用420格式

horizontal_size_extension 畫面水平寬度的前2個位元

vertical_size_extension 畫面垂直高度的前2個位元

bit_rate_extension 位元率的前12位元

vbv_buffer_size_extension VBV大小的前8個位元

low_delay 是否含有B畫面

frame_rate_extension_n frame_rate_extension_d以上兩個欄位設定無法用frame_rate_code描述的畫面速率

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 60: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

60

SDTV之固定語法

考慮解析度為525 SD之SDTV其視訊序列階層(含其延伸階層)的一些欄位固定值如下

欄位 二進制數值 意義

horizontal_size_value 001011010000 720vertical_size_value 000111100000 480frame_rate_code 0101 30 Hz

profile_and_level_indication 01001000 MPMLprogressive_sequence 0 交錯式影像序列

chroma_format 01 420horizontal_size_extensionvertical_size_extensionbit_rate_extension

均為全0

low_delay 0 含有B畫面

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 61: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

61

群組畫面 (Groups of Pictures GoP)

群組畫面(GoP)能夠單獨編解碼的一組畫面

GoP在MPEG-2中並非必需但群組畫面可做為隨機讀取的切入點

場景變換可做為新群組畫面一個不錯的起始點

群組畫面的檔頭資訊group_of_picture_header()置於群組的第一個I-畫面之前

主要包含時間資訊(群組中第一個畫面的時間)

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 62: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

62

畫面 (Pictures)

MPEG-2的畫面

有I P B三種不同的畫面類型

畫面編碼時有畫框畫面與圖場畫面兩種結構

畫面階層

以picture_header()起始

其後的延伸檔頭picture_coding_extension()描述MPEG-2畫面不同於MPEG-1的部份

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 63: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

63

picture_header 的語法picture_header() No of bits

picture_start_code 32

temporal_reference 10

picture_coding_type 3

vbv_delay 16

if ( picture_coding_type == 2 || picture_coding_type == 3)

full_pel_forward_vector 1

forward_f_code 3

if ( picture_coding_type == 3 )

full_pel_backward_vector 1

backward_f_code 3

extra_bit_picture with the value lsquo0rsquo 1

next_start_code()

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 64: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

64

picture_header 的語意picture_start_code lsquo0x00000100rsquotemporal_reference 編碼畫框時間上的序號重複從0編到1023在GoP_header之後重設為0picture_coding_type 畫面類型為I P或Bvbv_delay 解碼延遲時間即VBV收到picture_start_code之後到解出這張畫面的時間

full_pel_forward_vector 在MPEG-2中設為lsquo0rsquoforward_f_code 在MPEG-2中設為lsquo111rsquofull_pel_backward_vector 在MPEG-2中設為lsquo0rsquobackward_f_code 在MPEG-2中設為lsquo111rsquo以上四個欄位僅用於MPEG-1(MPEG-1可選擇全像素或半像素精確度的動作估計而MPEG-2動作估計均為半像素精確度)有關MPEG-2動作估計的設定另外定義於picture_coding_extensionextra_bit_picture 以下是否還有額外資訊在MPEG-2中保留(設為0)

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 65: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

65

picture_coding_extension 的語法picture_coding_extension() No of bits

extension_start_code 32extension_start_code_identifier 4f_code[0][0] forward horizontal 4f_code[0][1] forward vertical 4f_code[1][0] backward horizontal 4f_code[1][1] backward vertical 4intra_dc_precision 2picture_structure 2top_field_first 1frame_pred_frame_dct 1concealment_motion_vectors 1q_scale_type 1intra_vlc_format 1alternate_scan 1repeat_first_field 1chroma_420_type 1progressive_frame 1composite_display_flag 1next_start_code()

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 66: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

66

picture_coding_extension 的語意(12)

extension_start_code_identifier 10002

f_code[s][t] 設定動作向量搜尋範圍的大小s=0代表向前預測s=1代表向後預測t=0代表水平分量t=1代表垂直分量搜尋範圍由[-8+75] [-16+155]hellip到[-2048+20475]共有9種選擇

intra_dc_precision DC係數的位元精確度為8 9 10 或11 picture_structure 編碼結構即本畫面為畫框畫面或是圖場畫面如為圖場畫面須設定為上圖場或下圖場

top_field_first 決定畫框畫面之上圖場是否為先顯示的圖場這個欄位也可以和repeat_first_field結合決定解碼畫面重複顯示的次數

frame_pred_frame_dct 決定畫框畫面是否採用以畫框為單元的預測及畫框DCT編碼或是採用以圖場為單位的預測及圖場DCT轉換

concealment_motion_vectors 決定Intra巨區塊是否有額外的動作向量

Intra巨區塊也傳送動作向量是為了在錯誤發生無法順利解碼時還可以用動作向量進行錯誤隱藏

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 67: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

67

picture_coding_extension 的語意(22)q_scale_type 使用哪一個量化尺度因子表MPEG-2定義了兩個量化尺度因子表其中一個量化尺度因子q與量化尺度碼呈線性關係另一個則呈非線性關係可提供較大範圍的碼率控制

intra_vlc_format 選用哪一組變動長度碼做掃描數對(run level)的解碼

alternate_scan DCT係數採用之字形掃描或是間隔掃描

repeat_first_field 畫框畫面第一個圖場是否要重複顯示主要用於畫面顯示速率的轉換

chroma_420_type 無作用

progressive_frame 畫框的兩個圖場為漸進式顯示或交錯式顯示

composite_display_flag 輸入畫面(數位編碼前)是否為類比式複合視訊(如為類比NTSC或PAL電視訊號)以下欄位在輸入畫面為類比式複合視訊時提供額外的解碼資訊

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 68: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

68

畫面階層語法(例)DVB-T播送的數位電視(525 SD)中假設其中某畫框的第一個圖場(且為上圖場)被編碼B-圖場其DC係數的精確度為10位元選用非線性量化尺度因子表變動長度碼表Table one之字形掃描

欄位 二進制數值 意義

picture_coding_type 011 B-畫面

intra_dc_precision 10 10位元

picture_structure 01 上圖場

top_field_firstrepeat_first_fieldprogressive_frame

均為0 依照解碼順序顯示圖場且不需重覆顯示

frame_pred_frame_dct 0 圖場畫面設為0q_scale_type 1 非線性量化尺度因子表

intra_vlc_format 1 Intra區塊使用Table one

alternate_scan 0 之字形掃描

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 69: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

69

畫面片段 (Slices)

數位電視之MPEG-2畫面片段由畫面同一列連續的巨區塊所組成

第一個與最後一個巨區塊均不可為略過巨區塊(skipped macroblocks)畫面片段不可重疊編碼時由左上至右下順序排列且所有的畫面片段應佔滿整張畫面

設置畫面片段的目的縮小錯誤發生時錯誤蔓延影響的區域

可以在此設定量化尺度因子做畫面片段整體碼率的控制

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 70: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

70

MPEG-2畫面片段的結構(例)

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 71: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

71

slice 的語法slice() No of bits

slice_start_code 32

quantiser_scale_code 5

if ( nextbits() == lsquo1rsquo )

intra_slice_flag 1

intra_slice 1

reserved_bits 7

extra_bit_slice with the value lsquo0rsquo 1

do

macroblock()

while ( nextbits() = lsquo000 0000 0000 0000 0000 0000rsquo )

next_start_code()

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 72: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

72

slice 的語意

slice_start_code 前24位元為lsquo0x000001rsquo後8個位元代表畫面片段由上面數下來的垂直位置(slice_vertical_position)以巨區塊為單位slice_vertical_position 的值介於1到175之間

quantiser_scale_code 選擇量化尺度因子共有31個q值可選擇

intra_slice_flag 做為以下判斷I-畫面片段的旗標

intra_slice 此畫面片段是否全由I-巨區塊所構成此與解碼程序無關主要做為快轉或快回的參考依據

reserved_bits 保留

extra_bit_slice 在MPEG-2中無作用(應設為0)

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 73: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

73

巨區塊 (Macroblocks)

巨區塊執行動作估計與動作補償的基本單元其檔頭資訊先決定哪些巨區塊需要動作補償

其餘的巨區塊(稱為略過巨區塊)則由預設之動作向量估計值直接貼補亦不進行殘差區塊之編碼

對於需要編碼的巨區塊對其動作向量預測誤差進行變動長度編碼

決定內含的區塊哪些需要進行DCT轉換編碼及

設定轉換編碼的量化尺度因子

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 74: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

74

macroblock 的語法 (12)macroblock() No of bits

while (nextbits() == lsquo0000 0001 000rsquo )

macroblock_escape 11

macroblock_address_increment 1-11

macroblock_type 1-9

if ( macroblock_motion_forward ||

macroblock_motion_backward )

if ( picture_structure == lsquoframersquo )

if ( frame_pred_frame_dct == 0 )

frame_motion_type 2

else

field_motion_type 2

if ( ( picture_structure == ldquoFrame picturerdquo ) ampamp

( frame_pred_frame_dct == 0 ) ampamp

( macroblock_intra || macoblock_pattern) )

dct_type 1

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 75: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

75

macroblock 的語法 (22)No of bits

If (macroblock_quant)

quantiser_scale_code 5

if ( macroblock_motion_forward ||

( macroblock_intra ampamp concealment_motion_vectors) )

motion_vectors( 0 )

if ( macroblock_motion_backward )

motion_vectors( 1 )

if ( macroblock_intra ampamp concealment_motion_vectors)

marker_bit 1

if ( macroblock_pattern )

coded_block_pattern()

for ( i=0 iltblock_count i++ )

block( i )

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 76: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

76

macroblock 的語意 (12)

macroblock_escape 位元串000000010002while迴圈中每出現一次macroblock_escape即代表 macroblock_address_increment的值要額外增加33macroblock_address_increment 代表目前編碼巨區塊與前一個編碼巨區塊地址的差值目前編碼巨區塊與前一個編碼巨區塊中間跳過的巨區塊稱為「略過巨區塊」巨區塊的地址由畫面的左上方(地址為0)起算

I-畫面沒有略過巨區塊P-畫面的略過巨區塊其動作向量設為0B-畫面的略過巨區塊其動作向量設為其原有預測值預測方向(向前向後或雙向)與前一個編碼巨區塊相同如為圖場畫面其參考圖場與編碼圖場之parity相同

macroblock_type 規範目前編碼巨區塊的預測與編碼模式各位元均為旗標(flag) 其中較重要的欄位包括

macroblock_quant ndash 是否重設量化尺度因子

macroblock_motion_forward ndash 是否有向前預測的動作向量

macroblock_motion_backward ndash 是否有向後預測的動作向量

macroblock_pattern ndash 本巨區塊是否進行殘差區塊之編碼

macroblock_intra ndash 是否為Intra巨區塊

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 77: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

77

macroblock 的語意 (22)frame_motion_type field_motion_type ndash 規範本巨區塊的預測方式

MPEG-2巨區塊的預測方式有frame-based(參考畫面以畫框為單位)field-based(參考畫面以圖場為單位)16times8 MC (巨區塊分成上下兩個16times8的兩個區域分別進行動作估計與動作補償)及dual prime(使用參考畫面兩個圖場動作向量預測值的平均)等四種

dct_type ndash 選擇畫框DCT編碼或是圖場DCT編碼

motion_vectors()副程式負責動作向量的解碼coded_block_pattern()決定巨區塊中哪幾個區塊需要實際進行DCT轉換編碼

motion_vectors()的重要參數包括

motion_vertical_field_select ndash 選擇上圖場或下圖場為參考畫面

motion_code motion_residual ndash 用以算出動作向量與其預測值的差值

MPEG-2的動作估計以半像素為單位由f_code決定搜尋範圍後motion_code代表選定之搜尋範圍的特定區段(16 ~ +16之間的整數共33區段)motion_residual代表該區段精確至半像素點的索引值

dmvector ndash 使用dual prime預測方式時動作向量與其預測向量的差值(-1 0或+1)

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 78: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

78

不同彩度次取樣格式巨區塊內部區塊的編碼順序

0 1

2 3

4 8

6 10

5 9

7 11

Y Cb Cr(a)

0 1

2 3

Y Cb Cr(b)

0 1

2 3

Y Cb Cr(c)

4

6

5

7

4 5

(a) 444(b) 422(c) 420

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 79: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

79

區塊 (Blocks)

區塊為8times8大小的矩陣為DCT轉換編碼的基本單元

Intra區塊代表原始資料Inter區塊代表殘差資料若為彩度區塊可能為其次取樣之結果

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 80: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

80

參考資料(書)數位電視之多媒體技術楊士萱尤信程陳偉凱編著全華圖書2007數位電視之原理與技術林信標劉玉蓀鄭憲勳尤信程編著全華圖書2007 JPEG 2000Image Compression Fundamentals Standards and Practice by David S Taubman and Michael W Marcellin Kluwer Academic Publishers 2002Video Coding An Introduction to Standard Codecs by Mohammed Ghanbari IEE Telecommunications Series no 42 1999Image and Video Compression Standards Algorithms and Architectures second edition by V Bhaskaran and K Konstantinides Kluwer Academic Publishers 1997 Digital Video An Introduction to MPEG-2 by Barry G Haskell Atul Puri and Arun N Netravali Chapman amp Hall 1997Techniques and Standards for Images Video and Audio Coding by K R Raoand J J Hwang Prentice Hall 1996

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 81: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

81

參考文獻(論文標準或規格書)The JPEG Still Picture Compression Standard by WallaceDigital Video Broadcasting (DVB) Implementation guidelines for the use of Video and Audio Coding in Broadcasting Applications based on the MPEG-2 Transport Stream ETSI TS 101 154 V171 June 2005-06「地面數位電視接收機基本技術規範」經濟部公告經授標字第09420050410 號中華民國94年8月

ISOIEC International Standard 11172-2 Information technology ndash Coding of moving pictures and associated audio for digital storage media up to about 15 Mbitss ndash Part 2 Video first edition Aug 1993ISOIEC International Standard 13818-2 Generic coding of moving pictures and associated audio ndash Part 2 Video 1995ISOIEC International Standard 14496-2 Information technology ndash Coding of audio-visual objects ndash Part 2 Visual Amendment 1 Visual extensions July 2000

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice

Page 82: 訊編解碼技術shyang/DTV/MPEG1,2.pdfITU為低頻寬傳輸網路(如傳輸碼率為28.8 kb/s或33.6 kb/s),所 訂定的雙向影音通訊服務標準。 其部份編碼技術後來被用在MPEG-4中。

82

參考資料(網頁)

Official DVB home page httpwwwdvborgOfficial MPEG home page httpwwwchiariglioneorgmpegOfficial ITU home page httpwwwituinthomeindexhtml維基百科httpwwwwikipediaorg

  • 數位電視之MPEG-12視訊編解碼技術
  • 大綱
  • 視訊編碼標準概觀
  • 採用標準的優缺點
  • 數位視訊與數位音訊編碼總覽
  • JPEG
  • JPEG-2000
  • MPEG-1 概述
  • MPEG-1的構成方塊
  • MPEG-1的第一
  • MPEG-2 概述
  • MPEG-2 的前7個部份
  • MPEG-4 概述
  • MPEG-7 與 MPEG-21
  • ISO MPEG系列音訊編碼標準
  • ITU-T H26x系列視訊編碼標準
  • MPEG-12視訊編解碼原理與核心演算法
  • 數位電視與MPEG視訊標準
  • MPEG-12的編碼流程
  • MPEG-12 編碼流程概述
  • MPEG-12的畫面類型
  • MPEG-12各畫面類型的特性
  • IP及B畫面的相互參考關係
  • 參考畫面的相關課題
  • MPEG-12 B-畫面的前向後向雙向動作補償
  • MPEG-12 的動作估計
  • MPEG-12轉換編碼(13)
  • MPEG-12的轉換編碼(23)
  • MPEG-12的轉換編碼(33)
  • MPEG-12定義的兩種掃描順序(MPEG-1僅可採用之字型掃描)
  • MPEG-1 區塊編碼(例)
  • MPEG-1 區塊編碼(例續)
  • MPEG-1 區塊編碼(例續)
  • MPEG-12的解碼流程
  • MPEG-12 的碼率控制
  • MPEG-2與MPEG-1的主要差異
  • 交錯式影片的新增選項
  • 畫框畫面與圖場畫面
  • 畫框畫面的參考畫面
  • 圖場畫面參考圖場的選擇(13)
  • 圖場畫面參考圖場的選擇(23)
  • 圖場畫面參考圖場的選擇(33)
  • 參考圖場的選擇(例)
  • 「畫框DCT編碼」與「圖場DCT編碼」
  • MPEG-2與MPEG-1的其他差異(12)
  • MPEG-2與MPEG-1的其他差異(22)
  • MPEG-2 區塊編碼(例)
  • MPEG-2 區塊編碼(例續)
  • MPEG-2的「層次」與「位階」
  • MPEG-2視訊位元串流語法及語意分析
  • MPEG-2的資料階層(data hierarchy)
  • 資料階層語法
  • 延伸類型及其對應的識別位元
  • 視訊序列 (Sequences)
  • sequence_header的語法
  • sequence_header的語意(12)
  • sequence_header的語意(22)
  • sequence_extension的語法
  • sequence_extension的語意
  • SDTV之固定語法
  • 群組畫面 (Groups of Pictures GoP)
  • 畫面 (Pictures)
  • picture_header 的語法
  • picture_header 的語意
  • picture_coding_extension 的語法
  • picture_coding_extension 的語意(12)
  • picture_coding_extension 的語意(22)
  • 畫面階層語法(例)
  • 畫面片段 (Slices)
  • MPEG-2畫面片段的結構(例)
  • slice 的語法
  • slice 的語意
  • 巨區塊 (Macroblocks)
  • macroblock 的語法 (12)
  • macroblock 的語法 (22)
  • macroblock 的語意 (12)
  • macroblock 的語意 (22)
  • 不同彩度次取樣格式巨區塊內部區塊的編碼順序
  • 區塊 (Blocks)
  • 參考資料(書)
  • 參考文獻(論文標準或規格書)
  • 參考資料(網頁)
    • ltlt ASCII85EncodePages false AllowTransparency false AutoPositionEPSFiles true AutoRotatePages All Binding Left CalGrayProfile (Dot Gain 20) CalRGBProfile (sRGB IEC61966-21) CalCMYKProfile (US Web Coated 050SWOP051 v2) sRGBProfile (sRGB IEC61966-21) CannotEmbedFontPolicy Warning CompatibilityLevel 14 CompressObjects Tags CompressPages true ConvertImagesToIndexed true PassThroughJPEGImages true CreateJDFFile false CreateJobTicket false DefaultRenderingIntent Default DetectBlends true DetectCurves 00000 ColorConversionStrategy LeaveColorUnchanged DoThumbnails false EmbedAllFonts true EmbedOpenType false ParseICCProfilesInComments true EmbedJobOptions true DSCReportingLevel 0 EmitDSCWarnings false EndPage -1 ImageMemory 1048576 LockDistillerParams false MaxSubsetPct 100 Optimize true OPM 1 ParseDSCComments true ParseDSCCommentsForDocInfo true PreserveCopyPage true PreserveDICMYKValues true PreserveEPSInfo true PreserveFlatness true PreserveHalftoneInfo false PreserveOPIComments false PreserveOverprintSettings true StartPage 1 SubsetFonts true TransferFunctionInfo Apply UCRandBGInfo Preserve UsePrologue false ColorSettingsFile () AlwaysEmbed [ true ] NeverEmbed [ true ] AntiAliasColorImages false CropColorImages true ColorImageMinResolution 300 ColorImageMinResolutionPolicy OK DownsampleColorImages true ColorImageDownsampleType Bicubic ColorImageResolution 300 ColorImageDepth -1 ColorImageMinDownsampleDepth 1 ColorImageDownsampleThreshold 150000 EncodeColorImages true ColorImageFilter DCTEncode AutoFilterColorImages true ColorImageAutoFilterStrategy JPEG ColorACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt ColorImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000ColorACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000ColorImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasGrayImages false CropGrayImages true GrayImageMinResolution 300 GrayImageMinResolutionPolicy OK DownsampleGrayImages true GrayImageDownsampleType Bicubic GrayImageResolution 300 GrayImageDepth -1 GrayImageMinDownsampleDepth 2 GrayImageDownsampleThreshold 150000 EncodeGrayImages true GrayImageFilter DCTEncode AutoFilterGrayImages true GrayImageAutoFilterStrategy JPEG GrayACSImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt GrayImageDict ltlt QFactor 015 HSamples [1 1 1 1] VSamples [1 1 1 1] gtgt JPEG2000GrayACSImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt JPEG2000GrayImageDict ltlt TileWidth 256 TileHeight 256 Quality 30 gtgt AntiAliasMonoImages false CropMonoImages true MonoImageMinResolution 1200 MonoImageMinResolutionPolicy OK DownsampleMonoImages true MonoImageDownsampleType Bicubic MonoImageResolution 1200 MonoImageDepth -1 MonoImageDownsampleThreshold 150000 EncodeMonoImages true MonoImageFilter CCITTFaxEncode MonoImageDict ltlt K -1 gtgt AllowPSXObjects false CheckCompliance [ None ] PDFX1aCheck false PDFX3Check false PDFXCompliantPDFOnly false PDFXNoTrimBoxError true PDFXTrimBoxToMediaBoxOffset [ 000000 000000 000000 000000 ] PDFXSetBleedBoxToMediaBox true PDFXBleedBoxToTrimBoxOffset [ 000000 000000 000000 000000 ] PDFXOutputIntentProfile () PDFXOutputConditionIdentifier () PDFXOutputCondition () PDFXRegistryName () PDFXTrapped False Description ltlt CHS ltFEFF4f7f75288fd94e9b8bbe5b9a521b5efa7684002000500044004600206587686353ef901a8fc7684c976262535370673a548c002000700072006f006f00660065007200208fdb884c9ad88d2891cf62535370300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c676562535f00521b5efa768400200050004400460020658768633002gt CHT ltFEFF4f7f752890194e9b8a2d7f6e5efa7acb7684002000410064006f006200650020005000440046002065874ef653ef5728684c9762537088686a5f548c002000700072006f006f00660065007200204e0a73725f979ad854c18cea7684521753706548679c300260a853ef4ee54f7f75280020004100630072006f0062006100740020548c002000410064006f00620065002000520065006100640065007200200035002e003000204ee553ca66f49ad87248672c4f86958b555f5df25efa7acb76840020005000440046002065874ef63002gt DAN ltFEFF004200720075006700200069006e0064007300740069006c006c0069006e006700650072006e0065002000740069006c0020006100740020006f007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e007400650072002000740069006c0020006b00760061006c00690074006500740073007500640073006b007200690076006e0069006e006700200065006c006c006500720020006b006f007200720065006b007400750072006c00e60073006e0069006e0067002e0020004400650020006f007000720065007400740065006400650020005000440046002d0064006f006b0075006d0065006e0074006500720020006b0061006e002000e50062006e00650073002000690020004100630072006f00620061007400200065006c006c006500720020004100630072006f006200610074002000520065006100640065007200200035002e00300020006f00670020006e0079006500720065002egt DEU ltFEFF00560065007200770065006e00640065006e0020005300690065002000640069006500730065002000450069006e007300740065006c006c0075006e00670065006e0020007a0075006d002000450072007300740065006c006c0065006e00200076006f006e002000410064006f006200650020005000440046002d0044006f006b0075006d0065006e00740065006e002c00200076006f006e002000640065006e0065006e002000530069006500200068006f00630068007700650072007400690067006500200044007200750063006b006500200061007500660020004400650073006b0074006f0070002d0044007200750063006b00650072006e00200075006e0064002000500072006f006f0066002d00470065007200e400740065006e002000650072007a0065007500670065006e0020006d00f60063006800740065006e002e002000450072007300740065006c006c007400650020005000440046002d0044006f006b0075006d0065006e007400650020006b00f6006e006e0065006e0020006d006900740020004100630072006f00620061007400200075006e0064002000410064006f00620065002000520065006100640065007200200035002e00300020006f0064006500720020006800f600680065007200200067006500f600660066006e00650074002000770065007200640065006e002egt ESP ltFEFF005500740069006c0069006300650020006500730074006100200063006f006e0066006900670075007200610063006900f3006e0020007000610072006100200063007200650061007200200064006f00630075006d0065006e0074006f0073002000640065002000410064006f0062006500200050004400460020007000610072006100200063006f006e00730065006700750069007200200069006d0070007200650073006900f3006e002000640065002000630061006c006900640061006400200065006e00200069006d0070007200650073006f0072006100730020006400650020006500730063007200690074006f00720069006f00200079002000680065007200720061006d00690065006e00740061007300200064006500200063006f00720072006500630063006900f3006e002e002000530065002000700075006500640065006e00200061006200720069007200200064006f00630075006d0065006e0074006f00730020005000440046002000630072006500610064006f007300200063006f006e0020004100630072006f006200610074002c002000410064006f00620065002000520065006100640065007200200035002e003000200079002000760065007200730069006f006e0065007300200070006f00730074006500720069006f007200650073002egt FRA ltFEFF005500740069006c006900730065007a00200063006500730020006f007000740069006f006e00730020006100660069006e00200064006500200063007200e900650072002000640065007300200064006f00630075006d0065006e00740073002000410064006f00620065002000500044004600200070006f007500720020006400650073002000e90070007200650075007600650073002000650074002000640065007300200069006d007000720065007300730069006f006e00730020006400650020006800610075007400650020007100750061006c0069007400e90020007300750072002000640065007300200069006d007000720069006d0061006e0074006500730020006400650020006200750072006500610075002e0020004c0065007300200064006f00630075006d0065006e00740073002000500044004600200063007200e900e90073002000700065007500760065006e0074002000ea0074007200650020006f007500760065007200740073002000640061006e00730020004100630072006f006200610074002c002000610069006e00730069002000710075002700410064006f00620065002000520065006100640065007200200035002e0030002000650074002000760065007200730069006f006e007300200075006c007400e90072006900650075007200650073002egt ITA ltFEFF005500740069006c0069007a007a006100720065002000710075006500730074006500200069006d0070006f007300740061007a0069006f006e00690020007000650072002000630072006500610072006500200064006f00630075006d0065006e00740069002000410064006f006200650020005000440046002000700065007200200075006e00610020007300740061006d007000610020006400690020007100750061006c0069007400e00020007300750020007300740061006d00700061006e0074006900200065002000700072006f006f0066006500720020006400650073006b0074006f0070002e0020004900200064006f00630075006d0065006e007400690020005000440046002000630072006500610074006900200070006f00730073006f006e006f0020006500730073006500720065002000610070006500720074006900200063006f006e0020004100630072006f00620061007400200065002000410064006f00620065002000520065006100640065007200200035002e003000200065002000760065007200730069006f006e006900200073007500630063006500730073006900760065002egt JPN ltFEFF9ad854c18cea51fa529b7528002000410064006f0062006500200050004400460020658766f8306e4f5c6210306b4f7f75283057307e30593002537052376642306e753b8cea3092670059279650306b4fdd306430533068304c3067304d307e3059300230c730b930af30c830c330d730d730ea30f330bf3067306e53705237307e305f306f30d730eb30fc30d57528306b9069305730663044307e305930023053306e8a2d5b9a30674f5c62103055308c305f0020005000440046002030d530a130a430eb306f3001004100630072006f0062006100740020304a30883073002000410064006f00620065002000520065006100640065007200200035002e003000204ee5964d3067958b304f30533068304c3067304d307e30593002gt KOR ltFEFFc7740020c124c815c7440020c0acc6a9d558c5ec0020b370c2a4d06cd0d10020d504b9b0d1300020bc0f0020ad50c815ae30c5d0c11c0020ace0d488c9c8b85c0020c778c1c4d560002000410064006f0062006500200050004400460020bb38c11cb97c0020c791c131d569b2c8b2e4002e0020c774b807ac8c0020c791c131b41c00200050004400460020bb38c11cb2940020004100630072006f0062006100740020bc0f002000410064006f00620065002000520065006100640065007200200035002e00300020c774c0c1c5d0c11c0020c5f40020c2180020c788c2b5b2c8b2e4002egt NLD (Gebruik deze instellingen om Adobe PDF-documenten te maken voor kwaliteitsafdrukken op desktopprinters en proofers De gemaakte PDF-documenten kunnen worden geopend met Acrobat en Adobe Reader 50 en hoger) NOR ltFEFF004200720075006b00200064006900730073006500200069006e006e007300740069006c006c0069006e00670065006e0065002000740069006c002000e50020006f0070007000720065007400740065002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740065007200200066006f00720020007500740073006b00720069006600740020006100760020006800f800790020006b00760061006c00690074006500740020007000e500200062006f007200640073006b0072006900760065007200200065006c006c00650072002000700072006f006f006600650072002e0020005000440046002d0064006f006b0075006d0065006e00740065006e00650020006b0061006e002000e50070006e00650073002000690020004100630072006f00620061007400200065006c006c00650072002000410064006f00620065002000520065006100640065007200200035002e003000200065006c006c00650072002000730065006e006500720065002egt PTB ltFEFF005500740069006c0069007a006500200065007300730061007300200063006f006e00660069006700750072006100e700f50065007300200064006500200066006f0072006d00610020006100200063007200690061007200200064006f00630075006d0065006e0074006f0073002000410064006f0062006500200050004400460020007000610072006100200069006d0070007200650073007300f5006500730020006400650020007100750061006c0069006400610064006500200065006d00200069006d00700072006500730073006f0072006100730020006400650073006b0074006f00700020006500200064006900730070006f00730069007400690076006f0073002000640065002000700072006f00760061002e0020004f007300200064006f00630075006d0065006e0074006f00730020005000440046002000630072006900610064006f007300200070006f00640065006d0020007300650072002000610062006500720074006f007300200063006f006d0020006f0020004100630072006f006200610074002000650020006f002000410064006f00620065002000520065006100640065007200200035002e0030002000650020007600650072007300f50065007300200070006f00730074006500720069006f007200650073002egt SUO ltFEFF004b00e40079007400e40020006e00e40069007400e4002000610073006500740075006b007300690061002c0020006b0075006e0020006c0075006f0074002000410064006f0062006500200050004400460020002d0064006f006b0075006d0065006e007400740065006a00610020006c0061006100640075006b006100730074006100200074007900f6007000f60079007400e400740075006c006f0073007400750073007400610020006a00610020007600650064006f007300740075007300740061002000760061007200740065006e002e00200020004c0075006f0064007500740020005000440046002d0064006f006b0075006d0065006e00740069007400200076006f0069006400610061006e0020006100760061007400610020004100630072006f0062006100740069006c006c00610020006a0061002000410064006f00620065002000520065006100640065007200200035002e0030003a006c006c00610020006a006100200075007500640065006d006d0069006c006c0061002egt SVE ltFEFF0041006e007600e4006e00640020006400650020006800e4007200200069006e0073007400e4006c006c006e0069006e006700610072006e00610020006f006d002000640075002000760069006c006c00200073006b006100700061002000410064006f006200650020005000440046002d0064006f006b0075006d0065006e00740020006600f600720020006b00760061006c00690074006500740073007500740073006b0072006900660074006500720020007000e5002000760061006e006c00690067006100200073006b0072006900760061007200650020006f006300680020006600f600720020006b006f007200720065006b007400750072002e002000200053006b006100700061006400650020005000440046002d0064006f006b0075006d0065006e00740020006b0061006e002000f600700070006e00610073002000690020004100630072006f0062006100740020006f00630068002000410064006f00620065002000520065006100640065007200200035002e00300020006f00630068002000730065006e006100720065002egt ENU (Use these settings to create Adobe PDF documents for quality printing on desktop printers and proofers Created PDF documents can be opened with Acrobat and Adobe Reader 50 and later) gtgt Namespace [ (Adobe) (Common) (10) ] OtherNamespaces [ ltlt AsReaderSpreads false CropImagesToFrames true ErrorControl WarnAndContinue FlattenerIgnoreSpreadOverrides false IncludeGuidesGrids false IncludeNonPrinting false IncludeSlug false Namespace [ (Adobe) (InDesign) (40) ] OmitPlacedBitmaps false OmitPlacedEPS false OmitPlacedPDF false SimulateOverprint Legacy gtgt ltlt AddBleedMarks false AddColorBars false AddCropMarks false AddPageInfo false AddRegMarks false ConvertColors NoConversion DestinationProfileName () DestinationProfileSelector NA Downsample16BitImages true FlattenerPreset ltlt PresetSelector MediumResolution gtgt FormElements false GenerateStructure true IncludeBookmarks false IncludeHyperlinks false IncludeInteractive false IncludeLayers false IncludeProfiles true MultimediaHandling UseObjectSettings Namespace [ (Adobe) (CreativeSuite) (20) ] PDFXOutputIntentProfileSelector NA PreserveEditing true UntaggedCMYKHandling LeaveUntagged UntaggedRGBHandling LeaveUntagged UseDocumentBleed false gtgt ]gtgt setdistillerparamsltlt HWResolution [2400 2400] PageSize [612000 792000]gtgt setpagedevice