KR20020006149A - Variable length encoder in MPEG4 codec - Google Patents

Variable length encoder in MPEG4 codec Download PDF

Info

Publication number
KR20020006149A
KR20020006149A KR1020000039639A KR20000039639A KR20020006149A KR 20020006149 A KR20020006149 A KR 20020006149A KR 1020000039639 A KR1020000039639 A KR 1020000039639A KR 20000039639 A KR20000039639 A KR 20000039639A KR 20020006149 A KR20020006149 A KR 20020006149A
Authority
KR
South Korea
Prior art keywords
tcoef
vlc
rvlc
inter
intra
Prior art date
Application number
KR1020000039639A
Other languages
Korean (ko)
Other versions
KR100349649B1 (en
Inventor
천승문
Original Assignee
송문섭
주식회사 현대큐리텔
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 송문섭, 주식회사 현대큐리텔 filed Critical 송문섭
Priority to KR1020000039639A priority Critical patent/KR100349649B1/en
Priority claimed from KR1020000039639A external-priority patent/KR100349649B1/en
Publication of KR20020006149A publication Critical patent/KR20020006149A/en
Application granted granted Critical
Publication of KR100349649B1 publication Critical patent/KR100349649B1/en

Links

Classifications

    • HELECTRICITY
    • H03BASIC ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

PURPOSE: A variable length coder of a motion picture compression coding apparatus, which variable-length-encodes image information passing through a low transmission line allowed by a transmission channel, is provided to recover loss due to error generated during variable length encoding. CONSTITUTION: A variable length coder of a motion picture compression coding apparatus includes a luminance block pattern processor(100) for processing a coded block pattern for luminance with a VLC code, an MCBPC(110) for defining a macro block type and coded block pattern for chrominance with the VLC code, and a motion vector difference processor(120). The variable length coder further has a luminance DCT DC size processor(130), a chrominance DCT DC size processor(140), and an input buffer(201) for buffering a DCT coefficient subjected to zigzag scan and outputting it to a run length coder(202) that outputs control information required for VLC coding. The variable length coder also has the first, second, third and fourth switches(203,204,205,206) for selectively various control signals to switch paths from the run length coder.

Description

동영상압축 부호화장치의 가변 길이 부호화기{Variable length encoder in MPEG4 codec} The variable length encoder of the moving picture compression encoding apparatus {Variable length encoder in MPEG4 codec}

본 발명은 화상전화, 화상회의, PCS(개인휴대통신)용 PDA(Personal Digital Assistant; 휴대용개인단말기), mobile용 전화 및 멀티미디어 장치, IMT-2000(3세대 이동통신 시스템) 영상 서비스를 위한 장치 등에서 동영상 압축 부호화 장치에 관한 것으로, 특히 동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화하고, 가변 길이 부호화시 에러 손실을 복구할 수 있으며 역방향 가변 길이 부호화(Reverse Variable Length Coding)와 호환성을 가질 수 있도록 한 동영상압축 부호화장치의 가변 길이 부호화기에 관한 것이다. The invention videophones, videoconferencing, PCS (personal communication) PDA for; etc. Device for (Personal Digital Assistant portable personal assistants), telephones, and multimedia devices, IMT-2000 (3-generation mobile communication system) for mobile video services relates to a moving picture compression encoding apparatus, in particular, variable length coding is performed to a relatively small image information through the in that the transmission line that allows the transmission channel in a video compression encoder, and to recover the error loss when the variable length coding, and the reverse variable length coding It is one of the variable length encoder of the moving picture compression encoding apparatus to have a (Reverse variable length coding) compatible.

영상을 부호화하는 가변 길이 부호화 장치에는 기존의 MPEG1,MPEG2, H.261, H.263 등 여러가지 가변 길이 부호화 방법이 제안되어 왔다. Variable-length encoding device for encoding an image has had a different variable length coding methods have been proposed, such as conventional MPEG1, MPEG2, H.261, H.263. 특히 HDTV(HighDensity TeleVision)의 표준 방식인 MPEG2의 가변 길이 부호화 장치의 특징은, 대용량의 영상 정보를 빠른 시간 안에 처리하기 위해, 헤더 정보와 영상 데이터를 구분하여 헤더 정보는 그대로 부호화하고 영상데이터는 여러 가지 병렬 구조로 구성되는데, 동시에 여러 개의 영상 데이터를 처리하는 것이다. Particular feature of the standard system of the MPEG2 variable length encoder according to the HDTV (HighDensity TeleVision), in order to process large quantities of video information in a short time, the separation of the header information and the video data header information is directly encoded, and the video data are different consists of a parallel structure, it is to treat a number of video data at the same time.

도1은 국제 표준 MPEG4의 부호화기 블럭 구성을 보인다. Figure 1 shows the encoder block diagram of the international standard MPEG4. 기존의 MPEG2와는 달리 모양 정보 부호화를 추가로 수행하는 것이 가장 큰 차이점이다. It is the biggest difference between performing an additional shape information coding, unlike conventional MPEG2.

입력된 영상 데이터를 블럭 단위로 움직임 추정(Motion Estimation)을 수행하여 움직임 벡터를 생성하는 움직임 추정부(1)와; Estimating a motion of the input image data in units of blocks motion estimator (1), to perform (Motion Estimation) for generating a motion vector; 상기 생성된 움직임 벡터를 이용하여 움직임 보상(Motion Compensation)을 수행하는 움직임 보상부(2)와; A motion compensation unit (2) for performing motion compensation (Motion Compensation), using the generated motion vector; 상기 움직임보상부(2)에서 움직임 보상이 되지 않은 부분을 영상 정보 부호화(Texture coding)를 수행하는 영상정보 부호화부(4)와; And the image information encoding unit 4 for the non-motion compensation part of the motion compensation unit (2) performs the video-information encoding (Texture coding); 상기 움직임 보상부(2)에서 움직임 보상된 VOP(Video Object Plane; MEPG4에서 임의의 모양을 가지는 부호화 단위)와, 상기 영상정보 부호화부(4)에서 부호화된 대상물의 내부 정보가 가산되어 현재 영상 바로 이전 영상의 VOP인 이전 VOP를 재구성하는 이전VOP 재구성부(6)와; The motion compensation unit (2) motion-compensated VOP from; and (Video Object Plane encoding unit having an arbitrary shape in MEPG4), the image information inside information of the coded object in the encoder (4) is added immediately a current image previous VOP reconstruction unit (6) for reconstructing the previous VOP VOP of the previous image; 입력된 영상의 모양 정보에 대해 모양 정보 부호화(Shape coding)를 수행하는 모양정보부호화부(9)와; Shape information encoding for the shape information of the input image (Shape coding) the shape information encoding part 9 to perform and; 상기 움직임추정부(1)에서 추정된 움직임 정보와, 상기 영상 정보 부호화부(4)에서 부호화된 내부 영상 정보 및 상기 모양 정보 부호화부(9)에서 부호화된 모양 정보를 다중화하는 다중화부(11)와; And the motion information estimated by the motion estimator 1, a multiplexer 11 which multiplexes the encoded shape information within the image information and the shape information encoding part (9) coded by the image information encoding unit (4) Wow; 상기 다중화부(11)에서 다중화된 비트스트림을 버퍼링한 후 출력하는 출력 버퍼(12)로 구성된다. An output buffer 12 for outputting a bit stream buffering and then multiplexed in the multiplexer 11.

상기와 같은 국제 표준 MPEG4의 부호화기의 작용을 설명하면 다음과 같다. Referring to the operation of the international standard MPEG4 encoder, such as the following:

먼저, 영상 화면이 입력되면, 블럭 단위로 움직임 추정(Motion Estimation)을 하고, 여기에서 생성된 움직임 벡터를 전송한다. First, when a video image is input, the motion estimation (Motion Estimation) in units of blocks, and transmits the motion vector generated here. 그런 후 움직임 벡터로 움직임 보상(Motion Compensation)을 한 후 움직임 보상이 되지 않은 부분을 영상 정보 부호화(Texture coding)를 수행한다. Then, after the motion compensation (Motion Compensation) as a motion vector carries out a video-information encoding (Texture coding) the part that is not a motion compensation.

그리고 영상의 모양 정보에 대해 모양 정보 부호화(Shape coding)를 수행한다. And performs a shape information encoding (Shape coding) for the shape information of the image. 모양정보 부호화부(9)의 출력 신호는 VOP 부호화기가 적용되는 분야에 따라 사용 여부가 가변되는 것으로, 점선으로 표시된 바와 같이, 모양 정보 부호화부(9)의 출력신호를 움직임 추정부(1), 움직임 보상부(2) 및 영상 정보 부호화부(4)에 입력시켜 움직임 추정, 움직임 보상 및 영상 정보 부호화(texture coding)하는 데 사용할 수 있다. The output signal of the shape information encoding part 9 is to be whether or not used in accordance with the areas of the VOP encoder applies the variable, as indicated by a broken line, the shape information encoding part 9 motion estimator (1) the output signal of, as input to the motion compensation unit 2 and the image information encoding unit (4) it can be used for motion estimation, motion compensation, and image information encoding (texture coding).

움직임추정부(1)에서 추정된 움직임 정보와, 영상 정보 부호화부(4)에서 부호화된 내부 영상 정보 및 모양 정보 부호화부(9)에서 부호화된 모양 정보는 다중화부(11)에서 다중화된 후, 출력 버퍼(12)를 통해 비트스트림으로 송신된다. The motion information and the shape information coded in the picture information coding unit encoded in (4) inside the image information and the shape information encoding portion 9 estimated by the motion estimation unit (1) are then multiplexed in the multiplexer 11, It is transmitted as a bit stream via an output buffer 12.

이렇게 다중화부(11)로 입력되어 송신될 데이터는, 움직임 추정부(1)로부터의 움직임 벡터 정보, 영상정보 부호화부(4)로부터의 매크로블럭 헤더 정보, 영상 데이터 정보 등으로서, 이러한 정보의 대다수가 가변 길이 부호화 코드를 사용하고 있다. This is input to the multiplexing unit 11, data to be transmitted, a macro block header information, image data information and the like from the motion vector information, image information encoding unit (4) from the motion estimator (1), most of this information, and the variable length coding using a code.

그런데 HDTV의 대용량의 영상 정보를 실시간에 처리해야 하는 경우가 아니라, 전송 채널이 허용하는 저 전송 선로에 대해서도 처리할 수 있는 비교적 적은 영상 정보(CIF: 352*288, QCIF: 176*144)를 효과적으로 가변 길이 부호화해야하는 경우, 국제 표준 MPEG4의 부호화에서 영상 정보 부호화(texture coding)된 영상 정보를 가변 길이로 부호화하는 장치는 저 전송선로에 대한 비교적 적은 양의 영상 정보를 처리할 수 있도록 구현되어야 한다. By the way, not the case that a large capacity image information of the HDTV must be processed in real-time, a relatively small image information that can be processed also in that the transmission line that allows the transmission channel effectively (CIF: 176 * 144: 352 * 288, QCIF) If you need variable length coding unit for encoding the image information image information encoding (texture coding) the coding of the international standard MPEG4 with a variable length is to be implemented to handle a relatively small amount of video information for a low transmission line.

이에 본 발명은 상기와 같은 종래 기술의 필요에 의해 제안된 것으로, 본 발명의 목적은 The present invention has been proposed by the needs of the prior art, an object of the present invention

동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화하고, 가변 길이 부호화시 에러 손실을 복구할 수 있으며 역방향 가변 길이 부호화(Reverse Variable Length Coding)와 호환성을 가지도록 한 동영상압축 부호화장치의 가변 길이 부호화기를 제공하는 데 있다. Variable length coding is performed to a relatively small image information through the in that the transmission line that allows the transmission channel in a video compression encoder, and to recover the error loss when the variable length coding, and the reverse variable length coding (Reverse Variable Length Coding) and compatibility so that it is used to provide a variable length encoder of the moving picture compression encoder.

상기와 같은 목적을 달성하기 위하여 본 발명에 의한 동영상압축 부호화장치의 가변 길이 부호화기는, The variable length encoder of the moving picture compression encoding apparatus according to the present invention in order to accomplish the above object,,

영상정보 부호화(texture coding)에서 나오는 매크로블럭 헤더 정보 중 휘도 블럭 패턴(Coded Block Pattern for Luminance; CBPY)을 intra_inter 플래그(intra 프레임 부호화와 inter 프레임 부호화를 선택하기 위한 제어 신호)에 따라 VLC 코드로 처리하는 휘도 블럭 패턴 처리부와; Treated with VLC code based on; (CBPY Coded Block Pattern for Luminance) for intra_inter flag (the control signal for selecting the intra-frame coding and inter-frame encoding) Video Coding (texture coding) the macroblock header information of the luminance block pattern coming out of the luminance block and a pattern processing unit for;

매크로블럭 헤더 정보 중 매크로블럭 타입(MB type)과 CBPC(Coded Block Pattern for Chrominance)의 정보를 VLC 코드로 정의하는 MCBPC와; MCBPC defining the information of the macroblock type of the macroblock header information (MB type) and CBPC (Coded Block Pattern for Chrominance) into VLC codes;

매크로블럭 헤더 정보 중의 하나인 이전의 움직임 벡터와 현재의 움직임 벡터 간의 차이값을 VLC 코드로 처리하는 움직임 벡터 차이값 처리부(Motion Vector Difference; MVD)와; The macroblock header information of a previous motion vector as the current motion vector difference value processing unit for processing the difference value between the motion vector to the VLC code in the (Motion Vector Difference; MVD) and;

매크로블럭 헤더 정보 중의 하나인 휘도 DCT DC 크기(dct_dc_size_lum.)를 위한 VLC 코드를 처리하는 휘도 DCT DC 크기 처리부와; (. Dct_dc_size_lum) luminance DCT DC Size processing unit for processing the VLC code for a macroblock of a luminance DCT DC Size one of the header information;

매크로블럭 헤더 정보 중의 하나인 색차 DCT DC 크기(dct_dc_size_chro.)를 위한 VLC 코드를 처리하는 색차 DCT DC 크기 처리부와; (. Dct_dc_size_chro) the macroblock header information of one of the color difference DCT DC Size chrominance DCT DC Size processing unit for processing the VLC code for and;

영상정보 부호화(texture coding) 과정에서 zigzag scan을 거친 DCT 계수(TCOEF)를 입력받아 버퍼링하고, escape 모드를 고려한 VLC를 하기 위해 필요한 클럭 레이트(clock rate)에 맞추어 RLC로 출력하는 입력 버퍼와; Buffered receives the DCT coefficient (TCOEF) via a zigzag scan in the image coding information (texture coding) process, an input buffer to output to the RLC in accordance with the clock rate (clock rate) necessary for the VLC Considering escape mode;

상기 입력버퍼에서 출력되는 DCT AC 계수를 RLC(Run Length Coding)를 수행하여, VLC 부호화하기 위해 필요한 제어 정보를 출력하는 RLC와; RLC and by performing the RLC (Run Length Coding) to DCT AC coefficients outputted from the input buffer, and outputs the required control information to VLC encoding;

역방향 가변 길이 부호화(RVLC)와 가변 길이 부호화(VLC)를 선택하기 위한 제어 신호(RVLC 플래그), H.263 TCOEF VLC를 선택하기 위한 제어 신호(H.263 플래그), intra 프레임 부호화와 inter 프레임 부호화를 선택하기 위한 제어 신호(intra_inter 플래그)를 선택적으로 입력받아, 역방향 가변 길이 부호화(RVLC), intra TCOEF 가변 길이 부호화(VLC), inter TCOEF VLC, H.263 TCOEF VLC가 선택적으로 수행되도록 상기 RLC로부터의 경로를 각각 스위칭하는 제1 내지 제4 스위치와; Reverse variable length coding (RVLC) and variable length coding (VLC) the control signal (RVLC Flag), a control signal (H.263 flags) for selecting the H.263 TCOEF VLC for selecting, intra frame coding and inter-frame encoded upon receipt of a control signal (flag intra_inter) for selecting an optional input, the reverse variable length coding (RVLC), from the RLC to intra TCOEF variable length coding (VLC), inter TCOEF VLC, H.263 TCOEF VLC is carried out selectively the path of the first to fourth switches, each switch;

상기 제1 내지 제3 스위치에 의해 선택되면 MPEG4 intra TCOEF를 intraescape 모드로 VLC를 수행하는 intra TCOEF/MPEG4 intra ESC. When the first through the third selected by the switch performing the VLC the MPEG4 intra TCOEF to intraescape intra mode TCOEF / MPEG4 intra ESC. 수행부와; Performing unit;

상기 제1 내지 제3 스위치에 의해 선택되면 MPEG4 inter TCOEF를 inter escape 모드로 VLC를 수행하는 inter TCOEF/MPEG4 inter ESC. When the first through the third selected by the switch performing the VLC the MPEG4 inter TCOEF escape to the inter-mode inter TCOEF / MPEG4 inter ESC. 수행부와; Performing unit;

상기 제1 및 제2 스위치에 의해 선택되면 H.263 TCOEF를 inter 프레임 부호화를 사용하여 escape 모드를 수행하는 TCOEF/H.263 ESC. TCOEF / H.263 ESC performing the escape mode, the H.263 TCOEF using the inter frame coding when the first and selected by the second switch. 수행부와; Performing unit;

상기 제1, 제2, 제4 스위치에 의해 선택되면 intra TCOEF를 RVLC 수행하고 escape 모드시 고정길이 부호화(Fixed Length Coding; FLC)를 수행하는 intra RVLC TCOEF / ESC. Said first, second, when the fourth selection switch by performing the intra TCOEF RVLC and fixed-length coding during escape mode; intra RVLC TCOEF / ESC performing (Fixed Length Coding FLC). FLC 수행부와; FLC performing unit;

상기 제1, 제2, 제4 스위치에 의해 선택되면 inter TCOEF를 RVLC 수행하고 escape 모드시 고정길이 부호화(Fixed Length Coding; FLC)를 수행하는 inter RVLC TCOEF / ESC. Said first, second, when the fourth selection by the switch performing the inter TCOEF RVLC and fixed-length coding during escape mode; inter RVLC TCOEF / ESC performing (Fixed Length Coding FLC). FLC 수행부로 이루어짐을 그 기술적 구성상의 특징으로 한다. The yirueojim portion FLC perform characterized in that on the technical configuration.

상기와 같은 목적을 달성하기 위하여 본 발명에 의한 동영상압축 부호화장치의 가변 길이 부호화기는, The variable length encoder of the moving picture compression encoding apparatus according to the present invention in order to accomplish the above object,,

RVLC 플래그에 따라 normal VLC 기능과 RVLC 기능을 수행하고, VLC escape 모드시 FLC를 수행하는 TCOEF VLC/RVLC ESC. Depending on the flags RVLC normal VLC function and perform the functions and RVLC, VLC escape mode TCOEF VLC / RVLC performing the FLC ESC. 수행부와; Performing unit;

상기 TCOEF VLC/RVLC ESC. The TCOEF VLC / RVLC ESC. 수행부에서 출력되는 가변 길이 부호화 코드와 고정 길이 부호화(FLC) 코드를 블럭(block) 단위로 하나의 비트열로 램(TCOEF VLC/RVLC 버퍼)에 쓰기 위해 재구성하는 TCOEF 비트 스트림 생성기와; Variable length coding code outputted from the execution unit and the fixed length coding (FLC) TCOEF bitstream to reconstruct for writing to RAM (TCOEF VLC / RVLC buffers) into a single bit stream into a code block (block), and the generator unit;

상기 TCOEF 비트 스트림 생성기에서 출력되는 TCOEF 비트열을 저장하는TCOEF VLC/RVLC 버퍼(램)으로 이루어짐을 그 기술적 구성상의 특징으로 한다. The constituted by any TCOEF VLC / RVLC buffer (RAM) to store the bit sequences outputted from the TCOEF TCOEF bit stream generator is characterized in that on the technical configuration.

도1은 국제 표준 MPEG4의 부호화기 블럭 구성도, Figure 1 is an encoder block diagram of the international standard MPEG4,

도2는 본 발명에 의한 동영상압축 부호화장치의 가변 길이 부호화기 블럭 구성도, Figure 2 is a variable length encoder block diagram of a video compression encoder according to the invention,

도3은 MPEG4 인코드시 escape 모드 처리 작용을 보인 도면, Figure 3 is shown a processing action escape mode MPEG4-encoded,

도4는 본 발명에 의한 다른 실시예 동영상압축 부호화장치의 가변 길이 부호화의 출력을 위한 장치 블럭 구성도, Figure 4 is a system block diagram for the output of the variable length coding of a further embodiment video compression-encoding device according to the invention,

도5는 도4의 TCOEF VLC/RVLC ESC. Fig. 5 is shown in FIG 4 TCOEF VLC / RVLC ESC. 수행부의 내부 블럭 구성도, Internal block diagram portion performed,

도6은 도5의 intra/inter TCOEF VLC & VLC ESC. Figure 6 is a 5 intra / inter TCOEF VLC & VLC ESC's. 수행부의 내부 블럭 구성도, Internal block diagram portion performed,

도7은 도5의 intra/inter TCOEF RVLC & RVLC ESC. Figure 7 is a 5 intra / inter TCOEF RVLC & RVLC ESC. 수행부의 내부 블럭 구성도. Internal block configuration section performed.

<도면의 주요 부분에 대한 부호의 설명> <Description of the Related Art>

100: CBPY 110: MCBPC 100: CBPY 110: MCBPC

120: MVD 130: 휘도 DCT DC 크기 처리부 120: MVD 130: luminance DCT DC Size processor

140: 색차 DCT DC 크기처리부 201: 입력버퍼 140: color difference DCT DC Size processing unit 201: input buffer

202: RLC 203-206: 제1 내지 제4 스위치 202: RLC 203-206: first to fourth switches

207: intra TCOEF/MPEG4 intra ESC. 207: intra TCOEF / MPEG4 intra ESC. 수행부 Performing unit

208: inter TCOEF/MPEG4 inter ESC. 208: inter TCOEF / MPEG4 inter ESC. 수행부 Performing unit

209: TCOEF/H.263 ESC. 209: TCOEF / H.263 ESC. 수행부 Performing unit

210: intra RVLC TCOEF/ESC. 210: intra RVLC TCOEF / ESC. FLC 수행부 FLC performing unit

211: inter RVLC/TCOEF ESC. 211: inter RVLC / TCOEF ESC. FLC 수행부 FLC performing unit

이하, 상기와 같은 본 발명에 의한 동영상압축 부호화장치의 가변 길이 부호화기를 첨부된 도면에 의거 상세히 설명하면 다음과 같다. If it described in detail based on the drawings attached to the variable-length encoder for video compression coding apparatus according to the present invention as described above as follows.

본 발명은 MPEG4 simple profile에 맞는 가변 길이 부호화(Variable Length Coding; VLC)와 H.263의 가변 길이 부호화, 그리고 에러 전송에 효과적인 역방향 가변 길이 부호화(Reversible Variable Length Coding; RVLC)의 복합 구조를 이루고 있고, simple profile에서는 모양 정보 부호화는 고려하지 않고 있다. The present invention is a variable length coding for the MPEG4 simple profile and forms a composite structure;; (RVLC Reversible Variable Length Coding) (Variable Length Coding VLC) and variable length coding, and an effective reverse variable length coding to the error transmission of the H.263 , in the simple profile shape information coding it is not considered.

MPEG4 simple profile 부호화기의 가변 길이 부호화시 사용되는 가변길이 부호화 테이블(VLC 테이블)이 [표 1]에 구성된다. The MPEG4 simple profile variable length coding table used for coding the variable-length coder (VLC table) is configured to Table 1.

VLC Table Name VLC Table Name Index 개수 Index number 비트수 Bits 비고 Remarks 1 One mcbpc for I-VOPs mcbpc for I-VOPs 9 9 1-9 1-9 2 2 mcbpc for P-VOPs mcbpc for P-VOPs 21 21 1-9 1-9 3 3 cbpy for four non-transparent blocks cbpy for four non-transparent blocks 16 16 2-6 2-6 4 4 MVD MVD 65 65 1-13 1-13 5 5 dct_dc_size_luminance dct_dc_size_luminance 9 9 2-7 2-7 Not N-bit Not N-bit 6 6 dct_dc_size_chrominance dct_dc_size_chrominance 9 9 2-7 2-7 Not N-bit Not N-bit 7 7 Intra Lum. Intra Lum. And Chr. And Chr. TCOEF TCOEF 113 113 3-13 3-13 8 8 Inter Lum. Inter Lum. And Chr. And Chr. TCOEF TCOEF 113 113 3-13 3-13 9 9 RVLC for intra TCOEF RVLC for intra TCOEF 169 169 4-16 4-16 10 10 RVLC for inter TCOEF RVLC for inter TCOEF 169 169 4-16 4-16

그리고 H.263 VLC 테이블 구성이 [표 2]에 보인다. And H.263 VLC table configuration shown on Table 2.

VLC Table Name VLC Table Name Index 개수 Index number 비트수 Bits MPEG4와 비교 MPEG4 and compare 1 One mcbpc for I-VOPs mcbpc for I-VOPs 9 9 1-9 1-9 동일 same 2 2 mcbpc for P-VOPs mcbpc for P-VOPs 21 21 1-9 1-9 동일 same 3 3 cbpy for four blocks cbpy for four blocks 16 16 2-6 2-6 동일 same 4 4 MVD MVD 65 65 1-13 1-13 구성이 다름 Configuration differences 5 5 Inter TCOEF Inter TCOEF 113 113 3-13 3-13 동일(escape 다름) Same (depending escape)

도2는 본 발명에 의한 동영상압축 부호화장치의 가변 길이 부호화기 일 실시예 블럭 구성을 보인다. Figure 2 is one embodiment of a video encoder variable-length compression coding apparatus according to the present invention shows a block configuration example.

MPEG4 simple profile에 맞는 가변 길이 부호화와 H.263의 가변 길이 부호화, 그리고 에러 전송에 효과적인 역방향 가변 길이 부호화(Reversible Variable Length Coding; RVLC)의 복합적인 구조를 가진다. Of the variable-length encoding with H.263 for MPEG4 simple profile variable length coding, and efficient transmission error on the reverse variable length coding; has a complex structure of (Reversible Variable Length Coding RVLC).

즉, 영상정보 부호화(texture coding)에서 나오는 매크로블럭 헤더 정보와 영상 데이터를 구분하여 처리하게 되는데, 매크로블럭 헤더 정보 중 휘도 블럭 패턴(Coded Block Pattern for Luminance; CBPY)을 intra_inter 플래그(intra 프레임 부호화와 inter 프레임 부호화를 선택하기 위한 제어 신호)에 따라 VLC 코드로 처리하는 휘도 블럭 패턴 처리부(100)와; That is, the video information coded (texture coding) the macroblock header information and there is the process by separating the image data, macroblock luminance block pattern of the header information from the (Coded Block Pattern for Luminance; CBPY) the intra_inter flag (intra-frame encoded, and luminance block pattern processing unit 100 to process a VLC code and in response to a control signal for selecting an inter frame coding); 매크로블럭 헤더 정보 중 매크로블럭 타입(MB type)과 CBPC(Coded Block Pattern for Chrominance)의 정보를 VLC 코드로 정의하는 MCBPC(110)와; The macroblock type of the macroblock header information (MB type), and MCBPC (110) defining information to the VLC code CBPC (Coded Block Pattern for Chrominance) and; 매크로블럭 헤더 정보 중의 하나인 이전의 움직임 벡터와 현재의 움직임 벡터 간의 차이값을 VLC 코드로 처리하는 움직임 벡터 차이값 처리부(Motion Vector Difference; MVD)(120)와; The macroblock header information of a previous motion vector as the current motion vector of the motion vector difference value processing unit for processing the difference value to the VLC code in between (Motion Vector Difference; MVD) (120) and; 매크로블럭 헤더 정보 중의 하나인 휘도 DCT DC 크기(dct_dc_size_lum.)를 위한 VLC 코드를 처리하는 휘도 DCT DC 크기 처리부(130)와; (. Dct_dc_size_lum) the macroblock header information of one of the luminance DCT DC Size luminance for processing VLC code for DCT DC Size processor 130 and; 매크로블럭 헤더 정보 중의 하나인 색차 DCT DC크기(dct_dc_size_chro.)를 위한 VLC 코드를 처리하는 색차 DCT DC 크기 처리부(140)와; (. Dct_dc_size_chro) the macroblock header information, one of a color difference chrominance DCT DC Size for processing VLC code for DCT DC Size processing unit 140 of the; 영상정보 부호화(texture coding) 과정에서 zigzag scan을 거친 DCT 계수(TCOEF)를 입력받아 버퍼링하고, escape 모드를 고려한 VLC를 하기 위해 필요한 클럭 레이트(clock rate)에 맞추어 RLC(203)로 출력하는 입력 버퍼(201)와; Image information encoding (texture coding) input buffer for input receiving buffer DCT coefficient (TCOEF) via a zigzag scan in the process, and output to a RLC (203) in accordance with the clock rate (clock rate) necessary for the VLC Considering escape mode 201 and; 상기 입력버퍼(201)에서 출력되는 DCT AC 계수를 RLC(Run Length Coding)를 수행하여, VLC 부호화하기 위해 필요한 제어 정보를 출력하는 RLC(202)와; And RLC (202) by performing the RLC (Run Length Coding) to DCT AC coefficients outputted from the input buffer 201, and outputs the required control information to VLC encoding; 역방향 가변 길이 부호화(RVLC)와 가변 길이 부호화(VLC)를 선택하기 위한 제어 신호(RVLC 플래그), H.263 TCOEF VLC를 선택하기 위한 제어 신호(H.263 플래그), intra 프레임 부호화와 inter 프레임 부호화를 선택하기 위한 제어 신호(intra_inter 플래그)를 선택적으로 입력받아, 역방향 가변 길이 부호화(RVLC), intra TCOEF 가변 길이 부호화(VLC), inter TCOEF VLC, H.263 TCOEF VLC가 선택적으로 수행되도록 상기 RLC(202)로부터의 경로를 각각 스위칭하는 제1 내지 제4 스위치(203-206)와; Reverse variable length coding (RVLC) and variable length coding (VLC) the control signal (RVLC Flag), a control signal (H.263 flags) for selecting the H.263 TCOEF VLC for selecting, intra frame coding and inter-frame encoded upon receipt of a control signal (flag intra_inter) for selecting an optional input, the reverse variable length coding (RVLC), intra TCOEF the RLC so that the variable length coding (VLC), inter TCOEF VLC, H.263 TCOEF VLC is carried out selectively ( the path from 202) and the first to fourth switches (203-206), each switching; 상기 제1 내지 제3 스위치(203-205)에 의해 선택되면 MPEG4 intra TCOEF를 intra escape 모드로 VLC를 수행하는 intra TCOEF/MPEG4 intra ESC. When the first to the selection by the switch 3 (203-205) for performing VLC the MPEG4 intra TCOEF to escape intra mode intra TCOEF / MPEG4 intra ESC. 수행부(207)와; Performing unit 207, and; 상기 제1 내지 제3 스위치(203-205)에 의해 선택되면 MPEG4 inter TCOEF를 inter escape 모드로 VLC를 수행하는 inter TCOEF/MPEG4 inter ESC. When the first to the selection by the switch 3 (203-205) for performing VLC the MPEG4 inter TCOEF to escape inter mode inter TCOEF / MPEG4 inter ESC. 수행부(208)와; Performing unit 208, and; 상기 제1 및 제2 스위치(203)(204)에 의해 선택되면 H.263 TCOEF를 inter 프레임 부호화를 사용하여 escape 모드를 수행하는 TCOEF/H.263 ESC. TCOEF / H.263 ESC performing the first and the escape mode, the H.263 TCOEF using the inter frame coding is selected by the second switch 203 (204). 수행부(209)와; Execution unit (209) and; 상기 제1, 제2, 제4 스위치(203,204,206)에 의해 선택되면 intra TCOEF를 RVLC 수행하고 escape 모드시 고정길이 부호화(Fixed Length Coding; FLC)를 수행하는 intra RVLC TCOEF / ESC.FLC 수행부(210)와; It said first, second and fourth switches (203 204 206) is selected by performing the intra TCOEF RVLC and fixed-length coding during escape mode; intra RVLC TCOEF / ESC.FLC execution unit (210 to perform (Fixed Length Coding FLC) )Wow; 상기 제1, 제2, 제4 스위치(203,204,206)에 의해 선택되면 inter TCOEF를 RVLC 수행하고 escape 모드시 고정길이 부호화(Fixed Length Coding; FLC)를 수행하는 inter RVLC TCOEF / ESC. It said first, second, fourth, when selected by the switches (203 204 206) and RVLC perform inter TCOEF escape when fixed length coding mode; inter RVLC TCOEF / ESC performing (Fixed Length Coding FLC). FLC 수행부(211)로 구성된다. It consists of FLC execution unit 211.

상기 RLC(202)에서 출력되는 VLC 부호화하기 위해 필요한 제어 정보는, 현재 부호화되는 0이 아닌 DCT 계수가 블럭 내의 마지막 0이 아닌 DCT 계수인 지를 나타내는 LAST, 0이 아닌 계수의 값을 나타내는 LEVEL, 부호화되는 계수 앞의 연속적인 0의 개수를 나타내는 RUN이다. Necessary control information for coding VLC output from the RLC (202) is, LEVEL, encoding that represents the value of the coefficient of non-LAST, 0 a DCT coefficient other than 0 is now coded to indicate whether the DCT coefficient is not the last zero in the block the coefficients preceding the RUN indicating the number of consecutive zeroes.

상기 제1 스위치(203)는 상기 RLC(202)에서 출력되는 제어정보(LAST, LEVEL, RUN)를 RVLC 플래그에 따라 제2 스위치(204)와 제4스위치(206) 중 하나로 스위칭하고, 상기 제2 스위치(203)는 상기 제1 스위치(203)에서 출력되는 정보를 H.263플래그에 따라 제3 스위치(205)와 상기 TCOEF/H.263 ESC. The first switch 203 is the first switching to one of the second switch 204 and fourth switch 206 in accordance with the control information (LAST, LEVEL, RUN) output from the RLC (202) to the RVLC flag, and second switch 203, third switch 205 and the TCOEF / H.263 ESC information output from the first switch 203 in accordance with the H.263 flags. 수행부(209) 중 하나로 스위칭하며, 상기 제3 스위치(205)는 상기 제2 스위치(204)에서 출력되는 정보를 intra_inter 플래그에 따라 상기 intra TCOEF/MPEG4 intra ESC. Performing unit 209, and switching to one of the third switch 205 is the intra TCOEF / MPEG4 intra ESC according to the information outputted from the second switch 204 to intra_inter flag. 수행부(207)와 inter TCOEF/MPEG4 inter ESC. Performing unit 207 and the inter TCOEF / MPEG4 inter ESC. 수행부(208) 중 하나로 스위칭하고, 상기 제4 스위치(206)는 상기 제1 스위치(203)에서 출력되는 정보를 상기 intra_inter 플래그에 따라 상기 intra RVLC TCOEF / ESC. Switching one of the performing unit 208, and the fourth switch 206 in accordance with the information output from the first switch 203 to the flag intra_inter the intra RVLC TCOEF / ESC. FLC 수행부(210)와 inter RVLC TCOEF / ESC. FLC execution unit 210 and the inter RVLC TCOEF / ESC. FLC 수행부(211) 중 하나로 스위칭한다. It switches to one of the FLC execution unit 211.

상기와 같은 본 발명에 의한 동영상압축 부호화장치의 가변 길이 부호화기 일 실시예의 작용을 설명하면 다음과 같다. When describing the present invention, a video variable length encoder of one embodiment action of compression-encoding device according to, such as the following:

입력 버퍼(201)에 입력되는 정보는 영상정보(texture) 부호화에서 나오는 계수(coefficient)로 지그재그 스캔(zigzag scan)을 거친 정보이다. Information input to the input buffer 201 is information subjected to a coefficient (coefficient) from the image information (texture) encoding zigzag scanning (zigzag scan). 입력 버퍼(201)에서는 escape mode를 고려한 VLC를 하기 위해 필요한 클럭 레이트(clock rate)에 맞추어 계수를 RLC(202)로 읽어내고 RLC(202)는 RUN,LEVEL,LAST를 구하기 위한 RLC(Run Length Coding)를 한다. The input buffer 201 in the read out a coefficient in accordance with the clock rate (clock rate) necessary for the VLC Considering escape mode to the RLC (202), RLC (202) is RUN, LEVEL, Run (RLC for determining the LAST Length Coding ) and the.

각각의 모듈(207,208,209,210,211)을 선택하기 위해 RVLC 플래그, H.263 플래그, Intra_Inter 플래그가 이용된다. The RVLC flag, H.263 flags, Intra_Inter flag is used to select the respective module (207,208,209,210,211).

MPEG4 Inter TCOEF VLC 테이블은 H.263 TCOEF VLC 테이블과 동일하다. MPEG4 Inter TCOEF VLC table is the same as H.263 TCOEF VLC table. 그러나 escape mode는 다르게 구성된다. However escape mode is differently configured.

영상정보 부호화(texture coding)에서 나오는 매크로블럭 헤더 정보와 영상 데이터를 구분하여 처리하게 되는데, 매크로블럭 헤더 정보 처리 작용에 대해 설명하면, CBPY(100)는 휘도 블럭 패턴을 VLC하고, MCBPC(110)는 MB 타입과 CBPC(Coded Block Pattern for Chrominance)의 정보를 VLC 코드로 정의한다. There is to process the separation of the macroblock header information and image data from the image information encoding (texture coding), is described for the macroblock header information processing function, CBPY (100) is a VLC and, MCBPC (110) the luminance block pattern defines the MB type of information CBPC (Coded Block Pattern for Chrominance) to VLC code. 그리고 MVD(120)는 이전의 움직임 벡터와 현재의 움직임 벡터의 차이값을 VLC하고, 휘도 DCT DC 크기 처리부(130)는 휘도 DCT DC 크기를 VLC하며, 색차 DCT DC 크기 처리부(140)는 색차 DCT DC 크기를 VLC한다. And MVD (120) is the previous motion vector and the VLC a difference value of a current motion vector, luminance DCT DC Size processing unit 130 and the VLC luminance DCT DC Size, color difference DCT DC Size processing unit 140 is a color difference DCT VLC and the DC size.

이제, 영상 데이터 처리인 입력 버퍼(201)에 이어, RLC의 동작을 설명하면, 입력 버퍼(201)에서 출력되는 AC 계수값을 RLC를 수행하여, LAST, RUN, LEVEL로 이루어진 일련의 EVENT들을 출력해서, VLC 부호화될 수 있도록 한다. Now, the video data processing is followed by the input buffer 201, will now be described an RLC operation, an input to the AC coefficient value to be output from the buffer 201, perform the RLC, outputs a series of EVENT consisting LAST, RUN, LEVEL manner, so that they can be VLC encoded.

이때 LAST가 '0'인 경우 0이 아닌 계수가 블럭 내에 더 존재한다는 것을 의미하고, '1'인 경우 0이 아닌 계수가 블럭 내에 더 이상 존재하지 않음을 나타낸다. At this time, the LAST indicates that the coefficient means, and non-zero when the '1' that a coefficient other than zero when the '0' that more present in the block no longer exists within the block.

이렇게 RLC를 수행하여 LAST, RUN, LEVEL을 출력하는 방법을 코드(code)로 나타내면 다음과 같다. This indicates to the RLC performs the method of outputting the LAST, RUN, LEVEL as a code (code) as follows.

count <= count + 1 ; count <= count + 1;

if(!AC_Coefficient) begin if (! AC_Coefficient) begin

run_cnt <= run_cnt + 1 ; run_cnt <= run_cnt + 1;

RLC_E <= 1'b0 ; RLC_E <= 1'b0;

end end

else begin else begin

run_cnt <= 0; run_cnt <= 0;

LEVEL_tmp <= AC_Coefficient; LEVEL_tmp <= AC_Coefficient;

RUN_tmp <= run_cnt; RUN_tmp <= run_cnt;

if(LEVEL_tmp != 12'd0) if (LEVEL_tmp! = 12'd0)

RLC_E <= 1'b1; RLC_E <= 1'b1;

end end

LEVEL <= LEVEL_tmp; LEVEL <= LEVEL_tmp;

RUN <= RUN_tmp; RUN <= RUN_tmp;

if(count == 65) begin --------(1) if (count == 65) begin -------- (1)

LAST <= 1'b1; LAST <= 1'b1;

LEVEL <= LEVEL_tmp; LEVEL <= LEVEL_tmp;

RUN <= RUN_tmp; RUN <= RUN_tmp;

RLC_E <= 1'b1; RLC_E <= 1'b1;

end end

상기에서 input은 AC_Coefficient, count flag(64 or 65)이고, output은 RUN, LEVEL, LAST, RLC_E(RLC_Enable)이다. At the input is AC_Coefficient, count flag (64 or 65) and, output is RUN, LEVEL, LAST, RLC_E (RLC_Enable). intra mode일 때, (1)의 count == 65는 DC 값을 빼고 LAST를 결정해야 하므로 64로 바뀐다. When the intra mode, count == 65 (1) To determine the LAST subtracts the DC values ​​so changed to 64. 그러나 Intra_dc_thr에 의해 DC값을 AC값과 동일한 방법으로 하여 처리하게 되면 Intra mode이더라도 65로 처리한다. However, when the DC value by Intra_dc_thr treated by the same method as the AC value Intra mode, even if treated with 65. 실제 RUN, LEVEL, LAST의 정보는 RLC_Enable로써 나타낸다. Information of the physical RUN, LEVEL, LAST denotes as RLC_Enable.

도3은 MPEG4 인코딩(encoding)시 escape 모드 처리 작용을 보인다. Figure 3 shows the MPEG4 encoding (encoding) when escape mode processing work.

기존의 MPEG1, MPEG2, H.261, H.263에서의 escape 모드 처리 방법은 고정 길이 부호화(Fixed Length Coding; FLC)를 수행했다. Conventional MPEG1, MPEG2, H.261, H.263 escape mode processing method in a fixed length coding; performed a (Fixed Length Coding FLC). 그러나 본 발명에 적용되는 MPEG4 escape mode는 도3에서 보여지는 바와 같이, 영상 압축률을 향상시키기 위해 3단계로 구분하여 처리한다. However, as shown in the escape mode is MPEG4 Figure 3 applied to the present invention, a process divided into three phases to enhance the image compression. 즉, Intra TCOEF와 Inter TCOEF로 나누어져 각각 다른 테이블을 이용하며 escape mode에서도 LEVEL과 RUN값을 변화시키는 table이 각각 다르다. That is, divided into the Intra and Inter TCOEF TCOEF using a different table, and each table is different, each varying in the escape mode RUN and LEVEL values.

그러나 신호 흐름의 내용은 유사하다. However, it is the content of the signal flow is similar. 먼저 RLC(202)에서 나오는 RUN,LEVEL, LAST값을 가지고 TCOEF VLC 테이블을 참조하여 TCOEF VLC 코드를 결정한다. First with RUN, LEVEL, LAST value from the RLC (202), see TCOEF VLC table to determine the TCOEF VLC code. 그래서 TCOEF VLC 테이블의 해당 인덱스 안에 값이 존재하면 일반적인(normal) VLC를 수행한다(ST11,ST12). So if the value in the index of TCOEF VLC table exists and performs typical (normal) VLC (ST11, ST12).

그러나 TCOEF VLC 테이블의 해당 인덱스 안에 값이 존재하지 않으면 escape mode로 선택된다. However, if there is no value in the index of TCOEF VLC table is selected as the escape mode. 그래서 LEVEL 값을 변화시킨다. So changes the LEVEL value. 변화된 LEVEL값은 LEVEL+로, sign(LEVEL)*[abs(LEVEL)-LMAX]이다(ST13)(제1단계). LEVEL value is changed to LEVEL +, sign (LEVEL) * [abs (LEVEL) -LMAX] is (ST13) (first step). 여기서 LMAX는 주어진 쌍 (LAST,RUN)의 LEVEL의 최대값이다. Where LMAX is the maximum value of the LEVEL of a given pair of (LAST, RUN).

이렇게 LEVEL값을 변화시킨 후, 동일한 TCOEF VLC 테이블을 참조하여 해당 인덱스 안에 값이 존재하면 TCOEF VLC 코드를 정한다(ST14,ST15). This was changed to LEVEL value, referring to the same TCOEF VLC table, the value in the index determined the presence TCOEF VLC code (ST14, ST15).

그러나 ST14에서 상기 TCOEF VLC 테이블에 값이 존재하지 않아, 다시 escape mode가 선택되면, RUN값을 변화시킨다. However, if the value does not exist in the TCOEF VLC table, again escape mode is selected in ST14, thereby changing the RUN value. 변화된 RUN값은 RUN+로, RUN-(RMAX + 1)이다(ST16)(제2단계). RUN value is changed to RUN +, a RUN- (RMAX + 1) (ST16) (step 2). 여기서 RMAX는 주어진 쌍 (LAST, LEVEL)의 RUN의 최대값이다. Where RMAX is the maximum value of RUN of a given pair of (LAST, LEVEL).

이렇게 RUN 값을 변화시킨 후, 다시 동일한 TCOEF VLC 테이블을 참조하여 TCOEF VLC 코드를 정한다(ST17,ST18). After this change the RUN value, refer to the same TCOEF VLC table again to decide the TCOEF VLC code (ST17, ST18). 그러나 상기 TCOEF VLC 테이블에 VLC 코드가 존재하지 않아 escape 모드가 선택되면, FLC(Fixed Length Coding)를 수행한다(ST19)(제3단계). However, when the TCOEF not a VLC code present in the VLC table escape mode is selected, performs the FLC (Fixed Length Coding) (ST19) (third step).

위와 같은 동작 수행은 Intra일 때와 Inter일 때 동일한 방법으로 수행되고 적용되는 테이블의 구성이 다르다. Above, do the same operation is different from the configuration of the table to be carried out and applied in the same way when the when the Inter Intra.

도4는 본 발명에 의한 다른 실시예 동영상압축 부호화장치의 가변 길이 부호화의 출력을 위한 장치 블럭 구성을 보인다. Figure 4 shows the apparatus block diagram for the output of the variable length coding of a further embodiment video compression coding apparatus according to the present invention.

RVLC 플래그에 따라 normal VLC 기능과 RVLC 기능을 수행하고, VLC escape 모드시 FLC를 수행하는 TCOEF VLC/RVLC ESC. Depending on the flags RVLC normal VLC function and perform the functions and RVLC, VLC escape mode TCOEF VLC / RVLC performing the FLC ESC. 수행부(300)와; Execution unit (300) and; 상기 TCOEF VLC/RVLC ESC. The TCOEF VLC / RVLC ESC. 수행부(300)에서 출력되는 가변 길이 부호화(VLC) 코드와 고정 길이 부호화(FLC) 코드를 블럭(block) 단위로 하나의 비트열로 램(500)에 쓰기 위해 재구성하는 TCOEF 비트 스트림 생성기(400)와; Performing unit 300, a variable length coding output from (VLC) codes and fixed length coding (FLC) TCOEF bit stream generator for reconstructing to write to the RAM 500 as a bit string code in a block (block) unit (400 )Wow; 상기 TCOEF 비트 스트림 생성기(400)에서 출력되는 TCOEF 비트열을 저장하는 TCOEF VLC/RVLC 버퍼(램)(500)으로 구성된다. Consists of a VLC TCOEF / RVLC buffer (RAM) 500 for storing the bit stream outputted from the TCOEF TCOEF bit stream generator 400.

상기 TCOEF VLC/RVLC ESC. The TCOEF VLC / RVLC ESC. 수행부(300)는 도5에 도시된 바와 같이, RVLC 플래그가 VLC 수행을 나타내면 normal VLC 기능을 수행하고 VLC escape 모드시 FLC를 수행하는 intra/inter TCOEF VLC & VLC ESC. Performing unit 300 as shown in FIG. 5, the flag indicates the RVLC perform VLC normal function and perform VLC VLC escape mode intra / inter TCOEF VLC & performing VLC FLC ESC. 수행부(310)와; Execution unit (310) and; 상기 RVLC 플래그가 RVLC 수행을 나타내면 RVLC 기능을 수행하고 RVLC escape 모드시 FLC를 수행하는 intra/inter TCOEF RVLC & RVLC ESC. RVLC the flag indicates the RVLC performed RVLC perform the functions and RVLC escape mode intra / inter TCOEF performing the FLC RVLC & RVLC ESC. 수행부(320)와; Performing unit 320, and; 상기 RVLC 플래그에 따라, 상기 intra/inter TCOEF VLC & VLC ESC. Depending on the RVLC flag, the intra / inter TCOEF VLC & VLC ESC. 수행부(310)에서 출력되는 intra/inter TCOEF VLC/FLC 코드와 상기 intra/inter TCOEF RVLC & RVLC ESC. intra / inter TCOEF VLC / FLC code outputted from the execution unit 310 and the intra / inter TCOEF RVLC & RVLC ESC. 수행부(320)에서 출력되는 intra/inter TCOEF RVLC/FLC 코드를 다중화하여 VLC 코드와 FLC 코드를 상기 TCOEF 비트 스트림 생성기(400)로 출력하는 TCOEF VLC/FLC 다중화부(330)로 구성된다. Multiplexing the intra / inter TCOEF RVLC / code FLC outputted from the execution unit 320 is configured by a VLC code and FLC code to TCOEF VLC / FLC multiplexer 330 for output to the TCOEF bit stream generator 400.

상기 intra/inter TCOEF VLC & VLC ESC. The intra / inter TCOEF VLC & VLC ESC. 수행부(310)는 도6에 도시된 바와 같이, TCOEF VLC 테이블에서 원하는 VLC 모드를 검색하여 그 결과에 따라 escape모드인 지를 판단하고, escape 모드이면 타이밍 컨트롤러(313)로 escape 모드 신호를 전송하며, 판단된 모드에 따라 가변 길이 부호화를 수행하는 intra/inter TCOEF VLC 수행부(315)와; Performing unit 310 as illustrated in FIG. 6, to retrieve a desired VLC mode TCOEF VLC table and determine if escape mode depending on the result, and sends the escape mode signal to the timing controller 313. When the escape mode , and intra / inter TCOEF VLC performing unit 315 for performing variable length coding according to the determined mode; RMAX, RUN+를 계산하는 intra/inter RMAX, RUN+ 계산부(311)와; RMAX, and intra / inter RMAX, RUN + calculation section 311 for calculating a RUN +; LMAX, LEVEL+를 계산하는 intra/inter LMAX, LEVEL+ 계산부(312)와; LMAX, and intra / inter LMAX, LEVEL + calculation unit 312 for calculating the LEVEL +; 상기 intra/inter RMAX, RUN+ 계산부(311)에서 계산된 RMAX, RUN+를 제공받고, 상기 intra/inter LMAX, LEVEL+ 계산부(312)에서 계산된 LMAX, LEVEL+를 제공받으며, 상기 intra/inter TCOEF VLC 수행부(315)로부터 전송받는 escape 모드 신호에 따라, LEVEL과 LEVEL+ 선택 기능과 RUN과 RUN+ 선택 기능을 수행하고 각 해당 블럭의 동작 제어 기능을 수행하는 타이밍 컨트롤러(313)와; The intra / inter RMAX, RUN + calculation unit 311, an RMAX, been provided with a RUN +, the intra / inter LMAX, LEVEL + receive offer LMAX, LEVEL + calculated in the calculation unit 312, the intra / inter TCOEF VLC calculated in escape in accordance with the transmission mode signal received from the execution unit (315), and LEVEL LEVEL + selection function and RUN and RUN + perform selected functions, and a timing controller 313 that performs operation control of each of the block and; 상기 타이밍 컨트롤러(313)의 제어에 따라, TCOEF 부호화를 위해 LEVEL의 절대치를 계산하는 LEVEL 절대값 계산부(314)와; Under the control of the timing controller 313, and LEVEL absolute value calculation unit 314 for calculating the absolute value of the LEVEL TCOEF for encoding; 상기 intra/inter TCOEF VLC 수행부(315)에서 RUN, LEVEL, LAST를 이용한 가변 길이 부호화가 끝난 시점에, 상기 LEVEL 절대값 계산부(314)에서 출력되는 데이터를 이용하여 상기 intra/inter TCOEF VLC 수행부(315)로부터의 데이터에 사인비트(sign bit)를 첨가하는 부호비트 에더(sign bit adder)(317)와; The intra / inter TCOEF VLC execution unit 315 in the RUN, LEVEL, the time after the variable length coding using the LAST, the LEVEL using the data output from the absolute value calculation unit 314 performs the intra / inter TCOEF VLC portion sign bit to the data from the (315) (sign bit) adder sign bit (sign bit adder), the addition of 317 and; 상기 타이밍 컨트롤러(313)의 동작 제어 신호에 따라 동작하여, MPEG4와 H.263의 DCT 계수에 대해 각각 FLC 부호화를 수행하는 MPEG4/H.263 TCOEF FLC 수행부(316)와; The timing to operate in accordance with the operation control signal of the controller (313), MPEG4 / H.263 TCOEF FLC performing unit 316 to perform the FLC, respectively coding for the DCT coefficient of the MPEG4 and H.263 and; 상기 타이밍 컨트롤러(313)의 제어에 따라, 상기 부호 비트 에더(317)의 출력과 상기 MPEG4/H.263 TCOEF FLC 수행부(316)의 출력을 다중화하는 intra/inter TCOEF VLC/FLC 다중화부(318)로 구성된다. Under the control of the timing controller 313, the code bit adder 317 output and the intra / inter TCOEF VLC / FLC multiplexer (318 for multiplexing the output of the MPEG4 / H.263 TCOEF FLC execution unit 316 of the ) it consists.

상기 intra/inter TCOEF RVLC & RVLC ESC. The intra / inter TCOEF RVLC & RVLC ESC. 수행부(320)는 도7에 도시된 바와같이, TCOEF 부호화를 위해 LEVEL의 절대치를 계산하는 LEVEL 절대값 계산부(321)와; Performing unit 320 is a LEVEL absolute value calculation unit 321 that computes the absolute value of the LEVEL for TCOEF coded as shown in Figure 7 and; 상기 LEVEL 절대값 계산부(321)에서 출력되는 신호, RLC 인에이블 신호, RVLC 플래그, intra_inter 플래그를 입력받아 RVLC를 수행하는 intra/inter TCOEF RVLC 수행부(322)와; LEVEL the absolute value calculation unit (321) intra / inter TCOEF RVLC execution unit 322 that receives the signal, RLC enable signal, RVLC flag, intra_inter flag outputted from the RVLC perform; 상기 intra/inter TCOEF RVLC 수행부(322)에서 출력되는 RVLC 부호화 코드에 상기 LEVEL 절대값 계산부(321)로부터의 LEVEL sign bit를 첨가하는 sign bit adder(323)와; And the sign bit adder (323) for adding the sign bit of the LEVEL LEVEL from the absolute value calculation unit 321, the coding RVLC code output from the intra / inter TCOEF RVLC performing unit 322; escape 모드일 때 FLC를 수행하는 TCOEF RVLC FLC 수행부(324)와; When the escape mode and TCOEF RVLC FLC performing unit 324 to perform the FLC; 상기 TCOEF RVLC FLC 수행부(324)의 출력과 상기 sign bit adder(323)의 출력을, 상기 intra/inter TCOEF RVLC 수행부(322)로부터의 escape 모드 신호에 따라 다중화하여 상기 TCOEF VLC/FLC 다중화부(330)로 출력하는 intra/inter TCOEF RVLC/FLC 다중화부(325)로 구성된다. The TCOEF RVLC FLC performing unit 324 output and the sign bit adder (323) outputs, the intra / inter TCOEF multiplexes in accordance with the escape mode signal from the RVLC performing unit 322, the TCOEF VLC / FLC multiplexing unit of It consists of intra / inter TCOEF RVLC / FLC multiplexer 325 to output to 330.

상기와 같은 본 발명에 의한 다른 실시예 동영상압축 부호화장치의 가변 길이 부호화의 출력을 위한 장치의 작용을 설명하면 다음과 같다. Referring to the another embodiment of the video effect device for the output of the variable length coding of compression coding apparatus according to the present invention as described above as follows.

TCOEF VLC/RVLC ESC. TCOEF VLC / RVLC ESC. 수행부(300)는 RVLC 플래그에 따라 normal VLC 기능과 RVLC 기능을 수행하고, VLC escape 모드시 FLC를 수행한다. Performing unit 300 performs the normal VLC RVLC features and functions according to the RVLC flag, and perform the FLC when VLC escape mode. TCOEF 비트 스트림 생성기(400)는 TCOEF VLC/RVLC ESC. TCOEF bit stream generator 400 TCOEF VLC / RVLC ESC. 수행부(300)에서 출력되는 가변 길이 부호화(VLC) 코드와 고정 길이 부호화(FLC) 코드를 블럭(block) 단위로 하나의 비트열로 램(500)에 쓰기 위해 재구성한다. Variable output from the performing unit 300, length coding (VLC) and reconstructs for writing to RAM 500 as a bit string code and a fixed length coding (FLC) to a code block (block) unit. TCOEF VLC/RVLC 버퍼(램)(500)은 TCOEF 비트 스트림 생성기(400)에서 출력되는 TCOEF 비트열을 저장하고 원하는 곳에 출력한다. TCOEF VLC / RVLC buffer (RAM) 500, and outputs the stored place TCOEF bit sequence outputted from TCOEF bitstream generator 400 and the like.

상기 TCOEF VLC/RVLC ESC. The TCOEF VLC / RVLC ESC. 수행부(300)의 작용을 좀더 상세히 설명하면, 도5에 도시된 바와 같이, RVLC 플래그로 2개의 module(310)(320)을 선택한다. The more detailed description of the operation of the performing unit 300, and selects the two module (310) (320) to the RVLC flag, as shown in FIG.

즉, RVLC 플래그가 VLC 수행을 나타내면, intra/inter TCOEF VLC & VLC ESC. That is, the flag represents the RVLC perform VLC, intra / inter TCOEF VLC & VLC ESC. 수행부(310)는 normal VLC 기능을 수행하고 VLC escape 모드시 FLC를 수행한다. Performing unit 310 performs a normal function and performs VLC FLC when VLC escape mode. 그리고 상기 RVLC 플래그가 RVLC 수행을 나타내면 intra/inter TCOEF RVLC & RVLC ESC. And the RVLC flag indicates the RVLC perform intra / inter TCOEF RVLC & RVLC ESC. 수행부(320)는 RVLC 기능을 수행하고 RVLC escape 모드시 FLC를 수행한다. Performing unit 320 performs a function to perform the FLC when RVLC RVLC escape mode.

intra/inter TCOEF VLC & VLC ESC. intra / inter TCOEF VLC & VLC ESC. 수행부(310)는 MPEG4와 H.263에 대해 같은 TCOEF VLC 테이블을 사용하여 부호화하고, intra/inter TCOEF RVLC & RVLC ESC. Performing unit 310 encoded using a VLC table such TCOEF for MPEG4 and H.263, and, intra / inter TCOEF RVLC & RVLC ESC. 수행부(320)는 MPEG4와 H.263에 대해 다른 VLC 테이블을 사용하여 부호화한다. Performing unit 320 is encoded using a different VLC tables for MPEG4 and H.263.

TCOEF VLC/FLC 다중화부(330)는 상기 RVLC 플래그에 따라, 상기 intra/inter TCOEF VLC & VLC ESC. TCOEF VLC / FLC multiplexing unit 330 according to the RVLC flag, the intra / inter TCOEF VLC VLC & ESC. 수행부(310)에서 출력되는 intra/inter TCOEF VLC/FLC 코드와 상기 intra/inter TCOEF RVLC & RVLC ESC. intra / inter TCOEF VLC / FLC code outputted from the execution unit 310 and the intra / inter TCOEF RVLC & RVLC ESC. 수행부(320)에서 출력되는 intra/inter TCOEF RVLC/FLC 코드를 다중화하여 VLC 코드와 FLC 코드를 상기 TCOEF 비트 스트림 생성기(400)로 출력한다. Multiplexing the intra / inter TCOEF RVLC / code FLC outputted from the execution unit 320 to output a VLC code and FLC code to the TCOEF bit stream generator 400.

그리고 상기 intra/inter TCOEF VLC & VLC ESC. Further, the intra / inter TCOEF VLC & VLC ESC. 수행부(310)의 작용을 좀더 상세히 설명하면 도6에 도시된 바와 같이, intra/inter TCOEF VLC 수행부(315)는, RUN, LEVEL, LAST를 가지고 TCOEF VLC 테이블에서 먼저 인덱스를 찾고, 이 때 escape mode이면 타이밍 컨트롤러(313)로 escape 모드 신호를 전송한다. The more detailed description of the operation of the execution unit 310. As shown in Figure 6, intra / inter TCOEF VLC performing unit 315, has a RUN, LEVEL, LAST searching indexes first on TCOEF VLC table, where If the escape mode transmits an escape mode signal to the timing controller 313. the 그러면 타이밍 컨트롤러(313)는 intra/inter LMAX, LEVEL+ 계산부(312)에서 이미 찾아진 LEVEL+ 값을 선택하여 intra/inter TCOEF VLC 수행부(315)로 전송하고, 다시 TCOEFVLC 테이블을 찾도록 한다. This is so that the timing controller 313 is looking for TCOEFVLC table intra / inter LMAX, select LEVEL + value Jin already found in the LEVEL + calculation unit 312 and transmits it to the intra / inter TCOEF VLC performing unit 315, and back. 그 결과 escape mode가 다시 선택되면 미리 선택된 RUN+를 가지고 다시 TCOEF VLC 테이블을 참조한다. The results refer to TCOEF VLC table again with a pre-selected when the RUN + escape mode is selected again. 그 결과 escape mode가 다시 선택되면 FLC를 수행하도록 타이밍 컨트롤러(313)에서 MPEG4/H.263 TCOEF FLC 수행부(316)를 제어하여 FLC를 수행하도록 한다. As a result, the escape mode is selected again when the control on the timing controller 313 to perform the FLC MPEG4 / H.263 TCOEF FLC performing unit 316 is to perform the FLC.

이러한 방법은 Intra TCOEF일 때와 Inter TCOEF일 때 동일하게 적용되고, 실제 구성 테이블과 LEVEL+와 RUN+ 참고 표는 다르다. This method is equally applicable when the when the Intra and Inter TCOEF TCOEF, actual configuration table and the LEVEL + RUN + shown in the table are different. 그리고 Inter TCOEF VLC는 H.263 VLC와 동일하게 적용된다. And is Inter TCOEF VLC is applied in the same way as H.263 VLC.

그리고 escape mode일 때 FLC 방법이 다르므로 H.263 플래그에 의해 FLC 방법을 스위칭한다. And because the FLC different ways to escape mode when switching the FLC method by H.263 flag.

한편 LEVEL 절대값 계산부(314)는 LEVEL 값의 절대치를 계산한다. The LEVEL absolute value calculation unit 314 calculates the absolute value of the LEVEL value. 그리고 signbit adder(부호비트 가산기)는 intra/inter TCOEF VLC 수행부(315)의 출력 신호인 unsigned VLC code에 sign_bit를 붙인다. And signbit adder (adder sign bit) is denoted by the sign_bit to the unsigned VLC output signal of the intra / inter TCOEF VLC execution unit (315) code.

intra/inter TCOEF VLC/FLC 다중화부(318)는 타이밍 컨트롤러(313)의 제어에 따라 상기 부호 비트 에더(317)의 출력과 상기 MPEG4/H.263 TCOEF FLC 수행부(316)의 출력을 다중화하여 상기 TCOEF VLC/FLC 다중화부(330)로 출력한다. intra / inter TCOEF VLC / FLC multiplexer 318 and in response to the control of the timing controller 313 multiplexes the output of the sign bit adder 317 output and the MPEG4 / H.263 TCOEF FLC execution unit 316 of the and outputs it to the TCOEF VLC / FLC multiplexer 330.

또한 intra/inter TCOEF RVLC & RVLC ESC. In addition, intra / inter TCOEF RVLC & RVLC ESC. 수행부(320)의 작용을 상세히 설명하면, 도7에 도시된 바와 같이, RVLC는 Intra RVLC와 Inter RVLC의 테이블 구성이 다르다. Described in detail the operation of the execution unit 320, as shown in Figure 7, it is different from the RVLC table configuration of the Intra and Inter RVLC RVLC. RVLC가 escape mode일 때, FLC 방법은 Intra 프레임 부호화와 Inter 프레임 부호화가 모두 같다. When RVLC is in the escape mode, FLC method is as both Inter and Intra-frame encoded frame encoded.

RVLC 부호화를 위해 선택되는 모드 정보를 이용하여 LEVEL의 sign bit를 처리하고, escape 모드일 때 FLC를 수행하며, 이들의 정보를 intra/inter TCOEF RVLC/FLC 다중호부(325)에서 상기 escape 모드임을 나타내는 신호에 따라 다중화하여 상기 TCOEF VLC/FLC 다중화부(330)로 출력한다. Using the mode information selected for RVLC encoded to indicate that processing the sign bit of the LEVEL and, escape mode, when performs the FLC, the escape mode to these pieces of information from the intra / inter TCOEF RVLC / FLC multiple arcs 325 multiplexes in accordance with the signal and outputs it to the TCOEF VLC / FLC multiplexer 330.

이상에서 살펴본 바와 같이, 본 발명 동영상압축 부호화장치의 가변 길이 부호화기는, 동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화하고, 가변 길이 부호화시 에러 손실을 복구할 수 있으며 역방향 가변 길이 부호화(Reverse Variable Length Coding)와 호환성을 가지도록 한 효과가 있다. As described above, the variable length encoder of the present invention, a video compression coder, variable length coding is performed to a relatively small image information through the in that the transmission line that allows the transmission channel in a video compression encoder, and error losses in a variable length coding can be recovered and has the reverse effect a variable length coding (reverse variable length coding) and so as to have the compatibility.

Claims (8)

  1. 동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화를 수행하기 위한 장치에 있어서, An apparatus for performing variable length coding is performed to a relatively small image information through a transmission line to a low, which allows the transmission channel in a video compression encoder,
    영상정보 부호화(texture coding)에서 나오는 매크로블럭 헤더 정보 중 휘도 블럭 패턴(Coded Block Pattern for Luminance; CBPY)을 intra_inter 플래그(intra 프레임 부호화와 inter 프레임 부호화를 선택하기 위한 제어 신호)에 따라 VLC 코드로 처리하는 휘도 블럭 패턴 처리부와; Treated with VLC code based on; (CBPY Coded Block Pattern for Luminance) for intra_inter flag (the control signal for selecting the intra-frame coding and inter-frame encoding) Video Coding (texture coding) the macroblock header information of the luminance block pattern coming out of the luminance block and a pattern processing unit for;
    매크로블럭 헤더 정보 중 매크로블럭 타입(MB type)과 CBPC(Coded Block Pattern for Chrominance)의 정보를 VLC 코드로 정의하는 MCBPC와; MCBPC defining the information of the macroblock type of the macroblock header information (MB type) and CBPC (Coded Block Pattern for Chrominance) into VLC codes;
    매크로블럭 헤더 정보 중의 하나인 이전의 움직임 벡터와 현재의 움직임 벡터 간의 차이값을 VLC 코드로 처리하는 움직임 벡터 차이값 처리부(Motion Vector Difference; MVD)와; The macroblock header information of a previous motion vector as the current motion vector difference value processing unit for processing the difference value between the motion vector to the VLC code in the (Motion Vector Difference; MVD) and;
    매크로블럭 헤더 정보 중의 하나인 휘도 DCT DC 크기(dct_dc_size_lum.)를 위한 VLC 코드를 처리하는 휘도 DCT DC 크기 처리부와; (. Dct_dc_size_lum) luminance DCT DC Size processing unit for processing the VLC code for a macroblock of a luminance DCT DC Size one of the header information;
    매크로블럭 헤더 정보 중의 하나인 색차 DCT DC 크기(dct_dc_size_chro.)를 위한 VLC 코드를 처리하는 색차 DCT DC 크기 처리부와; (. Dct_dc_size_chro) the macroblock header information of one of the color difference DCT DC Size chrominance DCT DC Size processing unit for processing the VLC code for and;
    영상정보 부호화(texture coding) 과정에서 zigzag scan을 거친 DCT 계수(TCOEF)를 입력받아 버퍼링하고, escape 모드를 고려한 VLC를 하기 위해 필요한 클럭 레이트(clock rate)에 맞추어 RLC로 출력하는 입력 버퍼와; Buffered receives the DCT coefficient (TCOEF) via a zigzag scan in the image coding information (texture coding) process, an input buffer to output to the RLC in accordance with the clock rate (clock rate) necessary for the VLC Considering escape mode;
    상기 입력버퍼에서 출력되는 DCT AC 계수를 RLC(Run Length Coding)를 수행하여, VLC 부호화하기 위해 필요한 제어 정보를 출력하는 RLC와; RLC and by performing the RLC (Run Length Coding) to DCT AC coefficients outputted from the input buffer, and outputs the required control information to VLC encoding;
    역방향 가변 길이 부호화(RVLC)와 가변 길이 부호화(VLC)를 선택하기 위한 제어 신호(RVLC 플래그), H.263 TCOEF VLC를 선택하기 위한 제어 신호(H.263 플래그), intra 프레임 부호화와 inter 프레임 부호화를 선택하기 위한 제어 신호(intra_inter 플래그)를 선택적으로 입력받아, 역방향 가변 길이 부호화(RVLC), intra TCOEF 가변 길이 부호화(VLC), inter TCOEF VLC, H.263 TCOEF VLC가 선택적으로 수행되도록 상기 RLC로부터의 경로를 각각 스위칭하는 제1 내지 제4 스위치와; Reverse variable length coding (RVLC) and variable length coding (VLC) the control signal (RVLC Flag), a control signal (H.263 flags) for selecting the H.263 TCOEF VLC for selecting, intra frame coding and inter-frame encoded upon receipt of a control signal (flag intra_inter) for selecting an optional input, the reverse variable length coding (RVLC), from the RLC to intra TCOEF variable length coding (VLC), inter TCOEF VLC, H.263 TCOEF VLC is carried out selectively the path of the first to fourth switches, each switch;
    상기 제1 내지 제3 스위치에 의해 선택되면 MPEG4 intra TCOEF를 intra escape 모드로 VLC를 수행하는 intra TCOEF/MPEG4 intra ESC. When the first through the third selected by the switch performing the VLC the MPEG4 intra TCOEF to escape intra mode intra TCOEF / MPEG4 intra ESC. 수행부와; Performing unit;
    상기 제1 내지 제3 스위치에 의해 선택되면 MPEG4 inter TCOEF를 inter escape 모드로 VLC를 수행하는 inter TCOEF/MPEG4 inter ESC. When the first through the third selected by the switch performing the VLC the MPEG4 inter TCOEF escape to the inter-mode inter TCOEF / MPEG4 inter ESC. 수행부와; Performing unit;
    상기 제1 및 제2 스위치에 의해 선택되면 H.263 TCOEF를 inter 프레임 부호화를 사용하여 escape 모드를 수행하는 TCOEF/H.263 ESC. TCOEF / H.263 ESC performing the escape mode, the H.263 TCOEF using the inter frame coding when the first and selected by the second switch. 수행부와; Performing unit;
    상기 제1, 제2, 제4 스위치에 의해 선택되면 intra TCOEF를 RVLC 수행하고 escape 모드시 고정길이 부호화(Fixed Length Coding; FLC)를 수행하는 intra RVLC TCOEF / ESC. Said first, second, when the fourth selection switch by performing the intra TCOEF RVLC and fixed-length coding during escape mode; intra RVLC TCOEF / ESC performing (Fixed Length Coding FLC). FLC 수행부와; FLC performing unit;
    상기 제1, 제2, 제4 스위치에 의해 선택되면 inter TCOEF를 RVLC 수행하고 escape 모드시 고정길이 부호화(Fixed Length Coding; FLC)를 수행하는 inter RVLCTCOEF / ESC. It said first, second, when the fourth selection switch by the inter TCOEF performed and fixed length coding RVLC during escape mode; inter RVLCTCOEF / ESC performing (Fixed Length Coding FLC). FLC 수행부로 구성된 것을 특징으로 하는 동영상압축 부호화장치의 가변 길이 부호화기. The variable length encoder of the moving picture compression encoding apparatus, characterized in that-part FLC performed.
  2. 제 1 항에 있어서, 상기 RLC에서 출력되는 VLC 부호화하기 위해 필요한 제어 정보는, The method of claim 1, wherein the control information necessary to code VLC generated from the RLC, the
    현재 부호화되는 0이 아닌 DCT 계수가 블럭 내의 마지막 0이 아닌 DCT 계수인 지를 나타내는 LAST, 0이 아닌 계수의 값을 나타내는 LEVEL, 부호화되는 계수 앞의 연속적인 0의 개수를 나타내는 RUN임을 특징으로 하는 동영상압축 부호화장치의 가변 길이 부호화기. Video, characterized in that the RUN indicating the number of current to indicate whether the zero DCT coefficient, not to be encoded is not the last zero in the block DCT coefficient of LAST, representing the value of the coefficients other than 0 LEVEL, coding coefficient in front of consecutive 0 that variable length encoder for compression-encoding unit.
  3. 제 1 항에 있어서, According to claim 1,
    상기 제1 스위치는 상기 RLC에서 출력되는 제어정보(LAST, LEVEL, RUN)를 RVLC 플래그에 따라 상기 제2 스위치와 상기 제4스위치 중 하나로 스위칭하고, 상기 제2 스위치는 상기 제1 스위치에서 출력되는 정보를 H.263플래그에 따라 상기 제3 스위치와 상기 TCOEF/H.263 ESC. The first switch and the second switch control information (LAST, LEVEL, RUN) output from the RLC in accordance with the RVLC flag and switches to one of the fourth switch and the second switch, the output from the first switch It said third switch and said TCOEF / H.263 ESC according to the information on H.263 flags. 수행부 중 하나로 스위칭하며, 상기 제3 스위치는 상기 제2 스위치에서 출력되는 정보를 intra_inter 플래그에 따라 상기 intra TCOEF/MPEG4 intra ESC. And switching to one of the execution unit, the third switch is the intra TCOEF / MPEG4 intra ESC according to the information outputted from said second switch to intra_inter flag. 수행부와 상기 inter TCOEF/MPEG4 inter ESC. Performing part and the inter TCOEF / MPEG4 inter ESC. 수행부 중 하나로 스위칭하고, 상기 제4 스위치는 상기 제1 스위치에서 출력되는 정보를 상기intra_inter 플래그에 따라 상기 intra RVLC TCOEF / ESC. One of the performing unit switching, and said fourth switch is the intra RVLC TCOEF / ESC according to the information outputted from the first switch to the intra_inter flag. FLC 수행부와 상기 inter RVLC TCOEF / ESC. FLC execution unit and the inter RVLC TCOEF / ESC. FLC 수행부 중 하나로 스위칭하는 것을 특징으로 하는 동영상압축 부호화장치의 가변 길이 부호화기. The variable length encoder of the moving picture compression encoding apparatus, characterized in that for switching to one of the FLC performing unit.
  4. 동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화 장치에 있어서, In the variable length coding apparatus for a relatively small image information through a transmission line to a low, which allows the transmission channel in a video compression encoder,
    RVLC 플래그에 따라 normal VLC 기능과 RVLC 기능을 수행하고, VLC escape 모드시 FLC를 수행하는 TCOEF VLC/RVLC ESC. Depending on the flags RVLC normal VLC function and perform the functions and RVLC, VLC escape mode TCOEF VLC / RVLC performing the FLC ESC. 수행부와; Performing unit;
    상기 TCOEF VLC/RVLC ESC. The TCOEF VLC / RVLC ESC. 수행부에서 출력되는 가변 길이 부호화 코드와 고정 길이 부호화(FLC) 코드를 블럭(block) 단위로 하나의 비트열로 램(TCOEF VLC/RVLC 버퍼)에 쓰기 위해 재구성하는 TCOEF 비트 스트림 생성기와; Variable length coding code outputted from the execution unit and the fixed length coding (FLC) TCOEF bitstream to reconstruct for writing to RAM (TCOEF VLC / RVLC buffers) into a single bit stream into a code block (block), and the generator unit;
    상기 TCOEF 비트 스트림 생성기에서 출력되는 TCOEF 비트열을 저장하는 TCOEF VLC/RVLC 버퍼(램)으로 구성된 것을 특징으로 하는 동영상압축 부호화장치의 가변 길이 부호화기. TCOEF the bit stream generator TCOEF VLC / RVLC buffer the variable length encoder of the moving picture compression encoding apparatus, characterized in that consists of (RAM) for storing the bit stream outputted from TCOEF.
  5. 제 4 항에 있어서, 상기 TCOEF VLC/RVLC ESC. The method of claim 4, wherein the VLC TCOEF / RVLC ESC. 수행부는, Performing unit,
    RVLC 플래그가 VLC 수행을 나타내면 normal VLC 기능을 수행하고 VLC escape 모드시 FLC를 수행하는 intra/inter TCOEF VLC & VLC ESC. RVLC flag indicates to perform VLC normal function and perform VLC VLC escape mode for intra / inter TCOEF VLC & VLC performing the FLC ESC. 수행부와; Performing unit; 상기 RVLC 플래그가 RVLC 수행을 나타내면 RVLC 기능을 수행하고 RVLC escape 모드시 FLC를 수행하는 intra/inter TCOEF RVLC & RVLC ESC. RVLC the flag indicates the RVLC performed RVLC perform the functions and RVLC escape mode intra / inter TCOEF performing the FLC RVLC & RVLC ESC. 수행부와; Performing unit; 상기 RVLC 플래그에 따라, 상기 intra/inter TCOEF VLC & VLC ESC. Depending on the RVLC flag, the intra / inter TCOEF VLC & VLC ESC. 수행부에서 출력되는 intra/inter TCOEF VLC/FLC 코드와 상기 intra/inter TCOEF RVLC & RVLC ESC. intra / inter TCOEF VLC / FLC code outputted from the execution unit and the intra / inter TCOEF RVLC & RVLC ESC. 수행부에서 출력되는 intra/inter TCOEF RVLC/FLC 코드를 다중화하여 VLC 코드와 FLC 코드를 상기 TCOEF 비트 스트림 생성기로 출력하는 TCOEF VLC/FLC 다중화부로 구성된 것을 특징으로 하는 동영상압축 부호화장치의 가변 길이 부호화기. intra outputted from the execution unit / inter TCOEF RVLC / FLC encoding the multiplexed VLC code and FLC code to the variable length encoder of the moving picture compression encoding apparatus, characterized in that-part TCOEF VLC / FLC multiplexer for output to the TCOEF bitstream generator.
  6. 제 5 항에 있어서, 6. The method of claim 5,
    상기 intra/inter TCOEF VLC & VLC ESC. The intra / inter TCOEF VLC & VLC ESC. 수행부는, MPEG4와 H.263에 대해 같은 TCOEF VLC 테이블을 사용하여 부호화하고, 상기 intra/inter TCOEF RVLC & RVLC ESC. Perform portion encoded using the VLC table TCOEF same for MPEG4 and H.263, and the intra / inter TCOEF RVLC & RVLC ESC. 수행부는 MPEG4와 H.263에 대해 다른 VLC 테이블을 사용하여 부호화하는 것을 특징으로 하는 동영상압축 부호화장치의 가변 길이 부호화기. Performing video coding unit encoding the variable length encoder of the apparatus, characterized in that for coding using different VLC tables for MPEG4 and H.263.
  7. 제 5 항에 있어서, 상기 intra/inter TCOEF VLC & VLC ESC. The method of claim 5, wherein the intra / inter TCOEF VLC VLC & ESC. 수행부는, Performing unit,
    TCOEF VLC 테이블에서 원하는 VLC 모드를 검색하여 그 결과에 따라 escape 모드인 지를 판단하고, escape 모드이면 타이밍 컨트롤러로 escape 모드 신호를 전송하며, 판단된 모드에 따라 가변 길이 부호화를 수행하는 intra/inter TCOEF VLC수행부와; Searching for a desired VLC mode TCOEF VLC table, and determines whether the escape mode, depending on the result, and sends the escape mode signal to the timing controller when escape mode, intra / inter TCOEF to perform variable length coding according to the determined mode VLC performing unit; RMAX, RUN+를 계산하는 intra/inter RMAX, RUN+ 계산부와; RMAX, intra / inter RMAX, RUN + calculation section for calculating the RUN +; LMAX, LEVEL+를 계산하는 intra/inter LMAX, LEVEL+ 계산부와; LMAX, intra / inter LMAX, LEVEL + calculation section for calculating and LEVEL +; 상기 intra/inter RMAX, RUN+ 계산부에서 계산된 RMAX, RUN+를 제공받고, 상기 intra/inter LMAX, LEVEL+ 계산부에서 계산된 LMAX, LEVEL+를 제공받으며, 상기 intra/inter TCOEF VLC 수행부로부터 전송받는 escape 모드 신호에 따라, LEVEL과 LEVEL+ 선택 기능과 RUN과 RUN+ 선택 기능을 수행하고 각 해당 블럭의 동작 제어 기능을 수행하는 타이밍 컨트롤러와; The intra / inter RMAX, RUN + calculated in the calculation section RMAX, been provided with a RUN +, the intra / inter LMAX, LEVEL + calculated in the calculation section LMAX, receive provide LEVEL +, the intra / inter TCOEF the transferred escape from the VLC execution unit according to a mode signal, the timing controller to perform the LEVEL LEVEL RUN and RUN + + function selection and function selection, and performs the operation control of each of the block and; 상기 타이밍 컨트롤러의 제어에 따라, TCOEF 부호화를 위해 LEVEL의 절대치를 계산하는 LEVEL 절대값 계산부와; Under the control of the timing controller, and LEVEL absolute value calculation unit for calculating the absolute value of the LEVEL TCOEF for encoding; 상기 intra/inter TCOEF VLC 수행부에서 RUN, LEVEL, LAST를 이용한 가변 길이 부호화가 끝난 시점에, 상기 LEVEL 절대값 계산부에서 출력되는 데이터를 이용하여 상기 intra/inter TCOEF VLC 수행부로부터의 데이터에 사인비트(sign bit)를 첨가하는 부호비트 에더(sign bit adder)와; The intra / inter TCOEF in VLC execution unit at the time after the variable length coding using the RUN, LEVEL, LAST, the LEVEL using the data output from the absolute value calculation unit sign the data received from the intra / inter TCOEF VLC execution unit bit (sign bit) adder sign bit (sign bit adder) and the addition of; 상기 타이밍 컨트롤러의 동작 제어 신호에 따라 동작하여, MPEG4와 H.263의 DCT 계수에 대해 각각 FLC 부호화를 수행하는 MPEG4/H.263 TCOEF FLC 수행부와; The timing to operate in accordance with the operation control signal of the controller, MPEG4 and perform the FLC, respectively coding for the DCT coefficient of the H.263 MPEG4 / H.263 TCOEF to perform FLC unit; 상기 타이밍 컨트롤러의 제어에 따라, 상기 부호 비트 에더의 출력과 상기 MPEG4/H.263 TCOEF FLC 수행부의 출력을 다중화하는 intra/inter TCOEF VLC/FLC 다중화부로 구성된 것을 특징으로 하는 동영상압축 부호화장치의 가변 길이 부호화기. Under the control of the timing controller, a variable length of the sign bit adder output and the video compression encoder, characterized in that-part intra / inter TCOEF VLC / FLC multiplexer for multiplexing the MPEG4 / H.263 TCOEF FLC perform output of the encoder.
  8. 제 5 항에 있어서, 상기 intra/inter TCOEF RVLC & RVLC ESC. The method of claim 5, wherein the intra / inter TCOEF RVLC & RVLC ESC. 수행부는, Performing unit,
    TCOEF 부호화를 위해 LEVEL의 절대치를 계산하는 LEVEL 절대값 계산부와; TCOEF for encoding and LEVEL absolute value calculation unit for calculating the absolute value of the LEVEL; 상기 LEVEL 절대값 계산부에서 출력되는 신호, RLC 인에이블 신호, RVLC 플래그, intra_inter 플래그를 입력받아 RVLC를 수행하는 intra/inter TCOEF RVLC 수행부와; The LEVEL signal output from the absolute value calculation unit, and the enable signal RLC, RVLC flag, intra / inter TCOEF RVLC performed that receives the flag intra_inter perform RVLC unit; 상기 intra/inter TCOEF RVLC 수행부에서 출력되는 RVLC 부호화 코드에 상기 LEVEL 절대값 계산부로부터의 LEVEL sign bit를 첨가하는 sign bit adder와; And the intra / inter TCOEF sign bit adder for adding the sign bit LEVEL from the calculation unit the absolute value of the LEVEL RVLC encoded code outputted from the RVLC execution unit; escape 모드일 때 FLC를 수행하는 TCOEF RVLC FLC 수행부와; TCOEF RVLC FLC performing unit to perform the FLC when the escape mode; 상기 TCOEF RVLC FLC 수행부의 출력과 상기 sign bit adder의 출력을, 상기 intra/inter TCOEF RVLC 수행부로부터의 escape 모드 신호에 따라 다중화하여 상기 TCOEF VLC/FLC 다중화부로 출력하는 intra/inter TCOEF RVLC/FLC 다중화부로 구성된 것을 특징으로 하는 동영상압축 부호화장치의 가변 길이 부호화기. The TCOEF RVLC FLC perform negative output and the sign bit of the output of the adder, the intra / inter TCOEF to RVLC multiplexed according to the escape mode signal from the execution unit the TCOEF VLC / FLC multiplexing intra / inter TCOEF RVLC / FLC multiplexer for output to the variable length encoder of the moving picture compression encoding apparatus, characterized in that-part.
KR1020000039639A 2000-07-11 Variable length encoder in MPEG4 codec KR100349649B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000039639A KR100349649B1 (en) 2000-07-11 Variable length encoder in MPEG4 codec

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000039639A KR100349649B1 (en) 2000-07-11 Variable length encoder in MPEG4 codec

Publications (2)

Publication Number Publication Date
KR20020006149A true KR20020006149A (en) 2002-01-19
KR100349649B1 KR100349649B1 (en) 2002-08-24

Family

ID=

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005067301A1 (en) * 2003-12-31 2005-07-21 Institute Of Computing Technology Chinese Academy Of Sciences Joint encoding/decoding method of maximum macroblock type and coded block pattern
KR100906473B1 (en) * 2002-07-18 2009-07-08 삼성전자주식회사 Advanced Method for coding and decoding motion vector and apparatus thereof
KR100954244B1 (en) * 2002-04-15 2010-04-23 파나소닉 주식회사 Image decoding method
WO2010151351A1 (en) * 2009-06-26 2010-12-29 Intel Corporation Multiple compression techniques for packetized information
US8199819B2 (en) 2005-10-21 2012-06-12 Electronics And Telecommunications Research Institute Apparatus and method for encoding and decoding moving picture using adaptive scanning
US9154784B2 (en) 2006-08-17 2015-10-06 Electronics And Telecommunications Research Institute Apparatus for encoding and decoding image using adaptive DCT coefficient scanning based on pixel similarity and method therefor

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8139878B2 (en) 2002-04-15 2012-03-20 Panasonic Corporation Picture coding method and picture decoding method
US8526748B2 (en) 2002-04-15 2013-09-03 Panasonic Corporation Picture coding method and picture decoding method
US8290286B2 (en) 2002-04-15 2012-10-16 Panasonic Corporation Picture coding method and picture decoding method
KR100954244B1 (en) * 2002-04-15 2010-04-23 파나소닉 주식회사 Image decoding method
US7769238B2 (en) 2002-04-15 2010-08-03 Panasonic Corporation Picture coding method and picture decoding method
US8265403B2 (en) 2002-04-15 2012-09-11 Panasonic Corporation Picture coding method and picture decoding method
US8867855B2 (en) 2002-04-15 2014-10-21 Panasonic Intellectual Property Corporation Of America Picture coding method and picture decoding method
KR100906473B1 (en) * 2002-07-18 2009-07-08 삼성전자주식회사 Advanced Method for coding and decoding motion vector and apparatus thereof
WO2005067301A1 (en) * 2003-12-31 2005-07-21 Institute Of Computing Technology Chinese Academy Of Sciences Joint encoding/decoding method of maximum macroblock type and coded block pattern
CN1321533C (en) * 2003-12-31 2007-06-13 中国科学院计算技术研究所 Method of maximum macro block kind and coding block mode combined coding/decoding
US9838714B2 (en) 2005-10-21 2017-12-05 Electronics And Telecommunications Research Institute Apparatus and method for encoding and decoding moving picture using adaptive scanning
US8199819B2 (en) 2005-10-21 2012-06-12 Electronics And Telecommunications Research Institute Apparatus and method for encoding and decoding moving picture using adaptive scanning
US10187660B2 (en) 2005-10-21 2019-01-22 Electronics And Telecommunications Research Institute Apparatus and method for encoding and decoding moving picture using adaptive scanning
US9118892B2 (en) 2005-10-21 2015-08-25 Electronics And Telecommunications Research Institute Apparatus and method for encoding and decoding moving picture using adaptive scanning
US8520729B2 (en) 2005-10-21 2013-08-27 Electronics And Telecommunications Research Institute Apparatus and method for encoding and decoding moving picture using adaptive scanning
US9154784B2 (en) 2006-08-17 2015-10-06 Electronics And Telecommunications Research Institute Apparatus for encoding and decoding image using adaptive DCT coefficient scanning based on pixel similarity and method therefor
US9225982B2 (en) 2006-08-17 2015-12-29 Electronics And Telecommunications Research Institute Apparatus for encoding and decoding image using adaptive DCT coefficient scanning based on pixel similarity and method therefor
US9736484B2 (en) 2006-08-17 2017-08-15 Electronics And Telecommunications Research Institute Apparatus for encoding and decoding image using adaptive DCT coefficient scanning based on pixel similarity and method therefor
US9819942B2 (en) 2006-08-17 2017-11-14 Electronics And Telecommunications Research Institute Apparatus for encoding and decoding image using adaptive DCT coefficient scanning based on pixel similarity and method therefor
US10499064B2 (en) 2006-08-17 2019-12-03 Electronics And Telecommunications Research Institute Apparatus for encoding and decoding image using adaptive DCT coefficient scanning based on pixel similarity and method therefor
US8111704B2 (en) 2009-06-26 2012-02-07 Intel Corporation Multiple compression techniques for packetized information
WO2010151351A1 (en) * 2009-06-26 2010-12-29 Intel Corporation Multiple compression techniques for packetized information

Similar Documents

Publication Publication Date Title
CN1151684C (en) Moving-picture coding-decoding apparatus and method
ES2540583T7 (en) Method for interpolation of sub-pixel value
KR100606588B1 (en) Picture processing device and picture processing method
US6275531B1 (en) Scalable video coding method and apparatus
US6141447A (en) Compressed video transcoder
JP4132664B2 (en) Transcoding
AU2003201069C1 (en) Coding dynamic filters
CN100471269C (en) Video frequency compressing device and method, decoding method, layering coder and decoder
CN101232618B (en) Method and device for indicating quantizer parameters in a video coding system
CA2457614C (en) First pass encoding of i and p-frame complexity for compressed digital video
US5293229A (en) Apparatus and method for processing groups of fields in a video data compression system
JP4991699B2 (en) Scalable encoding and decoding methods for video signals
KR101108501B1 (en) Method for coding motion in a video sequence
US6300973B1 (en) Method and system for multimedia communication control
KR100599017B1 (en) Image data compression apparatus and method
JP3928815B2 (en) MPEG-2 decoding method and MPEG-2 video decoder
KR100511693B1 (en) Image decoder
US7072393B2 (en) Multiple parallel encoders and statistical analysis thereof for encoding a video sequence
KR970000683B1 (en) Resolution adaptive video compression/decompression method and apparatus
KR100681370B1 (en) Predicting motion vectors for fields of forward-predicted interlaced video frames
DE69839100T2 (en) Improved video coding using adaptive block parameters for coded / uncoded blocks
CN1174629C (en) Image encoding method
JP3159853B2 (en) Coding method and decoding method and apparatus
KR100953677B1 (en) Coding transform coefficients in image/video encoders and/or decoders
US5473380A (en) Picture signal transmitting method and apparatus

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20100729

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee