WO2009125993A2 - 적응적 복호화 장치 및 방법 - Google Patents

적응적 복호화 장치 및 방법 Download PDF

Info

Publication number
WO2009125993A2
WO2009125993A2 PCT/KR2009/001847 KR2009001847W WO2009125993A2 WO 2009125993 A2 WO2009125993 A2 WO 2009125993A2 KR 2009001847 W KR2009001847 W KR 2009001847W WO 2009125993 A2 WO2009125993 A2 WO 2009125993A2
Authority
WO
WIPO (PCT)
Prior art keywords
decoding
control information
information
data
encoded data
Prior art date
Application number
PCT/KR2009/001847
Other languages
English (en)
French (fr)
Other versions
WO2009125993A3 (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 US12/937,514 priority Critical patent/US8774285B2/en
Publication of WO2009125993A2 publication Critical patent/WO2009125993A2/ko
Publication of WO2009125993A3 publication Critical patent/WO2009125993A3/ko

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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • 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/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

Definitions

  • the present invention relates to a decoding apparatus, and more particularly, to an adaptive decoding apparatus and method for adaptively configuring a decoding process based on a coding format of a bitstream.
  • a video is converted into a bitstream form by an encoder.
  • the bitstream is stored according to an encoding type satisfying the constraint of the encoder.
  • MPEG requires syntax (syntax) and semantics (hereinafter referred to as “semantics”) as constraints on the bitstream.
  • the syntax indicates the structure, format, and length of the data, and in what order the data is represented.
  • the syntax is to fit a grammar for encoding / decoding, and defines the order, length, format, etc. of data included in the bitstream.
  • Semantics means what each bit of data means. That is, semantics indicates what the meaning of each element in the bitstream is.
  • bitstreams may be generated according to encoding conditions of an encoder or an applied standard (or codec).
  • each standard e.g. MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC, etc.
  • MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC, etc. has a different bitstream syntax and decoding process, respectively.
  • bitstream encoded according to each standard or encoding condition has a syntax, semantics, and decoding process of different formats, and a decoder corresponding to an encoder must be used to decode the bitstream.
  • 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.
  • the present invention is to solve the above-described problem, it is adaptive to adapt the bitstream encoded in various formats according to each standard (for example, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC, etc.)
  • the present invention provides an adaptive decoding apparatus and method for adaptively configuring a decoding process based on a coding format of input data in order to decode.
  • the present invention adaptively configures a decoding process based on an encoding format of input data by organically connecting a partial decoding process of a predetermined unit necessary to decode a bitstream encoded in various forms to form a decoding process. It is to provide a decoding apparatus and method.
  • the present invention provides an apparatus and method for adaptive decoding capable of adaptively parsing and decoding bitstreams having various types of syntax.
  • an adaptive decoding apparatus for adaptively configuring a decoding process based on an encoding format of input data is provided.
  • an adaptive decoding apparatus for adaptively configuring a decoding process based on an encoding format of input data, and outputs by separating decoding module configuration information and encoded data from input data received from the outside. Separation unit; A decoding module storage unit for storing a plurality of decoding modules for performing a partial decoding process of a predetermined unit; A decoding module configuration information analyzing unit configured to analyze the encoded data according to the decoding module configuration information to generate and output syntax parsing control information and connection control information; And loading and connecting target decoding modules from the decoding module storage unit using the connection control information to form a recombination decoder, and decoding the encoded data according to the syntax parsing control information using the recombination decoder.
  • An adaptive decoding apparatus including a unit may be provided.
  • an adaptive decoding apparatus for adaptively configuring a decoding process based on an encoding format of input data, comprising: separating and outputting decoding module configuration information and encoded data from received input data part; A decoding module storage unit for storing a plurality of decoding modules for performing a partial decoding process of a predetermined unit; A decoding module configuration information analyzing unit configured to analyze the encoded data according to the decoding module configuration information to generate and output syntax parsing control information and connection control information; A decoding model generator for generating a decoding model indicating a connection relationship between the target decoding modules required for the decoding process of the encoded data and the target decoding modules using the connection control information; And loading and connecting the target decoding modules from the decoding module storage unit using the decoding model to form a recombinant decoder, and syntax parsing and decoding the encoded data according to the syntax parsing control information through the recombinant decoder.
  • An adaptive decoding apparatus including a decoding execution
  • an adaptive decoding method for adaptively configuring a decoding process based on an encoding format of input data is provided.
  • an adaptive decoding method in which the adaptive encoding apparatus adaptively configures a decoding process based on an encoding format of input data, decoding module configuration information and encoded data from received input data. Separating the; Generating syntax parsing control information and connection control information for the encoded data using the decoding module configuration information; Forming a recombination decoder by loading and connecting one or more decoding modules according to the connection information among a plurality of preset decoding modules; And syntax parsing and decoding the encoded data using the syntax parsing control information through the recombination decoder.
  • an adaptive decoding method in which the adaptive encoding apparatus adaptively configures a decoding process based on an encoding format of input data, decoding module configuration information and encoded data from received input data. Separating the; Generating syntax parsing control information and connection control information for the encoded data using the decoding module configuration information; Generating a decoding model for decoding the encoded data using the connection control information and a decoding model indicating an interconnection relationship between the decoding modules; Forming a recombination decoder by loading and connecting one or more decoding modules from among a plurality of predetermined decoding modules using the decoding model; And syntax parsing and decoding the encoded data using the syntax parsing control information through the recombination decoder.
  • the present invention has the effect of decoding the input data by adaptively configuring a decoding process based on the encoding format of the input data.
  • the present invention also provides an integrated decoding apparatus capable of adaptively decoding a bitstream encoded according to various standards (eg, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC, etc.). There is an effect that can be implemented.
  • various standards eg, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC, etc.
  • the present invention configures a decoding process by organically connecting a partial decoding process of a predetermined unit necessary to decode a bitstream encoded in various forms, thereby adaptively configuring a decoding process based on an encoding format of input data. It works.
  • the present invention has the effect of adaptively parsing and decoding bitstreams having various types of syntax.
  • the present invention it is possible to implement unit functions constituting various decoding methods proposed by various standards (codecs) as a decoding module, and to adaptively reconfigure and execute the decoding module according to an encoding format of an input image. .
  • 1 is a diagram schematically showing a configuration of a general decoder.
  • FIG. 2 is a diagram schematically illustrating a general encoder configuration.
  • FIG. 3 is a block diagram of a decoding apparatus according to an embodiment of the present invention.
  • FIG. 4 is a diagram illustrating an embodiment of a decoding unit of FIG. 3.
  • FIG. 5 is a block diagram of a parsing module according to an embodiment of the present invention.
  • FIG. 6 illustrates a decoding module connected to implement 1-D IDCT according to an embodiment of the present invention.
  • FIG. 7 illustrates a decoding module connected to implement 2-D IDCT according to an embodiment of the present invention.
  • FIG. 8 is a block diagram of a decoding model generator according to another embodiment of the present invention.
  • decoding module storage unit 440 decoding model generation unit
  • decryption execution unit 460 storage unit
  • first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
  • FIG. 1 is a diagram schematically illustrating a configuration of a general decoder, which is a configuration diagram of a general MPEG-4 decoder.
  • 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 Transformation, 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.
  • variable-length decoding unit 110 quantizes the Huffman Table using a preset Huffman Table.
  • the inverse scan unit 115 performs the inverse scan to generate data in the same order as the moving image 140. That is, the inverse scan unit 115 outputs a value in reverse of the order of scanning in various ways during encoding.
  • a scan direction may be defined according to a distribution of frequency band values. In general, a zig-zag scan method is used, but the scan method may vary by codec.
  • Syntax parsing may be performed integrally in the variable length decoding unit 110 or in any component that processes the bitstream 105 prior to the variable length decoding unit 110.
  • the syntax parsing is uniformly processed by a predetermined criterion corresponding to the standard since the standard applied to the encoder and the decoding period is the same.
  • 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.
  • the inverse quantizer 125 inverse quantizes the inversely scanned data. That is, the DC and AC coefficients are reduced by using a quantization parameter (QP) specified during encoding.
  • QP quantization parameter
  • the inverse DCT unit 130 performs an Inverse Discrete Cosine Transform to obtain an actual video pixel value to generate a VOP (Video Object Plane).
  • VOP Video Object Plane
  • the video restoring unit 135 restores and outputs a video signal using the VOP generated by the inverse DCT unit 130.
  • FIG. 2 is a diagram schematically illustrating a general encoder configuration and is a block diagram of a general MPEG-4 encoder.
  • 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).
  • Each component included in the encoder 200 performs the inverse function of each component of the corresponding decoder 100, which is obvious to those skilled in the art.
  • the encoder 200 performs encoding by converting a video signal (ie, a digital image pixel value) into a frequency value through a discrete cosine transform, quantization, and the like, and then encoding the information.
  • Variable length encoding for differentiating bit lengths according to the frequency numbers is performed and output in the compressed bitstream 105 state.
  • the adaptive decoding apparatus has a configuration different from that of the conventional general decoder as described above.
  • the adaptive decoding apparatus includes a plurality of decoding modules capable of forming a decoder by being adaptively combined according to a coding format to decode bitstreams according to various coding formats.
  • the decoder in which the decoding modules are adaptively combined according to the encoding format of the input bitstream will be referred to as a reconfigured decoder.
  • the decoding module is a functional module that performs a partial process of the decoding process, that is, a partial decoding process of a predetermined unit.
  • the variable length decoding unit 110, the inverse scan unit 115, the inverse DC / AC prediction unit 120, and the inverse quantization unit Inverse of FIG. Quantization (125), Inverse Discrete Cosine Transform (Inverse Discrete Cosine Transformation, 130), and Video Restoration (VOP Reconstruction, 135) may be implemented as a decoding module, and the process of the component Detailed units of processes may be implemented as a decoding module.
  • the adaptive decoding apparatus may adaptively configure the recombination decoder by combining necessary decoding modules according to the encoding format of the input bitstream using the decoding module information. For this reason, the decoding apparatus according to the present invention may decode the bitstream by forming a recombination decoder corresponding to the encoding format of the input bitstream even if a bitstream encoded in any format is input.
  • the adaptive decoding apparatus receives decoding module configuration information along with the bitstream.
  • the decoding module configuration information may be provided to the decoding apparatus in the form of a bitstream integrated with the bitstream, or may be provided in an independent data form.
  • the provision of the decoding module configuration information may be omitted.
  • the adaptive decoding apparatus according to the present invention will be described in detail with reference to the accompanying drawings.
  • the components of the adaptive decoding apparatus described later may be implemented as a software program (or a combination of program codes) implemented to perform a corresponding function.
  • FIG. 3 is a block diagram of an adaptive decoding apparatus according to an embodiment of the present invention.
  • the adaptive decoding apparatus 300 may include a separator 310 and a decoder 320.
  • the separating unit 310 separates the input bitstream into compressed decoding module configuration information compressed and encoded data, and inputs them to the decoding unit 320.
  • the separation unit 310 may be omitted.
  • the encoded data may be data having the same or similar format as the bitstream of FIG. 1.
  • the decoder 320 configures a decoder by combining necessary decoding modules using the decoding module configuration information input from the separator 310, and decodes the encoded data to output decoded video data.
  • the decoding module configuration information is information that forms a decoder by combining decoding modules and describes information for decoding input data based on XML (Extensible Markup Language), and includes syntax parsing control information, connection control information, and context control information. It is configured to include.
  • XML Extensible Markup Language
  • the syntax parsing control information is information describing syntax of encoded data, and includes information describing an order, a length, and an output port of each of the data constituting the encoded bitstream.
  • the syntax parsing control information is used for syntax parsing of encoded data.
  • connection control information is information describing decoding modules required for decoding the coded data.
  • the connection control information includes information about a decoding module required for configuring a decoder and information describing a connection relationship between decoding modules.
  • the context control information is variable and constant information referenced by the decoding module.
  • connection control information may express a connection relationship between decoding modules by designating a port number in detailed information of an element for storing connection control information (for convenience, referred to as a "connection information element").
  • connection information element for convenience, referred to as a "connection information element"
  • a sub element of the corresponding connection information element may be generated, and the sub element may store information about an additional connection relationship such as the size of data to be transmitted as well as the connection relationship between two modules.
  • FIG. 4 is a diagram illustrating an embodiment of a decoding unit of FIG. 3.
  • the decoder 320 includes a decompressor 410, a decoder module configuration information analyzer 420, a decoder module storage 430, a decryption model generator 440, and a decoder execution unit ( 450 and a storage unit 460.
  • the decompressor 410 decompresses the compressed decoding module configuration information input from the separator 310 and outputs XML-based decoding module configuration information to the decoding module configuration information interpreter 420.
  • the decoding module configuration information is compressed and transmitted as a binary code for high transmission efficiency, and the decompression unit 410 restores the received data compressed with the binary code into XML-based data. It is obvious that various binary code conversion methods can be applied to the process of compressing and restoring XLM-based data into binary code. Of course, when the decoding module configuration information is received without being compressed, the restoration unit 410 may be omitted.
  • the decoding module configuration information analysis unit 420 analyzes the received XML-based decoding module configuration information and detects and outputs context control information, connection control information, and syntax parsing control information. At this time, the decoding module configuration information analyzing unit 420 interprets the decoding module configuration information described in XML format according to the bitstream structure description method defined in the BSDL schema standard (ISO / IEC 23001-5 BSDL). can do. For example, if there is unit information of "bs2: if", whether the bitstream indicated by the corresponding syntax is recognized may be indicated through a conditional expression included in the unit information.
  • the decoding module storage unit 430 stores a plurality of decoding modules that perform a predetermined unit decoding process.
  • the plurality of decoding modules include a parsing module that performs syntax parsing and a processing module for decoding the syntax parsed data.
  • the parsing module parses the input bitstream based on the syntax parsing control information.
  • the parsing module according to the present invention is not limited to a specific bitstream by using syntax parsing control information, and may perform syntax parsing on various bitstreams.
  • An example of the processing module may be an I DCT decoding module that performs a function of reconstructing a video by performing an inverse DCT operation.
  • the decoding module storage unit 430 outputs a corresponding decoding module in response to a request of the decoding execution unit 450.
  • the decoding module storage unit 430 may add a new decoding module or delete an existing decoding module according to a user input.
  • the decoding model generator 440 generates and outputs a decoding model that defines decoding modules required for a decoding process and connection relationships between the decoding modules, using the connection control information.
  • the decoding model is a structure in which decoding modules necessary for decoding input data are organically connected to a rear end of a parsing module, and may be implemented as a block diagram GUI and displayed to a user.
  • the decoding model generator 440 outputs the decoding model and / or connection control information to the decoding execution unit 45.
  • the decoding execution unit 450 constructs a recombination decoder by loading and connecting the decoding modules required for the decoding process using the decoding model or the connection control information from the decoding module storage unit 430, and performs the syntax parsing control information and the context control.
  • the input data is syntax parsed and decoded through the decoding modules constituting the recombination decoder using the information.
  • the process of the decoding execution unit 450 will be described in more detail as follows.
  • the decoding execution unit 450 receives the encoded data from the separation unit 310. Subsequently, the decoding execution unit 450 loads and connects a parsing module and processing modules required for decoding by using the decoding model or connection control information to form a recombination decoder.
  • the recombinant decoder has a structure in which a plurality of processing modules are organically connected to a rear end of a parsing module.
  • the decoding execution unit 450 parses the encoded data input through the parsing module using the syntax parsing control information, and outputs the syntax parsed data to a processing module connected to the rear end of the parsing module, thereby receiving the input data. Perform the decoding process. At this time, the decoding execution unit 250 may modify a part of the context control information by using the parsed information.
  • the storage unit 460 temporarily stores necessary information during the decoding process.
  • the storage unit 460 may receive and store syntax-parsed data and syntax additional information (eg, element length information and output port information) from the parsing module.
  • the storage unit 460 may output the stored information to the decoding execution unit 450 at the request of the decoding module.
  • the decoding module configuration information does not necessarily include information corresponding to all decoding module configuration information, and may include a codec number (code #), a profile and a level number (profile and level).
  • code # codec number
  • profile and level level number
  • the restoration unit 410 may output previously stored decoding module configuration information to the decoding module configuration information analyzer 420.
  • the restoration unit 410 receives the codec number, the profile and the level number, and the configuration information about some decoding modules, the decompression module configuration information is modified according to the configuration information for some decoding modules. The output may be output to the analyzer 420.
  • the decoding module configuration information written in the XML represents a part related to syntax parsing among all the decoding module configuration information.
  • the decoding module configuration information analyzing unit 420 interprets the input information in units of facets according to the XML parsing principle.
  • the syntax parsing control information extracted from the input information according to the XML parsing principle is shown in Table 1 below.
  • the parsing module receives syntax parsing control information from the decoding execution unit 450 and performs syntax parsing.
  • the parsing module may refer to detailed information of each element by using an element name as an index.
  • the details define the syntax parsing process as follows:
  • Type details indicates the bit length of the element and the type of information (integer, float, etc.).
  • the type of the VOP element is "VideoObjectPlaneType", which defines the element bit length and information format for each type in the BSDL standard.
  • the decoding execution unit 450 may use the information of the corresponding element only when the information of the bitstream falls within the range described in ifNext.
  • the decoding execution unit 450 controls the parsing module to output the syntax-parsed data to the processing module connected to the output port of the parsing module.
  • the present invention may use detailed information other than the above detailed information, the definition of which conforms to the BSDL schema standard (ISO / IEC 23001-5 BSDL).
  • FIG. 5 is a configuration diagram of a parsing module according to an embodiment of the present invention.
  • the parsing module includes an information analyzer 510, a parser 520, a port allocator 530, and a plurality of output ports (first port, second port,..., Third port). It includes an output unit 540 composed of.
  • the information analyzer 510 analyzes the syntax parsing control information received from the decoding execution unit 450 and extracts the length and output port number of the data constituting the bitstream to be parsed.
  • the decoding module configuration information written in the XML represents a part related to syntax parsing among all the decoding module configuration information.
  • Table 2 illustrates syntax parsing control information extracted by the decoding module configuration information analyzing unit 420 according to the XML parsing principle.
  • the bit length of each element is shown in the Type details of Table 2.
  • the information analyzer 510 analyzes the extracted syntax parsing control information and calculates data length and output port information. At this time, the information analysis unit 510 may calculate the length of the data by analyzing the type detail information according to the format determined by the BSDL schema standard (ISO / IEC 23001-5 BSDL). For example, the information analyzer 510 determines that the length of the data 1 is 3 bits through the type detail information 'b3'. Subsequently, the information analyzing unit 510 checks the rvc: Port detailed information to determine that the output port of the data 1 is the first port. The information analyzer 510 may extract the length and the output port number of the data 2 and the data 3 in the same manner as the data 1.
  • the information analyzer 510 may analyze the type detail information by using the syntax-parsed data previously. For example, the information analyzer 510 may analyze syntax parsing control information using previously parsed data and calculate a length of current data. At this time, the information analysis unit 510 may request and parse the previously parsed data to the storage unit 460.
  • the information analyzer 510 outputs the name, the length, and the output port number of the corresponding data to the parser 520.
  • the parser 520 parses the input bitstream using the length of the data received from the information analyzer 720 and the output port number. For example, the parser 520 determines that the length of the data 1 is '3' and extracts 3 bits from the bitstream. The parser 520 outputs the extracted 3-bit data and the output port number to the port allocator 530.
  • the port allocator 530 allocates the input data to the corresponding output port according to the output port number received from the parser 520.
  • the output unit 540 outputs data allocated to the corresponding output port to the input port of the decoding module connected according to the connection control information. For example, the port allocator 530 assigns data 1 to the first port. Subsequently, the output unit 540 outputs data 1 to an input port of a decoding module connected to the corresponding output port.
  • the parsing module then parses data 2 and data 3 in the same manner as the syntax parsing process of data 1.
  • the parsing module may parse various syntaxes without changing the structure by using the syntax parsing control information. Therefore, when the decoding apparatus according to the present embodiment is implemented as an actual hardware chip, it is possible to ensure real time decoding of a bitstream encoded in various formats with one hardware chip.
  • connection control information and context control information described in an XML format will be described according to an embodiment of the present invention.
  • FIG. 6 is a diagram illustrating a decoding module connected to implement 1-D IDCT according to an embodiment of the present invention
  • FIG. 7 is a diagram of a decoding module connected to implement 2-D IDCT according to an embodiment of the present invention. Illustrated drawing.
  • connection control information included in the decoding module configuration information described in XML according to an embodiment of the present invention is described using an element as illustrated in Table 3 below.
  • connection control information includes a network, identification information (Package or QID) indicating a location in a hierarchical structure, and port information of a decoding module. (Port) and input / output port connection information (Connection) between the decoding modules connected to each other.
  • Table 4 is a table illustrating the context control information included in the decoding module configuration information described in XML according to an embodiment of the present invention.
  • Table 5 below is a table illustrating elements indicating whether an argument or an operator is unary by assisting the above-described elements according to an embodiment of the present invention.
  • Table 6 illustrates a type element used when declaring a variable or a port according to an embodiment of the present invention.
  • Table 7 below is a table illustrating additionally defined elements in addition to the above-described elements according to an embodiment of the present invention.
  • Attribute There are 4 types of elements that represent additional information about the connection relationship of the decoding module1. flag: name information 2. String attributes: information about the statement 3. Value attributes: Representation by Expr element. Custom attributes: Any kind of information. Additional attributes: @ value- The value of the string attributes. Additional child elements: The value of the Expr-Value attributes. QID Identifier indicating a position in the hierarchical structure ID Identifier Required attribute: @ id-identifier Class Required attribute of the decryption module: @name-The name of the class. Parameter Define the representation of the parameter. Required attributes: @ name-parameter name Required sub-elements: An expression for calculating the value of the Expr-parameter. Note Remark
  • connection control information and context control information may be described using elements described in Tables 3 to 7.
  • connection control information and context control information may be described in XML as follows using the elements described in Tables 3 to 7. .
  • connection control information and context control information may be described in XML as follows using the elements described in Tables 3 to 7. .
  • FIG. 8 is a block diagram of a decoding model generator according to another embodiment of the present invention.
  • the decoding model generator 440 includes a parser generator 810 and a model generator 820.
  • the parser generation unit 810 generates a parsing module using syntax parsing control information and context control information received from the decoding module configuration information analysis unit 420. In this case, the generated parsing module may parse the corresponding bit stream structure in a limited manner.
  • the parser generator 810 outputs the generated parsing module and the context control information to the model generator 820.
  • the model generator 820 receives the connection control information from the decoding module configuration information analyzer 820.
  • the model generator 820 generates a decoding model using the parsing module, the context control information, and the connection control information.
  • the model generator 820 defines parsing of the decoding model using a parsing module.
  • the model generator 820 defines a connection relationship between the decoding modules in the decoding model using the context control information and the connection control information.
  • the decoding model may include an internal process of the decoding module or a reference address of the decoding module stored in the decoding module storage unit 430.
  • the decryption model may include the entire decryption process or may refer to the decryption module of the decryption module storage unit 430 to represent the entire decryption process.
  • the model generator 820 then outputs the decoding model to the decoding execution unit 450.
  • the decoding execution unit 450 decodes the encoded data using the received decoding model. For example, the decoding execution unit 450 receives the encoded data from the separation unit 310 and parses the encoded data according to the parsing module defined in the decoding model. At this time, the decoding execution unit 250 may modify a part of the context control information by using the parsed information. Subsequently, the decoding execution unit 450 loads a necessary decoding module from the decoding module storage unit 430 according to the connection control information and the context control information defined in the decoding model, and decodes the encoded data.
  • a decoding module for decoding the encoded data may be included in the decoding model.
  • the decoding module configuration information may be converted into a hardware description language (HDL), and a hardware chip may be manufactured using the converted HDL.
  • HDL hardware description language
  • This method is widely compatible with designs based on codec chips that are widely used in set-top boxes, DTV converters, PMPs, and DMB players.

Abstract

적응적 복호화 장치 및 방법이 개시된다. 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 장치는 외부로부터 수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하여 출력하는 분리부; 미리 정해진 단위의 부분 디코딩 프로세스를 수행하는 복수의 복호 모듈을 저장하는 복호 모듈 저장부; 상기 복호 모듈 구성 정보에 따라 상기 부호화된 데이터를 분석하여 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하여 출력하는 복호 모듈 구성 정보 해석부; 및 상기 연결 제어 정보를 이용하여 상기 복호 모듈 저장부로부터 대상 복호 모듈들을 로딩하고 연결하여 재조합 디코더를 형성하며, 상기 재조합 디코더를 이용하여 상기 신택스 파싱 제어 정보에 따라 상기 부호화된 데이터를 디코딩하는 복호 실행부를 포함한다. 이에 따라, 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하여 디코딩할 수 있다.

Description

적응적 복호화 장치 및 방법
본 발명은 복호화 장치에 관한 것으로, 더욱 상세하게는 비트스트림의 부호화 형식에 기반하여 적응적으로 복호화 프로세스를 구성하는 적응적 복호화 장치 및 방법에 관한 것이다.
일반적으로 동영상은 부호화기(encoder, 인코더)에 의해 비트스트림(bitstream)형태로 변환된다. 이 때, 비트스트림은 부호화기의 제약 조건을 만족하는 부호화 유형에 따라 저장된다.
MPEG은 비트스트림의 제약 조건으로서 구문(신택스) 및 의미(semantics, 이하 ‘semantics’라 칭함)를 요구한다.
신택스는 데이터의 구조나 형식 및 길이를 나타내며, 데이터가 어떤 순서로 표현되는지를 나타낸다. 즉, 신택스는 부호화/복호화 작업을 위한 문법을 맞추기 위한 것으로, 비트스트림에 포함된 데이터들의 순서와 길이, 형식 등을 정의한다.
Semantics는 데이터를 구성하는 각 비트가 의미하는 뜻을 나타낸다. 즉, semantics는 비트스트림 내의 각 요소들의 의미가 무엇인지를 나타낸다.
따라서, 부호화기의 부호화 조건 또는 적용된 표준(또는 코덱)에 따라 다양한 형태의 비트스트림이 생성될 수 있다. 일반적으로 각 표준(예를 드어 MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC 등)은 각각 상이한 비트스트림 신택스 및 디코딩 프로세스를 가진다.
따라서, 각 표준이나 부호화 조건에 따라 부호화된 비트스트림은 각각 다른 형식의 신택스, semantics 및 디코딩 프로세스를 가진다고 할 수 있으며, 해당 비트스트림의 복호화를 위해서는 부호화기에 대응되는 복호화기가 사용되어야 한다.
상술한 바와 같이, 종래의 비트스트림 복호화기는 부호화기의 제약 조건을 만족하여야 하는 제한이 있었으며, 이러한 제한은 복수의 표준에 대응되는 통합 복호화기를 구현하기 어려운 원인이 된다.
따라서 본 발명은 상술한 문제점을 해결하기 위한 것으로, 각 표준(예를 들어, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC 등)에 따라 다양한 형식으로 부호화된 비트스트림을 적응적으로 복호화(decoding)하기 위하여 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 장치 및 방법을 제공하기 위한 것이다.
본 발명은 다양한 형태로 부호화 된 비트스트림을 복호화하기 위해 필요한 소정 단위의 부분 디코딩 프로세스를 유기적으로 연결하여 디코딩 프로세스를 구성함으로써, 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 장치 및 방법을 제공하기 위한 것이다.
본 발명은 다양한 형식의 신택스를 갖는 비트스트림들을 적응적으로 신택스 파싱하여 디코딩할 수 있는 적응적 복호화 장치 및 방법을 제공하기 위한 것이다.
그 외의 다른 본 발명의 목적들은 이하에 서술되는 바람직한 실시예를 통하여 보다 명확해질 것이다.
본 발명의 일 측면에 따르면, 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 장치가 제공된다.
본 발명의 일 실시예에 따르면, 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 장치로서, 외부로부터 수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하여 출력하는 분리부; 미리 정해진 단위의 부분 디코딩 프로세스를 수행하는 복수의 복호 모듈을 저장하는 복호 모듈 저장부; 상기 복호 모듈 구성 정보에 따라 상기 부호화된 데이터를 분석하여 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하여 출력하는 복호 모듈 구성 정보 해석부; 및 상기 연결 제어 정보를 이용하여 상기 복호 모듈 저장부로부터 대상 복호 모듈들을 로딩하고 연결하여 재조합 디코더를 형성하며, 상기 재조합 디코더를 이용하여 상기 신택스 파싱 제어 정보에 따라 상기 부호화된 데이터를 디코딩하는 복호 실행부를 포함하는 적응적 복호화 장치가 제공될 수 있다.
본 발명의 다른 실시예에 따르면, 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 장치로서, 수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하여 출력하는 분리부; 미리 정해진 단위의 부분 디코딩 프로세스를 수행하는 복수의 복호 모듈을 저장하는 복호 모듈 저장부; 상기 복호 모듈 구성 정보에 따라 상기 부호화된 데이터를 분석하여 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하여 출력하는 복호 모듈 구성 정보 해석부; 상기 연결 제어 정보를 이용하여 상기 부호화된 데이터의 복호화 과정에 필요한 대상 복호 모듈들 및 상기 대상 복호 모듈들간의 연결 관계를 나타내는 복호화 모델을 생성하는 복호화 모델 생성부; 및 상기 복호화 모델을 이용하여 상기 복호 모듈 저장부로부터 상기 대상 복호 모듈들을 로딩하고 연결하여 재조합 디코더를 형성하고, 상기 재조합 디코더를 통해 상기 신택스 파싱 제어 정보에 따라 상기 부호화된 데이터를 신택스 파싱하고 디코딩하는 복호 실행부를 포함하는 적응적 복호화 장치가 제공될 수 있다.
본 발명의 다른 측면에 따르면, 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 방법이 제공된다.
본 발명의 일 실시예에 따르면, 적응적 부호화 장치가 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 방법에 있어서, 수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하는 단계; 상기 복호 모듈 구성 정보를 이용하여 상기 부호화된 데이터에 대한 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하는 단계; 미리 설정된 복수의 복호 모듈 중에서 상기 연결 정보에 따른 하나 이상의 복호 모듈을 로딩하고 연결하여 재조합 디코더를 형성하는 단계; 및 상기 재조합 디코더를 통해 상기 신택스 파싱 제어 정보를 이용하여 상기 부호화된 데이터를 신택스 파싱하고 디코딩하는 단계를 포함하는 적응적 복호화 방법이 제공될 수 있다.
본 발명의 다른 실시예에 따르면, 적응적 부호화 장치가 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 방법에 있어서, 수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하는 단계; 상기 복호 모듈 구성 정보를 이용하여 상기 부호화된 데이터에 대한 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하는 단계; 상기 연결 제어 정보를 이용하여 상기 부호화된 데이터의 복호화를 위한 복호 모듈들 및 상기 복호 모듈들간의 상호 연결 관계를 나타내는 복호화 모델을 생성하는 단계; 상기 복호화 모델을 이용하여 미리 설정된 복수의 복호 모듈 중에서 하나 이상의 복호 모듈을 로딩하고 연결하여 재조합 디코더를 형성하는 단계; 및 상기 재조합 디코더를 통해 상기 신택스 파싱 제어 정보를 이용하여 상기 부호화된 데이터를 신택스 파싱하고 디코딩하는 단계를 포함하는 적응적 복호화 방법이 제공될 수 있다.
본 발명은 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하여 입력 데이터를 복호화할 수 있는 효과가 있다.
또한, 본 발명은 다양한 표준(예를 들어, MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC 등)에 따라 부호화된 비트스트림을 적응적으로 복호화(decoding)할 수 있는 통합 복호화 장치를 구현할 수 있는 효과가 있다.
본 발명은 다양한 형태로 부호화 된 비트스트림을 복호화하기 위해 필요한 소정 단위의 부분 디코딩 프로세스를 유기적으로 연결하여 디코딩 프로세스를 구성함으로써, 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성할 수 있는 효과가 있다.
본 발명은 다양한 형식의 신택스를 갖는 비트스트림들을 적응적으로 신택스 파싱하여 디코딩할 수 있는 효과가 있다.
본 발명은 여러 표준(코덱)에서 제안하는 다양한 디코딩 방법을 구성하는 단위 기능들을 각각 복호 모듈로 구현하고, 상기 복호 모듈을 입력 영상의 부호화 형식에 따라 적응적으로 재구성하여 실행시킬 수 있는 효과가 있다.
도 1은 일반적인 복호화기의 구성을 개략적으로 나타낸 도면.
도 2는 일반적인 부호화기 구성을 개략적으로 나타낸 도면.
도 3은 본 발명의 일실시예에 따른 복호화 장치의 구성도.
도 4는 도 3의 복호화부의 일실시예 구성도.
도 5는 본 발명의 일실시예에 따른 파싱 모듈의 구성도.
도 6는 본 발명의 실시예에 따른 1-D IDCT을 구현하기 위해 연결된 복호 모듈을 예시한 도면.
도 7은 본 발명에 일실시예에 따른 2-D IDCT을 구현하기 위해 연결된 복호 모듈을 예시한 도면.
도 8은 본 발명의 다른 실시예에 다른 복호화 모델 생성부의 구성도.
<도면의 주요부분에 대한 부호의 설명>
310: 분리부 320: 복호화부
410: 복원부 420: 복호 모듈 구성 정보 해석부
430: 복호 모듈 저장부 440: 복호화 모델 생성부
450: 복호 실행부 460: 저장부
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 본 발명의 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다.
도 1은 일반적인 복호화기의 구성을 개략적으로 나타낸 도면으로서, 일반적인 MPEG-4 복호화기의 구성도이다.
도 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)의 구성은 적용되는 표준에 따라 상이할 수 있음은 자명하며, 또한 일부 구성요소는 타 구성요소로 대체될 수도 있을 것이다.
전달된 비트스트림(105)이 신택스 파싱(parsing)되어 헤더 정보 및 부호화된 영상 데이터(encoded video data)가 추출되면, 가변장 디코딩부(110)는 미리 설정된 허프만 테이블(Huffman Table)을 이용하여 양자화된 DCT 계수를 만들고, 역 스캔부(115)는 역 스캔을 수행하여 동영상(140)과 동일한 순서의 데이터를 생성한다. 즉, 역 스캔부(115)는 인코딩시 여러 가지 방법으로 스캔된 순서의 역으로, 값을 출력한다. 인코딩 시 양자화(Quantization)를 수행한 후, 주파수 대역 값의 분포에 따라 스캔 방향이 정의될 수 있다. 일반적으로는 지그-재그(zig-zag) 스캔 방식이 사용되나, 스캔 방식은 코덱별로 다양할 수 있다.
신택스 파싱은 가변장 디코딩부(110)에서 통합적으로 수행되거나, 가변장 디코딩부(110)에 선행하여 비트스트림(105)을 처리하는 임의의 구성 요소에서 수행될 수 있다. 이 경우, 신택스 파싱은 부호화기와 복호화기간에 적용되는 표준이 동일하므로 해당 표준에 상응하도록 미리 지정된 기준에 의해서 획일적으로 처리된다.
역 DC/AC 예측부(120)는 주파수 대역에서 DCT 계수의 크기를 이용하여 예측을 위한 참조 블록의 방향성을 결정한다.
역 양자화부(125)는 역 스캔된 데이터를 역 양자화한다. 즉, 인코딩시 지정된 양자화값(QP, Quantization Parameter)을 이용하여 DC와 AC 계수를 환원한다.
역 DCT부(130)는 역 이산 여현 변환(Inverse Discrete Cosine Transform)을 수행함으로써 실제의 동영상 픽셀 값을 구하여 VOP(Video Object Plane)를 생성한다.
동영상 복원부(135)는 역 DCT부(130)에 의해생성된 VOP를 이용하여 동영상 신호를 복원하여 출력한다.
도 2는 일반적인 부호화기 구성을 개략적으로 나타낸 도면으로서, 일반적인 MPEG-4 부호화기의 구성도이다.
도 2에 도시된 바와 같이, 일반적으로 MPEG-4 부호화기(200)는 DCT부(210), 양자화부(215), DC/AC 예측부(220), 스캔부(230), 가변장 인코딩부(235)를 포함한다.
부호화기(200)에 포함된 각 구성요소는 각각 대응되는 복호화기(100)의 구성요소의 역 기능을 수행하며, 이는 당업자에게 자명하다. 간단히 설명하면, 부호화기(200)는 동영상 신호(즉, 디지털 영상 픽셀 값)를 이산여현 변환(Discrete Cosine Transform), 양자화(Quantization) 등을 통해 주파수 값으로 변환하여 부호화를 수행한 후, 이를 정보의 빈도 수에 따라 비트 길이를 차별화하는 가변장 인코딩을 수행하여 압축된 비트스트림(105) 상태로 출력한다.
한편, 본 발명에 따른 적응적 복호화 장치는 전술한 바와 같은 종래의 일반적인 복호화기와 상이한 구성을 가진다.
본 발명에 따른 적응적 복호화 장치는 다양한 부호화 형식에 따른 비트스트림을 복호화하기 위해 부호화 형식에 따라 적응적으로 조합되어 디코더를 구성할 수 있는 복수의 복호 모듈을 포함한다. 상기 복호 모듈들이 입력 비트스트림의 부호화 형식에 따라 적응적으로 조합된 디코더를 재조합 디코더(Reconfigured Decoder)라 칭하기로 한다.
복호 모듈이란 디코딩 프로세스를 구성하는 일부 과정, 즉 소정 단위의 부분 디코딩 프로세스를 수행하는 기능 모듈이다. 예를 들면, 도 2의 가변장 디코딩부(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)의 프로세스 각각을 복호 모듈로 구현할 수 있으며, 상기 구성 요소의 프로세스를 구성하는 세부 단위의 프로세스들을 복호 모듈로 구현할 수도 있다.
적응적 복호화 장치는 복호 모듈 정보를 이용하여 입력 비트스트림의 부호화 형식에 따라 필요한 복호 모듈들을 조합하여 재조합 디코더를 적응적으로 구성할 수 있다. 이로 인해, 본 발명에 따른 복호화 장치는 어떠한 형식으로 부호화된 비트스트림이 입력되더라도 입력된 비트스트림의 부호화 형식에 상응하는 재조합 디코더를 형성하여 당해 비트스트림을 복호할 수 있다.
적응적 복호화 장치는 복호 모듈 구성 정보를 비트스트림과 함께 수신한다. 복호 모듈 구성 정보는 비트스트림과 통합적으로 구현된 비트스트림의 형태로 복호화 장치로 제공되거나, 독립된 데이터 형태로 제공될 수 있다. 물론, 적응적 복호화 장치의 특정 저장부에 복호 모듈 구성 정보에 상응하는 정보가 미리 저장된 경우라면, 복호 모듈 구성 정보의 제공은 생략될 수도 있다. 다만, 이하에서는 해당 데이터가 비트스트림 내에 포함되어 복호화 장치로 제공되는 경우를 중심으로 설명하기로 한다. 이하, 관련 도면을 참조하여 본 발명에 따른 적응적 복호화 장치에 대해 보다 상세히 설명하기로 한다. 한편, 후술하는 적응적 복호화 장치의 구성 요소들은 해당 기능을 수행하도록 구현된 소프트웨어 프로그램(또는 프로그램 코드들의 조합)으로 구현될 수도 있음은 자명하다.
도 3은 본 발명의 일실시예에 따른적응적 복호화 장치의 구성도이다.
도 3에 도시된 바와 같이, 적응적 복호화 장치(300)는 분리부(310) 및 복호화부(320)를 포함하여 구성될 수 있다.
분리부(310)는 입력된 비트스트림(Bitstream)을 압축된 복호 모듈 구성 정보(Decoding module Configuration information Compressed)와 부호화된 데이터로 분리하여 복호화부(320)로 각각입력한다. 압축된 복호 모듈 구성 정보와 부호화된 데이터가 각각 독립된 데이터로 입력되는 경우 분리부(310)는 생략될 수 있다. 또한, 부호화된 데이터는 앞서 도 1의 비트스트림과 동일 또는 유사한 형식의 데이터일 수 있다.
복호화부(320)는 분리부(310)로부터 입력된 복호 모듈 구성 정보를 이용하여 필요한 복호 모듈들을 조합하여 디코더를 구성하고 부호화된 데이터를 복호화하여 복호화된 비디오 데이터를 출력한다.
상기 복호 모듈 구성 정보는 복호 모듈들을 조합하여 디코더를 구성하고 입력된 데이터를 복호화하기 위한 정보를 XML(Extensible Markup Language) 기반으로 기술한 정보로서, 신택스 파싱 제어 정보, 연결 제어 정보 및 문맥 제어 정보를 포함하여 구성된다.
상기 신택스 파싱 제어 정보는 부호화된 데이터의 신택스를 기술한 정보로서, 부호화된 비트스트림을 구성하는 데이터들 각각의 순서, 길이 및 출력포트를 기술한 정보를 포함한다. 상기 신택스 파싱 제어 정보는 부호화된 데이터의 신택스 파싱에 이용된다.
연결 제어 정보는 부호화된 데이터를 복호화하기 위하여 필요한 복호 모듈들을 기술한 정보로서, 디코더를 구성하는데 필요한 복호 모듈에 대한 정보 및 복호 모듈 상호 간의 연결 관계를 기술한 정보를 포함한다.
문맥 제어 정보는 복호 모듈이 참조하는 변수 및 상수 정보이다.
상기 신택스 파싱 제어 정보는 XML 파일의 요소(Element)에 포함된 세부 정보(facet)를 이용하여 기술될 수 있다. 상기 연결 제어 정보는 연결 제어 정보를 저장하는 요소(편의상, "연결 정보 요소"라 지칭)의 세부 정보에 포트 번호를 지정하여 복호 모듈 간의 연결 관계를 표현할 수 있다. 또한, 해당 연결 정보 요소의 하위 요소가 생성될 수 있고, 하위 요소는 두 모듈 간의 연결 관계뿐만 아니라 전송할 데이터의 크기 등 추가적인 연결 관계에 대한 정보를 저장할 수 있다. 복호 모듈 구성 정보를 XML 기반으로 기술하는 방법에 대해 관련 도면을 참조하여 후술하기로 한다.
도 4는 도 3의 복호화부의 일실시예 구성도이다.
도 4에 도시된 바와 같이, 복호화부(320)는 복원부(410), 복호 모듈 구성 정보 해석부(420), 복호 모듈 저장부(430), 복호화 모델 생성부(440), 복호 실행부(450) 및 저장부(460)를 포함한다.
복원부(410)는 분리부(310)로부터 입력된 압축된 복호 모듈 구성 정보를 복원(decompression)하여 XML 기반의 복호 모듈 구성 정보를 복호 모듈 구성 정보 해석부(420)로 출력한다. 본 실시예에 따르면, 복호 모듈 구성 정보는 높은 전송 효율을 위해 이진 코드로 압축되어 송신되며, 복원부(410)는 이진 코드로 압축된 수신 데이터를 XML 기반의 데이터로 복원한다. XLM 기반의 데이터를 이진 코드로 압축하고 복원하는 과정은 다양한 이진 코드 변환 방법이 적용될 수 있음은 자명하다. 물론, 복호 모듈 구성 정보가 압축되지 않고 수신되는 경우에는 복원부(410)는 생략될 수 있다.
복호 모듈 구성 정보 해석부(420)는 입력 받은 XML 기반의 복호 모듈 구성 정보를 해석하여 문맥 제어 정보, 연결 제어 정보 및 신택스 파싱 제어 정보를 검출하여 출력한다. 이 때, 복호 모듈 구성 정보 해석부(420)는 BSDL 스키마(schema) 표준(ISO/IEC 23001-5 BSDL)에서 정의하는 비트스트림의 구조 기술 방법에 따라 XML 형식으로 기술된 복호 모듈 구성 정보를 해석할 수 있다. 예를 들어, "bs2:if"라는 단위정보가 존재할 경우, 해당 구문이 나타내는 비트스트림의 인식 여부는 단위정보에 포함된 조건식을 통해 나타날 수 있다.
복호 모듈 저장부(430)는 미리 지정된 단위 복호 프로세스를 수행하는 복수의 복호 모듈들을 저장한다. 복수의 복호 모듈들에는 신택스 파싱을 수행하는 파싱 모듈 및 신택스 파싱된 데이터들을 디코딩하기 위한 프로세싱 모듈들이 포함된다.
파싱 모듈은 상기 신택스 파싱 제어 정보에 기반하여 입력되는 비트스트림을 신택스 파싱한다. 본 발명에 따른 파싱 모듈은 신택스 파싱 제어 정보를 이용함으로써 특정 비트스트림에 한정되지 않고, 다양한 비트스트림에 대해 신택스 파싱을 수행할 수 있다. 프로세싱 모듈의 일 예로는 역 DCT 연산을 수행하여 동영상을 복원하는 기능을 수행하는 I DCT 복호 모듈이 있을 수 있다.
복호 모듈 저장부(430)는 복호 실행부(450)의 요청에 따라 해당 복호 모듈을 출력한다. 또한 복호 모듈 저장부(430)는 사용자의 입력에 따라 새로운 복호 모듈을 추가하거나, 기존의 복호 모듈을 삭제할 수 있음은 자명하다.
복호화 모델 생성부(440)는 상기 연결 제어 정보를 이용하여 복호화 과정에 필요한 복호 모듈들 및 이들 상호 간의 연결 관계를 정의한 복호화 모델을 생성하여 출력한다. 상기 복호화 모델은 입력 데이터를 디코딩하는데 필요한 디코딩 모듈들이 파싱 모듈 후단에 유기적으로 연결된 구조로서, 블록 다이어그램 형태의 GUI로 구현되어 사용자에게 디스플레이될 수도 있다. 복호화 모델 생성부(440)는 복호 실행부(45)로 복호화 모델 및/또는연결 제어 정보를 출력한다.
복호 실행부(450)는 상기 복호화 모델 또는 연결 제어 정보를 이용하여 복호화 과정에 필요한 복호 모듈들을 복호 모듈 저장부(430)로부터 로딩하고 연결하여 재조합 디코더를 구성하고, 상기 신택스 파싱 제어 정보 및 문맥제어 정보를 이용하여 재조합 디코더를 구성하는 복호 모듈들을 통해 입력 데이터를 신택스 파싱하고 복호화 한다.
복호 실행부(450)의 프로세스를 더욱 상세히 설명하면 다음과 같다.
복호 실행부(450)는 분리부(310)로부터 부호화된 데이터를 입력 받는다. 이어서, 복호 실행부(450)는 상기 복호화 모델 또는 연결 제어 정보를 이용하여 파싱 모듈 및 디코딩에 필요한 프로세싱 모듈들을 로딩하고 연결하여 재조합 디코더를 형성한다. 상기 재조합 디코더는 파싱 모듈 후단에 복수의 프로세싱 모듈들이 유기적으로 연결된 구조이다.
이어서, 복호 실행부(450)는 신택스 파싱 제어 정보를 이용하여 파싱 모듈을 통해 입력된 부호화된 데이터를 신택스 파싱하고, 신택스 파싱된 데이터를 파싱 모듈 후단에 연결된 프로세싱 모듈로 출력함으로써, 입력 데이터에 대한 디코딩 프로세스를 수행한다. 이 때, 복호 실행부(250)는 파싱된 정보를 이용하여 문맥 제어 정보의 일부를 수정할 수 있다.
저장부(460)는 복호화 과정에서 필요한 정보를 임시로 저장하는 역할을 한다. 예를 들어, 저장부(460)는 파싱모듈로부터 신택스 파싱된 데이터 및 신택스 부가정보(예를 들어, 엘리먼트의 길이 정보, 출력 포트 정보)를 입력 받아 저장할 수 있다. 또한 저장부(460)는 복호모듈의 요청에 따라 저장하고 있던 정보를 복호 실행부(450)로 출력할 수 있다.
한편, 복호 모듈 구성 정보는 모든 복호 모듈 구성 정보들에 상응하는 정보가 반드시 포함되어야 하는 것은 아니며, 코덱번호(code#), 프로파일 및 레벨 번호(profile and level)를 포함할 수 있다. 코덱번호와 프로파일 및 레벨 번호가 포함되는 경우 복원부(410)는 기저장된 복호 모듈 구성 정보를 복호 모듈 구성 정보 해석부(420)로 출력할 수 있다. 또한, 복원부(410)는 코덱 번호와 프로파일 및 레벨번호 및 일부 복호 모듈에 대한 구성 정보를 입력 받았을 경우, 기저장된 복호 모듈 구성 정보를 일부 복호 모듈에 대한 구성 정보에 따라 수정하여 복호 모듈 구성 정보 해석부(420)로 출력할 수 있다.
이하, 신택스 파싱 제어 정보를 포함하고 있는 복호 모듈 구성 정보의 예를 들어, 본 발명에 따른 신택스 파싱 과정을 상세히 설명하기로 한다.
<xsd:element name="VideoObject">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="VOStartCode"
type="m4v:StartCodeType"/>
<xsd:element name="VOL">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="header" type="VOLHeaderType"
bs2:ifNext="&volSC;" rvc:port="0"/>
<xsd:element name="VOP"
type="VideoObjectPlaneType"
maxOccurs="unbounded"
bs2:ifNext="&vopSC;" rvc:port="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
상기 XML(즉, BDSL)로 작성된 복호 모듈 구성 정보는 전체 복호 모듈 구성 정보 중 신택스 파싱에 관련된 부분을 나타낸 것이다. 복호 모듈 구성 정보 해석부(420)는 입력된 정보를 XML 파싱 원칙에 따라 세부 정보(facet) 단위로 해석한다. 입력된 정보를 XML 파싱 원칙에 따라 추출한 신택스 파싱 제어 정보는 아래의 표 1과 같다.
표 1
요소 이름 요소 유형 상위 요소 세부 정보 (facet)
Type ifNext maxOccurs rvc:Port
VideoObject Sequence (root)
VOStartCode Node VideoObject m4v:StartCodeType
VOL Sequence VideoObject
Header Node VOL VOLHeaderType &volSC #0
VOP Node VOL VideoObjectPlaneType &vopSC Unbounded #1
파싱 모듈은 복호 실행부(450)로부터 신택스 파싱 제어 정보를 입력 받아 신택스 파싱을 수행한다. 이 때, 파싱 모듈은 엘리먼트 이름(element name)을 인덱스로 이용하여 각 엘리먼트의 세부 정보를 참조 할 수 있다. 세부 정보는 다음과 같이 신택스 파싱 과정을 정의한다.
-Type 세부 정보 : 엘리먼트의 비트길이 및 정보 형식(integer, float 등)을 나타낸다. VOP 요소의 Type은 "VideoObjectPlaneType"으로 BSDL 표준에서 각 타입에 대한 엘리먼트 비트 길이 및 정보 형식을 정의한다.
- ifNext 세부 정보 : 복호 실행부(450)는 BSDL 표준에 따라, 비트스트림의 정보가ifNext에 기재된 범위에 속할 경우에만 해당 엘리먼트의 정보를 사용할 수 있다.
-maxOccurs 세부 정보 : BSDL 표준에 따른 해당 엘리먼트가 비트스트림 상에서 반복하여 나타날 수 있는 최대수 를 나타낸다. 이 때, Unbounded는 무한 반복이 가능함을 지칭한다.
-rvc:Port 세부 정보 : 파싱 모듈의 출력 포트(output port)의 인덱스 번호를 나타낸다.
복호 실행부(450)는 파싱 모듈이 신택스 파싱한 데이터를 파싱 모듈의 출력 포트에 연결된 프로세싱 모듈로 출력하도록 제어한다. 또한 본 발명은 상술한 세부 정보 이외의 세부 정보를 이용할 수 있으며, 그 정의는BSDL schema 표준(ISO/IEC 23001-5 BSDL)에 따른다.
도 5는 본 발명의 일실시예에 따른 파싱 모듈의 구성도이다.
도 5에 도시된 바와 같이, 파싱 모듈은 정보 해석부(510), 파싱부(520), 포트 할당부(530) 및 복수의 출력 포트(제1 포트, 제2 포트, …, 제3 포트)로 구성되는 출력부(540)를 포함한다.
정보 해석부(510)는 복호 실행부(450)로부터 입력 받은 신택스 파싱 제어 정보를 분석하여 파싱할 비트스트림을 구성하는 데이터들의 길이 및 출력 포트 번호를 추출한다.
이하 본 발명의 일 실시예에 따른 복호 모듈 구성 정보를 예로 들어, 정보 해석부(510)의 데이터의 길이 및 출력 포트 정보를 산출하는 과정을 설명하도록 한다.
<xsd:element name="TestStream">
<xsd:complexType>
<xsd:sequence>
<xsd:element name=”syntax1” type=”b3” rvc:port=”1”/>
<xsd:element name=”syntax2” type=”b4” rvc:port=”2” />
<xsd:element name=”syntax3” type=”b2” rvc:port=”3” />
</xsd:sequence>
</xsd:complextype>
</xsd:element>
상기 XML(BDSL)로 작성된 복호 모듈 구성 정보는 전체 복호 모듈 구성 정보 중 신택스 파싱에 관련된 부분을 나타낸 것이다. 복호 모듈 구성 정보 해석부(420)가 입력된 복호 모듈 구성 정보를 XML 해석 원칙에 따라 추출한 신택스 파싱 제어 정보를 표 2에 예시하였다.
표 2
요소 이름 요소 유형 요소 노드 세부 정보 (facet)
Type rvc:Port
TestStream Sequence (root) (Hierarchical) N/A
Syntax1 Syntax TestStream b3 #1
Syntax2 Syntax TestStream b4 #2
Syntax3 Syntax TestStream b2 #3
위 실시예에서는 각 엘리먼트의 비트 길이는 표 2의 Type 세부 정보에 나타나 있다. 정보 해석부(510)는 추출된 신택스 파싱 제어 정보를 분석하여 데이터의 길이와 출력 포트 정보를 산출한다. 이 때, 정보 해석부(510)는 BSDL schema 표준(ISO/IEC 23001-5 BSDL)에서 정해진 형식에 따라 Type 세부 정보를 분석하여 데이터의 길이를 산출할 수 있다. 예를 들어, 정보 해석부(510)는 데이터1의 길이가 3비트 인 것을 Type 세부 정보 ‘b3’를 통해 파악한다. 이어서 정보 해석부(510)는 rvc:Port 세부 정보를 확인하여 데이터1의 출력 포트가 제1 포트인 것을 파악한다. 정보 해석부(510)는 데이터2 및 데이터3를 데이터1과 동일한 방법으로 길이 및 출력포트 번호를 추출할 수 있다.
또한, 정보 해석부(510)는 이전에 신택스 파싱한 데이터를 이용하여 Type 세부 정보를 분석할 수 있다. 예를 들어, 정보 해석부(510)는 이전에 파싱한 데이터를 이용하여 신택스 파싱 제어 정보를 분석하고 현재 데이터의 길이를 산출할 수 있다. 이 때, 정보 해석부(510)는 이전에 파싱한 데이터를 저장부(460)로 요청하여 입력 받을 수 있다.
정보 해석부(510)는 해당 데이터의 이름, 길이 및 출력 포트 번호를 파싱부(520)로 출력한다.
파싱부(520)는 정보 해석부(720)로부터 입력 받은 데이터의 길이 및 출력 포트 번호를 이용하여 입력 비트스트림을 신택스 파싱한다. 예를 들어, 파싱부(520)는 데이터1의 길이가 ‘3’인 것을 파악하고, 비트스트림으로부터 3비트를 추출한다. 파싱부(520)는 추출한 3비트의 데이터와 출력 포트 번호를 포트 할당부(530)로 출력한다.
포트 할당부(530)는 파싱부(520)으로부터 입력 받은 출력 포트 번호에 따라 입력된 데이터를 해당 출력 포트에 할당한다.
출력부(540)는 해당 출력 포트에 할당된 데이터를 연결 제어 정보에 따라 연결된 복호 모듈의 입력 포트로 출력한다. 예를 들어, 포트 할당부(530)는 데이터1을 제1 포트로 할당한다. 이어서, 출력부(540)는 데이터1을 해당 출력 포트와 연결된 복호 모듈의 입력 포트로 출력한다.
이후, 파싱 모듈은 데이터2 및 데이터3를 데이터1의 신택스 파싱 과정과 동일한 방식으로 파싱한다.
본 실시예에 따른 복호화 장치는 파싱 모듈이 신택스 파싱 제어 정보를 이용함으로써, 그 구조의 변동없이 다양한 신택스를 파싱할 수 있다. 따라서 본 실시예에 따른 복호화 장치가 실제 하드웨어 칩으로 구현될 경우, 하나의 하드웨어 칩으로 다양한 형식으로 부호화된 비트스트림의 실시간 복호화를 보장할 수 있다.
이하, 발명의 일실시예에 따라 XML 형식으로 기술된 연결 제어 정보 및 문맥 제어 정보를 설명하도록 한다.
도 6는 본 발명의 실시예에 따른 1-D IDCT을 구현하기 위해 연결된 복호 모듈을 예시한 도면이고, 도 7은 본 발명에 일실시예에 따른 2-D IDCT을 구현하기 위해 연결된 복호 모듈을 예시한 도면이다.
본 발명의 일실시예에 따라 XML으로 기술된 복호 모듈 구성 정보에 포함된 연결 제어 정보는 하기의 표 3에 예시된 바와 같은 요소(element)를 이용하여 기술된다.
표 3
Network 복호모듈들이 연결된 구성의 식별 정보부가적 속성: @name-구성의 이름, @version-구성의 현재 버전부가적 하위 요소: Package, Decl, Port, Instance, Connection
Package QID(Qualified identifier, 계층적 구조에서 위치를 나타내는 식별자)를 나타내는 요소필수 하위 요소: QID
Decl[@kind="Param"] 복호 모듈 구성의 파라미터의 선언필수 속성: @name-파라미터의 이름부가적 하위 요소: Type-파라미터의 타입
Decl[@kind="Var"] 변수의 선언필수 속성: @name-변수 이름필수 하위 요소: Expr- 변수의 값부가적 하위 요소: Type- 변수의 타입
Port 복호 모듈 구성의 포트의 선언필수 속성: @name-포트의 이름, @kind-입력 또는 출력 포트 구별 정보부가적 하위 요소: Type-포트의 타입
Instance 복호 모듈의 인스턴스 생성인스턴스 생성은 2가지의 파트로 이루어짐 : (1)복호 모듈의 클래스 , 파라미터 값의 리스트 정의, (2) 파라미터의 계산을 위한 expression(추후 설명) 정의
Connection 복호 모듈 구성에서 두 개의 포트 사이의 연결 관계를 표현필수 속성: @src-소스 복호 모듈의 ID, @dst-대상 복호 모듈의 ID부가적 하위 요소: Attribute-Connection의 부가적 속성
상기 표 3에 기술된 바와 같이, 연결 제어 정보는 소정의 복호 모듈들이 연결된 구성의 식별 정보인 네트워크(Network), 계층적 구조에서의 위치를 나타내는 식별 정보(Package 또는 QID), 복호 모듈의 포트 정보(Port) 및 서로 연결되는 복호 모듈 간의 입출력 포트 연결 정보(Connection)등을 포함한다.
표 4는 본 발명의 일실시예에 따라XML으로 기술된 복호 모듈 구성 정보에 포함된 문맥 제어 정보를 예시한 표이다.
표 4
Expr[@kind="Literal"] 상수
Expr[@kind="Literal"][@literal-kind="Boolean"] Boolean 타입의 상수필수 속성: @value-0 또는 1
Expr[@kind="Literal"][@literal-kind="Integer"] Integer 타입의 상수필수 속성: @value-정수값
Expr[@kind="Literal"][@literal-kind="Real"] Real 타입의 상수필수 속성: @value-정수값
Expr[@kind="Literal"][@literal-kind="String"] String 타입의 상수필수 속성: @value-문장
Expr[@kind="Literal"][@literal-kind="Character"] Character 타입의 상수필수 속성: @value-문자
Expr[@kind="Var"] 변수필수 속성: @name-변수의 이름
Expr[@kind="Application"] 특정 함수의 표현과 인수를 나타냄필수 속성: Expr- 함수의 표현, Args-인수
Expr[@kind="UnaryOp"] 단항 연산 함수필수 하위 요소:Op-연산자 , Expr-연산수의 표현
Expr[@kind="BinOpSeq"] 2항 연산함수필수 하위 요소: Op-연산자, Expr-연산수의 표현
이하 표 5은 본 발명의 일실시예에 따라 상술한 요소를 보조하여 인수 또는 연산자의 단항 여부를 나타내는 요소를 예시한 표이다.
표 5
Args 함수의 인수필수 하위 요소: Expr-인수 표현
Op 연산자가 단항인지 2항인지 구분필수 속성:@name-연산자 이름
하기 표 6는 본 발명의 일실시예에 따라 변수나 포트의 선언할 때 사용되는 타입 요소를 예시한 표이다.
표 6
Type 데이터 타입을 나타냄필수 하위 속성: @name-타입의 이름부가적 하위 요소: Entry- 객체를 파라미터와 연결하는 엔트리
Entry[@kind="Expr"] 타입의 값 파라미터필수 속성:@name-파라미터의 이름필수 하위 요소:Expr-속성 값을 계산하는데 사용되는 표현
Entry[@kind="Type"] 타입의 타입 파라미터필수 속성:@name-파라미터의 이름필수 하위 요소:Type-파리미터의 가능한 타입
하기의 표 7는 본 발명의 일실시예에 따라 상술한 요소 이외에 추가적으로 정의된 요소를 예시한 표이다.
표 7
Attribute 복호 모듈의 연결 관계에 대한 추가적인 정보를 나타내는 요소4가지의 종류가 있음1. flag: 이름정보2. String attributes: 문장에 관한 정보3. Value attributes: Expr 요소에 의한 표현4. Custom attributes: 모든 종류의 정보부가적 속성:@value- String attributes의 값부가적 하위 요소: Expr- Value attributes의 값
QID 계층적 구조에서 위치를 나타내는 식별자부가적 하위 요소: ID
ID 식별자필수 속성:@id-식별자
Class 복호 모듈의 클래스필수 속성:@name-클래스의 이름
Parameter 파라미터의 표현을 정의필수 속성: @name-파라미터 이름필수 하위 요소: Expr-파라미터의 값을 산출하기 위한 표현
Note 주석
본 발명의 일실시예에 따른 복호 모듈 구성 정보에는 표 3 내지 표 7에서 설명한 요소를 이용하여 연결 제어 정보 및 문맥 제어 정보가 기술될 수 있다.
도 6에 예시된 1-D IDCT의 복호 모듈 구성을 표현하기 위한 복호 모듈 구성 정보에는 표 3 내지 표 7에서 설명한 요소를 이용하여 연결 제어 정보 및 문맥 제어 정보가 다음과 같이 XML로 기술될 수 있다.
<Network name="idct1d">
<Package>
<QID>
<ID id="mpeg4"/>
</QID>
</Package>
<Decl kind="Var" name="MEM_SZ">
<Expr kind="Literal" literal-kind="Integer" value="16"/>
</Decl>
<Decl kind="Var" name="COEFF_SZ">
<Expr kind="Literal" literal-kind="Integer" value="14"/>
</Decl>
<Decl kind="Var" name="SCALE_SZ">
<Expr kind="Literal" literal-kind="Integer" value="30"/>
</Decl>
<Decl kind="Var" name="ACC_SZ">
<Expr kind="Literal" literal-kind="Integer" value="32"/>
</Decl>
<Port kind="Input" name="X0"/>
<Port kind="Input" name="X1"/>
<Port kind="Input" name="ROW"/>
<Port kind="Output" name="Y0"/>
<Port kind="Output" name="Y1"/>
<Port kind="Output" name="Y2"/>
<Port kind="Output" name="Y3"/>
<Instance id="1">
<Class name="Scale">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="isz">
<Expr kind="Var" name="MEM_SZ"/>
</Parameter>
<Parameter name="osz">
<Expr kind="Var" name="SCALE_SZ"/>
</Parameter>
<Parameter name="csz">
<Expr kind="Var" name="COEFF_SZ"/>
</Parameter>
<Note kind="label" value="scale"/>
</Instance>
<Instance id="2">
<Class name="Combine">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="isz">
<Expr kind="Var" name="SCALE_SZ"/>
</Parameter>
<Parameter name="osz">
<Expr kind="Var" name="ACC_SZ"/>
</Parameter>
<Note kind="label" value="combine"/>
</Instance>
<Instance id="3">
<Class name="ShuffleFly">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="sz">
<Expr kind="Var" name="ACC_SZ"/>
</Parameter>
<Note kind="label" value="fly"/>
</Instance>
<Instance id="4">
<Class name="Shuffle">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="sz">
<Expr kind="Var" name="ACC_SZ"/>
</Parameter>
<Note kind="label" value="shuffle"/>
</Instance>
<Instance id="5">
<Class name="Final">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="isz">
<Expr kind="Var" name="ACC_SZ"/>
</Parameter>
<Parameter name="osz">
<Expr kind="Var" name="ACC_SZ"/>
</Parameter>
<Note kind="label" value="final"/>
</Instance>
<Connection src="" src-port="X0" dst="1" dst-port="X0"/>
<Connection src="" src-port="X1" dst="1" dst-port="X1"/>
<Connection src="" src-port="ROW" dst="2" dst-port="ROW"/>
<Connection src="1" src-port="Y0" dst="2" dst-port="X0"/>
<Connection src="1" src-port="Y1" dst="2" dst-port="X1"/>
<Connection src="1" src-port="Y2" dst="2" dst-port="X2">
<Attribute name="bufferSize" value="7"/>
</Connection>
<Connection src="1" src-port="Y3" dst="2" dst-port="X3"/>
<Connection src="2" src-port="Y0" dst="3" dst-port="X0"/>
<Connection src="2" src-port="Y1" dst="3" dst-port="X1"/>
<Connection src="3" src-port="Y0" dst="4" dst-port="X0"/>
<Connection src="3" src-port="Y1" dst="4" dst-port="X1"/>
<Connection src="3" src-port="Y2" dst="4" dst-port="X2"/>
<Connection src="3" src-port="Y3" dst="4" dst-port="X3"/>
<Connection src="4" src-port="Y0" dst="5" dst-port="X0"/>
<Connection src="4" src-port="Y1" dst="5" dst-port="X1"/>
<Connection src="4" src-port="Y2" dst="5" dst-port="X2"/>
<Connection src="4" src-port="Y3" dst="5" dst-port="X3"/>
<Connection src="5" src-port="Y0" dst="" dst-port="Y0"/>
<Connection src="5" src-port="Y1" dst="" dst-port="Y1"/>
<Connection src="5" src-port="Y2" dst="" dst-port="Y2"/>
<Connection src="5" src-port="Y3" dst="" dst-port="Y3"/>
</Network>
도 7에 예시된 1-D IDCT의 복호 모듈 구성을 표현하기 위한 복호 모듈 구성 정보에는 표 3 내지 표 7에서 설명한 요소를 이용하여 연결 제어 정보 및 문맥 제어 정보가 다음과 같이 XML로 기술될 수 있다.
<Network name="idct2d">
<Package>
<QID>
<ID id="mpeg4"/>
</QID>
</Package>
<Decl kind="Var" name="INP_SZ">
<Expr kind="Literal" literal-kind="Integer" value="12"/>
</Decl>
<Decl kind="Var" name="MEM_SZ">
<Expr kind="Literal" literal-kind="Integer" value="16"/>
</Decl>
<Decl kind="Var" name="OUT_SZ">
<Expr kind="Literal" literal-kind="Integer" value="10"/>
</Decl>
<Decl kind="Var" name="PIX_SZ">
<Expr kind="Literal" literal-kind="Integer" value="9"/>
</Decl>
<Port kind="Input" name="in"/>
<Port kind="Input" name="signed"/>
<Port kind="Output" name="out"/>
<Instance id="1">
<Class name="RowSort">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="sz">
<Expr kind="Var" name="INP_SZ"/>
</Parameter>
<Note kind="label" value="sort"/>
</Instance>
<Instance id="2">
<Class name="FairMerge">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="rsz">
<Expr kind="Var" name="INP_SZ"/>
</Parameter>
<Parameter name="csz">
<Expr kind="Var" name="MEM_SZ"/>
</Parameter>
<Note kind="label" value="merge"/>
</Instance>
<Instance id="3">
<Class name="Downsample">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Note kind="label" value="downsample"/>
</Instance>
<Instance id="4">
<Class name="idct1d">
<QID>
<ID id="mpeg4"/>
</QID>
</Class>
<Note kind="label" value="idct1d"/>
</Instance>
<Instance id="5">
<Class name="Separate">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="isz">
<Expr kind="Var" name="MEM_SZ"/>
</Parameter>
<Parameter name="rsz">
<Expr kind="Var" name="MEM_SZ"/>
</Parameter>
<Parameter name="csz">
<Expr kind="Var" name="OUT_SZ"/>
</Parameter>
<Note kind="label" value="demux"/>
</Instance>
<Instance id="6">
<Class name="Transpose">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="sz">
<Expr kind="Var" name="MEM_SZ"/>
</Parameter>
<Note kind="label" value="transpose"/>
</Instance>
<Instance id="7">
<Class name="Retranspose">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="isz">
<Expr kind="Var" name="MEM_SZ"/>
</Parameter>
<Parameter name="osz">
<Expr kind="Var" name="OUT_SZ"/>
</Parameter>
<Note kind="label" value="retranspose"/>
</Instance>
<Instance id="8">
<Class name="Clip">
<QID>
<ID id="cal"/>
</QID>
</Class>
<Parameter name="isz">
<Expr kind="Var" name="OUT_SZ"/>
</Parameter>
<Parameter name="osz">
<Expr kind="Var" name="PIX_SZ"/>
</Parameter>
<Note kind="label" value="clip"/>
</Instance>
<Connection src="" src-port="in" dst="1" dst-port="ROW"/>
<Connection src="" src-port="signed" dst="8" dst-port="SIGNED"/>
<Connection src="1" src-port="Y0" dst="2" dst-port="R0"/>
<Connection src="1" src-port="Y1" dst="2" dst-port="R1"/>
<Connection src="2" src-port="Y0" dst="4" dst-port="X0"/>
<Connection src="2" src-port="Y1" dst="4" dst-port="X1"/>
<Connection src="2" src-port="ROWOUT" dst="3" dst-port="R"/>
<Connection src="2" src-port="ROWOUT" dst="4" dst-port="ROW"/>
<Connection src="3" src-port="R2" dst="5" dst-port="ROW"/>
<Connection src="4" src-port="Y0" dst="5" dst-port="X0"/>
<Connection src="4" src-port="Y1" dst="5" dst-port="X1"/>
<Connection src="4" src-port="Y2" dst="5" dst-port="X2"/>
<Connection src="4" src-port="Y3" dst="5" dst-port="X3"/>
<Connection src="5" src-port="R0" dst="6" dst-port="X0"/>
<Connection src="5" src-port="R1" dst="6" dst-port="X1"/>
<Connection src="5" src-port="R2" dst="6" dst-port="X2"/>
<Connection src="5" src-port="R3" dst="6" dst-port="X3"/>
<Connection src="5" src-port="C0" dst="7" dst-port="X0"/>
<Connection src="5" src-port="C1" dst="7" dst-port="X1"/>
<Connection src="5" src-port="C2" dst="7" dst-port="X2"/>
<Connection src="5" src-port="C3" dst="7" dst-port="X3"/>
<Connection src="6" src-port="Y0" dst="2" dst-port="C0"/>
<Connection src="6" src-port="Y1" dst="2" dst-port="C1"/>
<Connection src="7" src-port="Y" dst="8" dst-port="I"/>
<Connection src="8" src-port="O" dst="" dst-port="out"/>
</Network>
도 8은 본 발명의 다른 실시예에 다른 복호화 모델 생성부의 구성도이다.
도 8에 도시된 바와 같이, 복호화 모델 생성부(440)는 파서 생성부(810) 및 모델 생성부(820)를 포함한다.
파서 생성부(810)는 복호모듈 구성 정보 해석부(420)로부터 입력 받은 신택스 파싱 제어 정보 및 문맥 제어 정보를 이용하여 파싱 모듈을 생성한다. 이 때, 생성된 파싱 모듈은 특정 비트스트림 구조에 제한적으로 대응하여 파싱할 수 있다. 파서 생성부(810)는 생성된 파싱 모듈과 문맥 제어 정보를 모델 생성부(820)으로 출력한다.
모델 생성부(820)는 복호모듈 구성 정보 해석부(820)로부터 연결 제어 정보를 입력 받는다.
이어서, 모델 생성부(820)는 파싱 모듈, 문맥 제어 정보 및 연결제어 정보를 이용하여 복호화 모델을을 생성한다. 예를 들어, 모델 생성부(820)는 파싱 모듈을 이용하여 복호화 모델의 신택스 파싱에 관해 정의한다. 또한, 모델 생성부(820)는 문맥 제어 정보 및 연결제어 정보를 이용하여 복호 모듈간의 연결 관계를 복호화 모델에 정의한다. 복호화 모델은 복호 모듈의 내부 프로세스 또는 복호 모듈 저장부(430)에 저장된 복호 모듈의 참조 주소를 포함할 수 있다. 따라서 복호화 모델은 복호화 프로세스를 전부 포함하거나, 복호 모듈 저장부(430)의 복호 모듈을 참조하여 전체 복호화 프로세스를 나타낼 수 있다. 이어서 모델 생성부(820)는 복호화 모델을 복호 실행부(450)로 출력한다.
복호 실행부(450)는 입력 받은 복호화 모델을 이용하여 부호화된 데이터를 복호화한다. 예를 들어, 복호 실행부(450)는 분리부(310)로부터 부호화된 데이터를 입력 받아 복호화 모델에 정의된 파싱 모듈에 따라 부호화된 데이터를 신택스 파싱한다. 이 때, 복호 실행부(250)는 파싱된 정보를 이용하여 문맥 제어 정보의 일부를 수정할 수 있다. 이어서 복호 실행부(450)는 복호화 모델에 정의된 연결 제어 정보, 문맥 제어 정보에 따라 복호 모듈 저장부(430)로부터 필요한 복호 모듈을 로드(load)하여 부호화된 데이터를 복호화한다. 물론 부호화된 데이터를 디코딩하기 위한 복호 모듈은 복호화 모델에 포함될 수 있음은 자명하다. 본 실시예에 따른 복호화 장치를 실제 하드웨어로 제작할 경우, 복호 모듈 구성 정보를 하드웨어 설계 언어 (HDL, Hardware Description Language) 로 변환하고, 변환된 HDL을 이용하여 하드웨어 칩을 제작할 수 있다. 이러한 방식은 기존에 셋탑 박스(Set-top box), DTV 컨버터(converter), PMP, DMB 플레이어(player) 등에서 널리 활용되는 코덱 칩에 기반한 설계와 폭넓게 호환될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을것이다.
영상 코덱에 이용할 수 있다.

Claims (15)

  1. 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 장치로서,
    외부로부터 수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하여 출력하는 분리부;
    미리 정해진 단위의 부분 디코딩 프로세스를 수행하는 복수의 복호 모듈을 저장하는 복호 모듈 저장부;
    상기 복호 모듈 구성 정보에 따라 상기 부호화된 데이터를 분석하여 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하여 출력하는 복호 모듈 구성 정보 해석부; 및
    상기 연결 제어 정보를 이용하여 상기 복호 모듈 저장부로부터 대상 복호 모듈들을 로딩하고 연결하여 재조합 디코더를 형성하며, 상기 재조합 디코더를 이용하여 상기 신택스 파싱 제어 정보에 따라 상기 부호화된 데이터를 디코딩하는 복호 실행부를 포함하는 적응적 복호화 장치.
  2. 제1 항에 있어서,
    상기 복수의 복호 모듈은,
    상기 신택스 파싱 제어 정보를 이용하여 상기 부호화된 데이터를 신택스 파싱하여 출력하는 파싱 모듈; 및
    신택스 파싱된 데이터를 디코딩하기 위한 복수의 프로세싱 모듈을 포함하는 적응적 복호화 장치.
  3. 제1 항 또는 제2항에 있어서,
    상기 파싱 모듈은,
    하나 이상의 출력 포트를 포함하는 출력부;
    상기 신택스 파싱 제어 정보를 이용하여 상기 부호화된 데이터를 구성하는 데이터의 길이 및 출력 포트 번호를 추출하는 정보 해석부;
    상기 부호화된 데이터로부터 상기 길이에 상응하는 부분 데이터들을 추출하는 파싱부; 및
    상기 출력 포트 번호에 따라 상기 부분 데이터들을 상응하는 출력 포트로 할당하여 상기 출력부로 제공하는 포트 할당부를 포함하는 것을 특징으로 하는 적응적 복호화 장치.
  4. 제1 항 내지 제3항 중 어느 하나의 항에 있어서,
    상기 신택스 파싱 제어 정보는 상기 부호화된 데이터를 구성하는 부분 데이터들의 순서, 길이 및 출력 포트 정보 중 하나 이상을 포함하는 것을 특징으로 하는 적응적 복호화 장치.
  5. 제1 항에 있어서,
    상기 연결 제어 정보는 상기 복수의 복호 모듈에 대한 포트 정보, 상기 복수의 복호 모듈 상호간 입출력 포트 연결 정보 및 상기 복수의 복호 모듈에 대한 계층적 구조에서의 위치에 대한 식별 정보 중 하나 이상을 포함하는 적응적 복호화 장치.
  6. 제1 항에 있어서,
    상기 복호 모듈 구성 정보가 이진 코드로 압축된 경우, 상기 이진 코드로 압축된 상기 복호 모듈 구성 정보를 복원하여 출력하는 복원부를 더 포함하는 것을 특징으로 하는 적응적 복호화 장치.
  7. 제1 항 또는 제6항에 있어서
    상기 복호 모듈 구성 정보는 XML(extensible markup language)에 기반하여 기술되는 것을 특징으로 하는 적응적 복호화 장치.
  8. 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 장치로서,
    수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하여 출력하는 분리부;
    미리 정해진 단위의 부분 디코딩 프로세스를 수행하는 복수의 복호 모듈을 저장하는 복호 모듈 저장부;
    상기 복호 모듈 구성 정보에 따라 상기 부호화된 데이터를 분석하여 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하여 출력하는 복호 모듈 구성 정보 해석부;
    상기 연결 제어 정보를 이용하여 상기 부호화된 데이터의 복호화 과정에 필요한 대상 복호 모듈들 및 상기 대상 복호 모듈들간의 연결 관계를 나타내는 복호화 모델을 생성하는 복호화 모델 생성부; 및
    상기 복호화 모델을 이용하여 상기 복호 모듈 저장부로부터 상기 대상 복호 모듈들을 로딩하고 연결하여 재조합 디코더를 형성하고, 상기 재조합 디코더를 통해 상기 신택스 파싱 제어 정보에 따라 상기 부호화된 데이터를 신택스 파싱하고 디코딩하는 복호 실행부를 포함하는 적응적 복호화 장치.
  9. 적응적 부호화 장치가 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 방법에 있어서,
    수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하는 단계;
    상기 복호 모듈 구성 정보를 이용하여 상기 부호화된 데이터에 대한 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하는 단계;
    미리 설정된 복수의 복호 모듈 중에서 상기 연결 정보에 따른 하나 이상의 복호 모듈을 로딩하고 연결하여 재조합 디코더를 형성하는 단계; 및
    상기 재조합 디코더를 통해 상기 신택스 파싱 제어 정보를 이용하여 상기 부호화된 데이터를 신택스 파싱하고 디코딩하는 단계를 포함하는 적응적 복호화 방법.
  10. 제9 항에 있어서,
    상기 재조합 디코더를 형성하는 단계는-상기 복호 모듈은 상기 부호화된 데이터를 신택스 파싱하기 위한 파싱 모듈 및 상기 신택스 파싱된 데이터를 디코딩하기 위한 복수의 프로세스 모듈을 포함함;
    상기 부호화된 데이터를 신택스 파싱하기 위한 파싱 모듈을 로딩하는 단계; 및
    상기 연결 제어 정보에 따라 상기 파싱 모듈의 후단에 상기 복수의 프로세스 모듈을 로딩하고 연결하여 상기 재조합 디코더를 형성하는 단계를 포함하는 것을 특징으로 하는 적응적 복호화 방법.
  11. 제9 항에 있어서,
    상기 재조합 디코더를 통해 상기 신택스 파싱 제어 정보를 이용하여 상기 부호화된 데이터를 신택스 파싱하고 디코딩하는 단계는,
    상기 신택스 파싱 제어 정보를 이용하여 상기 부호화된 데이터를 구성하는 부분 데이터들에 대한 길이 및 출력 포트 번호를 각각 추출하는 단계;
    상기 부호화된 데이터에서 추출된 상기 길이에 상응하는 부분 데이터를 추출하는 단계; 및
    상기 부분 데이터를 상기 출력 포트 번호에 상응하는 출력 포트에 할당하여 출력하는 단계를 포함하는 것을 특징으로 하는 적응적 복호화 방법.
  12. 제9 항에 있어서,
    상기 복호 모듈 구성 정보를 이용하여 상기 부호화된 데이터에 대한 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하는 단계 이전에,
    상기 복호 모듈 구성 정보가 압축된 경우, 압축된 복호 모듈 구성 정보를 복원하는 단계를 더 포함하는 적응적 복호화 방법.
  13. 제9 항에 있어서,
    상기 신택스 파싱 제어 정보는 상기 부호화된 데이터를 구성하는 부분 데이터들의 순서, 길이 및 출력 포트 정보 중 하나 이상을 포함하는 것을 특징으로 하는 적응적 복호화 방법.
  14. 제9 항에 있어서,
    상기 연결 제어 정보는 상기 복수의 복호 모듈에 대한 포트 정보, 상기 복수의 복호 모듈 상호간 입출력 포트 연결 정보 및 상기 복수의 복호 모듈에 대한 계층적 구조에서의 위치에 대한 식별 정보 중 하나 상을 포함하는 적응적 복호화 방법.
  15. 적응적 부호화 장치가 입력 데이터의 부호화 형식에 기반하여 적응적으로 디코딩 프로세스를 구성하는 적응적 복호화 방법에 있어서,
    수신된 입력 데이터로부터 복호 모듈 구성 정보 및 부호화된 데이터를 분리하는 단계;
    상기 복호 모듈 구성 정보를 이용하여 상기 부호화된 데이터에 대한 신택스 파싱 제어 정보 및 연결 제어 정보를 생성하는 단계;
    상기 연결 제어 정보를 이용하여 상기 부호화된 데이터의 복호화를 위한 복호 모듈들 및 상기 복호 모듈들간의 상호 연결 관계를 나타내는 복호화 모델을 생성하는 단계;
    상기 복호화 모델을 이용하여 미리 설정된 복수의 복호 모듈 중에서 하나 이상의 복호 모듈을 로딩하고 연결하여 재조합 디코더를 형성하는 단계; 및
    상기 재조합 디코더를 통해 상기 신택스 파싱 제어 정보를 이용하여 상기 부호화된 데이터를 신택스 파싱하고 디코딩하는 단계를 포함하는 적응적 복호화 방법.
PCT/KR2009/001847 2008-04-10 2009-04-10 적응적 복호화 장치 및 방법 WO2009125993A2 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/937,514 US8774285B2 (en) 2008-04-10 2009-04-10 Method and apparatus for adaptive decoding

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2008-0033011 2008-04-10
KR1020080033011A KR101419885B1 (ko) 2008-04-10 2008-04-10 적응적 복호화 장치 및 방법

Publications (2)

Publication Number Publication Date
WO2009125993A2 true WO2009125993A2 (ko) 2009-10-15
WO2009125993A3 WO2009125993A3 (ko) 2010-01-07

Family

ID=41162405

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2009/001847 WO2009125993A2 (ko) 2008-04-10 2009-04-10 적응적 복호화 장치 및 방법

Country Status (3)

Country Link
US (1) US8774285B2 (ko)
KR (1) KR101419885B1 (ko)
WO (1) WO2009125993A2 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9083972B2 (en) * 2005-07-20 2015-07-14 Humax Holdings Co., Ltd. Encoder and decoder
KR101372418B1 (ko) * 2007-10-19 2014-03-12 (주)휴맥스 비트스트림 디코딩 장치 및 방법
TWI476761B (zh) * 2011-04-08 2015-03-11 Dolby Lab Licensing Corp 用以產生可由實施不同解碼協定之解碼器所解碼的統一位元流之音頻編碼方法及系統
US10009606B2 (en) * 2012-10-11 2018-06-26 Nvidia Corporation Low power context adaptive binary arithmetic decoder engine
CN115860034B (zh) * 2023-02-14 2023-06-20 北京紫光青藤微系统有限公司 解码方法、解码装置、解码芯片及扫码设备
CN117153215B (zh) * 2023-10-26 2024-01-23 长鑫存储技术有限公司 一种控制电路和存储器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020176508A1 (en) * 1994-10-11 2002-11-28 Boyce Jill Macdonald Methods and apparatus for decoding and displaying multiple digital images in parallel
US20050265449A1 (en) * 2004-05-29 2005-12-01 Yoon Suk-Hyun Methods, circuits, and computer program products for syntax parsing in H.264 compliant video decoders
US20060126744A1 (en) * 2004-12-10 2006-06-15 Liang Peng Two pass architecture for H.264 CABAC decoding process

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6339616B1 (en) 1997-05-30 2002-01-15 Alaris, Inc. Method and apparatus for compression and decompression of still and motion video data based on adaptive pixel-by-pixel processing and adaptive variable length coding
US6148033A (en) 1997-11-20 2000-11-14 Hitachi America, Ltd. Methods and apparatus for improving picture quality in reduced resolution video decoders
JP3894280B2 (ja) 2001-02-02 2007-03-14 インターナショナル・ビジネス・マシーンズ・コーポレーション Xmlデータの符号化方法、符号化されたxmlデータの復号化方法、xmlデータの符号化システム、符号化されたxmlデータの復号化システム、プログラムおよび記録媒体
US8884791B2 (en) * 2004-06-29 2014-11-11 St-Ericsson Sa Keypad scanning with radio event isolation
US7804903B2 (en) * 2005-06-27 2010-09-28 Intel Corporation Hardware-based CABAC decoder

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020176508A1 (en) * 1994-10-11 2002-11-28 Boyce Jill Macdonald Methods and apparatus for decoding and displaying multiple digital images in parallel
US20050265449A1 (en) * 2004-05-29 2005-12-01 Yoon Suk-Hyun Methods, circuits, and computer program products for syntax parsing in H.264 compliant video decoders
US20060126744A1 (en) * 2004-12-10 2006-06-15 Liang Peng Two pass architecture for H.264 CABAC decoding process

Also Published As

Publication number Publication date
US8774285B2 (en) 2014-07-08
KR101419885B1 (ko) 2014-07-16
KR20090107641A (ko) 2009-10-14
WO2009125993A3 (ko) 2010-01-07
US20110032985A1 (en) 2011-02-10

Similar Documents

Publication Publication Date Title
WO2021086016A2 (en) Apparatus and method for performing artificial intelligence (ai) encoding and ai decoding on image
WO2014081226A1 (ko) 영상 디코딩 방법 및 이를 이용하는 장치
WO2014003515A1 (ko) 멀티미디어 시스템에서 적응적 미디어 구조 송신 방법 및 장치
WO2009125993A2 (ko) 적응적 복호화 장치 및 방법
WO2015076616A1 (ko) 신호 송수신 장치 및 신호 송수신 방법
WO2014104725A1 (ko) 영상의 부호화/복호화 방법 및 이를 이용하는 장치
WO2011040795A2 (ko) 분할 레이어를 이용한 영상 부호화/복호화 방법 및 장치
WO2011096741A2 (en) Method and apparatus for encoding video based on scanning order of hierarchical data units, and method and apparatus for decoding video based on scanning order of hierarchical data units
WO2009128653A2 (ko) 멀티미디어의 컨텐트 특성에 기반한 멀티미디어 부호화 방법 및 장치, 멀티미디어의 컨텐트 특성에 기반한 멀티미디어 복호화 방법 및 장치
WO2014073927A1 (ko) 신호 송수신 장치 및 신호 송수신 방법
WO2021033867A1 (en) Decoding apparatus and operating method of the same, and artificial intelligence (ai) up-scaling apparatus and operating method of the same
WO2011126272A2 (en) Method and apparatus for encoding video by using dynamic-range transformation, and method and apparatus for decoding video by using dynamic-range transformation
WO2018217024A1 (ko) 다양한 블록 크기를 지원하는 영상 부호화 또는 복호화를 위한 장치 및 방법
WO2018044142A1 (ko) 영상 부호화/복호화 방법 및 이를 위한 장치
WO2012044104A2 (ko) 계층적 구조의 심볼을 부호화하는 비디오 부호화 방법 및 그 장치, 계층적 구조의 심볼을 복호화하는 비디오 복호화 방법 및 그 장치
WO2014171807A1 (en) Video encoding method and apparatus, and video decoding method and apparatus based on signaling of sample adaptive offset parameters
WO2018070552A1 (ko) 영상을 부호화/복호화 하는 방법 및 그 장치
WO2016024794A1 (ko) 방송신호 전송방법, 방송신호 수신방법, 방송신호 전송장치, 방송신호 수신장치
WO2014073853A1 (ko) 신호 송수신 장치 및 신호 송수신 방법
WO2021251611A1 (en) Apparatus and method for performing artificial intelligence encoding and decoding on image by using low-complexity neural network
WO2020222588A1 (ko) 적응적 모션 벡터 해상도를 이용한 비디오 신호 처리 방법 및 장치
WO2018124332A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2015152668A1 (ko) 방송신호 전송방법, 방송신호 수신방법, 방송신호 전송장치, 방송신호 수신장치
WO2014107069A1 (ko) 영상 부호화/복호화 방법 및 장치
WO2020080782A1 (en) Artificial intelligence (ai) encoding device and operating method thereof and ai decoding device and operating method thereof

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09729964

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 12937514

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2010146136

Country of ref document: RU

122 Ep: pct application non-entry in european phase

Ref document number: 09729964

Country of ref document: EP

Kind code of ref document: A2