KR101136858B1 - Encoder and encoding method in video coding standard - Google Patents

Encoder and encoding method in video coding standard Download PDF

Info

Publication number
KR101136858B1
KR101136858B1 KR1020100023174A KR20100023174A KR101136858B1 KR 101136858 B1 KR101136858 B1 KR 101136858B1 KR 1020100023174 A KR1020100023174 A KR 1020100023174A KR 20100023174 A KR20100023174 A KR 20100023174A KR 101136858 B1 KR101136858 B1 KR 101136858B1
Authority
KR
South Korea
Prior art keywords
value
bit stream
codeword
codenum
information
Prior art date
Application number
KR1020100023174A
Other languages
Korean (ko)
Other versions
KR20110104190A (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 KR1020100023174A priority Critical patent/KR101136858B1/en
Publication of KR20110104190A publication Critical patent/KR20110104190A/en
Application granted granted Critical
Publication of KR101136858B1 publication Critical patent/KR101136858B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 H.264/AVC 동영상 압축 표준에서의 인코딩 장치 및 방법에 관한 것이다. 본 발명의 실시 예에 따른 인코딩 방법은 Coeff_token 인코딩 시에 사용되는 VLCT를 효과적으로 저장할 수 있는 메모리 구조를 생성한다. 즉, VLCT에 존재하는 코드워드들은 길이 정보와 값 정보로 나누어 구성되며, 코드워드들의 길이 정보와 값 정보는 할당된 각각의 메모리 영역에 저장된다. 코드워드의 길이 정보의 크기는 축소되어 구성되고, 축소된 코드워드의 길이 정보는 할당된 메모리 영역에 저장된다. 본 발명의 실시 예에 따른 인코딩 방법은 크기가 축소된 인코딩 테이블을 사용하여 인코딩 시스템의 성능을 향상시키고 인코딩 시스템의 구현 비용을 절감시킬 수 있다.The present invention relates to an encoding apparatus and method in the H.264 / AVC video compression standard. An encoding method according to an embodiment of the present invention creates a memory structure capable of effectively storing a VLCT used in Coeff_token encoding. That is, codewords existing in the VLCT are divided into length information and value information, and the length information and the value information of the codewords are stored in each allocated memory area. The size of the length information of the codeword is configured to be reduced, and the length information of the reduced codeword is stored in the allocated memory area. The encoding method according to the embodiment of the present invention can improve the performance of the encoding system and reduce the implementation cost of the encoding system by using a reduced size encoding table.

Description

동영상 압축 표준에서의 인코딩 장치 및 방법{ENCODER AND ENCODING METHOD IN VIDEO CODING STANDARD}ENCODER AND ENCODING METHOD IN VIDEO CODING STANDARD}

본 발명의 실시 예는 데이터 압축 장치에 관한 것으로, 더욱 상세하게는 H.264/AVC 동영상 압축 표준에서의 인코딩 장치 및 방법에 관한 것이다.An embodiment of the present invention relates to a data compression apparatus, and more particularly, to an encoding apparatus and method in the H.264 / AVC video compression standard.

최근 들어 영상과 음향이 통신 및 컴퓨터와 결합되어 새로운 미디어로 융합된 멀티미디어 정보가 제공되고 있다. 예를 들면, 고속의 데이터 전송망이 공급됨에 따라 입체 음향과 고화질의 영상을 시청할 수 있고, 화상 전화를 통해 멀리 떨어져 있는 사람과 얼굴을 마주보며 통화할 수 있다. 또한, 컴퓨터나 TV를 통해 상품 정보를 실시간으로 보면서 상품을 구매할 수 있고, 웹 사이트를 통해 음악 또는 영화를 감상할 수 있다. 또한, 컴퓨터를 통해 동영상 강의를 수강하는 것이 가능하다.Recently, multimedia information, in which image and sound are combined with communication and computers, is integrated into new media. For example, as a high-speed data transmission network is provided, users can watch stereo sound and high-definition video, and can face to face with a distant person through a videophone. In addition, it is possible to purchase goods while viewing product information in real time through a computer or a TV, and to enjoy music or a movie through a website. It is also possible to take video lectures through a computer.

이러한 멀티미디어 정보들은 동영상 압축 기술을 기반으로 하여 발전되어 왔다. 정보를 전달하는 데이터는 데이터로부터 중복 요소(데이터를 정확히 복원하는 데 꼭 필요하지 않은 요소)를 제거함으로써 압축될 수 있다. 무손실 압축의 경우, 디코더에서 복원되는 데이터가 원본 데이터와 정확히 일치되도록 복원하기 위하여 통계적인 중복 요소가 제거된다. 하지만, 현재의 무손실 압축 방법은 최대 압축 효율이 약 3~4배 정도로써 압축 효율이 높지 않다. 대부분의 압축 기법은 손실 압축에 기반을 두고 있다. 손실 압축의 경우, 디코더에서 복원되는 데이터가 원본 데이터와 동일하지 않지만, 높은 압축 효율을 얻기 위하여 주관적인 중복 요소가 제거된다. 이미지 또는 비디오 압축에 있어서, 주관적인 중복 요소는 보는 사람이 직관적으로 느낄 수 있는 화질에 큰 영향을 주지 않는 제거할 수 있는 요소이다.Such multimedia information has been developed based on video compression technology. Data that conveys information can be compressed by removing redundant elements from the data (elements that are not necessary to accurately restore the data). In the case of lossless compression, statistical redundancy is removed to restore the data recovered at the decoder to exactly match the original data. However, the current lossless compression method has a maximum compression efficiency of about 3 to 4 times, which is not high in compression efficiency. Most compression techniques are based on lossy compression. In the case of lossy compression, the data reconstructed at the decoder is not the same as the original data, but subjective redundancy is removed to obtain high compression efficiency. In image or video compression, subjective redundancy is a removable element that does not significantly affect the image quality that the viewer can intuitively feel.

다양한 동영상 압축 표준들 중 하나인 H.264/AVC 동영상 압축 표준은 기존의 동영상 압축 표준들에 비하여 뛰어난 압축 성능을 갖는다. H.264/AVC 동영상 압축 표준은 양방향 스트링밍(streaming) 또는 양방향 방송을 지원한다. 따라서, H.264/AVC 동영상 압축 표준은 화상 통신, 케이블, 위성, 지상파를 통한 방송, 또는 데이터 저장 장치, DVD 등의 저장 매체에 대한 양방향 저장, 이더넷(ethernet), 모뎀, 근거리통신망(LAN), 또는 모바일 네트워크를 통한 대화 서비스와 멀티미디어 스트리밍 서비스 등의 광범위한 응용 분야에 적용되고 있다.The H.264 / AVC video compression standard, one of various video compression standards, has superior compression performance compared to the existing video compression standards. The H.264 / AVC video compression standard supports bidirectional streaming or bidirectional broadcast. Thus, the H.264 / AVC video compression standard provides video communications, cable, satellite, terrestrial broadcast, or bidirectional storage for data storage devices, DVDs, and other storage media, Ethernet, modems, and local area networks. It is applied to a wide range of applications such as conversation service and multimedia streaming service through mobile network or mobile network.

본 발명의 실시 예들은 H.264/AVC 동영상 압축 표준에 있어서, 크기가 축소된 인코딩 테이블을 저장하는 방법을 제공하는 데 있다.Embodiments of the present invention provide a method for storing a reduced sized encoding table in the H.264 / AVC video compression standard.

본 발명의 실시 예에 따른 컨텍스트 적응형 가변 길이 코드 방식의 인코딩 방법에 있어서 인코딩 방법은, 양자화된 변환 계수의 0이 아닌 계수의 수(Tc)와 크기가 1인 계수의 수(T1s) 정보를 참조하여 파라미터 값(codenum)을 생성하는 단계; 상기 파라미터 값(codenum)을 참조하여, 코드워드의 비트 스트림 길이의 기본값을 계산하는 단계; 상기 파라미터 값(codenum)을 참조하여 생성되는 주소(Add) 및 인덱스(Idx) 값에 따라 저장부로부터 증가값(offset)을 독출하는 단계; 상기 기본값(base)과 상기 증가값(offset)에 따라 코드워드의 비트 스트림 길이 정보를 생성하는 단계; 그리고 코드워드의 비트 스트림 값 정보와 상기 생성된 코드워드의 비트 스트림 길이 정보를 이용하여 코드워드의 비트 스트림을 생성하는 단계를 포함한다.In the encoding method of the context-adaptive variable length code method according to an embodiment of the present invention, the encoding method includes information on the number of non-zero coefficients (Tc) of the quantized transform coefficients and the number of coefficients (T1s) having a size of one. Generating a parameter value codenum with reference; Calculating a default value of a bit stream length of a codeword with reference to the parameter value (codenum); Reading an offset value from a storage unit according to an address (Add) and an index (Idx) value generated by referring to the parameter value codenum; Generating bit stream length information of a codeword according to the base and the offset; And generating a bit stream of the codeword using the bit stream value information of the codeword and the bit stream length information of the generated codeword.

본 발명의 다른 실시 예에 따른 인코딩 장치는 양자화된 변환 계수로부터 파라미터를 생성하기 위한 코드넘 생성부; 상기 생성된 파라미터 값에 따라 기본값을 계산하기 위한 기본값 계산부; 가변 길이 코드워드의 비트 스트림 길이 정보 값과 상기 기본값의 차이값을 저장하기 위한 저장부; 그리고 상기 계산된 기본값과 상기 생성된 파라미터 값에 따라 독출되는 차이값을 더하여 상기 가변 길이 코드워드의 비트 스트림 길이 정보를 생성하는 합산부를 포함한다.An encoding apparatus according to another embodiment of the present invention includes a codenum generator for generating a parameter from quantized transform coefficients; A default value calculator for calculating a default value according to the generated parameter value; A storage unit for storing a bit stream length information value of a variable length codeword and a difference value of the default value; And an adder configured to generate bit stream length information of the variable length codeword by adding the calculated default value and a difference value read according to the generated parameter value.

본 발명의 실시 예에 따른 인코딩 장치 및 방법은 크기가 축소된 인코딩 테이블을 사용하여 인코딩 시스템의 성능을 향상시키고 인코딩 시스템의 구현 비용을 절감시킬 수 있다.The encoding apparatus and method according to an embodiment of the present invention can improve the performance of the encoding system and reduce the implementation cost of the encoding system by using the reduced size encoding table.

도 1은 본 발명의 실시 예에 따른 H.264/AVC 압축 표준의 인코더를 예시적으로 보여주는 블럭도이다.
도 2는 양자화된 계수들이 인코딩되는 과정을 보여주기 위한 도면이다.
도 3a 내지 도 3c는 컨텍스트 적응형 가변 길이 코드 인코딩 방식에서 참조되는 가변 길이 코드 테이블을 개략적으로 보여주는 도면이다.
도 4는 본 발명의 제 1 실시 예에 따른 가변 길이 코드 테이블에 대한 메모리 구조를 보여주기 위한 도면이다.
도 5는 본 발명의 실시 예에 따른 엔트로피 인코더를 예시적으로 보여주는 블럭도이다.
도 6은 본 발명의 실시 예에 따른 코드워드의 비트 스트림 길이(LEN) 정보와 파라미터(codenum)의 상관 관계를 보여주기 위한 도면이다.
도 7은 본 발명의 실시 예에 따른 파라미터(codenum)에 대한 기본값 설정 과정을 보여주기 위한 도면이다.
도 8은 본 발명의 제 2 실시 예에 따른 가변 길이 코드 테이블에 대한 메모리 구조를 보여주기 위한 도면이다.
도 9는 본 발명의 실시 예에 따른 메모리 구조에서 Coeff_token을 인코딩하는 동작을 보여주기 위한 순서도이다.
1 is a block diagram illustrating an encoder of an H.264 / AVC compression standard according to an embodiment of the present invention.
2 is a diagram illustrating a process of encoding quantized coefficients.
3A to 3C are diagrams schematically illustrating a variable length code table referred to in a context adaptive variable length code encoding scheme.
4 is a diagram illustrating a memory structure of a variable length code table according to a first embodiment of the present invention.
5 is a block diagram illustrating an entropy encoder according to an embodiment of the present invention.
FIG. 6 is a diagram illustrating a correlation between bit stream length (LEN) information of a codeword and a parameter codenum according to an embodiment of the present invention.
7 is a diagram illustrating a process of setting a default value for a parameter (codenum) according to an embodiment of the present invention.
8 is a diagram illustrating a memory structure for a variable length code table according to a second embodiment of the present invention.
9 is a flowchart illustrating an operation of encoding Coeff_token in a memory structure according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 통해 설명될 것이다. 그러나 본 발명은 여기에서 설명되는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 본 실시 예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.Advantages and features of the present invention, and methods for achieving the same will be described with reference to embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments described herein and may be embodied in other forms. The embodiments are provided so that those skilled in the art can easily carry out the technical idea of the present invention to those skilled in the art.

도면들에 있어서, 본 발명의 실시 예들은 도시된 특정 형태로 제한되는 것이 아니며 명확성을 기하기 위하여 과장된 것이다.In the drawings, embodiments of the present invention are not limited to the specific forms shown and are exaggerated for clarity.

본 명세서에서 특정한 용어들이 사용되었으나. 이는 본 발명을 설명하기 위한 목적에서 사용된 것이며, 의미 한정이나 특허 청구 범위에 기재된 본 발명의 권리 범위를 제한하기 위하여 사용된 것은 아니다.Although specific terms are used herein. It is used for the purpose of illustrating the present invention and is not intended to limit the scope of the present invention as defined in the meaning limitations or claims.

본 명세서에서 ‘및/또는’이란 표현은 전후에 나열된 구성요소들 중 적어도 하나를 포함하는 의미로 사용된다. 또한, ‘연결되는/결합되는’이란 표현은 다른 구성요소와 직접적으로 연결되거나 다른 구성요소를 통해 간접적으로 연결되는 것을 포함하는 의미로 사용된다.The expression " and / or " is used herein to mean including at least one of the elements listed before and after. In addition, the expression “connected / combined” is used to include directly connected to or indirectly connected to other components.

본 명세서에서 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 또한, 명세서에서 사용되는 ‘포함한다’ 또는 ‘포함하는’으로 언급된 구성요소, 단계, 동작 및 소자는 하나 이상의 다른 구성요소, 단계, 동작 및 소자의 존재 또는 추가를 의미한다.In this specification, the singular forms also include the plural unless specifically stated otherwise in the phrases. Also, as used herein, "comprising" or "comprising" means to refer to the presence or addition of one or more other components, steps, operations and elements.

이하, 도면들을 참조하여 본 발명의 실시 예에 대해 상세히 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

도 1은 본 발명의 실시 예에 따른 H.264/AVC 압축 표준의 인코더를 예시적으로 보여주는 블럭도이다.1 is a block diagram illustrating an encoder of an H.264 / AVC compression standard according to an embodiment of the present invention.

H.264/AVC(advanced video coding) 표준은 이미지 정보의 인코딩된 표현을 위한 표준이다. H.264/AVC 표준은 기본적으로 두 가지를 정의한다. 첫 째, 압축된 형태의 이미지 데이터를 나타내는 인코딩된 표현(또는 신택스(syntax))을 정의하고, 둘 째, 이미지 정보를 복원하기 위하여 신택스를 디코딩하는 방법을 정의한다. 즉, H.264/AVC 표준은 코덱(enCOder/DECoder, CODEC)을 따로 정의하지 않고, 인코딩된 비디오 비트 스트림(bit stream)의 신택스와 이러한 비트 스트림을 디코딩하는 방법을 정의한다. 일반적으로 H.264/AVC 표준에 호환되는 인코더는 도 1에 나타난 블럭들을 포함할 것이다.The H.264 / Advanced video coding (AVC) standard is a standard for the encoded representation of image information. The H.264 / AVC standard basically defines two things. First, an encoded representation (or syntax) representing the compressed image data is defined, and second, a method of decoding the syntax to recover the image information is defined. That is, the H.264 / AVC standard does not define codecs (enCOder / DECoder, CODEC) separately, but defines the syntax of an encoded video bit stream and a method of decoding such a bit stream. In general, an encoder compatible with the H.264 / AVC standard will include the blocks shown in FIG.

도 1을 참조하면, H.264/AVC 동영상 압축 표준의 인코더는 움직임 추정부(motion estimation block, 110), 움직임 보상부(motion compensation block, 120), 인트라 예측부(intra prediction block, 130), 필터(filter, 140), 재배열부(reorder, 150) 그리고 엔트로피 인코더(entropy encoder, 160)를 포함한다.Referring to FIG. 1, the encoder of the H.264 / AVC video compression standard includes a motion estimation block 110, a motion compensation block 120, an intra prediction block 130, And a filter 140, a reorder 150, and an entropy encoder 160.

동영상 압축에 있어서 사용되는 움직임 보상의 방법은 현재 프레임의 사각형 구간 또는 블럭(block)의 움직임을 보상하는 것이다. 현재 프레임의 M×N(M, N은 자연수) 샘플 블럭과 일치하는 M×N 샘플 블럭을 찾기 위해 참조 프레임의 영역을 탐색한다. 여기에서, 참조 프레임은 과거 또는 미래의 프레임 또는 이전에 인코딩되어 전송된 프레임이다. 참조 프레임의 영역을 탐색하는 과정은 현재 프레임의 M×N 블럭과 탐색 영역(일반적으로 현재 블럭의 위치를 기준으로 한 영역) 내의 가능한 M×N 블럭 모두 또는 일부를 비교하여, 그 중 가장 일치하는 영역을 찾아내는 과정이다. 즉, 현재의 M×N 블럭과 후보 영역의 차로 생성되는 오차가 최소가 되는 후보 영역을 가장 일치하는 영역으로 선택한다. 이러한 동작은 움직임 추정부(110)에서 수행된다. 선택된 후보 영역은 현재의 M×N 블럭을 위한 예측 블럭이 되고, 현재 블럭과 예측 블럭의 차로 M×N 오차 블럭이 만들어진다. 이러한 동작은 움직임 보상부(120)에서 수행된다.The motion compensation method used in video compression is to compensate for the motion of a rectangular section or block of the current frame. The region of the reference frame is searched to find an M × N sample block that matches the M × N (M, N is a natural number) sample block of the current frame. Here, the reference frame is a past or future frame or a frame previously encoded and transmitted. The process of searching an area of a reference frame compares all or some of the M × N blocks of the current frame with the possible M × N blocks in the search area (usually the area relative to the current block's location), and matches It is the process of finding a domain. In other words, the candidate region having the minimum error generated by the difference between the current M × N block and the candidate region is selected as the most matching region. This operation is performed by the motion estimation unit 110. The selected candidate region becomes a prediction block for the current M × N block, and an M × N error block is created by the difference between the current block and the prediction block. This operation is performed by the motion compensator 120.

인코더(100)는 입력 프레임(Fn)을 매크로블럭 단위로 처리한다. 각 매크로블럭은 인트라 모드(intra mode) 또는 인터 모드(inter mode)로 인코딩된다. 인트라 모드는 움직임 보상을 하지 않고 인코딩하는 방법이다. 인터 모드는 움직임 보상 예측을 사용하여 인코딩하는 방법이다. 매크로블럭 내의 각 블럭에 대한 예측 블럭(P)은 복원된 블럭에 의해서 생성된다. 인트라 모드에서 예측 블럭(P)은 현재 블럭과 이전에 인코딩된 블럭(또는 디코딩되어 복원된 블럭)을 비교하여 생성된다. 인트라 모드에서 예측 블럭(P)의 생성 동작은 인트라 예측부(130)에서 수행된다. 인터 모드에서 예측 블럭(P)은 참조 블럭으로부터 움직임 보상을 예측하여 생성된다. 도 1에서는 참조 블럭이 이전에 인코딩된 프레임(F'n -1)으로 도시되었다.The encoder 100 processes the input frame F n in macroblock units. Each macroblock is encoded in intra mode or inter mode. Intra mode is a method of encoding without motion compensation. Inter mode is a method of encoding using motion compensated prediction. The predictive block P for each block in the macroblock is generated by the reconstructed block. In intra mode, the prediction block P is generated by comparing the current block with a previously encoded block (or a decoded and reconstructed block). The generation operation of the prediction block P in the intra mode is performed by the intra predictor 130. In the inter mode, the prediction block P is generated by predicting motion compensation from the reference block. In FIG. 1 the reference block is shown as a previously encoded frame F ′ n −1 .

현재 블럭과 예측 블럭(P)의 차로 오차 블럭(Dn)이 생성된다. 생성된 오차 블럭(Dn)은 다른 도메인(domain)으로 변환되어(T) 변환 계수(transform coefficient)로 표현된다. 변환 계수는 양자화되어(Q) 양자화된 변환 계수(X)가 된다. 양자화된 변환 계수(X)는 재배열부(150)를 통해 지그재그(zigzag) 스캔되어 재배치된다. 재배치된 변환 계수는 엔트로피 인코더(160)에 의해 엔트로피 인코딩된다. 엔트로피 인코딩된 계수는 매크로블럭 내의 각 블럭을 디코딩하는데 필요한 부가적인 데이터들(예를 들면, 예측 모드, 양자화 파라미터, 움직임 벡터 정보 등)과 함께 압축된다. 압축된 데이터는 비트 스트림(bit stream)을 형성하여 네트워크 추상 계층(network abstraction layer, NAL)을 통해 전송되거나 저장된다.An error block D n is generated by the difference between the current block and the prediction block P. The generated error block D n is transformed to another domain (T) and represented as a transform coefficient. The transform coefficients are quantized (Q) to become quantized transform coefficients (X). The quantized transform coefficients X are zigzag scanned and rearranged through the rearrangement unit 150. The relocated transform coefficients are entropy encoded by entropy encoder 160. The entropy encoded coefficients are compressed with additional data (eg, prediction mode, quantization parameters, motion vector information, etc.) needed to decode each block in the macroblock. Compressed data forms a bit stream and is transmitted or stored through a network abstraction layer (NAL).

인코더(100)는 매크로블럭 내의 각 블럭을 인코딩하여 전송할 뿐만 아니라, 인코딩된 데이터를 다시 디코딩하여 이후의 예측을 위한 참조 데이터를 생성한다. 양자화된 변환 계수(X)가 역양자화되고(Q-1) 역변환되어(T-1) 오차 블럭(D'n)이 생성된다. 예측 블럭(P)이 오차 블럭(D'n)과 더해져서 디코딩된 프레임(uF'n)이 생성된다. 디코딩된 프레임(uF'n)이 필터(140)를 통해 필터링되면, 왜곡 현상이 감소되어디코딩된 참조 프레임(F'n)이 생성된다.The encoder 100 not only encodes and transmits each block in the macroblock, but also decodes the encoded data again to generate reference data for later prediction. The quantized transform coefficient X is inversely quantized (Q −1 ) and inverse transformed (T −1 ) to produce an error block D ′ n . The prediction block P is added to the error block D ' n to produce a decoded frame uF' n . When the decoded frame uF ' n is filtered through the filter 140, the distortion is reduced to produce a decoded reference frame F' n .

H.264/AVC 표준에는 특정한 기능을 지원하는 프로파일들이 정의되어 있다. 그 중 하나인 베이스라인(baseline) 프로파일은 PMP(portable multimedia player), PDA(personal digital assistant)와 같은 이동 동영상 단말 서비스 및 화상 회의를 주 응용 분야로 한다. 베이스라인 프로파일은 인트라 코딩, 인터 코딩 그리고 컨텍스트 적응형 가변 길이 코드(context-based adaptive variable length code, CAVLC, 이하 'CAVLC'라고 칭함)를 사용하는 엔트로피 코딩을 지원한다.The H.264 / AVC standard defines profiles that support specific functions. One of the baseline profiles is mobile video terminal services such as portable multimedia player (PMP) and personal digital assistant (PDA) and video conferencing. The baseline profile supports intra coding, inter coding and entropy coding using context-based adaptive variable length code (CAVLC).

CAVLC 인코딩 방식에서는 4×4 블럭에서 생성되는 양자화된 변환 계수들이 Coeff_token, Sign of T1s, Level, Total_zeros, Run_before라는 5가지 구문 요소들로 표현된 후, 각각의 구문 요소들이 인코딩된다. 이 경우, Coeff_token, Total_zeros, Run_before 구문 요소들은 정의된 가변 길이 코드 테이블(variable length code table, 이하, 'VLCT'라고 칭함)을 참조하여 인코딩된다. 본 발명의 실시 예에 따른 엔트로피 인코더(160)는 VLCT에 존재하는 코드워드(codeword)의 비트 스트림을 길이 정보와 값 정보로 나누어 구성한다. 비트 스트림의 길이 정보와 값 정보는 할당된 각각의 메모리 영역에 저장된다. 비트 스트림의 길이 정보의 크기는 기본값과 증가값으로 나누어 구성되고, 증가값만이 메모리 장치에 저장된다. 기본값은 기본값 계산부에 따라 계산되고, 증가값만이 메모리 장치에 저장되기 때문에, VLCT이 저장되는 메모리 영역이 감소된다. 또한, 독출해야하는 메모리 장치 영역이 감소되기 때문에 인코더(100)의 동작 속도가 향상된다. 이러한 엔트로피 인코더(160)의 동작은 후술되는 도 5 및 도 9를 통하여 상세히 설명될 것이다.In the CAVLC encoding scheme, quantized transform coefficients generated in a 4 × 4 block are represented by five syntax elements Coeff_token, Sign of T1s, Level, Total_zeros, and Run_before, and then each syntax element is encoded. In this case, Coeff_token, Total_zeros, and Run_before syntax elements are encoded with reference to a defined variable length code table (hereinafter, referred to as 'VLCT'). The entropy encoder 160 according to an embodiment of the present invention divides a bit stream of a codeword existing in the VLCT into length information and value information. The length information and the value information of the bit stream are stored in each allocated memory area. The size of the bit stream length information is divided into a default value and an increment value, and only the increment value is stored in the memory device. The default value is calculated according to the default value calculator, and since only the increment value is stored in the memory device, the memory area in which the VLCT is stored is reduced. In addition, since the memory device area to be read is reduced, the operation speed of the encoder 100 is improved. The operation of the entropy encoder 160 will be described in detail with reference to FIGS. 5 and 9 described below.

도 2는 양자화된 계수들이 인코딩되는 과정을 보여주기 위한 도면이다.2 is a diagram illustrating a process of encoding quantized coefficients.

H.264/AVC 표준의 베이스라인 프로파일에서 4×4 블럭의 양자화된 변환 계수들은 지그재그 스캔되어 재배열된다. 재배열된 변환 계수들은 전술된 5가지 구문 요소들에 의해 인코딩된다. 5가지 구문 요소들은 다음과 같다. Coeff_token은 '0'이 아닌 계수의 수(이하, 'Tc'라고 칭함)와 고주파 성분에서의 크기가 '1'인 계수의 수(이하, 'T1s')가 인코딩된 요소이다. Level은 T1s를 제외한 '0'이 아닌 계수의 크기가 인코딩된 요소이다. Total_zeros는 지그재그 순서에서 첫번 째 계수와 '0'이 아닌 마지막 계수 간에 존재하는 크기가 '0'인 계수들의 수가 인코딩된 요소이다. Run_before는 지그재그 스캔의 역순으로 각각의 '0'이 아닌 계수 앞에 존재하는 '0'인 계수들의 수가 인코딩된 요소이다.In the baseline profile of the H.264 / AVC standard, quantized transform coefficients of 4x4 blocks are zigzag scanned and rearranged. The rearranged transform coefficients are encoded by the five syntax elements described above. The five syntax elements are as follows: Coeff_token is an element in which the number of coefficients other than '0' (hereinafter referred to as 'Tc') and the number of coefficients having a size of '1' in the high frequency component (hereinafter, 'T1s') are encoded. Level is an element whose size is encoded as a non-zero coefficient except for T1s. Total_zeros is an element in which the number of coefficients of size '0' existing between the first coefficient and the last non-zero coefficient in the zigzag order is encoded. Run_before is an element in which the number of coefficients of '0' existing in front of each non-zero coefficient in the reverse order of the zigzag scan is encoded.

도 2의 4×4 블럭의 양자화된 변환 계수들을 인코딩하는 과정은 다음과 같다. 4×4 블럭의 양자화된 계수들을 지그재그 스캔으로 재배열하면 0, -3, 0, 1, -1, -1, 0, 1, 0, ... 이다. 재배열된 변환 계수들을 CAVLC 인코딩 방식에서 정의되는 5가지 구문 요소들로 표현하면 다음과 같다. '0'이 아닌 계수의 수인 Tc는 '5'(-3, 1, -1, -1, 1)이다. 크기가 '1'인, 즉, 절대값이 '1'인 계수의 수인 T1s는 '3'(-1, -1, 1)이다. 여기에서 T1s는 마지막 계수로부터 최대 3개만 인코딩된다. Tc와 T1s로 구성되는 Coeff_token은 VLCT을 참조하여 인코딩된다. 도 3a 내지 도 3c에 간략히 도시된 VLCT을 참조하면 Coeff_token은 '0000100'(Tc=5, T1s=3)이다.The process of encoding the quantized transform coefficients of the 4x4 block of FIG. 2 is as follows. Rearranging the quantized coefficients of a 4x4 block by zigzag scan is 0, -3, 0, 1, -1, -1, 0, 1, 0, ... The rearranged transform coefficients are expressed as five syntax elements defined in CAVLC encoding. Tc, the number of coefficients other than '0', is '5' (-3, 1, -1, -1, 1). T1s, the number of coefficients whose magnitude is '1', that is, the absolute value is '1', is '3' (-1, -1, 1). Here, only T1s are encoded up to three from the last coefficient. Coeff_token consisting of Tc and T1s is encoded with reference to the VLCT. Referring to the VLCT shown briefly in FIGS. 3A to 3C, Coeff_token is '0000100' (Tc = 5, T1s = 3).

지그재그 스캔의 역순으로 T1s의 부호가 인코딩되는 Sign of T1s는 '011'(+, -, -)이다. 여기에서 양의 부호(+)는 '0'값으로, 음의 부호(-)는 '1'값으로 인코딩된다. T1s를 제외한 '0'이 아닌 계수의 크기가 인코딩되는 Level은 '10010'(-3, 1)이다. 지그재그 순서에서 첫번 째 계수와 '0'이 아닌 마지막 계수 간에 존재하는 크기가 '0'인 계수들의 수가 인코딩되는 Total_zeros는 '111'(3개)이다. 지그재그 스캔의 역순으로 각각의 '0'이 아닌 계수 앞에 존재하는 '0'인 계수들의 수가 인코딩되는 Run_before는 '101101'이다. 따라서, 인코딩된 최종 비트 스트림은 '000010001110010111101101'이다.Sign of T1s in which the sign of T1s is encoded in the reverse order of zigzag scan is '011' (+,-,-). Here, the positive sign (+) is encoded as a '0' value, and the negative sign (-) is encoded as a '1' value. The level at which the magnitude of the coefficient other than '0' except T1s is encoded is '10010' (-3, 1). The total_zeros in which the number of coefficients of size '0' existing between the first coefficient and the last non-zero coefficient in the zigzag order is encoded is '111' (three). Run_before, in which the number of coefficients of '0' existing before each non-zero coefficient in the zigzag scan order is encoded, is '101101'. Therefore, the encoded final bit stream is '000010001110010111101101'.

도 3a 내지 도 3c는 컨텍스트 적응형 가변 길이 코드 인코딩 방식에서 참조되는 가변 길이 코드 테이블(VLCT)을 개략적으로 보여주는 도면이다.3A to 3C schematically illustrate a variable length code table (VLCT) referred to in a context adaptive variable length code encoding scheme.

양자화된 변환 계수들은 전술된 5가지 구문 요소들에 의해 인코딩된다. 구문 요소들 중 Coeff_token를 인코딩하기 위해서는 1개의 고정 길이 코드 테이블(fixed length code table)과 3개의 가변 길이 코드 테이블들(VLCT)이 사용된다. 도 3a 내지 도 3c는 Coeff_token에 대한 VLCT들로서 이전에 복원된 이웃 블럭의 Tc값을 참조하여 3개의 테이블들 중 하나가 선택된다. VLCT0는 도 3a에, VLCT1는 도 3b에 그리고 VLCT2는 도 3c에 개략적으로 도시된다.The quantized transform coefficients are encoded by the five syntax elements described above. One fixed length code table and three variable length code tables VLCT are used to encode Coeff_token among syntax elements. 3A-3C are VLCTs for Coeff_token, one of the three tables is selected with reference to the Tc value of the previously restored neighboring block. VLCT0 is schematically shown in FIG. 3A, VLCT1 in FIG. 3B and VLCT2 in FIG. 3C.

도 3a 내지 도 3c를 참조하면, 코드워드는 Tc와 T1s의 쌍에 대응된다. 코드워드 각각은 1비트에서 16비트까지의 비트열들로 구성된다. 그리고 비트열 각각은 1에서 15까지의 값을 나타낸다. 코드워드들은 메모리 장치에 저장된다. 따라서, 도 3a 내지 도 3c의 코드워드들의 비트 스트림 길이(이하, 'LEN'이라 칭함)를 저장하기 위한 메모리 영역(이하, 'LEN_M'이라 칭함)과 비트 스트림 값(이하, 'VAL'이라 칭함)을 저장하기 위한 메모리 영역(이하, 'VAL_M'이라 칭함)이 필요하다.3A to 3C, codewords correspond to pairs of Tc and T1s. Each codeword consists of a string of bits ranging from 1 bit to 16 bits. Each bit string represents a value from 1 to 15. Codewords are stored in a memory device. Accordingly, a memory area (hereinafter referred to as 'LEN_M') and a bit stream value (hereinafter referred to as 'VAL') for storing the bit stream length (hereinafter referred to as 'LEN') of the codewords of FIGS. 3A to 3C. ), A memory area (hereinafter referred to as 'VAL_M') is required.

도 4는 본 발명의 제 1 실시 예에 따른 가변 길이 코드 테이블에 대한 메모리 구조를 보여주기 위한 도면이다.4 is a diagram illustrating a memory structure of a variable length code table according to a first embodiment of the present invention.

도 4를 참조하면, 도 3a에 도시된 VLCT0의 코드워드들이 LEN과 VAL로 구분되고, 주소(add)와 인덱스(idx)의 쌍에 대응된다. 메모리 영역에 저장된 LEN과 VAL을 참조하기 위한 메모리 주소(add)는 Tc와 T1s를 이용하여 수학식 1 내지 수학식 4와 같이 표현된다. 또한, LEN과 VAL을 참조하기 위한 인덱스(idx)는 수학식 5와 같이 표현된다. 수학식 1에서 "<<" 연산자는 프로그래밍 코드(예를 들면, C언어)에서 사용되는 연산자로 쉬프트 연산을 의미한다. 또한, 수학식 5에서 "%" 연산자는 프로그래밍 코드(예를 들면, C언어)에서 사용되는 연산자로 나머지 연산을 의미한다. 이러한 연산자들은 후술되는 수학식에서도 동일하게 적용될 것이다.Referring to FIG. 4, codewords of VLCT0 illustrated in FIG. 3A are classified into LEN and VAL, and correspond to a pair of an address (add) and an index (idx). Memory addresses (add) for referring to LEN and VAL stored in the memory area are represented by Equations 1 to 4 using Tc and T1s. In addition, the index (idx) for referencing the LEN and VAL is expressed as in Equation (5). In Equation 1, the "<<" operator is an operator used in programming code (for example, C language) and means a shift operation. In addition, in Equation 5, the "%" operator is an operator used in programming code (for example, C language), and means the remaining operation. These operators will apply equally to the equations described below.

Figure 112010016513416-pat00001
Figure 112010016513416-pat00001

Figure 112010016513416-pat00002
Figure 112010016513416-pat00002

Figure 112010016513416-pat00003
Figure 112010016513416-pat00003

Figure 112010016513416-pat00004
Figure 112010016513416-pat00004

Figure 112010016513416-pat00005
Figure 112010016513416-pat00005

도 4에 도시된 바와 같이, 메모리 주소(add) 각각은 2개의 코드워드를 지시하며 인덱스(idx)에 의해 LEN과 VAL가 결정된다. 본 발명의 제 1 실시 예에 따른 VLCT에 대한 메모리 구조를 참조하여 Coeff_token를 인코딩하는 동작은 다음과 같은 단계를 포함한다. 예를 들면, 입력된 Tc와 T1s값으로부터 주소(add)와 인덱스(idx)를 생성하는 단계, 생성된 주소(add)에 따라 LEN_M 그리고 VAL_M으로부터 LEN 그리고 VAL을 독출하는 단계, 그리고 생성된 인덱스(idx)에 따라 LEN 그리고 VAL을 결정하는 단계를 포함한다.As shown in FIG. 4, each of the memory addresses add indicates two codewords, and LEN and VAL are determined by the index idx. The encoding of Coeff_token with reference to the memory structure for the VLCT according to the first embodiment of the present invention includes the following steps. For example, generating an address (add) and an index (idx) from the input Tc and T1s values, reading LEN and VAL from LEN_M and VAL_M according to the generated address (add), and generating the index determining LEN and VAL according to (idx).

본 발명의 제 1 실시 예에 따른 VLCT에 대한 메모리 구조에서 Coeff_token를 인코딩하는 동작을 예로 들기로 한다. Tc=2, T1s=1이 입력되면, 수학식 1 내지 수학식 5에 의해서 파라미터들(cn=5, j=0), 주소(add=2) 그리고 인덱스(idx=1)가 생성된다. 도 4에 도시된 메모리 구조를 참조하면, LEN=6, VAL=4가 결정된다. 즉, 코드워드의 비트 스트림 길이가 '6'이고, 비트 스트림 값이 '4'인 비트열 '000100'이 결정된다. 결정된 비트 스트림 '000100'은 도 3a의 VLCT0에서 Tc=2, T1s=1 인 경우의 비트 스트림 '000100'과 동일하다.An operation of encoding Coeff_token in the memory structure for the VLCT according to the first embodiment of the present invention will be exemplified. When Tc = 2 and T1s = 1 are input, parameters (cn = 5, j = 0), an address (add = 2) and an index (idx = 1) are generated by the equations (1) through (5). Referring to the memory structure shown in Fig. 4, LEN = 6 and VAL = 4 are determined. That is, a bit string '000100' having a bit stream length of '6' and a bit stream value of '4' is determined. The determined bit stream '000100' is the same as the bit stream '000100' when Tc = 2 and T1s = 1 in VLCT0 of FIG. 3A.

도 5는 본 발명의 실시 예에 따른 엔트로피 인코더를 예시적으로 보여주는 블럭도이다.5 is a block diagram illustrating an entropy encoder according to an embodiment of the present invention.

도 5를 참조하면, 엔트로피 인코더(160)는 코드넘(codenum, 이하, 'codenum'이라 칭함) 생성부(161), 제 1 주소 및 인덱스 생성부(162), 제 1 저장부(163), 제 2 주소 및 인덱스 생성부(164), 제 2 저장부(165), 베이스(base, 이하, 'base'라고 칭함) 계산부(166), 비트 스트림 생성부(167), 그리고 합산부(168)을 포함한다.Referring to FIG. 5, the entropy encoder 160 includes a codenum generator 161, a first address and index generator 162, a first storage 163, A second address and index generator 164, a second storage 165, a base (hereinafter referred to as a base) calculator 166, a bit stream generator 167, and an adder 168. ).

codenum 생성부(161) 그리고 base 계산부(166) 각각은 본 발명의 제 2 실시 예에 따라 Coeff_token을 인코딩하는데 필요한 복수의 파라미터들을 생성한다. 제 1 주소 및 인덱스 생성부(162)는 제 1 저장부(163)를 액세스하기 위한 제 1 주소(add)를 생성하고, 제 1 주소(add)에 따라 독출된 VAL을 결정하기 위한 제 1 인덱스(idx)를 생성한다. 제 2 주소 및 인덱스 생성부(164)는 제 2 저장부(165)를 액세스하기 위한 제 2 주소(Add)를 생성하고, 제 2 주소(Add)에 따라 독출된 LEN을 결정하기 위한 제 2 인덱스(Idx)를 생성한다.Each of the codenum generator 161 and the base calculator 166 generates a plurality of parameters required for encoding Coeff_token according to the second embodiment of the present invention. The first address and index generator 162 generates a first address add for accessing the first storage unit 163 and a first index for determining the read VAL according to the first address add. Create (idx). The second address and index generator 164 generates a second address Add for accessing the second storage unit 165 and a second index for determining the read LEN according to the second address Add. Create (Idx).

본 발명의 실시 예에 따르면, VLCT들(VLCT0 내지 VLCT2)에 존재하는 코드워드들은 LEN과 VAL로 나누어 구성된다. LEN과 VAL은 할당된 각각의 저장부에 저장된다. 즉, LEN은 코드워드의 비트 스트림 길이 정보를 저장하기 위한 제 2 저장부(165)에 저장된다. 그리고 VAL은 코드워드의 비트 스트림 값 정보를 저장하기 위한 제 1 저장부(163)에 저장된다. 본 발명의 제 2 실시 예에 따르면, 코드워드의 비트 스트림 길이(LEN) 정보의 크기는 축소되어 제 2 저장부(165)에 저장된다.According to an embodiment of the present invention, the codewords present in the VLCTs VLCT0 to VLCT2 are divided into LEN and VAL. LEN and VAL are stored in their respective storage. That is, the LEN is stored in the second storage unit 165 for storing bit stream length information of the codeword. The VAL is stored in the first storage unit 163 for storing bit stream value information of the codeword. According to the second embodiment of the present invention, the size of the bit stream length (LEN) information of the codeword is reduced and stored in the second storage unit 165.

도 6은 본 발명의 실시 예에 따른 코드워드의 비트 스트림 길이(LEN) 정보와 파라미터(codenum)의 상관 관계를 보여주기 위한 도면이다.FIG. 6 is a diagram illustrating a correlation between bit stream length (LEN) information of a codeword and a parameter codenum according to an embodiment of the present invention.

수학식 1 내지 수학식 3을 참조하면 파라미터(codenum)는 Tc와 T1s에 따라 생성되고, 도 3a 내지 도 3c에 도시된 VLCT의 코드워드들을 1차원으로 나열한다. 파라미터(codenum)를 적용하여 LEN과 VAL을 각각 1차원으로 나열해 보면 LEN과 파라미터(codenum)간에는 상관 관계가 존재한다. 도 6은 이러한 상관 관계를 명확하게 파악하기 위한 도면으로써, LEN을 파라미터(codenum)에 따라 정리한 것이다.Referring to Equations 1 to 3, a parameter codenum is generated according to Tc and T1s and lists the codewords of VLCT shown in FIGS. 3A to 3C in one dimension. If LEN and VAL are listed in one dimension by applying a parameter (codenum), there is a correlation between LEN and a parameter (codenum). FIG. 6 is a diagram for clearly identifying such correlations, in which LENs are arranged according to a parameter (codenum).

도 6을 참조하면, 파라미터(codenum)가 증가할수록 LEN 역시 증가한다. 또한, 8의 배수인 파라미터(codenum)를 경계로 파라미터(codenum)를 그룹핑하면, 그룹들 각각에 포함되는 LEN들의 크기가 완만하게 변화한다. 예를 들면, 파라미터(codenum8)와 파라미터(codenum15) 사이에 포함되는 VLCT0의 LEN은 7 내지 9의 값을 갖는다. 만약, 7을 이 구간에서의 기본값으로 설정하면, 이 구간 내의 LEN은 0, 1, 또는 2의 값들 중 어느 하나로 표현될 수 있다. 즉, 기본값과 2비트만으로 LEN을 표현할 수 있다. 도 6에서 괄호 안의 값은 구간 각각의 기본값을 나타낸다. 도시된 기본값에 따라 대응하는 모든 LEN이 0 내지 3의 값을 갖는다.Referring to FIG. 6, as the parameter codenum increases, the LEN also increases. In addition, when the parameter codenum is grouped around a parameter codenum that is a multiple of 8, the sizes of the LENs included in each of the groups change slowly. For example, the LEN of VLCT0 included between the parameter codenum8 and the parameter codenum15 has a value of 7-9. If 7 is set as the default value in this interval, the LEN in this interval may be represented by any one of values of 0, 1, or 2. In other words, LEN can be expressed only with a default value and 2 bits. In FIG. 6, values in parentheses indicate default values of respective sections. According to the default values shown, all corresponding LENs have a value between 0 and 3.

도 7은 본 발명의 실시 예에 따른 파라미터(codenum)에 대한 기본값 설정 과정을 보여주기 위한 도면이다.7 is a diagram illustrating a process of setting a default value for a parameter (codenum) according to an embodiment of the present invention.

전술한 바와 같이, Tc와 T1s는 Coeff_token 인코딩에 있어서 활용할 수 있는 독립 변수이다. 즉, 기본값은 Tc와 T1s로부터 생성될 수 있다. 도 6을 참조하면 파라미터(codenum)에 따라 그룹핑된 그룹들 각각의 기본값들은 파라미터(codenum)가 증가할수록 기본값이 1 또는 2만큼 증가한다. 따라서, 수학식 6 내지 수학식 10과 같이 기본값을 파라미터(codenum)의 함수로 모델링할 수 있다.As mentioned above, Tc and T1s are independent variables that can be utilized in Coeff_token encoding. That is, a default value can be generated from Tc and T1s. Referring to FIG. 6, the default values of the groups grouped according to the parameter codenum increase by 1 or 2 as the parameter codenum increases. Therefore, as shown in Equations 6 to 10, the default value may be modeled as a function of a codenum.

Figure 112010016513416-pat00006
Figure 112010016513416-pat00006

Figure 112010016513416-pat00007
Figure 112010016513416-pat00007

Figure 112010016513416-pat00008
Figure 112010016513416-pat00008

Figure 112010016513416-pat00009
Figure 112010016513416-pat00009

Figure 112010016513416-pat00010
Figure 112010016513416-pat00010

도 7에는 파라미터(codenum)에 대한 수학식 6 내지 수학식 10의 변수들에 대한 값들이 도시되었다. 예시적으로, 도 7 그리고 수학식 11 내지 수학식 13으로부터 산출되는 기본값(base0)과 도 6의 VLCT0에 도시된 기본값을 비교하면 동일한 기본값을 갖는다.7 shows values for the variables of Equations 6 to 10 for the parameter codenum. For example, comparing the default value base0 calculated from Equations 11 to 13 with the default value illustrated in VLCT0 of FIG. 6 has the same default value.

Figure 112010016513416-pat00011
Figure 112010016513416-pat00011

Figure 112010016513416-pat00012
Figure 112010016513416-pat00012

Figure 112010016513416-pat00013
Figure 112010016513416-pat00013

한편, 수학식 14 내지 수학식 16은 도 3a 내지 도 3c에 각각 도시된 VLCT들(VLCT0~VLCT2)에 대한 기본값을 생성하기 위한 수식이다. 즉, 수학식 14는 도 3a에 도시된 VLCT0에 대한 기본값을 생성하기 위한 수식이고, 수학식 15는 도 3b에 도시된 VLCT1에 대한 기본값을 생성하기 위한 수식이고, 그리고 수학식 16은 도 3c에 도시된 VLCT2에 대한 기본값을 생성하기 위한 수식이다.Equations 14 to 16 are equations for generating default values for the VLCTs VLCT0 to VLCT2 illustrated in FIGS. 3A to 3C, respectively. That is, Equation 14 is an equation for generating a default value for VLCT0 shown in FIG. 3A, Equation 15 is an equation for generating a default value for VLCT1 shown in FIG. 3B, and Equation 16 is shown in FIG. 3C. A formula for generating a default value for the illustrated VLCT2.

Figure 112010016513416-pat00014
Figure 112010016513416-pat00014

Figure 112010016513416-pat00015
Figure 112010016513416-pat00015

Figure 112010016513416-pat00016
Figure 112010016513416-pat00016

도 8은 본 발명의 제 2 실시 예에 따른 가변 길이 코드 테이블에 대한 메모리 구조를 보여주기 위한 도면이다.8 is a diagram illustrating a memory structure for a variable length code table according to a second embodiment of the present invention.

도 3a 내지 도 3c의 코드워드들의 비트 스트림 길이(LEN)는 수학식 14 내지 수학식 16에 의해서 산출되는 기본값에 따라 수학식 17과 같이 표현된다. 코드워드의 비트 스트림 길이(LEN)는 합산부(168)에 의해 생성된다.The bit stream length LEN of the codewords of FIGS. 3A to 3C is expressed by Equation 17 according to a default value calculated by Equations 14 to 16. The bit stream length LEN of the codeword is generated by the adder 168.

Figure 112010016513416-pat00017
Figure 112010016513416-pat00017

수학식 17의 파라미터(offset)는 VLCT의 LEN과 기본값간의 차이를 나타낸다. 즉, 파라미터(offset)는 LEN을 생성하기 위해서 산출된 기본값을 기준으로 증가시켜야 하는 증가값이다. 이러한 파라미터(offset)는 본 발명의 제 2 실시 예에 따른 제 2 저장부(도 5의 165 참조)에 저장된다. 파라미터(offset)는 0 내지 3의 범위를 갖기 때문에, 2비트의 저장 공간이 할당된다. 한편, 일반적인 메모리 장치(예를 들면, 제 2 저장부(165))는 8비트 단위로 데이터가 저장되고, 참조된다. 따라서, 4개의 파라미터들(offset들)에 하나의 메모리 주소가 할당되어야 한다.The parameter (offset) of equation (17) represents the difference between the LEN and the default value of the VLCT. In other words, the offset is an increase value that should be increased based on the calculated default value in order to generate the LEN. Such an offset is stored in the second storage unit (see 165 of FIG. 5) according to the second embodiment of the present invention. Since the offset ranges from 0 to 3, two bits of storage space are allocated. On the other hand, in a general memory device (eg, the second storage unit 165), data is stored and referenced in units of 8 bits. Therefore, one memory address must be assigned to four parameters.

수학식 18 내지 수학식 19는 본 발명의 제 2 실시 예에 따른 메모리 구조에서의 제 2 메모리 주소(Add)를 생성하기 위한 수식이다. 그리고 수학식 20은 동일한 제 2 메모리 주소(Add)에 포함되는 4개의 파라미터들(offset들)을 식별하기 위한 제 2 인덱스(Idx)를 생성하기 위한 수식이다.Equations 18 to 19 are equations for generating a second memory address Add in the memory structure according to the second embodiment of the present invention. Equation 20 is an equation for generating a second index Idx for identifying four parameters (offsets) included in the same second memory address Add.

Figure 112010016513416-pat00018
Figure 112010016513416-pat00018

Figure 112010016513416-pat00019
Figure 112010016513416-pat00019

Figure 112010016513416-pat00020
Figure 112010016513416-pat00020

본 발명의 제 2 실시 예에 따른 VLCT에 대한 메모리 구조에서 Coeff_token를 인코딩하는 동작을 도 5 및 도 8을 참조하여 예를 들기로 한다. 예시적으로, 코드워드의 비트 스트림 길이(LEN)가 산출될 것이다. Tc=5, T1s=2가 입력되면, codenum 생성부(161)는 파라미터(codenum) 값을 생성한다. 수학식 1 내지 수학식 3에 의해서 파라미터(codenum) 값이 생성된다. 생성된 파라미터(codenum) 값은 14이다. 제 2 주소 및 인덱스 생성부(164)는 파라미터 값 또는 제 2 주소 및 인덱스 값을 생성한다. 즉, 수학식 6에 의해서 파라미터(ad=3)가 생성되고, 수학식 18에 의해서 파라미터(sa=0)가 생성된다. 또한, 수학식 19에 의해서 제 2 주소(Add=3)가 생성되고, 수학식 20에 의해서 제 2 인덱스(Idx=2)가 생성된다.An operation of encoding Coeff_token in the memory structure for the VLCT according to the second embodiment of the present invention will be described with reference to FIGS. 5 and 8. As an example, the bit stream length LEN of a codeword will be calculated. When Tc = 5 and T1s = 2 are input, the codenum generator 161 generates a parameter codenum value. A parameter codenum value is generated by the equations (1) through (3). The generated parameter value is 14. The second address and index generator 164 generates a parameter value or a second address and index value. That is, the parameter ad = 3 is generated by the equation (6), and the parameter sa = 0 is generated by the equation (18). In addition, a second address (Add = 3) is generated by Equation 19, and a second index (Idx = 2) is generated by Equation (20).

생성된 제 2 주소(Add)가 제 2 인덱스(Idx)에 따라 제 2 저장부(165)에 저장된 파라미터(offset)가 독출된다. 독출된 파라미터(offset) 값은 3이다. base 생성부(166)는 기본값을 생성한다. 수학식 7 내지 수학식 16에 의해서 기본값들(base0=7, base=4)이 생성된다. 합산부(168)는 생성된 기본값과 독출된 파라미터(offset) 값을 더한다. 즉, 수학식 17에 의해서 생성된 기본값(base=4)과 파라미터(offset=3) 값이 더해져 LEN 값이 생성된다. 생성된 LEN은 7로써, 도 3b의 VLCT1에서 Tc=5, T1s=2인 경우의 코드워드의 비트 스트림 길이와 동일하다.A parameter stored in the second storage unit 165 is read according to the generated second address Add according to the second index Idx. The read parameter value is 3. The base generator 166 generates a default value. Equations 7 to 16 generate default values (base0 = 7, base = 4). The adder 168 adds the generated default value and the read offset value. That is, the LEN value is generated by adding the default value (base = 4) and the parameter (offset = 3) value generated by Equation 17. The generated LEN is 7, which is the same as the bit stream length of the codeword when Tc = 5 and T1s = 2 in VLCT1 of FIG. 3B.

도 9는 본 발명의 제 2 실시 예에 따른 메모리 구조에서 Coeff_token을 인코딩하는 동작을 보여주기 위한 순서도이다.9 is a flowchart illustrating an operation of encoding Coeff_token in a memory structure according to a second embodiment of the present invention.

도 5 및 도 9를 참조하면, 제 2 실시 예에 따른 VLCT에 대한 메모리 구조를 참조하여 Coeff_token를 인코딩하는 동작은 다음과 같은 단계를 포함한다. 입력된 Tc와 T1s값으로부터 codenum 생성부(161)는 파라미터(codenum)을 생성한다(S110 단계). 제 1 주소 및 인덱스 생성부(162)는 생성된 파라미터(codenum) 값을 참조하여 제 1 저장부(163)를 액세스하기 위한 제 1 주소(add) 그리고 제 1 인덱스(idx)값을 생성한다(S120 단계). 생성된 제 1 주소(add) 그리고 제 1 인덱스(idx) 값에 따라 제 1 저장부(163)에서 코드워드의 비트 스트림 값(VAL)이 독출된다(S130 단계).5 and 9, an operation of encoding Coeff_token with reference to a memory structure for a VLCT according to the second embodiment includes the following steps. The codenum generator 161 generates a parameter codenum from the input Tc and T1s (step S110). The first address and index generator 162 generates a first address (add) and a first index (idx) value for accessing the first storage unit 163 with reference to the generated parameter codenum value ( Step S120). The bit stream value VAL of the codeword is read from the first storage unit 163 according to the generated first address add and the first index idx (step S130).

제 2 주소 및 인덱스 생성부(163)는 생성된 파라미터(codenum) 값을 참조하여 제 2 저장부(165)를 액세스하기 위한 제 2 주소(Add) 그리고 제 2 인덱스(Idx)값을 생성한다(S140 단계). 생성된 제 2 주소(Add) 그리고 제 2 인덱스(Idx) 값에 따라 제 2 저장부(165)에서 파라미터(offset) 값이 독출된다(S150 단계). Base 생성부(166)는 기본값을 생성한다(S160 단계). 생성된 기본값과 파라미터(offset) 값을 참조하여 코드워드의 비트 스트림 길이(LEN)가 생성된다(S170 단계). 생성된 LEN과 VAL이 비트 스트림 생성부(167)로 전송되어 비트 스트림이 생성된다(S180 단계).The second address and index generator 163 generates a second address (Add) and a second index (Idx) value for accessing the second storage unit 165 with reference to the generated parameter codenum value ( Step S140). The offset value is read from the second storage unit 165 according to the generated second address Add and the value of the second index Idx (S150). The base generator 166 generates a default value (step S160). The bit stream length LEN of the codeword is generated with reference to the generated default value and the offset value (step S170). The generated LEN and VAL are transmitted to the bit stream generator 167 to generate a bit stream (step S180).

본 발명의 제 2 실시 예에 따르면, VLCT이 나타내는 코드워드들은 길이 정보와 값 정보로 나누어 구성된다. 코드워드들의 길이 정보와 값 정보는 할당된 각각의 메모리 영역에 저장된다. 코드워드의 길이 정보의 크기는 축소되어 구성되고, 축소된 코드워드의 길이 정보는 할당된 메모리 영역에 저장된다. 따라서, 인코더의 동작 속도가 향상되고, VLCT가 저장되는 메모리 영역이 감소된다.According to the second embodiment of the present invention, codewords indicated by the VLCT are divided into length information and value information. Length information and value information of the codewords are stored in each allocated memory area. The size of the length information of the codeword is configured to be reduced, and the length information of the reduced codeword is stored in the allocated memory area. Thus, the operating speed of the encoder is improved and the memory area in which the VLCT is stored is reduced.

100 : 인코더
110 : 움직임 추정부
120 : 움직임 보상부
130 : 인트라 예측부
140 : 필터
150 : 재배열부
160 : 엔트로피 인코더
161 : 코드넘 생성부
162 : 제 1 주소 및 인덱스 생성부
163 : 제 1 저장부
164 : 제 2 주소 및 인덱스 생성부
165 : 제 2 저장부
166 : 베이스 계산부
167 : 비트 스트림 생성부
168 : 합산부
100: encoder
110: motion estimation unit
120: motion compensation unit
130: intra prediction unit
140: filter
150: rearrangement
160: entropy encoder
161: code number generation unit
162: first address and index generator
163: first storage unit
164: second address and index generator
165: second storage unit
166: base calculation unit
167: bit stream generation unit
168: adding up

Claims (15)

삭제delete 컨텍스트 적응형 가변 길이 코드 방식의 인코딩 방법에 있어서:
양자화된 변환 계수의 0이 아닌 계수의 수(Tc)와 크기가 1인 계수의 수(T1s) 정보를 참조하여 파라미터 값(codenum)을 생성하는 단계;
상기 파라미터 값(codenum)을 참조하여, 코드워드의 비트 스트림 길이의 기본값을 계산하는 단계;
상기 파라미터 값(codenum)을 참조하여 생성되는 주소(Add) 및 인덱스(Idx) 값에 따라 저장부로부터 증가값(offset)을 독출하는 단계;
상기 기본값(base)과 상기 증가값(offset)에 따라 코드워드의 비트 스트림 길이 정보를 생성하는 단계; 그리고
코드워드의 비트 스트림 값 정보와 상기 생성된 코드워드의 비트 스트림 길이 정보를 이용하여 코드워드의 비트 스트림을 생성하는 단계를 포함하고,
상기 파라미터 값(codenum)은,
Figure 112012003951656-pat00021
으로 정의되는 인코딩 방법.
In the context adaptive variable length code method of encoding:
Generating a parameter value codenum with reference to information on the number of non-zero coefficients Tc of the quantized transform coefficients and the number of coefficients T1s having a magnitude of 1;
Calculating a default value of a bit stream length of a codeword with reference to the parameter value (codenum);
Reading an offset value from a storage unit according to an address (Add) and an index (Idx) value generated by referring to the parameter value codenum;
Generating bit stream length information of a codeword according to the base and the offset; And
Generating a bit stream of a codeword using bit stream value information of a codeword and bit stream length information of the generated codeword,
The parameter value codenum is
Figure 112012003951656-pat00021
The encoding method defined by.
제 2 항에 있어서,
상기 변수들(j, cn)은,
Figure 112010016513416-pat00022
; 그리고
Figure 112010016513416-pat00023
으로 정의되는 인코딩 방법.
The method of claim 2,
The variables (j, cn),
Figure 112010016513416-pat00022
; And
Figure 112010016513416-pat00023
The encoding method defined by.
컨텍스트 적응형 가변 길이 코드 방식의 인코딩 방법에 있어서:
양자화된 변환 계수의 0이 아닌 계수의 수(Tc)와 크기가 1인 계수의 수(T1s) 정보를 참조하여 파라미터 값(codenum)을 생성하는 단계;
상기 파라미터 값(codenum)을 참조하여, 코드워드의 비트 스트림 길이의 기본값을 계산하는 단계;
상기 파라미터 값(codenum)을 참조하여 생성되는 주소(Add) 및 인덱스(Idx) 값에 따라 저장부로부터 증가값(offset)을 독출하는 단계;
상기 기본값(base)과 상기 증가값(offset)에 따라 코드워드의 비트 스트림 길이 정보를 생성하는 단계; 그리고
코드워드의 비트 스트림 값 정보와 상기 생성된 코드워드의 비트 스트림 길이 정보를 이용하여 코드워드의 비트 스트림을 생성하는 단계를 포함하고,
상기 기본값(base)은 복수의 기본값으로 구성되되, 복수의 가변 길이 코드 테이블 각각에 대응되는 인코딩 방법.
In the context adaptive variable length code method of encoding:
Generating a parameter value codenum with reference to information on the number of non-zero coefficients Tc of the quantized transform coefficients and the number of coefficients T1s having a magnitude of 1;
Calculating a default value of a bit stream length of a codeword with reference to the parameter value (codenum);
Reading an offset value from a storage unit according to an address (Add) and an index (Idx) value generated by referring to the parameter value codenum;
Generating bit stream length information of a codeword according to the base and the offset; And
Generating a bit stream of a codeword using bit stream value information of a codeword and bit stream length information of the generated codeword,
The base is composed of a plurality of default values, each encoding method corresponding to a plurality of variable length code table.
제 4 항에 있어서,
상기 복수의 기본값들은,
Figure 112010016513416-pat00024
으로 정의되는 인코딩 방법.
The method of claim 4, wherein
The plurality of default values,
Figure 112010016513416-pat00024
The encoding method defined by.
제 5 항에 있어서,
상기 변수들(base0, k2, sel)은 상기 생성된 파라미터(codenum) 값을 참조하여,
Figure 112010016513416-pat00025
;
Figure 112010016513416-pat00026
;
Figure 112010016513416-pat00027
;
Figure 112010016513416-pat00028
;
Figure 112010016513416-pat00029
;
Figure 112010016513416-pat00030
;
Figure 112010016513416-pat00031
; 그리고
Figure 112010016513416-pat00032
으로 정의되는 인코딩 방법.
The method of claim 5, wherein
The variables base0, k2, and sel are referenced to the generated parameter codenum value.
Figure 112010016513416-pat00025
;
Figure 112010016513416-pat00026
;
Figure 112010016513416-pat00027
;
Figure 112010016513416-pat00028
;
Figure 112010016513416-pat00029
;
Figure 112010016513416-pat00030
;
Figure 112010016513416-pat00031
; And
Figure 112010016513416-pat00032
The encoding method defined by.
컨텍스트 적응형 가변 길이 코드 방식의 인코딩 방법에 있어서:
양자화된 변환 계수의 0이 아닌 계수의 수(Tc)와 크기가 1인 계수의 수(T1s) 정보를 참조하여 파라미터 값(codenum)을 생성하는 단계;
상기 파라미터 값(codenum)을 참조하여, 코드워드의 비트 스트림 길이의 기본값을 계산하는 단계;
상기 파라미터 값(codenum)을 참조하여 생성되는 주소(Add) 및 인덱스(Idx) 값에 따라 저장부로부터 증가값(offset)을 독출하는 단계;
상기 기본값(base)과 상기 증가값(offset)에 따라 코드워드의 비트 스트림 길이 정보를 생성하는 단계; 그리고
코드워드의 비트 스트림 값 정보와 상기 생성된 코드워드의 비트 스트림 길이 정보를 이용하여 코드워드의 비트 스트림을 생성하는 단계를 포함하고,
상기 주소(Add) 및 인덱스(Idx)는 상기 생성된 파라미터(codenum) 값을 참조하여,
Figure 112012003951656-pat00033
; 그리고
Figure 112012003951656-pat00034
으로 정의되는 인코딩 방법.
In the context adaptive variable length code method of encoding:
Generating a parameter value codenum with reference to information on the number of non-zero coefficients Tc of the quantized transform coefficients and the number of coefficients T1s having a magnitude of 1;
Calculating a default value of a bit stream length of a codeword with reference to the parameter value (codenum);
Reading an offset value from a storage unit according to an address (Add) and an index (Idx) value generated by referring to the parameter value codenum;
Generating bit stream length information of a codeword according to the base and the offset; And
Generating a bit stream of a codeword using bit stream value information of a codeword and bit stream length information of the generated codeword,
The address (Add) and the index (Idx) with reference to the generated parameter (codenum) value,
Figure 112012003951656-pat00033
; And
Figure 112012003951656-pat00034
The encoding method defined by.
제 7 항에 있어서,
상기 변수들(sa, ad)은 상기 생성된 파라미터(codenum) 값을 참조하여,
Figure 112010016513416-pat00035
; 그리고
Figure 112010016513416-pat00036
으로 정의되는 인코딩 방법.
The method of claim 7, wherein
The variables (sa, ad) with reference to the generated parameter (codenum) value,
Figure 112010016513416-pat00035
; And
Figure 112010016513416-pat00036
The encoding method defined by.
컨텍스트 적응형 가변 길이 코드 방식의 인코딩 방법에 있어서:
양자화된 변환 계수의 0이 아닌 계수의 수(Tc)와 크기가 1인 계수의 수(T1s) 정보를 참조하여 파라미터 값(codenum)을 생성하는 단계;
상기 파라미터 값(codenum)을 참조하여, 코드워드의 비트 스트림 길이의 기본값을 계산하는 단계;
상기 파라미터 값(codenum)을 참조하여 생성되는 주소(Add) 및 인덱스(Idx) 값에 따라 저장부로부터 증가값(offset)을 독출하는 단계;
상기 기본값(base)과 상기 증가값(offset)에 따라 코드워드의 비트 스트림 길이 정보를 생성하는 단계; 그리고
코드워드의 비트 스트림 값 정보와 상기 생성된 코드워드의 비트 스트림 길이 정보를 이용하여 코드워드의 비트 스트림을 생성하는 단계를 포함하고,
상기 코드워드의 비트 스트림 길이 정보는 상기 기본값(base)과 상기 증가값(offset)을 더하여 생성되는 인코딩 방법.
In the context adaptive variable length code method of encoding:
Generating a parameter value codenum with reference to information on the number of non-zero coefficients Tc of the quantized transform coefficients and the number of coefficients T1s having a magnitude of 1;
Calculating a default value of a bit stream length of a codeword with reference to the parameter value (codenum);
Reading an offset value from a storage unit according to an address (Add) and an index (Idx) value generated by referring to the parameter value codenum;
Generating bit stream length information of a codeword according to the base and the offset; And
Generating a bit stream of a codeword using bit stream value information of a codeword and bit stream length information of the generated codeword,
The bit stream length information of the codeword is generated by adding the base and the offset.
양자화된 변환 계수로부터 파라미터를 생성하기 위한 코드넘 생성부;
상기 생성된 파라미터 값에 따라 기본값을 계산하기 위한 기본값 계산부;
가변 길이 코드워드의 비트 스트림 길이 정보 값과 상기 기본값의 차이값을 저장하기 위한 저장부;
상기 계산된 기본값과 상기 생성된 파라미터 값에 따라 독출되는 차이값을 더하여 상기 가변 길이 코드워드의 비트 스트림 길이 정보를 생성하는 합산부;
상기 가변 길이 코드워드의 비트 스트림 값 정보를 저장하기 위한 저장부; 그리고,
상기 생성된 가변 길이 코드워드의 비트 스트림 길이 정보와 상기 생성된 파라미터 값에 따라 독출되는 상기 가변 길이 코드워드의 비트 스트림 값 정보에 따라 코드워드의 비트 스트림을 생성하는 비트 스트림 생성부를 포함하고,
상기 증가값을 저장하기 위한 저장부와 상기 가변 길이 코드워드의 비트 스트림 값을 저장하기 위한 저장부는 분리되어 구성되는 인코딩 장치.
A codenum generator for generating a parameter from the quantized transform coefficients;
A default value calculator for calculating a default value according to the generated parameter value;
A storage unit for storing a bit stream length information value of a variable length codeword and a difference value of the default value;
An adder configured to generate bit stream length information of the variable length codeword by adding the calculated default value and a difference value read according to the generated parameter value;
A storage unit for storing bit stream value information of the variable length codeword; And,
And a bit stream generator for generating a bit stream of a codeword according to the bit stream length information of the generated variable length codeword and the bit stream value information of the variable length codeword read out according to the generated parameter value.
And a storage unit for storing the increment value and a storage unit for storing the bit stream value of the variable length codeword.
제 10 항에 있어서,
상기 차이값은 2비트로 구성되는 인코딩 장치.
11. The method of claim 10,
And the difference value comprises two bits.
제 10 항에 있어서,
상기 생성된 파라미터 값에 따라 상기 저장부를 액세스하기 위한 주소 및 인덱스를 생성하는 주소 및 인덱스 생성부를 더 포함하는 인코딩 장치.
11. The method of claim 10,
And an address and index generator for generating an address and an index for accessing the storage according to the generated parameter value.
삭제delete 삭제delete 삭제delete
KR1020100023174A 2010-03-16 2010-03-16 Encoder and encoding method in video coding standard KR101136858B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100023174A KR101136858B1 (en) 2010-03-16 2010-03-16 Encoder and encoding method in video coding standard

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100023174A KR101136858B1 (en) 2010-03-16 2010-03-16 Encoder and encoding method in video coding standard

Publications (2)

Publication Number Publication Date
KR20110104190A KR20110104190A (en) 2011-09-22
KR101136858B1 true KR101136858B1 (en) 2012-04-20

Family

ID=44955023

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100023174A KR101136858B1 (en) 2010-03-16 2010-03-16 Encoder and encoding method in video coding standard

Country Status (1)

Country Link
KR (1) KR101136858B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050061777A (en) * 2003-12-18 2005-06-23 엘지전자 주식회사 Decoding method of cavlc
KR20070018292A (en) * 2005-08-09 2007-02-14 (주)씨앤에스 테크놀로지 The H.264 decoding method for fast cavlc
KR20090054202A (en) * 2007-11-26 2009-05-29 한국전자통신연구원 H.264 cavlc decoding method based on application-specific instruction-set processor
KR20090055701A (en) * 2007-11-29 2009-06-03 한국전자통신연구원 Cavlc table search method for h.264 cavlc decoding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050061777A (en) * 2003-12-18 2005-06-23 엘지전자 주식회사 Decoding method of cavlc
KR20070018292A (en) * 2005-08-09 2007-02-14 (주)씨앤에스 테크놀로지 The H.264 decoding method for fast cavlc
KR20090054202A (en) * 2007-11-26 2009-05-29 한국전자통신연구원 H.264 cavlc decoding method based on application-specific instruction-set processor
KR20090055701A (en) * 2007-11-29 2009-06-03 한국전자통신연구원 Cavlc table search method for h.264 cavlc decoding

Also Published As

Publication number Publication date
KR20110104190A (en) 2011-09-22

Similar Documents

Publication Publication Date Title
CN108307196B (en) Video encoding method and video encoding apparatus
TWI622288B (en) Video decoding method
JP6199311B2 (en) Coding of coefficients in video coding
US7664176B2 (en) Method and system for entropy decoding for scalable video bit stream
JP5590133B2 (en) Moving picture coding apparatus, moving picture coding method, moving picture coding computer program, moving picture decoding apparatus, moving picture decoding method, and moving picture decoding computer program
JP2022520944A (en) Improved residual coding for conversion skip mode and block difference pulse code modulation
WO2012096095A1 (en) Image predict coding method, image predict coding device, image predict coding program, image predict decoding method, image predict decoding device, and image predict decoding program
JP2021520144A (en) Methods for decoding or encoding as well as equipment and computer programs
JP2015508617A5 (en)
KR20140017020A (en) Unified merge mode and adaptive motion vector prediction mode candidates selection
JP2014520454A (en) Boundary pixel padding for intra prediction in video coding
CN110419216B (en) Binary arithmetic decoding by parameterized probability estimation finite state machines
JP2021519050A (en) Methods, devices and computer programs for decoding video sequences
KR100736096B1 (en) Method and apparatus for encoding and decoding video signal by group
TW201347547A (en) Method and apparatus for parallel entropy encoding, method and apparatus for parallel entropy decoding, and non-transitory computer-readable recording medium
US20230239464A1 (en) Video processing method with partial picture replacement
KR20090119434A (en) Method and apparatus for video encoding and decoding
CN112806010A (en) Method and apparatus for video encoding and decoding using predictor candidate list
KR101136858B1 (en) Encoder and encoding method in video coding standard
JP5698644B2 (en) Video predictive encoding method, video predictive encoding device, video predictive encoding program, video predictive decoding method, video predictive decoding device, and video predictive decode program
JP2014131289A (en) Moving image decoder and method
CN112399180A (en) Video decoding method, device and storage medium
JP5775959B2 (en) Image prediction coding method, image prediction coding device, image prediction coding program, image prediction decoding method, image prediction decoding device, and image prediction decoding program
KR20120095814A (en) Methods of encoding/decoding using multiple reference pictures and apparatuses for using the same
RU2409857C2 (en) System and method for scalable coding and decoding multimedia data using multiple layers

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150120

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160406

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee