3. h.261 video codec for a/v services at px64...
TRANSCRIPT
Chosun Univ. Multimedia ASIC Lab. 1
http://vlsi.chosun.ac.kr
3. H.261 Video Codec for A/V Services at px64 kbits
1998. 02. 18.
/ß¿�� ÃOÔ³t�´�» MEDALMultimedia Engineering & Design ASIC Lab.
3 Ô Ã[email protected]
http://vlsi.chosun.ac.kr
Chosun Univ. Multimedia ASIC Lab. 2
http://vlsi.chosun.ac.kr
Outline
• H.261 Video Coding Basic• H.261 Video Coding Algorithm• H.261 Video Multipex Coder• H.261 Transmission Coder• Reference
Chosun Univ. Multimedia ASIC Lab. 3
http://vlsi.chosun.ac.kr
H.261 Video Coding Basic
• H.261 System Block Diagram• H.261 System Feature• H.261 Encoder/Decoder• H.261 Data Structure• Video Signal Format• Samples of Luma & Chroma
Chosun Univ. Multimedia ASIC Lab. 4
http://vlsi.chosun.ac.kr
H.261 System Block Diagram
Chosun Univ. Multimedia ASIC Lab. 5
http://vlsi.chosun.ac.kr
H.261 System Feature
• Audiovisual ÀèH: ¥eù9$Üø• ¨EÌ: px64kbps, p=1,2,...,30• 8¤e: Y��¸X• ¥e�Ü: NTSC(525 lines;480), PAL (625 lines;576)• ¥e ��d ù9
• INTER L�: ME& MC• INTRA L�: DCT• Yh L�: VLC
• ��d ��: 4 hÙ �µø• t�ÀX: BCH(511,493)
Chosun Univ. Multimedia ASIC Lab. 6
http://vlsi.chosun.ac.kr
H.261 Encoder
Chosun Univ. Multimedia ASIC Lab. 7
http://vlsi.chosun.ac.kr
H.261 Decoder
Chosun Univ. Multimedia ASIC Lab. 8
http://vlsi.chosun.ac.kr
H.261 Data Structure
Chosun Univ. Multimedia ASIC Lab. 9
http://vlsi.chosun.ac.kr
Video Signal Format
Chosun Univ. Multimedia ASIC Lab. 10
http://vlsi.chosun.ac.kr
H.261 Video Multiplex Coder
• H.261 Stream 4 hÙ��• Picture Layer• GOB layer• Macroblock Layer• Block Layer• Multipoint Functions
Chosun Univ. Multimedia ASIC Lab. 11
http://vlsi.chosun.ac.kr
H.261 Stream 4 �ô +/
GOB dataPictureHeader ... GOB data
GOBHeader ...MB data MB data
...MBHeader
block datablock data
... EOBTCOEF TCOEF
PictureLayer
Group ofBlock Layer
MacroBlockLayer
BlockLayer
Chosun Univ. Multimedia ASIC Lab. 12
http://vlsi.chosun.ac.kr
Picture Layer
PSC(20)
TR(5)
PTYPE(6)
PEI(1)
PSPARE(0/8/16...)
PEI(1)
GOB data(...)
• PSC(Picture Start Code) : 20 bits; “0000 0000 0000 0001 0000”
• TR(Temporal Reference) : 5 bits• PTYPE( Type Information) : 6 bits
bit 1 : Split screen indicator; off(0)/on(1) bit 2 : Document camera indocator; off(0)/on(1) bit 3 : Freeze picture release; off(0)/on(1) bit 4 : Source format; QCIF(0)/ CIF(1) bit 5 : Optional still image mode HI_RES; on(0)/off(1) bit 6 : Spare
• PEI(Extra Insertion Information for picture) : 1 bit; 0 setting
• PSPARE(Spare Information for picture) : 0/8/16 ... bits PEI=‘1’ ðp �P�; ITU-T future backward compatible addition
Chosun Univ. Multimedia ASIC Lab. 13
http://vlsi.chosun.ac.kr
GOB Layer
GBSC(16)
GN(4)
GQUANT(5)
GEI(1)
GSPARE(0/8/16...)
GEI(1)
MB data(...)
• GOBt MB¤ jXh ¥ GOB�ø8 ¨��• � á<ü GOBÀÀ:
CIF(352x288)
QCIF(176x144)
1
3
5
7
9
11
8
10
12
1
3
5
2
4
6
A GOB of Y
176 pels/line
24lines/GOB
A GOBof CB, CR
88 pels/line
48lines/GOB
Chosun Univ. Multimedia ASIC Lab. 14
http://vlsi.chosun.ac.kr
GOB Layer
• GBSC(GOB Start Code) : 16 bits; “0000 0000 0000 0001”
• GN(Group Number) : 4 bitsGN=0: PSC; GN=13,14,15: reserved
• GQUANT(Quantization Info for GOB) : 5 bits; [1 , 31] overridden by any subsequent MQUANT
• GEI(Extra Insertion Info for GOB) : 1 bit; 0 setting
• GSPARE(Spare Info for GOB) : 0/8/16 ... bitsGEI=‘1’ ðp �P�; ITU-T future backword compatible addition
• GOBXü MB,Ü(1 GOB = 33 MBs)MB,ܤ ¨EÀÀ(
1
12
23
2
13
24
3
14
25
4
15
26
5
16
27
6
17
28
7
18
29
8
19
30
9
20
31
10
21
32
11
22
33
MB of Y
16 pels/line
16lines/MB
8
8
MB of CB, CR
Chosun Univ. Multimedia ASIC Lab. 15
http://vlsi.chosun.ac.kr
Macroblock Layer
• MBA(Macroblock address)– GOBXü MB¨üt ¤� VLC(Table 1 Ü�)– O,� ¨E¼8 MBA8 MBü ¬¤ 0; �ð$Ô8 �¨¨E� MB ,Üä $¶è ¨E
• MTYPE(Type Info fro MB)– MBt ¤� ¹�ä �Pü8 ��d80 <dh(Table 2 Ü�)
• MQUANT(Quantizer) : 5 bits; [1 , 31]– MTYPEà� MQUANT�P <dh– �ð MQUANT¤ Ðððd ¨P GOBtÀ PM
MBA MTYPE MQUANT(5)
MVD CBP Block data
CBP
MVD
MBA stuffing
Chosun Univ. Multimedia ASIC Lab. 16
http://vlsi.chosun.ac.kr
Block Layer
TCOEFF EOB
1 2
3 4
5
Y(16x16) CB(8x8) CR(8x8)
6
• MBXü ¸� ,Ü; ¨E ÀÀ
Chosun Univ. Multimedia ASIC Lab. 17
http://vlsi.chosun.ac.kr
Block Layer
• TCOEFF(Transform Coefficients)– INTRA ð L� ¸�t �P; ��8 MTYPE, CBPt Ô �P– Zig-zag scanning– INTRA-coded DC: FLC(8 bits)– INTRA-coded & INTER-coded AC: (Table 5Ü�) 2-D Huffman Coding: [zero run, QC(i,j)]; sign bit: ‘s’; positive(0)/negative(1)– Remaining combination of [zero run, QC(i,j)] : 20 bits Escape(6) + Run(6) + Level(8): (Table 6,7 Ü�) black:’0001 0000’/white:’110 1011’ not used level: ‘0000 0000’,
‘1000 0000’(REC Level 1024 coded ‘1111 1111’)– Reconstruction level(REC): [-2048, 2047] : (Table 8 Ü�) REC of INTRA DC: (Table 9 Ü�)
• EOB(End of Block)– ¸�ü ldm ø�: ’10’
Chosun Univ. Multimedia ASIC Lab. 18
http://vlsi.chosun.ac.kr
H.261 Transmission Coder
• Video Data Buffering• Video Coding Delay• Forward Error Correction• Still Image Transmission
Chosun Univ. Multimedia ASIC Lab. 19
http://vlsi.chosun.ac.kr
Video Data Buffering
• $ÜÔü @É H\`: HRDü 8�P�t �0 ÀX– $Üø¼8 � átü �¤ è\H\`: 256kbits(CIF), 64 kbits(QCIF) PSC and all other data,PSPARE,GSPARE,MBA stuffing ��; error corection framming bits, fill indicator(Fi), fill bits/error correction parity infoÀ�– Hypothetical Reference Decoder(HRD) HRD ¼�( : (B+256 kbits)
t
t
R (t )d t
B
b
n+1
n
n
n+ 1
d
n+1
t n n+1t
b
n+ 1 n
H RD buffe roccu pa ncy(bit)
T im e(C IF in te rva l)
N O T E – T im e (t – t ) is a n in teger nu m b er o f C IF pic tu re pe rio d s (1 /2 9 .97 , 2 /2 9 .9 7 , 3 /2 9 .9 7 , ...) .
ÁÑ= ³±¸
ìà÷
¸¶
ã á Ñ ó ãó Áí í
ó
ó
í
í
+ ≥ + −+∫°
°
§ ¨
Chosun Univ. Multimedia ASIC Lab. 20
http://vlsi.chosun.ac.kr
Video Coding Delay• è¸È $ÜÔä �ÜÔü d�:
– È¸È d� �e– lip synchronization
• Codec delay measurement method:– depend on implementation, picture format(CIF/QCIF) and data rate– measuring points:
videocoder
videodecoderA C
B
input video sequence: more than 100 sec.typical moving scene consistentmin coded picture rate: 7.5 Hzvisible ID mark a): átü O¸�t 97 ¨¬( Ô� õ/Õè dø �Xless than 10% stuffing
encoder delay: A´ü vidible ID dø¤ B´tÀ $@Äððd �¨decoder delay: B´ü vidible ID dø¤ C´tÀ $@Äððd �¨
Chosun Univ. Multimedia ASIC Lab. 21
http://vlsi.chosun.ac.kr
Forward Error Correction• BCH(511,493) forward error correction code• General polynomial: g(x)=(x9+x4+1)(x9+x6+x4+x3+1)• Error Correction Framing(ECF):
• Relock Time of ECF– 3 ECF(24 bits) ¤ frame lock¨t ¼�¼X �– �ÜÔ8 ECF dø ¨ 34kbitsXt frame lockè Pȹüh� Èh� �
Chosun Univ. Multimedia ASIC Lab. 22
http://vlsi.chosun.ac.kr
Still Image Transmission
• High quality image ¨E:normal video resolutionü 4Ô– progressive, hierarchical ¨E– �ÈP�: H.261ü �0dø, hÍ ua,øl ¨E1hü Ä�Õ– QCIF--->CIF, CIF(352x288)--->4CIF(704x576)– still image ¼m/¼eà� 2:1 sub-samplingü� è¸È �� ¨E sub-sampling pattern: 0 3 0 3 0 3 0 3
1 2 1 2 1 2 1 2 0 3 0 3 0 3 0 3 1 2 1 2 1 2 1 2 0 3 0 3 0 3 0 3 1 2 1 2 1 2 1 2
– PTYPEü HI_RES=‘0’, TR=‘000xx’, xx= sub-images 0,1,2,3
• Multipoint �ÈP�– broadcasting of still image– for this capability H.230 define MCV/Cancel-MCV TerminaltÀ MCUt MCV �X � è¸È broadcast¼h� ü�, Cancel-MCV �X �¨L�� �d �X *MCV: Multipoint Command Visualization-forcing MCU: Multipoint Control Unit
Chosun Univ. Multimedia ASIC Lab. 23
http://vlsi.chosun.ac.kr
Reference
• ITU-T Recommendation H.261, Video Codec for AudiovisualServices at px64 kbits, Mar, 1993
• ¨¤¨(KT), H.261}øe$Üø ÔÄ,À\¤ýô ¼hX�}��0üh¹0, 1996
• J.J.Hwang and B.R.Lee, Chapter 10. ITU-T Recomm. H261 Coder-Decoder of Digital Consumer Electronis Handbook, 1997
• Andy C. Hung, PVRG-P64 CODEC 1.1, Nov. 17, 1993
Chosun Univ. Multimedia ASIC Lab. 24
http://vlsi.chosun.ac.kr
4. H.263 Video Codec for Low Bitrate Communcations