KR20070042489A - Decoding device and method for analyzing syntax to decode bit-stream - Google Patents

Decoding device and method for analyzing syntax to decode bit-stream Download PDF

Info

Publication number
KR20070042489A
KR20070042489A KR1020060135309A KR20060135309A KR20070042489A KR 20070042489 A KR20070042489 A KR 20070042489A KR 1020060135309 A KR1020060135309 A KR 1020060135309A KR 20060135309 A KR20060135309 A KR 20060135309A KR 20070042489 A KR20070042489 A KR 20070042489A
Authority
KR
South Korea
Prior art keywords
syntax
information
bitstream
decoding
unit
Prior art date
Application number
KR1020060135309A
Other languages
Korean (ko)
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 KR1020060135309A priority Critical patent/KR20070042489A/en
Publication of KR20070042489A publication Critical patent/KR20070042489A/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • 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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Abstract

복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법이 개시된다. 본 발명의 일 실시예에 따른 복호화기는 비트스트림 신택스 엘리먼트의 정보를 저장하는 엘리먼트 정보 저장부; 입력된 비트스트림의 헤더 영역에 포함된 구문 엘리먼트들의 해석 순서를 구문 규칙 테이블을 이용하여 특정하고, 특정된 구문 엘리먼트들의 순서에 따라 구문 엘리먼트 테이블을 이용하여 제어 신호 및 문맥 정보를 생성하여 상기 엘리먼트 정보 저장부에 저장하고 저장된 상기 제어 신호 및 문맥정보를 이용하여 후속하는 비트스트림 신택스를 해석 하는 구문 해석부; 및 상기 제어 신호 및 문맥 정보를 이용하여 상기 비트스트림에 포함된 데이터를 동영상 데이터로 디코딩하는 디코딩 처리부를 포함한다. 따라서, 본 발명에 의해, 각 표준에 따른 다양한 형식으로 부호화된 비트스트림을 동일한 정보 인식 방식으로 복호화할 수 있다.Disclosed are a decoding apparatus and a syntax analysis method for bitstream decoding. A decoder according to an embodiment of the present invention includes an element information storage unit for storing information of a bitstream syntax element; The order of interpretation of the syntax elements included in the header region of the input bitstream is specified using a syntax rule table, and the control information and context information are generated using the syntax element table according to the order of the specified syntax elements. A syntax parser configured to interpret a subsequent bitstream syntax using the control signal and the context information stored in the storage; And a decoding processor to decode data included in the bitstream into moving image data using the control signal and the context information. Therefore, according to the present invention, it is possible to decode bitstreams encoded in various formats according to each standard by the same information recognition scheme.

MPEG, 비디오, 비트스트림, 복호화, syntax, semantic MPEG, video, bitstream, decoding, syntax, semantic

Description

복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법{Decoding device and method for analyzing syntax to decode bit-stream}Decoding device and method for analyzing syntax to decode bit-stream}

도 1은 일반적인 복호화기의 구성을 개략적으로 나타낸 도면.1 is a diagram schematically showing a configuration of a general decoder.

도 2는 일반적인 부호화기의 구성을 개략적으로 나타낸 도면.2 is a diagram schematically illustrating a configuration of a general encoder.

도 3은 본 발명의 바람직한 일 실시예에 따른 복호화기의 구성을 개략적으로 나타낸 도면.3 is a diagram schematically showing a configuration of a decoder according to an embodiment of the present invention.

도 4는 본 발명의 바람직한 일 실시예에 따른 syntax 해석부의 구성을 개략적으로 나타낸 도면.4 is a view schematically showing the configuration of a syntax analysis unit according to an embodiment of the present invention.

도 5는 본 발명의 바람직한 일 실시예에 따른 syntax 해석 과정을 예시한 도면.5 is a diagram illustrating a syntax interpretation process according to an embodiment of the present invention.

도 6은 본 발명의 바람직한 일 실시예에 따른 부호화기의 구성을 개략적으로 나타낸 도면.6 is a diagram schematically showing a configuration of an encoder according to an embodiment of the present invention.

본 발명은 비트스트림 복호화에 관한 것으로, 보다 상세하게는 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법에 관한 것이다.The present invention relates to bitstream decoding, and more particularly, to a decoding apparatus and a syntax analysis method for bitstream decoding.

일반적으로 동영상은 부호화기에 의해 비트스트림(Bit-stream) 형태로 변환된다. 이때, 비트스트림은 부호화기의 제약 조건을 만족하는 부호화 유형에 따라 저장된다. In general, a video is converted into a bitstream form by an encoder. In this case, the bitstream is stored according to an encoding type satisfying the constraint of the encoder.

MPEG은 비트스트림의 제약 조건으로서 구문(syntax, 이하 'syntax'라 칭함), 의미(semantics, 이하 'semantics'라 칭함) 및 syntax의 순서를 요구한다. MPEG requires the order of syntax (syntax, hereinafter referred to as 'syntax'), semantics (hereinafter, referred to as 'semantics') and syntax as constraints of the bitstream.

syntax는 데이터의 구조나 형식 및 길이를 나타내며, 데이터가 어떤 순서로 표현되는지를 나타낸다. 즉, syntax는 부호화(encoding)/복호화(decoding) 작업을 위한 문법을 맞추기 위한 것으로, 비트스트림에 포함된 각 요소들(elements)의 순서와 각 요소의 길이, 데이터 형식 등을 정의한다. syntax indicates the structure, format, and length of the data, and in what order the data is represented. That is, syntax is to fit a grammar for encoding / decoding, and defines the order of each element included in the bitstream, the length of each element, and the data format.

Semantics는 데이터를 구성하는 각 비트가 의미하는 뜻을 나타낸다. 즉, semantics는 비트스트림 내의 각 요소들의 의미가 무엇인지를 나타낸다.Semantics means what each bit of data means. That is, semantics indicates what the meaning of each element in the bitstream is.

따라서, 부호화기의 부호화 조건 또는 적용된 표준(또는 코덱)에 따라 다양한 형태의 비트스트림이 생성될 수 있다. 일반적으로 각 표준(예를 들어 MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC 등)은 각각 상이한 비트스트림 syntax를 가진다. Therefore, various types of bitstreams may be generated according to encoding conditions of an encoder or an applied standard (or codec). In general, each standard (eg MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC, etc.) has a different bitstream syntax.

따라서, 각 표준이나 부호화 조건에 따라 부호화된 비트스트림은 각각 다른 형식(즉, syntax 및 semantics)을 가진다고 할 수 있으며, 해당 비트스트림의 복호화를 위해서는 부호화기에 대응되는 복호화기가 사용되어야 한다. Accordingly, bitstreams encoded according to each standard or encoding condition may have different formats (ie, syntax and semantics), and a decoder corresponding to an encoder should be used to decode the bitstream.

상술한 바와 같이, 종래의 비트스트림 복호화기는 부호화기의 제약 조건을 만족하여야 하는 제한이 있었으며, 이러한 제한은 복수의 표준에 대응되는 통합 복 호화기를 구현하기 어려운 원인이 된다.As described above, the conventional bitstream decoder has a limitation of satisfying the constraints of the encoder, and this limitation causes a difficulty in implementing an integrated decoder corresponding to a plurality of standards.

따라서 본 발명은 상술한 문제점을 해결하기 위한 것으로, 각 표준(예를 들어, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC 등)에 따른 다양한 형식(syntax, semantics)으로 부호화된 비트스트림을 동일한 정보 인식 방식으로 복호화할 수 있는 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법을 제공하는 것이다.Accordingly, the present invention is to solve the above-described problem, and is encoded in various formats (syntax, semantics) according to each standard (for example, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC, etc.) The present invention provides a decoding apparatus capable of decoding a bitstream using the same information recognition scheme and a syntax analysis method for decoding a bitstream.

본 발명의 다른 목적은 다양한 형태의 비트스트림을 통합 코덱 및/또는 일반 코덱 내에서 복호화할 수 있도록 비트스트림 syntax를 용이하게 해석할 수 있는 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법을 제공하는 것이다.Another object of the present invention is to provide a decoding apparatus capable of easily interpreting bitstream syntax so that various types of bitstreams can be decoded in an integrated codec and / or a general codec, and a syntax analysis method for decoding a bitstream. .

본 발명의 또 다른 목적은 다양한 형태의 비트스트림을 복호화하기 위한 syntax 해석 방법을 공통적으로 적용할 수 있는 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법을 제공하는 것이다.It is still another object of the present invention to provide a decoding apparatus capable of commonly applying a syntax analysis method for decoding various types of bitstreams and a syntax analysis method for bitstream decoding.

본 발명의 또 다른 목적은 해석된 syntax의 엘리먼트 정보(element information, 즉 syntax element 해석에 의해 생성된 정보)를 비트스트림 복호화를 위해 이용되는 구성 요소들이 공유할 수 있도록 하는 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법을 제공하는 것이다.It is still another object of the present invention to provide a decoding apparatus and bitstream decoding that allow components used for bitstream decoding to share element information (ie, information generated by syntax element interpretation) of parsed syntax. Is to provide a syntax interpretation method.

본 발명의 또 다른 목적은 해석된 syntax의 엘리먼트 정보(element information, 즉 syntax element 해석에 의해 생성된 정보)를 후속하는 비트스트림 syntax 엘리먼트의 해석을 위해 이용할 수 있는 복호화 장치 및 비트스트림 복호화 를 위한 구문 해석 방법을 제공하는 것이다.Still another object of the present invention is a decoding apparatus and syntax for bitstream decoding that can use element information (element information, that is, information generated by syntax element interpretation) of parsed syntax for subsequent bitstream syntax element interpretation. To provide an interpretation method.

또한, 본 발명의 또 다른 목적은 비트스트림 복호화의 통합에 관한 개념 및 구조에 대한 국제 표준화에 있으며, 그 외의 다른 본 발명의 목적들은 이하에 서술되는 바람직한 실시예를 통하여 보다 명확해질 것이다.Further, another object of the present invention is to internationally standardize the concept and structure of the integration of bitstream decoding, and other objects of the present invention will become clearer through the preferred embodiment described below.

상술한 목적을 달성하기 위하여 본 발명의 일 측면에 따르면, 복호화기가 제공된다.According to an aspect of the present invention, a decoder is provided to achieve the above object.

본 발명의 바람직한 일 실시예에 따른 복호화기는, 비트스트림 구문(syntax) 엘리먼트(element)에 상응하는 정보를 저장하는 엘리먼트 정보 저장부; 입력된 비트스트림의 헤더 영역에 포함된 비트스트림 구문 엘리먼트들의 해석 순서를 구문 규칙 정보를 이용하여 특정하고, 특정된 구문 엘리먼트들의 순서에 따라 구문 엘리먼트 정보를 이용하여 제어 신호 및 문맥 정보를 생성하여 상기 엘리먼트 정보 저장부에 저장하는 구문 해석부; 및 상기 제어 신호 및 문맥 정보를 이용하여 상기 비트스트림에 포함된 데이터를 동영상 데이터로 디코딩하는 디코딩 처리부를 포함할 수 있다.A decoder according to an embodiment of the present invention includes an element information storage unit for storing information corresponding to a bitstream syntax element; The order of interpretation of the bitstream syntax elements included in the header region of the input bitstream is specified using syntax rule information, and the control signal and context information are generated using syntax element information according to the order of the specified syntax elements. A syntax analyzer for storing the element information storage unit; And a decoding processing unit which decodes data included in the bitstream into moving image data using the control signal and the context information.

상기 구문 해석부는 CSCI(Control Signal and Context Information) 정보를 이용하여 상기 제어 신호 및 문맥 정보의 의미 및 상응하는 값을 생성하여 상기 엘리먼트 정보 저장부에 더 저장할 수 있다.The syntax interpreter may generate the meaning and the corresponding value of the control signal and the context information by using control signal and context information (CSCI) information and may further store the element information storage.

상기 구문 규칙 정보, 상기 구문 엘리먼트 정보 및 상기 CSCI 정보는 바이너 리 코드로 구현될 수 있다.The syntax rule information, the syntax element information, and the CSCI information may be implemented as a binary code.

상기 구문 해석부는 상기 엘리먼트 정보 저장부에 저장된 상기 제어 신호 및 문맥 정보 중 적절한 제어 신호 및 문맥 정보를 독출하여 현재의 구문 엘리먼트의 해석을 수행하는 것을 특징으로 한다.The syntax analyzing unit reads an appropriate control signal and context information among the control signal and context information stored in the element information storage unit, and analyzes a current syntax element.

이하, 첨부한 도면들을 참조하여 본 발명에 따른 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법의 바람직한 실시예를 상세히 설명하기로 한다. 첨부 도면을 참조하여 본 발명을 설명함에 있어 도면 부호에 상관없이 동일하거나 대응하는 구성 요소는 동일한 참조번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, exemplary embodiments of a decoding apparatus and a syntax analysis method for bitstream decoding according to the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention with reference to the accompanying drawings, the same or corresponding components will be given the same reference numerals and redundant description thereof will be omitted.

일반적인 복호화기 및 부호화기Common decoders and encoders

도 1은 일반적인 복호화기의 구성을 개략적으로 나타낸 도면이고, 도 2는 일반적인 부호화기의 구성을 개략적으로 나타낸 도면이다.FIG. 1 is a diagram schematically showing a configuration of a general decoder, and FIG. 2 is a diagram schematically showing a configuration of a general encoder.

도 1에 도시된 바와 같이, 일반적으로 MPEG-4 복호화기(100)는 가변장 디코딩부(Variable Length Decoding, 110), 역 스캔부(Inverse Scan, 115), 역 DC/AC 예측부(Inverse DC/AC Prediction, 120), 역 양자화부(Inverse Quantization, 125), 역 DCT부(Inverse Discrete Cosine Transform, 역 이산 여현부, 130), 동영상 복원부(VOP Reconstruction, 135)를 포함한다. 복호화기(100)의 구성은 적용되 는 표준에 따라 상이할 수 있음은 자명하며, 또한 일부 구성요소는 타 구성요소로 대체될 수도 있다.As shown in FIG. 1, the MPEG-4 decoder 100 generally includes a variable length decoding unit 110, an inverse scan unit 115, and an inverse DC / AC prediction unit. / AC Prediction (120), Inverse Quantization (125), Inverse Discrete Cosine Transform (Inverse Discrete Cosine, 130), and Video Restoration (VOP Reconstruction, 135). It is apparent that the configuration of the decoder 100 may be different according to the applied standard, and some components may be replaced with other components.

전달된 비트스트림이 syntax 파싱(parsing)하여 헤더를 제외한 영상 데이터가 추출되면, 가변장 디코딩부(110)는 허프만 테이블을 이용하여 양자화된 DCT 계수를 만들고, 역 스캔부(115)는 역 스캔을 수행하여 동영상과 동일한 순서의 데이터를 생성한다. 즉, 역 스캔부(115)는 인코딩시 여러 가지 방법으로 스캔된 순서의 역으로, 값을 출력한다. 인코딩 시 양자화를 수행 한 후 주파수 대역의 값의 분포에 따라서 스캔 방향이 정의될 수 있다. 일반적으로는 zig-zag 스캔 방법이 사용되나, 코덱별로 여러 종류의 스캔 방법이 있다. When the transmitted bitstream is parsed and parsed to extract image data except for a header, the variable length decoding unit 110 generates a quantized DCT coefficient using a Huffman table, and the inverse scan unit 115 performs an inverse scan. To generate data in the same order as the video. That is, the inverse scan unit 115 outputs a value in reverse of the order of scanning in various ways during encoding. After quantization is performed during encoding, a scan direction may be defined according to a distribution of values of frequency bands. Generally, zig-zag scan method is used, but there are several scan methods for each codec.

Syntax 파싱은 가변장 디코딩부(110)에서 통합적으로 수행되거나, 가변장 디코딩부(110)에 선행하여 비트스트림을 처리하는 임의의 구성 요소에서 수행될 수 있다. 이 경우, Syntax 파싱은 부호화기와 복호화기간에 적용되는 표준이 동일하므로 해당 표준에 상응하도록 미리 지정된 기준에 의해서만 처리된다.Syntax parsing may be performed integrally in the variable length decoding unit 110 or may be performed in any component that processes the bitstream prior to the variable length decoding unit 110. In this case, since syntax parsing is the same as that of the standard applied to the encoder and the decoding period, the syntax parsing is performed only by a predetermined standard corresponding to the standard.

역 DC/AC 예측부(120)는 주파수 대역에서 DCT 계수의 크기를 이용하여 예측을 위한 참조 블록의 방향성을 결정한다. The inverse DC / AC predictor 120 determines the direction of the reference block for prediction by using the magnitude of the DCT coefficient in the frequency band.

역 양자화부(125)는 역 스캔된 데이터를 역 양자화한다. 즉, 인코딩시 지정된 양자화값(QP : Quantization Parameter)을 이용하여 DC와 AC 계수를 환원한다. The inverse quantizer 125 inverse quantizes the inversely scanned data. In other words, the DC and AC coefficients are reduced by using a quantization parameter (QP) specified during encoding.

역 DCT부(130)는 역 이산 여현 변환을 수행하여 실제 동영상 픽셀 값을 구하여 VOP(Video Object Plane)를 생성한다. 동영상 복원부(135)는 역 DCT부에 의해 생성된 VOP를 이용하여 동영상 신호를 복원하여 출력한다. The inverse DCT unit 130 performs inverse discrete cosine transform to obtain a real video pixel value to generate a VOP (Video Object Plane). The video restoring unit 135 restores and outputs a video signal by using the VOP generated by the inverse DCT unit.

도 2에 도시된 바와 같이, 일반적으로 MPEG-4 부호화기(200)는 DCT부(210), 양자화부(215), DC/AC 예측부(220), 스캔부(230), 가변장 인코딩부(235)를 포함한다. As shown in FIG. 2, the MPEG-4 encoder 200 generally includes a DCT unit 210, a quantizer 215, a DC / AC predictor 220, a scan unit 230, and a variable length encoder ( 235).

부호화기(200)에 포함된 각 구성요소는 각각 대응되도록 복호화기(100)에 포함된 구성 요소의 역 기능을 수행하며, 이는 당업자에게 자명하다. 간단히 설명하면, 부호화기(200)는 동영상 신호(즉, 디지털 영상 픽셀 값)를 이산 여현 변환(Discrete Cosine Transform), 양자화(Quantization) 등을 통해 주파수 값으로 변환하여 부호화를 수행한 후 이를 정보의 빈도 수에 따라 비트 길이를 차별화하는 가변장 인코딩을 수행하여 압축된 비트스트림 상태로 출력한다. Each component included in the encoder 200 performs the inverse function of the components included in the decoder 100 to correspond to each other, which is obvious to those skilled in the art. In brief, the encoder 200 converts a video signal (ie, a digital image pixel value) into a frequency value through discrete cosine transform, quantization, and the like, and encodes the frequency value, and then, the frequency of information. Variable length encoding is performed to differentiate the bit length according to the number, and the bit length is output in the compressed bitstream state.

본 발명에 따른 복호화기 및 syntax 해석 방법Decoder and syntax interpretation method according to the present invention

도 3은 본 발명의 바람직한 일 실시예에 따른 복호화기의 구성을 개략적으로 나타낸 도면이고, 도 4는 본 발명의 바람직한 일 실시예에 따른 syntax 해석부의 구성을 개략적으로 나타낸 도면이며, 도 5는 본 발명의 바람직한 일 실시예에 따른 syntax 해석 과정을 예시한 도면이다. 3 is a diagram schematically showing the configuration of a decoder according to an embodiment of the present invention, FIG. 4 is a diagram schematically showing the structure of a syntax analysis unit according to an embodiment of the present invention, and FIG. A diagram illustrating a syntax interpretation process according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 본 발명에 따른 복호화기(300)는 종래의 복호화기(100 - 이하, '디코딩 처리부'라 칭함)에 비해 Syntax 해석부(310)를 더 포함한다. 도시된 복호화기(300)의 구성은 단지 예시로서 제시한 것에 불과하고, 그 구성은 입력된 비트스트림을 동영상으로 복원하기 위한 구성이면 충분하며, 적용되는 표준 등에 따라 상이하게 구성될 수 있다. 종래의 디코딩 처리부(100)도 Syntax 파싱을 위한 구성 요소를 더 포함할 수 있으나, 양자간의 Syntax 처리 과정에는 많은 차이점이 존재하며, 이는 이하의 설명을 통해 쉽게 이해될 것이다. As shown in FIG. 3, the decoder 300 according to the present invention further includes a Syntax analyzer 310 compared to a conventional decoder (hereinafter, referred to as a 'decoding processor'). The configuration of the decoder 300 shown is merely an example, and the configuration is sufficient to reconstruct the input bitstream into a video, and may be configured differently according to the applied standard. The conventional decoding processor 100 may further include components for syntax parsing, but there are many differences in the syntax processing between the two, which will be easily understood through the following description.

Syntax 해석부(310)는 도 3에 도시된 바와 같이 가변장 디코딩부(110)에 선행하도록 구비될 수 있다. 이는 가변장 디코딩부(110)가 비트스트림의 헤더 영역에 포함된 정보로서 특정 길이 영역의 데이터를 읽어 허프만 (Huffman) 디코딩을 수행하여 Semantic 데이터를 생성할 때, Syntax 해석부(310)에 의해 해석/생성된 엘리먼트 정보(element information)를 이용할 수 있기 때문이다. Syntax analysis unit 310 may be provided to precede the variable length decoding unit 110 as shown in FIG. This is interpreted by the Syntax analysis unit 310 when the variable length decoding unit 110 generates the semantic data by reading the data of the specific length region as the information included in the header region of the bitstream and performing Huffman decoding. This is because / generated element information is available.

물론, Syntax 해석부(310)가 가변장 디코딩부(110)에 삽입되거나, 가변장 디코딩부(110)와 병렬로 결합될 수도 있음은 자명하다. 다만, 가변장 디코딩부(110)와 병렬로 결합된 Syntax 해석부(310)가 엘리먼트 정보를 해석/생성하여 엘리먼트 정보 저장부(320)에 저장하기 위해서는 가변장 디코딩부(110)가 입력받은 비트스트림(또는 헤더 영역의 정보들)을 Syntax 해석부(310)로 제공하여야 할 것이다. Of course, the syntax analyzer 310 may be inserted into the variable length decoding unit 110 or may be combined with the variable length decoding unit 110 in parallel. However, in order for the syntax analysis unit 310 coupled in parallel with the variable length decoding unit 110 to interpret / generate element information and store the element information in the element information storage unit 320, the bit received by the variable length decoding unit 110 is stored. The stream (or header area information) should be provided to the syntax analyzer 310.

Syntax 해석부(310)는 예를 들어, FSM(Finite State Machine)으로 구현될 수 있다. The syntax analyzer 310 may be implemented by, for example, a finite state machine (FSM).

Syntax 해석부(310)는 확장 비트스트림(Universal Bit-stream)으로부터 추출된 Syntax 규칙(Rule) 정보, 및 미리 저장된 Syntax 엘리먼트 테이블, 제어 신호/문맥 정보(Control signal/context information) 테이블을 이용하여 각 Syntax 엘리먼트에 상응하는 엘리먼트 정보(예를 들어, syntax 엘리먼트들의 순서(order), syntax 엘리먼트들의 길이(length), Syntax 엘리먼트들의 데이터 형식(syntax type), 각 syntax 엘리먼트들의 상호관계, 각 Syntax 엘리먼트들을 이용하는 타 구성 요소들의 범위 등)를 순차적으로 해석하여 엘리먼트 정보 저장부(320)에 저장한다. 즉, 엘리먼트 정보에는 이하에서 설명될 SET 출력값, CSCIT 출력값 등이 포함된다고 할 수 있다.The syntax analyzer 310 may use the Syntax rule information extracted from the Universal Bit-stream, the prestored Syntax element table, and the Control signal / context information table. Element information corresponding to the syntax element (e.g., order of syntax elements, length of syntax elements, data type of syntax elements, syntax of each syntax element, use of each syntax element) Ranges of other components, etc.) are sequentially interpreted and stored in the element information storage 320. That is, the element information may include a SET output value, a CSCIT output value, and the like, which will be described below.

가변장 디코딩부(110)는 semantics 데이터를 생성하기 위해 엘리먼트 정보 저장부(320)에 저장된 엘리먼트 정보를 이용할 수 있다.The variable length decoding unit 110 may use element information stored in the element information storage unit 320 to generate semantics data.

또 다른 방법으로서, Syntax 해석부(310)는 해석한 엘리먼트 정보를 가변장 디코딩부(110)로 전송하고, 필요한 경우 해당 엘리먼트 정보를 엔트로피 디코딩하여 엘리먼트 정보 저장부(320)에 저장할 수도 있다. As another method, the syntax analyzing unit 310 may transmit the analyzed element information to the variable length decoding unit 110, and if necessary, entropy decode the corresponding element information and store it in the element information storage unit 320.

이와 같이, 엘리먼트 정보 저장부(320)에 엘리먼트 정보를 저장하는 주체는 Syntax 해석부(310) 또는 가변장 디코딩부(110)일 수 있으며, 이는 설계 또는 구현상의 편의에 의해 지정될 수 있다. 물론, 엘리먼트 정보 저장 주체가 Syntax 해석부(310) 및 가변장 디코딩부(110)일 수 있으며, 각각이 저장하는 엘리먼트 정보의 유형을 달리 지정할 수도 있음은 당연하다. 이는 이하에서 동일하다.As such, the entity that stores the element information in the element information storage unit 320 may be a syntax analyzer 310 or a variable length decoding unit 110, which may be designated by design or implementation convenience. Of course, the element information storage subject may be the syntax analyzer 310 and the variable length decoding unit 110, and it is natural that the type of the element information stored in each may be different. This is the same below.

본 명세서에서의 확장 비트스트림(Universal Bit-stream)은 종래의 부호화기(200)에 의해 생성되는 일반적인 비트스트림 외에 임의의 영역에 Syntax 규칙 테이블을 더 포함한 비트스트림을 의미한다. Syntax 규칙 정보는 종래의 비트스트림의 임의의 영역에 삽입되거나 부가되어 확장 비트스트림을 구성한다. 보다 바람직하게는 규칙 정보는 종래의 비트스트림의 헤더 정보 전단에 구비됨이 바람직할 것이다.The universal bitstream in the present specification refers to a bitstream further including a syntax rule table in an arbitrary region in addition to the general bitstream generated by the conventional encoder 200. Syntax rule information is inserted or added to any area of the conventional bitstream to form an extended bitstream. More preferably, the rule information may be provided before the header information of the conventional bitstream.

확장 비트스트림은 Syntax 규칙 테이블 외에 Syntax 엘리먼트 테이블, 제어 신호/문맥 정보(Control signal/context information) 테이블 중 적어도 어느 하나를 더 포함할 수도 있음은 자명하다. 다만, 확장 비트스트림 내에 Syntax 엘리먼트 테이블, 제어 신호/문맥 정보(Control signal/context information) 테이블 중 적어도 어느 하나가 포함되지 아니한 경우, 이들은 복호화기(300) 또는 Syntax 해석부(310)가 미리 구비하고 있어야 할 것이다.It is apparent that the extended bitstream may further include at least one of a Syntax element table and a Control signal / context information table in addition to the Syntax rule table. However, when at least one of the syntax element table and the control signal / context information table is not included in the extended bitstream, they are provided in advance by the decoder 300 or the syntax analyzer 310. Should be.

또한, Syntax 규칙 테이블, Syntax 엘리먼트 테이블, 제어 신호/문맥 정보(Control signal/context information) 테이블은 편의상 테이블 형태로 도시하고 설명하나, 실제적으로는 각 정보들이 순차적으로 나열되어 표시될 수도 있음은 자명하다.In addition, the Syntax rule table, Syntax element table, Control signal / context information (Control signal / context information) table is shown and described in the form of a table for convenience, but it is obvious that each information may be listed and displayed sequentially. .

예를 들어, Syntax 규칙 테이블, Syntax 엘리먼트 테이블, 제어 신호/문맥 정보(Control signal/context information) 테이블은 바이너리 코드 형태로 표시 및/또는 기술된 임의의 정보일 수 있다. 따라서, 해당 정보들의 표현이 간략해질 수 있고, Syntax 엘리먼트 테이블의 처리 내용(Process - 표 2 참조)의 표현이 간단해질 뿐 아니라 구현 및 컴파일이 간단해질 수 있다. 또한 하나의 Syntax 파싱 함수로 다양한 표준의 비트스트림 Syntax 파싱이 가능한 특징이 있다.For example, the Syntax rule table, Syntax element table, Control signal / context information table may be any information displayed and / or described in binary code form. Therefore, the representation of the corresponding information can be simplified, the representation of the processing contents (Process-see Table 2) of the Syntax element table can be simplified, and the implementation and compilation can be simplified. In addition, a single syntax parsing function enables the parsing of various standard bitstream syntaxes.

본 발명에 따른 복호화기(300)는 부호화기로부터 확장 비트스트림을 수신하여, 확장 비트스트림 내에 포함된 동영상 데이터를 복호화할 수도 있으나, 부호화기로부터 비트스트림만을 수신할 수도 있다. 이 경우, 복호화기(300)는 별도의 데이터 또는 전자파일의 형태로 부호화기로부터 Syntax 규칙 정보(및 Syntax 엘리먼 트 테이블, 제어 신호/문맥 정보(Control signal/context information) 테이블 중 적어도 어느 하나를 더 포함)를 수신하여야 할 것이다. The decoder 300 according to the present invention may receive the extension bitstream from the encoder and decode the video data included in the extension bitstream, but may receive only the bitstream from the encoder. In this case, the decoder 300 further adds at least one of Syntax rule information (and Syntax element table and Control signal / context information table) from the encoder in the form of separate data or electronic file. Will be received).

다만, 본 명세서에서는 본 발명에 따른 부호화기(1000)가 Syntax 규칙 정보와 비트스트림을 이용하여 하나의 확장 비트스트림을 생성하고, 복호화기(300)는 확장 비트스트림에 포함된 규칙 정보를 이용하여 비트스트림에 포함된 압축 데이터를 디코딩하는 경우를 중심으로 설명한다.However, in the present specification, the encoder 1000 according to the present invention generates one extension bitstream by using the syntax rule information and the bitstream, and the decoder 300 uses the bit information by using the rule information included in the extension bitstream. The following description mainly focuses on decoding the compressed data included in the stream.

Syntax 해석부(310)가 도 3과 같이 가변장 디코딩부(110)의 전단에 구비된 경우, 가변장 디코딩부(110)는 입력된 비트스트림을 엘리먼트 정보 저장부(320)에 저장된 엘리먼트 정보를 이용하여 Semantics 데이터를 생성할 수 있다. 가변장 디코딩부(110)가 Syntax 해석부(310)로부터 수신한 엘리먼트 정보를 필요한 경우 엔트로피 디코딩하여 엘리먼트 정보 저장부(320)에 저장할 수도 있음은 앞서 설명한 바와 같다.When the syntax analysis unit 310 is provided at the front of the variable length decoding unit 110 as shown in FIG. 3, the variable length decoding unit 110 uses the input bitstream to store element information stored in the element information storage unit 320. Semantics data can be generated. As described above, the variable length decoding unit 110 may entropy decode and store the element information received from the syntax analyzer 310 in the element information storage unit 320 when necessary.

도 4에는 Syntax 해석부(310)의 구성이 개략적으로 예시되어 있다. 4 schematically illustrates a configuration of the syntax analyzer 310.

도 4에 도시된 바와 같이, Syntax 해석부(310)는 해석 수행부(410)를 포함하며, 해석 수행부(410)는 Syntax 엘리먼트 테이블(420), CS(제어 정보)CI(문맥 정보) 테이블(430), Syntax 규칙 테이블(440)을 이용하여 비트스트림의 헤더 영역에 포함된 Syntax 엘리먼트들을 해석하고 엘리먼트 정보를 추출 또는 생성하여 엘리먼트 정보 저장부(320)에 저장한다. 상술한 바와 같이, 해석 수행부(410)는 추출 또는 생성한 엘리먼트 정보(예를 들어, 해석된 값)를 가변장 디코딩부(110)로 전송하고, 가변장 디코딩부(110)는 수신한 엘리먼트 정보를 semantic 데이터로 변환하여 엘리먼트 정보 저장부(320)에 저장할 수도 있음은 자명하다. As shown in FIG. 4, the syntax analysis unit 310 includes an analysis execution unit 410, and the analysis execution unit 410 includes a syntax element table 420 and a CS (control information) CI (context information) table. In operation 430, the syntax elements included in the header region of the bitstream are analyzed using the syntax rule table 440, and element information is extracted or generated and stored in the element information storage 320. As described above, the analysis performing unit 410 transmits the extracted or generated element information (for example, an interpreted value) to the variable length decoding unit 110, and the variable length decoding unit 110 receives the received element. Obviously, the information may be converted into semantic data and stored in the element information storage 320.

Syntax 엘리먼트 테이블(420), CS(제어 정보)CI(문맥 정보) 테이블(430)은 Syntax 해석부(310) 내에 구비될 수 있다. 예를 들어, Syntax 해석부(310)가 프로그램 코드들의 조합으로 구현되는 경우, Syntax 엘리먼트 테이블(420) 및 CS(제어 정보)CI(문맥 정보) 테이블(430)에 상응하는 정보가 함께 포함되도록 구현될 수 있다.The syntax element table 420 and the CS (control information) CI (context information) table 430 may be provided in the syntax analysis unit 310. For example, when the syntax analysis unit 310 is implemented as a combination of program codes, the syntax corresponding to the syntax information table 420 and the CS (control information) CI (context information) table 430 are included. Can be.

또는, Syntax 엘리먼트 테이블(420), CS(제어 정보)CI(문맥 정보) 테이블(430)은 별도의 저장부에 저장된 상태에서 해석 수행부(410)에 의한 Syntax 해석 시 참조될 수도 있다.Alternatively, the syntax element table 420 and the CS (control information) CI (context information) table 430 may be referred to during the syntax analysis by the analysis execution unit 410 in a state of being stored in a separate storage unit.

마찬가지로, 확장 비트스트림에 포함되거나 별도의 데이터로 수신된 Syntax 규칙 테이블(440)은 Syntax 해석부(310)의 동작을 위해 Syntax 해석부(310) 내에 삽입되거나 별도의 저장부에 저장되어 참조될 수 있다.Similarly, the Syntax rule table 440 included in the extended bitstream or received as separate data may be inserted into the Syntax interpreter 310 or stored in a separate storage to be referred to for operation of the Syntax interpreter 310. have.

엘리먼트 정보 저장부(320)에 저장된 엘리먼트 정보들은 후속하는 비트스트림 신택스를 해석하는 경우 및/또는 비트스트림의 복호화를 위해 동작하는 각 구성요소들에 의해 참조될 수 있다. Element information stored in the element information storage unit 320 may be referred to by each component operating for interpreting a subsequent bitstream syntax and / or for decoding a bitstream.

엘리먼트 정보 저장부(320)에 저장되는 엘리먼트 정보에는 Syntax 엘리먼트 테이블(420), CSCI 테이블(430), Syntax 규칙 테이블(440)을 이용하여 해석된 엘리먼트의 이름과 실제 해당하는 값이 포함될 수 있다. Element information stored in the element information storage unit 320 may include an element name and an actual value of an element analyzed using the syntax table 420, the CSCI table 430, and the syntax table 440.

Syntax 엘리먼트 해석 시 Syntax 엘리먼트 테이블(420), CSCI 테이블(430), Syntax 규칙 테이블(440)에 의해 제공될 수 있는 엘리먼트 정보들에는 예를 들어, syntax 엘리먼트들의 순서(order), syntax 엘리먼트들의 길이(length), Syntax 엘리먼트들의 데이터 형식(syntax type), 각 syntax 엘리먼트들의 상호관계, 각 Syntax 엘리먼트들을 이용하는 타 구성 요소들의 범위 등이 있다. Element information that may be provided by the Syntax element table 420, the CSCI table 430, and the Syntax rule table 440 in the syntax element interpretation may include, for example, the order of syntax elements, the length of syntax elements ( length), the data type (syntax type) of the syntax elements, the interrelationship of each syntax element, and the range of other components that use each syntax element.

이하, 해석 수행부(410)에 의한 Syntax 해석 방법을 구체적으로 설명한다. 설명의 편의를 위해, Syntax 엘리먼트 테이블(420)은 'SET'라 칭하고, CS(제어 정보)CI(문맥 정보) 테이블(430)은 'CSCIT'라 칭하며, Syntax 규칙 테이블(440)은 'RT'라 칭하기로 한다.Hereinafter, the syntax analysis method by the analysis execution unit 410 will be described in detail. For convenience of description, the syntax element table 420 is referred to as 'SET', the CS (control information) CI (context information) table 430 is referred to as 'CSCIT', and the syntax rule table 440 is referred to as 'RT'. It will be called.

해석 수행부(410)는 수신된 확장 비트스트림으로부터 RT(440)를 추출하거나 별도의 데이터로 RT(440)를 수신한다.The analysis performer 410 extracts the RT 440 from the received extended bitstream or receives the RT 440 as separate data.

RT(440)는 아래 표 1과 같이 구성될 수 있다.The RT 440 may be configured as shown in Table 1 below.

표 1. RT의 구성Table 1. Configuration of RT

Index No.Index No. InputInput No. of branchesNo. of branches Branch 1Branch 1 Branch 2Branch 2 RERE -- R0R0 -- 1One TRUE → (S1, R1)TRUE → (S1, R1) R1R1 C1C1 22 C1== FALSE → (NULL, RE)C1 == FALSE → (NULL, RE) C1==TRUE → (S2, R2)C1 == TRUE → (S2, R2) R2R2 -- 1One TRUE → (S3, R3)TRUE → (S3, R3) R3R3 C1C1 22 C1== FALSE → (S5, R4)C1 == FALSE → (S5, R4) C1==TRUE → (S4, R5)C1 == TRUE → (S4, R5) R4R4 C1C1 22 C1== FALSE → (NULL, RE)C1 == FALSE → (NULL, RE) C1==TRUE → (S6, R6)C1 == TRUE → (S6, R6) R5R5 -- 1One TRUE → (S5, R4)TRUE → (S5, R4) R6R6 C4C4 22 C4== FALSE → (S9, R9)C4 == FALSE → (S9, R9) C4==TRUE → (S7, R7)C4 == TRUE → (S7, R7) R7R7 -- 1One TRUE → (S8, R8)TRUE → (S8, R8) R8R8 -- 1One TRUE → (S9, R9)TRUE → (S9, R9) R9R9 C1C1 22 C1== FALSE → (NULL, RE)C1 == FALSE → (NULL, RE) C1==TRUE → (S10, R10)C1 == TRUE → (S10, R10)

1) RE: syntax decoding error1) RE: syntax decoding error

해석 수행부(410)는 입력된 비트스트림의 Syntax 엘리먼트들간의 연결 정보를 RT를 이용하여 인식할 수 있다. The analysis performing unit 410 may recognize connection information between syntax elements of the input bitstream using RT.

표 1에 나타난 바와 같이, RT(440)는 각 Syntax 엘리먼트들간의 연결 관계를 구분하기 위한 '인덱스 번호(Index No.) 필드', 각 Syntax 엘리먼트들간의 연결 제어를 위한 입력값(즉, 엘리먼트 정보 저장부(320)에 이미 저장된 임의의 엘리먼트 정보(제어 신호 및 문맥 정보))인 '입력(input) 필드', 현재 Syntax 엘리먼트와 연결될 수 있는 엘리먼트들의 수를 나타내는 '분기 수(No. of branches) 필드', 각 분기 조건에 상응하는 분기 경로를 나타내는 '분기 경로(branch #) 필드'를 포함한다.As shown in Table 1, the RT 440 is an 'Index No. field' for identifying a connection relationship between each Syntax element, and an input value (ie, element information) for connection control between each Syntax element. 'Input field', which is any element information (control signal and contextual information) already stored in the storage 320, and a 'No. of branches' indicating the number of elements that can be connected to the current Syntax element. Field ', a' branch # field 'indicating a branch path corresponding to each branch condition.

'입력 필드'는 연결될 수 있는 Syntax 엘리먼트들이 복수인 경우에만 존재하며 이 값을 이용하여 분기 제어가 가능하다. 예를 들어, '인덱스 번호' R2는 분기가 없으므로 입력값이 없으나, '인덱스 번호' R3는 분기가 있으므로 입력값이 존재한다.The 'input field' exists only when there are multiple Syntax elements that can be connected, and branching can be controlled using this value. For example, 'index number' R2 has no branch because there is no branch, but 'index number' R3 has branch, so there is an input.

'분기 경로 필드'에는 해당 경로로 분기하기 위한 분기 조건(예를 들어, C4 == FALSE)이 있으며, 분기 조건이 없는 경우에는 '인덱스 번호' R5와 같이 항상 'TRUE'로서 인식된다. 분기 조건 이후에는 Syntax 엘리먼트 지정 정보(예를 들어, 'S9'와 같이 SET(420) 내의 인덱스 번호)와 RT(440) 상에서의 다음 번 연결 정보(예를 들어, 'R9'와 같이 RT(440) 내의 인덱스 번호)가 쌍(pair)으로 기재된다. In the 'branch path field', there is a branch condition (for example, C4 == FALSE) for branching to the corresponding path, and when there is no branch condition, it is always recognized as 'TRUE', such as 'index number' R5. After the branch condition, the syntax element designation information (for example, index number in SET 420, such as 'S9') and the next connection information on RT 440 (for example, RT (440), such as 'R9' Index numbers) are denoted as pairs.

이와 같이, 본 발명에 따른 복호화기(300)는 신규 표준의 발생, 기존 표준의 Syntax 구조 변경(예를 들어, 수정, 추가 또는 삭제)시에도 RT(440)에 해당 정보만 을 변경(예를 들어, 수정, 추가 또는 삭제)함으로써 입력된 비트스트림의 Syntax 엘리먼트의 해석이 이루어지도록 할 수 있는 장점이 있다. As described above, the decoder 300 according to the present invention changes only the corresponding information to the RT 440 even when a new standard is generated or a syntax structure of the existing standard is changed (for example, modified, added or deleted). For example, by modifying, adding or deleting, the interpretation of the syntax element of the input bitstream may be performed.

또한, 해석 수행부(410)는 SET(420)를 참조하여 Syntax 엘리먼트 지정 정보를 이용한 SET 출력값을 추출 또는 생성하여 엘리먼트 정보 저장부(320)에 저장한다. 상술한 바와 같이, 해석 수행부(410)는 추출 또는 생성한 엘리먼트 정보(예를 들어, 해석된 값)를 가변장 디코딩부(110)로 전송하고, 가변장 디코딩부(110)는 수신한 엘리먼트 정보를 semantic 데이터로 변환하여 엘리먼트 정보 저장부(320)에 저장할 수도 있음은 자명하다. SET 출력값은 제어 신호 및 문맥 정보(Control Signal and Context Information)일 수 있다.Also, the analysis performing unit 410 extracts or generates a SET output value using the syntax element designation information with reference to the SET 420 and stores it in the element information storage unit 320. As described above, the analysis performing unit 410 transmits the extracted or generated element information (for example, an interpreted value) to the variable length decoding unit 110, and the variable length decoding unit 110 receives the received element. Obviously, the information may be converted into semantic data and stored in the element information storage 320. The SET output value may be a control signal and context information.

SET(420)는 아래 표 2와 같이 구성될 수 있다.SET 420 may be configured as shown in Table 2 below.

표 2. SET의 구성Table 2. Configuration of SET

Index No.Index No. Name of Syntax ElementName of Syntax Element InputInput OutputOutput ProcessProcess S1S1 Vo_sequence_start_codeVo_sequence_start_code 32bit string32 bit string C1C1 Read ibs if ibs == 0x000001B1, C1 = TRUE else C1 = FALSERead ibs if ibs == 0x000001B1, C1 = TRUE else C1 = FALSE S2S2 Profile_level_indicationProfile_level_indication 8-bit integer8-bit integer C2C2 Read ibs C2 = ibsRead ibs C2 = ibs S3S3 User_data_start_codeUser_data_start_code 32-bit string32-bit string C1C1 Read ibs If ibs == 0x000001B2, C1 = TRUE Else C1 = FALSERead ibs If ibs == 0x000001B2, C1 = TRUE Else C1 = FALSE

S4S4 User_dataUser_data 8bit string8bit string C3C3 Char a1, a2; While(TRUE) { Read ibs; If (ibs == 0x00) { A1= ibs; Read ibs; if (ibs == 0x00) { A2=ibs; Read ibs; If(ibs==0x00 || ibs==0x01) { Unread ibs; Unread a2; Unread a1; Break; } Else { concatenate (C3,A1); concatenate (C3,A2); concatenate (C3,ibs); } } Else { concatenate (C3,A1); concatenate (C3,ibs); } } Else concatenate (C3,ibs); }Char a1, a2; While (TRUE) {Read ibs; If (ibs == 0x00) {A1 = ibs; Read ibs; if (ibs == 0x00) {A2 = ibs; Read ibs; If (ibs == 0x00 ibs == 0x01) {Unread ibs; Unread a2; Unread a1; Break; } Else {concatenate (C3, A1); concatenate (C3, A2); concatenate (C3, ibs); }} Else {concatenate (C3, A1); concatenate (C3, ibs); }} Else concatenate (C3, ibs); } S5S5 Vo_start_codeVo_start_code 32-bit string32-bit string C1C1 Read ibs If ibs == 0x000001B5, C1 = TRUE Else C1 = FALSERead ibs If ibs == 0x000001B5, C1 = TRUE Else C1 = FALSE S6S6 Is_VO_identifierIs_VO_identifier 1-bit flag1-bit flag C4C4 Read ibs C4 = ibsRead ibs C4 = ibs S7S7 VO_veridVO_verid 4-bit4-bit C5C5 Read ibs C5 = ibsRead ibs C5 = ibs S8S8 VO_priorityVO_priority 3-bit 3-bit C6C6 Read ibs C6 = ibsRead ibs C6 = ibs S9S9 VO_typeVO_type 4-bit4-bit C1C1 Read ibs If (ibs == '001' C1=TRUE Else C1=FALSERead ibs If (ibs == '001' C1 = TRUE Else C1 = FALSE S10S10 Video_signal_typeVideo_signal_type 1-bit1-bit C7C7 Read ibs C7 = ibsRead ibs C7 = ibs

1) ibs: input bit string1) ibs: input bit string

2) vbs: variable bit string2) vbs: variable bit string

3) In describing the process of SET, there may be repetitive operations (such as S6, S7, S8, S10)3) In describing the process of SET, there may be repetitive operations (such as S6, S7, S8, S10)

표 2에 나타난 바와 같이, SET(420)는 각 Syntax 엘리먼트에 대한 인덱스, 이름, 입력 데이터, 출력 데이터 및 처리 내용으로 구성된다. As shown in Table 2, SET 420 is composed of the index, name, input data, output data and processing contents for each Syntax element.

인덱스는 RT(440)에서 각 Syntax 엘리먼트 지정 정보로 이용되는 구분자이고, 입력 데이터는 비트스트림의 데이터로서 해당 데이터의 길이를 나타낸다. 출력 데이터는 제어 신호 및 문맥 정보(Control Signal and Context Information)로 기능하며, 각 Syntax 엘리먼트의 인덱스별로 지정된 처리 내용에 의해 생성 또는 추출된다. 참고적으로, 일반적인 경우 지정된 처리를 하기 위해서는 가변장 디코딩부(110)에 의해 semantic 데이터로 변환하여야 한다. 이는 해당 데이터가 가변장 테이블이 존재 하는 경우이다. 다만, 가변장 테이블이 필요 없는 경우에는 원래의 신택스 값 자체를 지정된 처리 절차에 의해 처리한다. 표 2에는 각 Syntax 엘리먼트에 상응하는 출력(CSCI) 데이터를 식별하기 위한 기호(예를 들어, C1)가 일부 중복되도록 표시되었으나, 이는 각 기호가 CSCIT(430)의 인덱스와 일치하도록 하기 위한 것일 뿐, 상응하는 CSCIT 출력값을 생성할 수 있기만 하면 전체 Syntax 엘리먼트들 각각에 상응하는 기호(예를 들어, C1)는 불일치하도록 지정할 수도 있음은 자명하다. The index is a delimiter used as the syntax element specification information in the RT 440, and the input data indicates the length of the corresponding data as data of the bitstream. The output data functions as control signals and context information, and is generated or extracted by processing contents designated by indexes of respective syntax elements. For reference, in the general case, the variable length decoding unit 110 needs to convert the semantic data into a designated process. This is the case when the variable data table exists. However, if a variable length table is not needed, the original syntax value itself is processed by a specified processing procedure. In Table 2, some symbols (e.g., C1) for identifying the output (CSCI) data corresponding to each Syntax element are shown to be partially redundant, but only to ensure that each symbol matches the index of the CSCIT 430. It is obvious that a symbol (e.g., C1) corresponding to each of the entire Syntax elements can be specified to be inconsistent, as long as it can generate the corresponding CSCIT output.

예를 들어, 인덱스 'S1'인 Syntax 엘리먼트의 이름은 'Vo_sequence_start_code'이고, 입력 데이터는 비트스트림 내의 32비트 문자열(string)으로서 임의의 처리 내용에 상응하는 SET 출력값이 생성 또는 추출된다.For example, the name of the Syntax element having index 'S1' is 'Vo_sequence_start_code', and the input data is a 32-bit string in the bitstream, and a SET output value corresponding to any processing content is generated or extracted.

해석 수행부(410)가 SET(420)를 이용하여 SET 출력값을 생성 또는 추출함에 있어 임의의 Syntax 엘리먼트(예를 들어, 인덱스 S2, S6, S7, S8. S10 등)에 대해서는 반복적인 동작을 수행할 수도 있다. When the analysis performing unit 410 generates or extracts the SET output value using the SET 420, an iterative operation is performed on any syntax element (for example, indexes S2, S6, S7, S8, S10, etc.). You may.

해석 수행부(410)가 SET(420)을 이용하여 생성 또는 추출하여 엘리먼트 정보 저장부(320)에 저장한 SET 출력값에 대한 상세 정보(즉, CSCIT 출력값)를 CSCIT(430)를 이용하여 생성하고, 생성된 CSCIT 출력값을 엘리먼트 정보 저장부(320)에 저장한다. 여기서, CSCIT의 출력 값은 상기 CSCI의 의미와 해당 실제 값을 포함할 수 있다.The CSCIT 430 generates detailed information (ie, CSCIT output value) of the SET output value generated or extracted by the analysis performing unit 410 using the SET 420 and stored in the element information storage unit 320. The generated CSCIT output value is stored in the element information storage unit 320. Here, the output value of the CSCIT may include the meaning of the CSCI and a corresponding actual value.

CSCIT(430)는 아래 표 3과 같이 구성될 수 있다.The CSCIT 430 may be configured as shown in Table 3 below.

표 3. CSCIT의 구성Table 3. Composition of CSCIT

Index No.Index No. Control signal/context informationControl signal / context information DescriptionDescription Global/localGlobal / local C1C1 DECODE_OKDECODE_OK Bool 1 bit flagBool 1 bit flag Syntax FUSyntax FU C2C2 PROFILE_LEVEL_INDICATIONPROFILE_LEVEL_INDICATION 8-bit integer8-bit integer AllAll C3C3 USER_DATAUSER_DATA 8-bit integer *8-bit integer * AllAll C4C4 IS_VO_IDENTIFIERIS_VO_IDENTIFIER 1-bit flag1-bit flag Syntax FUSyntax FU C5C5 VO_VER_IDVO_VER_ID 4-bit flag4-bit flag AllAll C6C6 VO_PRIORITYVO_PRIORITY 3-bit3-bit AllAll C7C7 VIDEO_SIGNAL_TYPEVIDEO_SIGNAL_TYPE 1-BIT1-BIT Syntax FUSyntax FU

1) *: sequence or array1) *: sequence or array

2) Global/local : if a CSCI is used only in Syntax parsing FU(Functional Unit), it is local.2) Global / local: if a CSCI is used only in Syntax parsing Functional Unit (FU), it is local.

표 3에 나타난 바와 같이, CSCIT(430)는 SET 출력값의 식별자(예를 들어, C1)로 구분되는 인덱스, SET 출력값의 이름, 해당 SET 출력값의 특성 및 해당 SET 출력값이 이용되는 범위(즉, 복호화를 위한 전체 과정 또는 전체 복호화 과정 중 일부 과정(예를 들어, Syntax 파싱 과정 등))를 나타낸다. As shown in Table 3, the CSCIT 430 includes an index identified by an identifier of a SET output value (for example, C1), a name of the SET output value, characteristics of the SET output value, and a range in which the SET output value is used (i.e., decryption). Some processes (for example, Syntax parsing process, etc.) of the entire process or the entire decryption process for.

이하, 도 5를 참조하여, Syntax 해석부(310)가 비트스트림의 헤더 영역의 Syntax 해석 과정을 간략히 설명한다. 도 5에서 공란으로 표시된 원 도형은 'Null'값(RT(440) 참조)을 의미한다.Hereinafter, referring to FIG. 5, the syntax analyzing unit 310 briefly describes a syntax analysis process of a header region of a bitstream. The circled figure indicated by a blank in FIG. 5 means a 'Null' value (see RT 440).

먼저, 비트스트림이 입력되면 Syntax 해석부(310)는 RT(440 - 표 1 참조)에 의해 인덱스 번호 'R0'부터 동작을 개시한다. First, when the bitstream is input, the syntax analyzing unit 310 starts the operation from the index number 'R0' by the RT (440-Table 1).

Syntax 해석부(310)는 RT(440)의 인덱스 번호 'R0'를 수행함에 입력값이 필요없으므로 'True' 조건이 만족한 것으로 해석하여 SET(420 - 표 2 참조)의 인덱스 번호 'S1'으로 진행한다. 즉, 표 2에서 보여지는 바와 같이, RT(440)의 인덱스 번호 'R0'는 분기 조건이 'TRUE -> (S1, R1)'으로 지정되어, 'True' 조건을 만족하는 경우 SET(420 - 표 2 참조)의 인덱스 번호 'S1'을 수행한 후, RT(440)의 인덱스 번호 'R1'을 수행하도록 지정되어 있다. Since the syntax analysis unit 310 does not need an input value to perform the index number 'R0' of the RT 440, the syntax is interpreted as satisfying the 'True' condition, and the index number 'S1' of the SET (420-Table 2) is interpreted. Proceed. That is, as shown in Table 2, the index number 'R0' of the RT (440) is set when the branch condition is 'TRUE-> (S1, R1)', and satisfies the 'True' condition, SET (420-) After performing the index number 'S1' of Table 2), it is designated to perform the index number 'R1' of the RT 440.

Syntax 해석부(310)는 SET(420)의 인덱스 번호 'S1'을 수행하기 위해 비트스트림의 헤더 영역에서 32비트 문자열로 구성된 Syntax 엘리먼트 'V0_sequence_start_code'를 독출한다. 비트스트림의 헤더 영역에서 각 Syntax 엘 리먼트를 독출하는 방법은 당업자에게 자명하므로 이에 대한 설명은 생략한다. 이어서, Syntax 해석부(310)는 독출된 값이 처리 내용(Process, 즉 if ibs ==0x000001B1)에 의할 때 'True' 또는 'False'인지를 결정하여, 결정된 값을 SET 출력값으로 엘리먼트 정보 저장부(320)에 저장한다. 상술한 바와 같이, 엘리먼트 정보 저장부(320)에 상응하는 엘리먼트 정보의 저장은 가변장 디코딩부(110)에 의해 수행될 수도 있다.The syntax analyzing unit 310 reads out the syntax element 'V0_sequence_start_code' consisting of a 32-bit string in the header area of the bitstream to perform the index number 'S1' of the SET 420. Since a method for reading each syntax element in the header region of the bitstream is apparent to those skilled in the art, a description thereof will be omitted. Subsequently, the syntax analyzing unit 310 determines whether the read value is 'True' or 'False' when the read value is based on the processing content (that is, if ibs == 0x000001B1), and stores the determined information as a SET output value. Stored in the unit 320. As described above, the storage of the element information corresponding to the element information storage unit 320 may be performed by the variable length decoding unit 110.

또한, Syntax 해석부(310)는 결정된 SET 출력값(즉, C1)에 해당하는 CSCIT 출력값(즉, CSCI의 의미와 해당하는 값)이 무엇인지를 CSCIT(430)를 이용하여 독출하여 엘리먼트 정보 저장부(320)에 저장한다.In addition, the syntax analysis unit 310 reads the CSCIT output value (ie, meaning and corresponding value of CSCI) corresponding to the determined SET output value (ie, C1) using the CSCIT 430 to read the element information storage unit. Save to 320.

Syntax 해석부(310)는 SET(420)의 인덱스 번호 'S1'에 대한 수행이 완료된 후, RT(440)의 인덱스 번호 'R1'을 수행하기 위해 진행한다.After the execution of the index number 'S1' of the SET 420 is completed, the syntax analyzer 310 proceeds to perform the index number 'R1' of the RT 440.

Syntax 해석부(310)는 RT(440)의 인덱스 번호 'R1'를 수행함에 입력값 'C1'이 필요하므로, 종전의 인덱스 번호 'R0' 수행에 의해 엘리먼트 정보 저장부(320)에 저장한 제어 신호 및 문맥 정보를 독출하여 입력값으로 이용한다. Since the syntax analysis unit 310 requires the input value 'C1' to perform the index number 'R1' of the RT 440, the control stored in the element information storage unit 320 by performing the previous index number 'R0'. The signal and the context information are read and used as input values.

이와 같이, 본 발명에 따른 Syntax 해석부(310)는 Syntax 엘리먼트 해석 과정에서 종전의 Syntax 엘리먼트 해석을 통해 추출 또는 생성된 정보를 이용할 수 있다. 마찬가지로, 엘리먼트 정보 저장부(320)에 저장된 엘리먼트 정보(즉, SET 출력값 과 CSCIT 출력값으로 도출된 정보)는 비트스트림의 복호화 과정에서 다른 구성 요소들에 의해 이용될 수도 있음은 자명하다.As described above, the syntax analysis unit 310 according to the present invention may use the information extracted or generated through the previous syntax analysis of the syntax element. Similarly, it is apparent that the element information stored in the element information storage 320 (ie, information derived from the SET output value and the CSCIT output value) may be used by other components in the decoding process of the bitstream.

Syntax 해석부(310)는 RT(440)의 인덱스 번호 'R1'의 수행을 위해 엘리먼트 정보 저장부(320)로부터 독출한 CSCI 정보가 'True'라면 SET(420)의 인덱스 번호 'S2'를 수행(및 CSCIT(430)에서 SET(420)의 인덱스 번호 'S2'의 처리 결과에 따른 CSCIT 출력값 생성)한 후, RT(440)의 인덱스 번호 'R2'로 진행한다. 그러나, 독출한 CSCI 정보가 'False'라면 'NULL'로 진행한 후 Syntax 복호화 에러(인덱스 번호 'RE')로 처리한다.The syntax analyzing unit 310 performs the index number 'S2' of the SET 420 when the CSCI information read from the element information storage unit 320 is 'True' to perform the index number 'R1' of the RT 440. (And the CSCIT 430 generates the CSCIT output value according to the processing result of the index number 'S2' of the SET 420), and then proceeds to the index number 'R2' of the RT (440). However, if the read CSCI information is 'False', it proceeds to 'NULL' and processes it as a Syntax decoding error (index number 'RE').

이와 같은 과정을 반복함으로써 도 5에 도시된, 비트스트림의 헤더 영역의 Syntax 해석 과정이 완료될 수 있다. Syntax 해석 과정에서 추출 또는 생성된 엘리먼트 정보는 엘리먼트 정보 저장부(320)에 저장되어 후속하는 Syntax 엘리먼트의 해석 또는 복호화 과정에서 이용될 수 있다.By repeating such a process, the syntax analysis process of the header region of the bitstream shown in FIG. 5 may be completed. The element information extracted or generated in the syntax analysis process may be stored in the element information storage unit 320 and used in the subsequent process of analyzing or decoding the syntax element.

상술한 Syntax 해석 과정을 표로서 나타내면 아래와 같다.The above-described syntax analysis process is shown as a table below.

표 4. Syntax 해석 플로우(Flow)Table 4. Syntax Analysis Flow

Control flowControl flow Branch ControlBranch Control SETSET CSCITCSCIT DescriptionDescription 1One R0R0 22 S1S1 C1C1 Vo_sequence_start_codeVo_sequence_start_code 33 R1R1 C1C1 44 S2S2 C2C2 Profile_level_indicationProfile_level_indication 55 R2R2 66 S3S3 C1C1 User_data_start_codeUser_data_start_code 77 R3R3 C1C1 88 S4S4 C3C3 User_dataUser_data 99 R5R5 1010 S5S5 Vo_start_codeVo_start_code 1111 R4R4 1212 S6S6 Is_VO_identifierIs_VO_identifier 1313 R6R6 1414 S9S9 VO_typeVO_type

표 4의 플로우는 좌측 상단부터 지그재그 형태의 순서로 해석된다. 즉, 해석 수행부(410)는 R0, S1, C1의 순으로 Syntax 엘리먼트 해석을 진행할 것이고, C1은 R1의 입력값으로 이용되며, 이어서 S2, C2 등의 순으로 Syntax 엘리먼트 해석을 진행한다. The flow of Table 4 is interpreted in zigzag order from the upper left. That is, the analysis execution unit 410 will proceed to analyze the syntax elements in the order of R0, S1, C1, C1 is used as an input value of R1, and then proceeds to analyze the syntax elements in the order of S2, C2 and the like.

본 발명에 따른 부호화기Encoder according to the present invention

도 6은 본 발명의 바람직한 일 실시예에 따른 부호화기의 구성을 개략적으로 나타낸 도면이다.6 is a diagram schematically illustrating a configuration of an encoder according to an embodiment of the present invention.

도 6에 도시된 바와 같이, 본 발명에 따른 부호화기(600)는 종래의 부호화기(200 - 이하, '인코딩 처리부'라 칭함)에 비해 RT 정보 생성부(610)를 더 포함한다. 도시된 부호화기(600)의 구성은 단지 예시로서 제시한 것에 불과하고, 그 구성은 입력된 동영상을 비트스트림으로 코딩하기 위한 구성이면 충분하며, 적용되는 표준 등에 따라 상이하게 구성될 수 있다. As shown in FIG. 6, the encoder 600 according to the present invention further includes an RT information generator 610 as compared to a conventional encoder 200 (hereinafter, referred to as an “encoding processor”). The configuration of the encoder 600 shown is merely shown as an example, and the configuration may be sufficient to encode an input video into a bitstream, and may be configured differently according to the applied standard.

RT 정보 생성부(610)는 도 5에 도시된 바와 같이 가변장 인코딩부(230)에 종속되도록 결합되거나, 가변장 인코딩부(230)에 삽입되거나, 가변장 인코딩부(230) 후단에 구비될 수도 있다. 일반적으로 RT(440)의 생성은 부호화 과정에서 계속적, 연속적으로 이루어질 수 있기 때문이다. 물론, RT 정보 생성부(610)의 위치는 설계 및 구현 방법에 따라 다양할 수 있다. 예를 들어, RT 정보 생성부(610)는 FSM(Finite State Machine)으로 구현될 수 있다. As shown in FIG. 5, the RT information generating unit 610 may be coupled to be dependent on the variable length encoding unit 230, inserted into the variable length encoding unit 230, or provided at a rear end of the variable length encoding unit 230. It may be. In general, the generation of the RT 440 may be performed continuously and continuously in the encoding process. Of course, the location of the RT information generator 610 may vary depending on the design and implementation method. For example, the RT information generator 610 may be implemented as a finite state machine (FSM).

RT 정보 생성부(610)가 RT(440) 정보를 생성하는 형태는 앞서 이미 상세히 설명한 복호화기(300)의 내용을 통해 쉽게 이해할 수 있을 것이므로 이에 대한 설명은 생략한다. 또한, RT 정보 생성부(610)가 RT 정보를 생성하기 위해 필요한 구성 요소 역시 당업자에게 자명할 것이므로 이에 대한 설명도 생략한다.Since the form in which the RT information generating unit 610 generates the RT 440 information may be easily understood through the contents of the decoder 300 described above in detail, a description thereof will be omitted. In addition, since the components necessary for the RT information generation unit 610 to generate the RT information will also be apparent to those skilled in the art, description thereof will be omitted.

RT 정보 생성부(610)는 생성한 RT 정보가 삽입된 확장 비트스트림을 생성하거나 가변장 인코딩부(230)가 확장 비트스트림을 생성하도록 요청할 수 있다. 또한, RT 정보 생성부(610)에 의해 생성된 RT 정보는 RT 정보 생성부(610) 또는 가변장 인코딩부(230)에 의해 독립한 데이터 또는 파일의 형태로 복호화기(300)에 전송될 수도 있다. 또한, RT 정보 생성부(610)는 RT(440) 외에 SET(420) 및 CSCIT(430) 중 적어도 어느 하나를 더 복호화기(300)로 제공할 수 있음은 앞서 설명한 바와 같다.The RT information generator 610 may generate an extended bitstream into which the generated RT information is inserted or request that the variable length encoder 230 generate an extended bitstream. In addition, the RT information generated by the RT information generator 610 may be transmitted to the decoder 300 in the form of independent data or file by the RT information generator 610 or the variable length encoder 230. have. In addition, as described above, the RT information generator 610 may further provide at least one of the SET 420 and the CSCIT 430 to the decoder 300 in addition to the RT 440.

본 명세서에서 가변장 인코딩부(230)는 부호화기(600) 내에서 비트스트림을 생성하기 위하여 최종적으로 부호화를 수행하는 임의의 구성 요소(예를 들어, 부호화부)를 지칭한 것일 뿐 이에 제한되는 것은 아니며, 또한 이로 인해 본 발명의 권리범위가 제한되지는 않는다.In this specification, the variable length encoder 230 refers to an arbitrary component (for example, an encoder) that performs encoding in order to generate a bitstream in the encoder 600, but is not limited thereto. In addition, this does not limit the scope of the present invention.

상술한 바와 같이 본 발명에 따른 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법은 하나의 표준(또는 코덱) 내에서 또는 다른 표준(또는 코덱) 간에 syntax 엘리먼트의 해석을 용이하게 한다. 즉, 특정 표준에 따라 생성되는 비트스트림 내의 syntax 엘리먼트들의 순서를 변경하거나, 새로운 syntax 엘리먼트들을 삽입하거나, 기존의 syntax 엘리먼트들을 삭제함에 문제되지 않는다. As described above, the decoding apparatus and the syntax interpretation method for bitstream decoding according to the present invention facilitate the interpretation of syntax elements within one standard (or codec) or between other standards (or codec). That is, it is not a problem to change the order of syntax elements, insert new syntax elements, or delete existing syntax elements in a bitstream generated according to a specific standard.

또한, 종래기술에 따르면 이와 같은 syntax 엘리먼트의 조작시 복호화기에서는 해당 비트스트림을 정상적으로 디코딩할 수 없는 문제점이 있었다. 예를 들어, 비트스트림 정보가 ABC이던 것을 ACB로 순서를 바꾸어 비트스트림을 구성하여 전송하면, 복호화기는 이를 인식할 수 없어 정상적인 디코딩이 불가능하다. 또한, 신규로 F를 삽입하여 ABFC로 구성하거나, B를 삭제하여 AC로 비트스트림을 구성하는 경우에도 동일하다.In addition, according to the related art, when the syntax element is manipulated, the decoder cannot decode the corresponding bitstream normally. For example, if the bitstream information is ABC and the bitstream is changed to ACB to configure and transmit the bitstream, the decoder cannot recognize the bitstream and thus normal decoding is not possible. The same applies to the case where a new stream is inserted into an ABFC, or a B is deleted to form a bitstream with AC.

그러나, 본 발명에 따른 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법을 이용하면, 확장 비트스트림 내에 포함되거나 또는 독립된 데이터로 RT(440)가 제공되므로 복호화기의 원활한 복호화 동작이 가능해진다.However, using the decoding apparatus and the syntax parsing method for bitstream decoding according to the present invention, since the RT 440 is provided as data included in the extended bitstream or as independent data, the decoder can perform a smooth decoding operation.

이제까지 본 발명에 따른 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법를 설명함에 있어 MPEG-4를 기준으로 설명하였으나, MPEG-1, MPEG-2, MPEG-4 AVC 및 이외의 동영상 인코딩/디코딩 표준에 아무런 제한없이 동일하게 적용할 수 있음은 당연하다.Although the decoding apparatus and the syntax parsing method for bitstream decoding according to the present invention have been described based on MPEG-4, the MPEG-1, MPEG-2, MPEG-4 AVC and other video encoding / decoding standards are not described. Of course, the same can be applied without limitation.

상술한 바와 같이 본 발명에 따른 복호화 장치 및 비트스트림 복호화를 위한 구문 해석 방법은 각 표준(예를 들어, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC 등)에 따른 다양한 형식(syntax, semantics)으로 부호화된 비트스트림을 동일한 정보 인 식 방식으로 복호화할 수 있는 효과가 있다.As described above, the decoding apparatus and the syntax parsing method for bitstream decoding according to the present invention may be implemented in various formats (for example, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC). syntax, semantics) can be decoded using the same information recognition method.

또한, 본 발명은 다양한 형태의 비트스트림을 통합 코덱 및/또는 일반 코덱 내에서 복호화할 수 있도록 비트스트림 syntax를 용이하게 해석할 수 있는 효과도 있다.In addition, the present invention has the effect that it is easy to interpret the bitstream syntax to be able to decode the various forms of the bitstream in the integrated codec and / or general codecs.

또한, 본 발명은 다양한 형태의 비트스트림을 복호화하기 위한 syntax 해석 방법을 공통적으로 적용할 수 있는 효과도 있다.In addition, the present invention has the effect that can be commonly applied to the syntax analysis method for decoding various types of bitstream.

또한, 본 발명은 해석된 syntax의 엘리먼트 정보(element information, 즉 syntax element 해석에 의해 생성된 정보)를 비트스트림 복호화를 위해 이용되는 구성 요소들이 공유할 수 있도록 하는 효과도 있다.In addition, the present invention also has the effect of allowing the components used for bitstream decoding to share element information (ie, information generated by syntax element interpretation) of the parsed syntax.

본 발명은 해석된 syntax의 엘리먼트 정보(element information, 즉 syntax element 해석에 의해 생성된 정보)를 후속하는 비트스트림 syntax 엘리먼트의 해석을 위해 이용할 수 있는 효과도 있다.The present invention also has the effect that the element information of the parsed syntax (element information, i.e., information generated by parsing syntax element) can be used for interpretation of subsequent bitstream syntax elements.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to a preferred embodiment of the present invention, those skilled in the art to which the present invention pertains without departing from the spirit and scope of the invention as set forth in the claims below It will be appreciated that modifications and variations can be made.

Claims (4)

비트스트림 구문(syntax) 엘리먼트(element)에 상응하는 정보를 저장하는 엘리먼트 정보 저장부;An element information storage unit for storing information corresponding to a bitstream syntax element; 입력된 비트스트림의 헤더 영역에 포함된 비트스트림 구문 엘리먼트들의 해석 순서를 구문 규칙 정보를 이용하여 특정하고, 특정된 구문 엘리먼트들의 순서에 따라 구문 엘리먼트 정보를 이용하여 제어 신호 및 문맥 정보를 생성하여 상기 엘리먼트 정보 저장부에 저장하는 구문 해석부; 및The order of interpretation of the bitstream syntax elements included in the header region of the input bitstream is specified using syntax rule information, and the control signal and context information are generated using syntax element information according to the order of the specified syntax elements. A syntax analyzer for storing the element information storage unit; And 상기 제어 신호 및 문맥 정보를 이용하여 상기 비트스트림에 포함된 데이터를 동영상 데이터로 디코딩하는 디코딩 처리부를 포함하는 것을 특징으로 하는 복호화기.And a decoding processor to decode data included in the bitstream into moving image data using the control signal and the context information. 제1항에 있어서,The method of claim 1, 상기 구문 해석부는 CSCI(Control Signal and Context Information) 정보를 이용하여 상기 제어 신호 및 문맥 정보의 의미 및 상응하는 값을 생성하여 상기 엘리먼트 정보 저장부에 더 저장하는 것을 특징으로 하는 복호화기.And the syntax analyzing unit generates the meanings and corresponding values of the control signals and the context information by using control signal and context information (CSCI) information and further stores them in the element information storage unit. 제2항에 있어서,The method of claim 2, 상기 구문 규칙 정보, 상기 구문 엘리먼트 정보 및 상기 CSCI 정보는 바이너리 코드로 구현되는 것을 특징으로 하는 복호화기.And the syntax rule information, the syntax element information, and the CSCI information are implemented in binary code. 제1항에 있어서,The method of claim 1, 상기 구문 해석부는 상기 엘리먼트 정보 저장부에 저장된 상기 제어 신호 및 문맥 정보 중 적절한 제어 신호 및 문맥 정보를 독출하여 현재의 구문 엘리먼트의 해석을 수행하는 것을 특징으로 하는 복호화기.And the syntax analyzing unit reads an appropriate control signal and context information among the control signal and context information stored in the element information storage unit, and performs interpretation of a current syntax element.
KR1020060135309A 2006-12-27 2006-12-27 Decoding device and method for analyzing syntax to decode bit-stream KR20070042489A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060135309A KR20070042489A (en) 2006-12-27 2006-12-27 Decoding device and method for analyzing syntax to decode bit-stream

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060135309A KR20070042489A (en) 2006-12-27 2006-12-27 Decoding device and method for analyzing syntax to decode bit-stream

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020050098317A Division KR101171373B1 (en) 2005-07-20 2005-10-18 Decoding device and method for analyzing syntax to decode bit-stream

Publications (1)

Publication Number Publication Date
KR20070042489A true KR20070042489A (en) 2007-04-23

Family

ID=38177322

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060135309A KR20070042489A (en) 2006-12-27 2006-12-27 Decoding device and method for analyzing syntax to decode bit-stream

Country Status (1)

Country Link
KR (1) KR20070042489A (en)

Similar Documents

Publication Publication Date Title
US10489426B2 (en) Category-prefixed data batching of coded media data in multiple categories
AU2005201366B2 (en) Predictive lossless coding of images and video
US8331455B2 (en) Device and method for encoding/decoding video data
US8711946B2 (en) Device and method for unified codes
US7944968B2 (en) Method for specification of quantized coefficient limit
KR100705971B1 (en) Method and device for encoding/decoding bit-stream
KR100619822B1 (en) Image processing apparatus and method
US8774285B2 (en) Method and apparatus for adaptive decoding
KR101171373B1 (en) Decoding device and method for analyzing syntax to decode bit-stream
JP4612721B2 (en) Decoder and bitstream decoding method
KR20100089546A (en) Method and apparatus for successively encoding/decoding image
KR20070042489A (en) Decoding device and method for analyzing syntax to decode bit-stream
US20110026595A1 (en) Video encoding/decoding apparatus
EP2312852A2 (en) Method and apparatus for encoding and decoding
Bonomini et al. Implementing an MPEG2 Video Decoder Based on TMS320C80 MVP
KR100767606B1 (en) Device and Method for unified codecs
KR20100000066A (en) Reconfigurable avc adaptive video decoder and method thereof
KR100982004B1 (en) Method and device for encoding/decoding bit-stream
JP2008257221A (en) Signal processing apparatus
KR20080006430A (en) Device and method for unified codecs
KR20070075270A (en) Device and method for unified codecs
EA043408B1 (en) VIDEO ENCODING AND VIDEO DECODING
Lee et al. Reconfigurable bit-stream parser
KR20070098459A (en) Device and method for unified codecs
KR20030054146A (en) Apparutus for Variable Length Coding with low power consumption

Legal Events

Date Code Title Description
A107 Divisional application of patent
N231 Notification of change of applicant
WITN Withdrawal due to no request for examination