WO2008127079A1 - Bitstream decoding device and method - Google Patents

Bitstream decoding device and method Download PDF

Info

Publication number
WO2008127079A1
WO2008127079A1 PCT/KR2008/002179 KR2008002179W WO2008127079A1 WO 2008127079 A1 WO2008127079 A1 WO 2008127079A1 KR 2008002179 W KR2008002179 W KR 2008002179W WO 2008127079 A1 WO2008127079 A1 WO 2008127079A1
Authority
WO
WIPO (PCT)
Prior art keywords
datum
bitstream
decoding
information
decoder
Prior art date
Application number
PCT/KR2008/002179
Other languages
French (fr)
Inventor
Euee-Seon Jang
Sun-Young Lee
Hyun-Gyu Kim
Chung-Ku Lee
Original Assignee
Humax Co., Ltd.
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 Humax Co., Ltd. filed Critical Humax Co., Ltd.
Priority to EP08741424A priority Critical patent/EP2147552A4/en
Priority to JP2010503974A priority patent/JP5238018B2/en
Priority to CN2008800204181A priority patent/CN101682754B/en
Publication of WO2008127079A1 publication Critical patent/WO2008127079A1/en
Priority to US12/580,867 priority patent/US8582661B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6336Control signals issued by server directed to the network components or client directed to client directed to decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/8193Monomedia components thereof involving executable data, e.g. software dedicated tools, e.g. video decoder software or IPMP tool
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]

Definitions

  • the present invention relates to a bitstream decoding device and a method thereof, more specifically to a bitstream decoding device and a method thereof that uses a BSDL schema.
  • a video is converted to a bitstream by an encoder.
  • the bitstream is stored depending on a coding type that satisfies the constraint condition of the encoder.
  • MPEG requests syntax and semantics, which are the constraint condition of the encoder.
  • the syntax which refers to the structure, format, or length of data, shows the sequence of expressing the data.
  • the syntax is to meet a rule for encoding / decoding and defines the sequence and length of each element of the bitstream and a corresponding data format.
  • the semantics refers to the meaning of each bit that constitutes data. In other words, the semantics shows the meaning of each element of the bitstream.
  • bitstream can be generated in various types depending on the encoding condition or the applied standard (or codec) of the encoder.
  • each standard e.g. MPEG-I, MPEG-2, MPEG-4 and MPEG-4 AVC
  • MPEG-4 AVC has different bitstream syntaxes.
  • bitstream encoded according to each standard or encoding condition has different types (i.e. syntax and semantics).
  • a decoder corresponding to a pertinent encoder must be used to perform the decoding of the bitstream.
  • the conventional bitstream decoder has a restriction that must satisfy the constraint condition of the encoder. This restriction makes it difficult to realize an integration decoder corresponding to a plurality of standards.
  • the present invention which is contrived to solve the aforementioned problems, provides a bitstream decoding device and a method thereof that can decode a bitstream encoded in various types (syntaxes and semantics) in accordance with each standard (e.g. MPEG-I, MPEG-2, MPEG-4 and MPEG-4 AVC) by using the same information recognizing method. Also, the present invention provides a bitstream decoding device and a method thereof that can parse a bitstream compressed in various methods by using the same information analyzing method and organically control each functional unit to perform the decoding by using the parsed data. The present invention provides a bitstream decoding device and a method thereof that can commonly apply a syntax analyzing method for decoding various types of bit streams.
  • each standard e.g. MPEG-I, MPEG-2, MPEG-4 and MPEG-4 AVC
  • the present invention provides a bitstream decoding device and a method thereof that can easily decode a bitstream when a syntax element is changed, added or deleted.
  • the present invention provides a bitstream decoding device and a method thereof that can allow some elements used to decode a bit stream to share the element information of analyzed syntax (i.e. a result from syntax parsing).
  • the present invention provides a bitstream decoding device and a method thereof that can allow the element information of analyzed syntax to be used to analyze the syntax element of a following bit stream.
  • the present invention provides a bitstream decoding device and a method thereof that can group various functions constituting decoding methods suggested by a variety of standards (or codec) according to each functional unit to put the grouped functions in a toolbox.
  • the present invention provides a bitstream decoding device and a method thereof that can selectively load some functional units necessary for a toolbox and allow a corresponding predetermined process to be performed in order to decode a bitstream encoded in various forms.
  • the present invention provides a bitstream decoding device and a method thereof that can change, add or delete the functional units equipped in a toolbox.
  • the present invention provides a bitstream decoding device and a method thereof that can internationally standardize the concept and structure of codec integration for bitstream decoding.
  • Other problems that the present invention solves will become more apparent through the following description.
  • an aspect of the present invention features an encoder / a decoder and/or an integrated codec apparatus that can be universally used for various standards.
  • the decoding device can include a parser, configured to receive a schema information for analyzing a bitstream and convert the bitstream to a meaningful datum to output the datum; and a decoding solution, configured to output a video datum by performing a bitstream decoding by use of the datum.
  • the decoding device can further include a toolbox, configured to include at least one functional unit realized to perform each predetermined process; and a decoder forming unit, configured to receive a connection control information corresponding to the bitstream, set a connection relationship of at least one functional unit included in the toolbox and control the functional unit(s) to be loaded onto the decoder solution.
  • the decoder forming unit can receive the datum from the parser and provide the datum to the decoding solution.
  • the decoding device can further include a dividing unit, configured to receive a decoder description, divide the received decoder description into the schema information and the connection control information and output the schema information and the connection control information, respectively.
  • a dividing unit configured to receive a decoder description, divide the received decoder description into the schema information and the connection control information and output the schema information and the connection control information, respectively.
  • the decoding solution can include a data interface, configured to receive the datum and provide the datum to a corresponding functional unit or allow the corresponding functional unit to read the datum.
  • the schema information can be information related to details of syntax information included in the bitstream and comprises at least one of a length, a meaning and an appearance condition of the syntax information and a repeated appearance frequency.
  • the schema information can be written by using an XML grammar.
  • the connection control information can be written by using a CAL markup language (CALML).
  • the toolbox can include subtoolboxes which are sets of the functional units distinguished according to an applied standard.
  • the decoding solution can include a working memory, configured to allow at least one functional unit to be loaded and operated.
  • the toolbox can be an element of the decoder forming unit.
  • a functional unit loaded onto the decoding solution can perform a predetermined process in which at least one of the datum and an output datum, outputted by a functional unit previously performing the process, is determined as an input datum.
  • another aspect of the present invention features a decoding method / an encoding method that can be universally used for various standards and/or a recorded medium recorded with a program for executing the method thereof.
  • the decoding method can include (a) converting a bitstream to a meaningful datum to output the datum by using an inputted schema information; (b) setting a sequence of successive operations of functional units by using an inputted connection control information; and (c) allowing a bitstream decoding to be performed by the functional units by using the datum.
  • the (b) can be performed by setting a process performing sequence of at least one of a plurality of functional units included in a toolbox.
  • the schema information can be information related to details of syntax information included in the bitstream and comprises at least one of a length, a meaning and an appearance condition of the syntax information and a repeated appearance frequency.
  • the schema information can be the schema information is written by using an XML grammar.
  • connection control information can be written by using a CAL markup language (CALML).
  • CALML CAL markup language
  • the functional unit can perform a predetermined process in which at least one of the datum and an output datum, outputted by a functional unit previously performing the process, is determined as an input datum.
  • a recorded medium tangibly embodying a program of instructions executable by a decoding device to perform a decoding method, the recorded medium being readable by the decoding device, including converting a bitstream to a meaningful datum to output the datum by using an inputted schema information; setting a sequence of successive operations of functional units by using an inputted connection control information; and allowing a bitstream decoding to be performed by the functional units by using the datum.
  • a bitstream decoding device and a method thereof in accordance with the present invention can decode a bitstream encoded in various types (syntax and semantics) in accordance with each standard (e.g. MPEG-I, MPEG-2, MPEG-4 and MPEG-4 AVC) by using the same information recognizing method.
  • each standard e.g. MPEG-I, MPEG-2, MPEG-4 and MPEG-4 AVC
  • the present invention can parse a bitstream compressed in various methods by using the same information analyzing method and organically control each functional unit for the decoding by using the parsed data.
  • the present invention can commonly apply a syntax analyzing method for decoding various types of bitstreams.
  • the present invention can easily decode a bitstream when a syntax element is changed, added or deleted.
  • the present invention can allow some elements used to decode a bitstream to share the element information of analyzed syntax (i.e. a result from syntax parsing).
  • the present invention can allow the element information of analyzed syntax to be used to analyze the syntax element of a following bitstream.
  • the present invention can be used for the integration of a video or a still image performing the processing in units of blocks except for MPEG-I , MPEG-2, MPEG-4 and MPEG-4 AVC.
  • the present invention can group the functions constituting various decoding methods suggested by a variety of standards (or codec) according to each functional unit to put the grouped functions in a toolbox.
  • the present invention can selectively load some functional units necessary for a toolbox and perform the decoding in order to decode a bitstream encoded in various forms.
  • the present invention can change, add or delete the functional units equipped in a toolbox.
  • FIG. 1 shows a brief structure of a typical decoder
  • FIG. 2 shows a brief structure of a typical encoder
  • FIG. 3 shows a brief structure of a decoder in accordance with an embodiment of the present invention
  • FIG. 4 shows a detailed bitstream processing operation of a decoding unit in accordance with an embodiment of the present invention
  • FIG. 5 shows a decoder description input operation in accordance with another embodiment of the present invention
  • FIG. 6 shows a decoder description input operation in accordance with another embodiment of the present invention
  • FIG. 7 shows the structure of a decoding unit in accordance with another embodiment of the present invention.
  • FIG. 8 shows the structure of a BSDL parser in accordance with another embodiment of the present invention.
  • first and second can be used in describing various elements, but the above elements shall not be restricted to the above terms. The above terms are used only to distinguish one element from the other. For instance, the first element can be named the second element, and vice versa, without departing the scope of claims of the present invention.
  • the term “and/or” shall include the combination of a plurality of listed items or any of the plurality of listed items.
  • FIG. 1 shows a brief structure of a typical decoder
  • FIG. 2 shows a brief structure of a typical encoder
  • an MPEG-4 decoder 100 typically includes a variable length decoding unit 110, an inverse scanning unit 115, an inverse DC/ AC prediction unit 120, an inverse quantization unit 125, an inverse discrete cosine transform unit 130 and a VOP reconstruction unit 135. It shall be evident that the decoder 100 can have a changeable structure depending on an applied standard and some elements can be replaced with different elements.
  • variable length decoding unit 110 determines a quantized discrete cosine transform (DCT) coefficient by using a predetermined Huffman table and the inverse scanning unit 115 generates data having the same sequence as a corresponding video 140 by performing inverse scanning.
  • DCT discrete cosine transform
  • the inverse scanning unit 115 outputs corresponding values in the inverse order of scanning by various methods.
  • a scanning direction can be determined depending on the distribution of a frequency range.
  • the scanning method can be performed in a zigzag form.
  • the scanning can be performed per codec in various ways.
  • Syntax parsing can be integratedly performed by the variable length decoding unit 110 or an element for processing a bitstream 105 prior to the variable length decoding unit 110.
  • the syntax parsing is processed by a predetermined setting only, to correspond to the pertinent standard.
  • the inverse DC/ AC prediction unit 120 determines the direction of a reference block for prediction by using the size of the DCT coefficient at a frequency band.
  • the inverse quantization unit 125 performs the inverse quantization of inversely scanned data. In other words, the inverse quantization unit 125 returns DC and AC coefficients by using a quantization parameter (OP) designated in an encoding process.
  • OP quantization parameter
  • the inverse discrete cosine transform unit 130 evaluates an actual video data pixel value to generate a video object plane (VOP) by performing an inverse discrete cosine transform.
  • VOP video object plane
  • the VOP reconstruction unit 135 decodes a video signal by using the VOP generated by the inverse discrete cosine transform unit 130 and outputs the decoded signal.
  • an MPEG-4 encoder 200 typically includes a discrete cosine transform unit 210, a quantization unit 215, a DC/ AC prediction unit 220, a scanning unit 230 and a variable length encoding unit 235.
  • Each element included in the encoder 200 performs the inverse functions of the corresponding elements of the decoder 100. This is evident to any person of ordinary skill in the art. Briefly describing, the encoder 200 converts a video signal (i.e. a digital video pixel value) to a frequency value through the DCT and the quantization in order to performs the encoding. Then, the encoder 200 performs variable length encoding that differentiates the length of a corresponding bit according to the frequency of information to output it in a compressed bitstream format.
  • a video signal i.e. a digital video pixel value
  • FIG. 3 shows a brief structure of a decoder in accordance with an embodiment of the present invention
  • FIG. 4 shows a detailed bitstream processing operation of a decoding unit in accordance with an embodiment of the present invention.
  • the decoder description and a video bitstream of FIG. 3 may be generated and provided by an encoder.
  • the decoder 300 includes a decoding unit 305 and a dividing unit 310.
  • the decoding unit 305 includes a BSDL parser 320, a decoder forming unit 330, a toolbox 335 and a decoding solution 340.
  • the BDSL parser 320 analyzes syntax information of a video bitstream inputted from the outside by using a BSDL schema inputted from the dividing unit 310.
  • the video bitstream inputted into the BSDL parser 320 is the data encoded by a encoding method (e.g. MPEG-4 and AVS). It shall be understood by any person of ordinary skill in the art that the BSDL parser 320 can analyze the BSDL schema by itself or the BSDL parser 320 can be formed by an external algorithm through this description.
  • a encoding method e.g. MPEG-4 and AVS
  • the BSDL parser 320 include a BSDL analysis processing unit 325, which is an internal processing unit for re-defining the structure of the BSDL parser 320 by reading the BSDL schema written in an XML grammar.
  • the rule of re-defining it by using the BSDL schema is variable depending on a method applied by a maker. Accordingly, its basic aims are described as follows. A first aim is to allow information related to the length and meaning of the bitstream, written in the BSDL schema, to be recognizable. A second aim is to make a program- like routine actually operated by identical repeat or conditional sentence by reading a repeated structure and a conditional execution structure defined in the BSDL schema.
  • the BSDL parser 320 before being re-defined is in the state where the functions for accomplishing the aims are realized.
  • the redefining operation can refer to the operation of forming the BSDL parser 320 to be actually operated by using the foregoing parsing functions.
  • the BSDL parser 320 can be realized as a program making a fluid data flow by the control of the BSDL analysis processing unit 325.
  • the BSDL parser 320 can be realized by using a program language such as CAL (caltrop actor language), C, C++ and Java.
  • the BSDL analysis processing unit 325 and the BSDL parser 320 can be realized depending on a design reference of a decoder designer without any restriction.
  • the developed BSDL application program such as BSDL reference software can be applied.
  • the BSDL reference software is the official software made to smoothly operate the standardized BSDL by the MPEG. It shall be evident that the BSDL parser 320, which receives the BSDL schema, can also be realized easily by using the kind of software resources.
  • the BSDL parser 320 can have the structure designed by various methods that a decoder designer selects. In other words, the decoder designer can selectively make the application and design of a detailed algorithm for allowing the BSDL parser 320 to perform designated functions. At this time, the BSDL parser 320 must be able to be re-defined by the result from the read BSDL schema, and the re-defined element must be also able to be in cooperation (e.g. communication) with other elements of the decoding unit 305.
  • the details of the syntax information included in the bitstream are written in the BSDL schema inputted into the BSDL parser 320.
  • the details can include the length, meaning and appearance condition of the syntax information and a repeated appearance frequency.
  • the length of the syntax information refers to the length of bits occupied by certain information in the bitstream.
  • the meaning of the syntax information shows what meaning the pertinent information has. This is because if a functional unit requests some information of A, for example, it maybe necessary to distinguish which information is A. Also, even though the video bitstream of the same standard is processed by using one BSDL schema, it is changed depending on the attributes of the bitstream whether or how many times a part of the syntax information appears.
  • the appearance condition and the repeated appearance frequency can be included in the BSDL schema.
  • the appearance condition may be necessary to allow motion vector information not to be read when an infra frame is processed, and if a pertinent macroblock is assumed to have 6 identical structural blocks, the repeated appearance frequency can be used to repeat the pertinent block.
  • the BSDL analysis processing unit 325 helps the BSDL parser 320 to read the information included in the bitstream according to the sequence of designated by the B SDL schema by transferring result information of the analyzed details to the BSDL parser 230.
  • the BSDL parser 320 converts contents of the bitstream, which is inputted by referring to the result information provided from the BSDL analysis processing unit 325, to meaningful data in order to provide the meaningful data to the decoder forming unit 330 and/or the decoding solution 340.
  • the meaningful data, provided to the decoder forming unit 330 and/or the decoding solution 340 can include encoded video data of a predetermined macroblock size, an ACpred flag for intra-encoded macroblocks, MB type & coded block pattern for chrominance (MCBPC) and a coded block pattern for luminance (CBPY). This data providing operation may be performed regardless of whether the decoder forming unit 330 or the decoding solution 340 is driven.
  • the present invention is to allow the decoder description to be realized to have the structure using a BSDL system format or an XML based format that is linkable to the BSDL system.
  • the decoder description can the XML format such as a BSDL and a CALML, and the BSDL schema and the CALML can have separated functions to be used for a syntax parsing operation and connection control between functional units, respectively.
  • the BSDL performs the writing in a form of an XML document or an XML schema including the information related to the structure and constituting method of the bitstream.
  • the language is made to represent at least one video bitstream structure.
  • bitstream technology method that is being used through verification by the conventional MPEG standard is applied as it is, using the BSDL make it possible to be highly compatible with other technologies. Since the language format and grammar related to BSDL is described in the MPEG-B part 5, the pertinent detailed description will be omitted.
  • the description is on the assumption that some information such as decoder description 360 and encoded video data 380 is inputted from the outside. Alternatively, it is obvious that at least one of the decoder description 360 and the encoded video data 380 is already stored at an element of the decoding unit 305.
  • the decoder forming unit 330 controls the decoding solution 340 to be realized by using the connection control information inputted from the dividing unit 310 and some of the bitstream data inputted from the BSDL parser 320 (e.g. at least one of encoded video data of a predetermined macroblock size, an ACpred flag for intra-encoded macroblocks, MB type & coded block pattern for chrominance (MCBPC) and a coded block pattern for luminance (CBPY)).
  • the connection control information inputted from the dividing unit 310 and some of the bitstream data inputted from the BSDL parser 320 (e.g. at least one of encoded video data of a predetermined macroblock size, an ACpred flag for intra-encoded macroblocks, MB type & coded block pattern for chrominance (MCBPC) and a coded block pattern for luminance (CBPY)).
  • the decoder forming unit 330 controls some or all functional units of the toolbox 335 to be loaded and arranged in the decoding solution with being organically connected with each other by using the connection control information.
  • the connection control information is written by using a CAL markup language (CALML).
  • the CALML is the XML format capable of writing the constitution of a decoder by using the caltrop markup language, which has currently been disputed by the MPEG standard committee.
  • the caltrop markup language is constituted to include a program object, Actor, and connection relationships between each Actor.
  • the CALML is the caltrop markup language which is expressed by the XML format.
  • An example of the CALML has already shown above as the examples of the BSDL schema and the connection control information.
  • the decoder forming unit 330 has an authority to access the toolbox 335 including the sets of various functional units.
  • the decoder forming unit 330 also sets the input and output connection between the functional units of the toolbox 335 and forms the decoding solution 340 as the set result.
  • the input and output connection structure and executing sequence between the functional units is determined by referring to the connection control information.
  • the decoder forming unit 330 can receive some information for recognizing the type of the inputted bitstream from the BSDL parser 320 and refer to the received information in a functional unit connecting operation.
  • connection structure If all connection structures of functional units are determined, in case that data is expected to be continuously inputted from the outside, the connection structure maybe considered as an independent decoder, capable of analyzing and decoding all types of video bitstreams intended by a maker. At this time, this completed functional connection structure may be referred to as the decoding solution 340.
  • the toolbox 335 includes a plurality of functional units, each of which is realized to perform a predetermined process. Each of the functional units can be realized as a combination of program codes. Each functional unit included in the toolbox 335 can be segmentalized into a plurality of subtoolboxes divided by using each applied usage set. For example, each functional unit can be segmentalized into a first toolbox including the functional unit for MPEG and a second toolbox including other functional units. Alternatively, each functional unit can be segmentalized into a first toolbox as a set of the functional units for MPEG-2, a second toolbox as a set of the functional units for MPEG-4 and a third toolbox as a set of the functional units for AVS, which is a digital TV compression standard in China.
  • a plurality of toolboxes 335 can have an independent connection relationship with the decoder forming unit 330 and the decoding solution 340.
  • the toolboxes 335 can be realized as the foregoing independent toolboxes such as the first toolbox and the second toolbox, which are not shown.
  • the toolbox 335 includes the functional units realized to perform each function (i.e. a predetermined process).
  • Each functional unit forms successive connecting operation relationships by being loaded onto the decoding solution 340 by the connection control of the decoder forming unit 330, to thereby output the encoded video data included in the video bitstream to decoded video data.
  • the toolbox 335 can include a de-blocking filtering (DF) functional unit, a VOP reconstructing (VR) functional unit, a frame field reordering (FFR) functional unit, an intra prediction and picture reconstruction (IPR) functional unit, an inverse transform (IT) functional unit, an inverse quantization (IQ) functional unit, an inverse AC prediction (IAP) functional unit, an inverse scanning (IS) functional unit and a DC reconstruction (DCR) functional unit.
  • DF de-blocking filtering
  • VR VOP reconstructing
  • FFR frame field reordering
  • IPR intra prediction and picture reconstruction
  • IPR intra prediction and picture reconstruction
  • IPR intra prediction and picture reconstruction
  • IPR intra prediction and picture reconstruction
  • IPR intra prediction and picture reconstruction
  • IPR intra prediction and picture reconstruction
  • IPR inverse transform
  • IQ inverse quantization
  • IAP inverse AC prediction
  • IS inverse scanning
  • DCR DC reconstruction
  • An IT 4x4 functional unit, an IQ 4x4 functional unit and a DCR 4x4 functional unit process the blocks having the size of 4x4. This is because although MPEG- 1/2/4 process data in 8x8 block size in the transform, quantization and prediction, MPEG-4 AVC may process data in 4x4 block size.
  • the toolbox 335 can include any functional unit for performing a data decoding function regardless of an applied standard, a necessary functional unit for the developed technology can be added, an existing functional unit can be modified and an unnecessary functional unit can be deleted.
  • the pertinent functional units can be included in the toolbox 335.
  • a special prediction (SPR) functional unit can be added to perform the intra prediction for the MPEG-4 AVC.
  • the DF functional unit is a de-blocking filter of MPEG-4 AVC, and the VR functional unit stores a decoded pixel value.
  • the FFR functional unit is for an interlaced mode, and the IPR functional unit performs the intra prediction of MPEG-4 A VC and then stores a decoded pixel value. As described above, the intra prediction of MPEG-4 AVC can be performed by the SPR functional unit.
  • the IT functional unit performs the inverse transform of DC values and AC values, and the IQ functional unit performs the inverse quantization of the AC values.
  • the IAP functional unit performs the inverse AC prediction of the AC values, and the IS functional unit performs the inverse scan of the AC values.
  • the DCR functional unit performs the inverse AC prediction and the inverse quantization of the DC values.
  • the decoding solution 340 which is formed by the decoder forming unit 330, receives the bitstream data (or encoded video data of a predetermined macroblock size) divided in a unit of syntax information by the BSDL parser 320.
  • the bitstream can be inputted through a tangible or intangible data interface for inputting and outputting data.
  • the data interface can be a memory buffer, a virtual port determining the flow of data or a parameter of a program.
  • the data interface can be a connection line of a circuit.
  • the data interface can be realized in various ways.
  • the data can be continuously inputted through a pertinent interface regardless of the process performed by a certain functional unit (e.g. in order to perform the parallel processing).
  • the decoding solution 340 processes the inputted data and outputs it as decoded video data.
  • data can be transferred from the data interface to each functional unit, and the functional unit can process the pertinent data and transfer the processed data to a following functional unit. All flow of data can be determined as pre-determined by the decoder forming unit 330.
  • the decoding solution 340 can include a storing unit for storing the data provided from the BSDL parser 320 (e.g. information extracted by the syntax parsing of a bitstream) and processing-resulted data of each functional unit.
  • Each functional unit loaded by the control of the BSDL parser 320 can perform a predetermined process by using at least one of the data provided from the BSDL parser 320 and the resulted data of a previously operated functional unit. In this case, a following functional unit performing the corresponding process must recognize that the operation of the previous functional unit is completed.
  • the decoder forming unit 330 can control whether the following functional unit starts the operation by continuously monitoring whether each functional unit completes the operation.
  • the storing unit includes independent areas per each functional unit and the processing-resulted data of the previous functional unit is allowed to be stored in the area for the following functional unit by the control of the decoder forming unit 330, the following functional unit can perform the process immediately when the data necessary to perform the process is stored in the area.
  • various methods for controlling a processing start time between the functional units are additionally considered.
  • the pertinent storing unit can be equipped in the decoder forming unit, and the decoder forming unit 330 can provide a functional unit to perform the current process with the data provided from the BSDL parser 320 (e.g. information extracted by the syntax parsing of a bitstream) and the processing-resulted data of each functional unit.
  • the data provided from the BSDL parser 320 e.g. information extracted by the syntax parsing of a bitstream
  • the BSDL parser 320 recognizes that there are MB type data and 2-bit CBPY data at the areas corresponding to the information A and the information B, respectively, by reading the BSDL schema.
  • the BSDL parser 320 reads bits in predetermined quantities that are designated in each area by using the received information and transfer the read information to the decoding solution according to given meanings.
  • the decoding solution 340 receives the data named as MB type and CBPY from the BSDL parser 320 to process the data. As described above, the decoding solution 340 is realized by allowing each functional unit to be loaded by the connection control of the decoder forming unit 330.
  • the data interface of the decoding solution 340 receives the data transferred from the outside and transfers the received data to the functional units requesting the pertinent data by referring to a connection relationship of the functional units previously formed by the connection control information. Each functional unit also performs the decoding operation according to the predetermined connection relationship (i.e. the connection relationship for processing data). All data flow and the connection relationship between the functional units depend on the details previously formed by the decoder forming unit 330. An output video frame is outputted by the successive processing of each functional unit. As described above, the decoder forming unit 330 and/or the decoding solution 340 can include a storing unit. This is to prevent the cease of the operation allowing the data to be transferred from the BSDL parser 320.
  • each functional unit can read desired data from the storing unit to use the read data.
  • the BSDL parser 320 can provide corresponding data to the decoder forming unit 330 to perform the decoding of encoded video data in order to allow the decoder forming unit 330 to provide the data to the decoding solution 340.
  • the BSDL parser 320 can directly provide the pertinent data to the decoding solution 340.
  • the dividing unit 310 divides the inputted decoder description 360 into each information to input the divided information into decoding unit 305.
  • the decoder description 360 inputted into the dividing unit 310 can include the BSDL schema 365 for writing the structure of a bitstream and the CALML data for writing the decoding operation of a bitstream.
  • the aforementioned two types of data can be independently written by the XML grammar or integrated and transmitted for the efficient operation of a decoder.
  • FIG. 5 shows a decoder description input operation in accordance with another embodiment of the present invention.
  • the decoder 300 can further include a description decoder 510.
  • the description decoder 510 can generate the decoder description 360 by decoding an inputted encoded decoder description 520 in order to provide the generated decoder description 360 to the dividing unit 310.
  • Transmitting and receiving the encoded decoder description 360 makes it possible to reduce the amount of the transmitted and received data.
  • FIG. 6 shows a decoder description input operation in accordance with another embodiment of the present invention.
  • the above description with reference to FIG. 3 is related to the case that the decoder description 360 and the video bitstream are inputted into the decoding unit 305.
  • the above description with reference to FIG. 5 is related to the case that the encoded decoder description 520 and the video bitstream 380 are inputted into the decoding unit 305.
  • configuration information of the decoder description 360 can be initially divided and inputted into the decoding unit 305.
  • the foregoing separating 310 and decoder description 360 can be obviously emitted.
  • FIG. 7 shows the structure of a decoding unit in accordance with another embodiment of the present invention.
  • the above description with reference to FIG. 3 through FIG. 6 is related to the decoding unit 305 having the toolbox 335 and the decoder forming unit 330, which are separated from each other.
  • the decoder forming unit 330 can include the toolbox 335 as an element.
  • the decoder forming unit 330 can perform not only the control operation of the connection structure between the functional units but also the selecting operation of a functional unit to be used. This may make it possible to realize decoding solution 340 in various types.
  • FIG. 8 shows the structure of a BSDL parser in accordance with another embodiment of the present invention.
  • the above description with reference to FIG. 3 is related to the BSDL parser 320 including the BSDL analysis processing unit 325.
  • the BSDL parser 320 of the present invention can be previously defined from the outside of the decoder 300 before starting the decoding of the bitstream. Accordingly, the aforementioned BSDL analysis processing unit 325 can be omitted. At this time, a BSDL parser maker 810 can be configured by using the existing application program such as a BSDL reference software.
  • the BSDL parser can be realized as one functional unit included in a toolbox or pre-included as an independent element in a decoding solution. If the BSDL parser is equipped in the toolbox, a decoder forming unit must load and control the BSDL parser to perform the process by using connection control information before the functional units performing the bitstream decoding is operated. Similarly, if the BSDL parser pre-includes in the decoding solution, the decoder forming unit must control the BSDL parser to perform the process before each loaded functional unit starts to perform the process.
  • the operations and functions of the BSDL parser is the same as described above with reference to FIG. the related drawings. Accordingly, the pertinent detailed description will be omitted. However, it may be necessary that the decoder forming unit or/and the decoding solution receives the BSDL schema or/and the bitstream at the first time.
  • the decoding device and the method thereof in accordance with the present invention makes it easy to analyze a syntax element and control the connection of the functional units in one standard (or codec) or between different standards (or codecs). In other words, it is possible to change the sequence of syntax elements in the bitstream to be generated according to a certain standard, to insert a new syntax element or to delete the existing syntax elements.
  • the decoder is unable to normally decode a pertinent bitstream when a syntax element is manipulated. For example, if the corresponding bitstream is re-formed and transmitted by changing the sequence of the bitstream information from ABC to ACB, the decoder is not able to recognize the re- formed bitstream.
  • bitstream is re-formed as ABFC by newly inserting F or as AC by deleting B, the decoder is also not able to recognize the re-formed bitstream.
  • the decoder 300 can smoothly permit decoding operation.
  • connection control information can be also written as information for performing the decoding by a plurality of standards, instead of being written by using only information related to connection relationships between the functional units for performing the decoding by one standard and the processing operation requested for the pertinent functional unit.
  • connection control information is obviously defined such that the functional units conforming to each standard included in the toolbox 335 can be organically coupled in order to each frame encoded by using different encoding methods.
  • the present invention is applicable to a video codec.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Disclosed are a bitstream decoding device and a method thereof. The decoding device can include a parser, configured to receive schema information for analyzing a bitstream and convert the bitstream to a meaningful datum to output the datum; and a decoding solution, configured to output a video datum by performing a bitstream decoding by use of the datum. With the present invention, it is possible to decode the bitstream encoded in various ways according to each standard by using the same information recognizing method.

Description

[DESCRIPTION] [Invention Title] BITSTREAM DECODING DEVICE AND METHOD
[Technical Field]
The present invention relates to a bitstream decoding device and a method thereof, more specifically to a bitstream decoding device and a method thereof that uses a BSDL schema.
[Background Art]
Typically, a video is converted to a bitstream by an encoder. At this time, the bitstream is stored depending on a coding type that satisfies the constraint condition of the encoder.
MPEG requests syntax and semantics, which are the constraint condition of the encoder.
The syntax, which refers to the structure, format, or length of data, shows the sequence of expressing the data. In other words, the syntax is to meet a rule for encoding / decoding and defines the sequence and length of each element of the bitstream and a corresponding data format. The semantics refers to the meaning of each bit that constitutes data. In other words, the semantics shows the meaning of each element of the bitstream.
Accordingly, the bitstream can be generated in various types depending on the encoding condition or the applied standard (or codec) of the encoder. Typically, each standard (e.g. MPEG-I, MPEG-2, MPEG-4 and MPEG-4 AVC) has different bitstream syntaxes.
Accordingly, it may be considered that the bitstream encoded according to each standard or encoding condition has different types (i.e. syntax and semantics). A decoder corresponding to a pertinent encoder must be used to perform the decoding of the bitstream. As described above, the conventional bitstream decoder has a restriction that must satisfy the constraint condition of the encoder. This restriction makes it difficult to realize an integration decoder corresponding to a plurality of standards.
[Disclosure] [Technical Problem]
Accordingly, the present invention, which is contrived to solve the aforementioned problems, provides a bitstream decoding device and a method thereof that can decode a bitstream encoded in various types (syntaxes and semantics) in accordance with each standard (e.g. MPEG-I, MPEG-2, MPEG-4 and MPEG-4 AVC) by using the same information recognizing method. Also, the present invention provides a bitstream decoding device and a method thereof that can parse a bitstream compressed in various methods by using the same information analyzing method and organically control each functional unit to perform the decoding by using the parsed data. The present invention provides a bitstream decoding device and a method thereof that can commonly apply a syntax analyzing method for decoding various types of bit streams.
The present invention provides a bitstream decoding device and a method thereof that can easily decode a bitstream when a syntax element is changed, added or deleted.
The present invention provides a bitstream decoding device and a method thereof that can allow some elements used to decode a bit stream to share the element information of analyzed syntax (i.e. a result from syntax parsing).
The present invention provides a bitstream decoding device and a method thereof that can allow the element information of analyzed syntax to be used to analyze the syntax element of a following bit stream.
The present invention provides a bitstream decoding device and a method thereof that can group various functions constituting decoding methods suggested by a variety of standards (or codec) according to each functional unit to put the grouped functions in a toolbox. The present invention provides a bitstream decoding device and a method thereof that can selectively load some functional units necessary for a toolbox and allow a corresponding predetermined process to be performed in order to decode a bitstream encoded in various forms. The present invention provides a bitstream decoding device and a method thereof that can change, add or delete the functional units equipped in a toolbox.
In addition, the present invention provides a bitstream decoding device and a method thereof that can internationally standardize the concept and structure of codec integration for bitstream decoding. Other problems that the present invention solves will become more apparent through the following description.
[Technical Solution]
To solve the above problems, an aspect of the present invention features an encoder / a decoder and/or an integrated codec apparatus that can be universally used for various standards.
According to an embodiment of the present invention, the decoding device can include a parser, configured to receive a schema information for analyzing a bitstream and convert the bitstream to a meaningful datum to output the datum; and a decoding solution, configured to output a video datum by performing a bitstream decoding by use of the datum. The decoding device can further include a toolbox, configured to include at least one functional unit realized to perform each predetermined process; and a decoder forming unit, configured to receive a connection control information corresponding to the bitstream, set a connection relationship of at least one functional unit included in the toolbox and control the functional unit(s) to be loaded onto the decoder solution.
The decoder forming unit can receive the datum from the parser and provide the datum to the decoding solution.
The decoding device can further include a dividing unit, configured to receive a decoder description, divide the received decoder description into the schema information and the connection control information and output the schema information and the connection control information, respectively.
The decoding solution can include a data interface, configured to receive the datum and provide the datum to a corresponding functional unit or allow the corresponding functional unit to read the datum. The schema information can be information related to details of syntax information included in the bitstream and comprises at least one of a length, a meaning and an appearance condition of the syntax information and a repeated appearance frequency.
The schema information can be written by using an XML grammar. The connection control information can be written by using a CAL markup language (CALML).
The toolbox can include subtoolboxes which are sets of the functional units distinguished according to an applied standard.
The decoding solution can include a working memory, configured to allow at least one functional unit to be loaded and operated.
The toolbox can be an element of the decoder forming unit.
A functional unit loaded onto the decoding solution can perform a predetermined process in which at least one of the datum and an output datum, outputted by a functional unit previously performing the process, is determined as an input datum.
To solve the aforementioned problems, another aspect of the present invention features a decoding method / an encoding method that can be universally used for various standards and/or a recorded medium recorded with a program for executing the method thereof.
According to an embodiment of the present invention, the decoding method can include (a) converting a bitstream to a meaningful datum to output the datum by using an inputted schema information; (b) setting a sequence of successive operations of functional units by using an inputted connection control information; and (c) allowing a bitstream decoding to be performed by the functional units by using the datum. The (b) can be performed by setting a process performing sequence of at least one of a plurality of functional units included in a toolbox.
If a decoder description in which the schema information and the connection control information are integrated is inputted, dividing the inputted decoder description into the schema information and the connection control information and outputting the schema information and the connection control information, respectively, can be prior to the (a).
The schema information can be information related to details of syntax information included in the bitstream and comprises at least one of a length, a meaning and an appearance condition of the syntax information and a repeated appearance frequency.
The schema information can be the schema information is written by using an XML grammar.
The connection control information can be written by using a CAL markup language (CALML).
The functional unit can perform a predetermined process in which at least one of the datum and an output datum, outputted by a functional unit previously performing the process, is determined as an input datum.
According to another embodiment of the present invention, a recorded medium tangibly embodying a program of instructions executable by a decoding device to perform a decoding method, the recorded medium being readable by the decoding device, including converting a bitstream to a meaningful datum to output the datum by using an inputted schema information; setting a sequence of successive operations of functional units by using an inputted connection control information; and allowing a bitstream decoding to be performed by the functional units by using the datum.
[Advantageous Effects]
As described above, a bitstream decoding device and a method thereof in accordance with the present invention can decode a bitstream encoded in various types (syntax and semantics) in accordance with each standard (e.g. MPEG-I, MPEG-2, MPEG-4 and MPEG-4 AVC) by using the same information recognizing method.
Also, the present invention can parse a bitstream compressed in various methods by using the same information analyzing method and organically control each functional unit for the decoding by using the parsed data.
The present invention can commonly apply a syntax analyzing method for decoding various types of bitstreams.
The present invention can easily decode a bitstream when a syntax element is changed, added or deleted. The present invention can allow some elements used to decode a bitstream to share the element information of analyzed syntax (i.e. a result from syntax parsing).
The present invention can allow the element information of analyzed syntax to be used to analyze the syntax element of a following bitstream.
The present invention can be used for the integration of a video or a still image performing the processing in units of blocks except for MPEG-I , MPEG-2, MPEG-4 and MPEG-4 AVC.
The present invention can group the functions constituting various decoding methods suggested by a variety of standards (or codec) according to each functional unit to put the grouped functions in a toolbox. The present invention can selectively load some functional units necessary for a toolbox and perform the decoding in order to decode a bitstream encoded in various forms.
In addition, the present invention can change, add or delete the functional units equipped in a toolbox.
[Description of Drawings]
FIG. 1 shows a brief structure of a typical decoder; FIG. 2 shows a brief structure of a typical encoder;
FIG. 3 shows a brief structure of a decoder in accordance with an embodiment of the present invention; FIG. 4 shows a detailed bitstream processing operation of a decoding unit in accordance with an embodiment of the present invention;
FIG. 5 shows a decoder description input operation in accordance with another embodiment of the present invention; FIG. 6 shows a decoder description input operation in accordance with another embodiment of the present invention;
FIG. 7 shows the structure of a decoding unit in accordance with another embodiment of the present invention; and
FIG. 8 shows the structure of a BSDL parser in accordance with another embodiment of the present invention.
[Mode for Invention]
Since there can be a variety of permutations and embodiments of the present invention, certain embodiments will be illustrated and described with reference to the accompanying drawings. This, however, is by no means to restrict the present invention to certain embodiments, and shall be construed as including all permutations, equivalents and substitutes covered by the spirit and scope of the present invention.
Terms such as "first" and "second" can be used in describing various elements, but the above elements shall not be restricted to the above terms. The above terms are used only to distinguish one element from the other. For instance, the first element can be named the second element, and vice versa, without departing the scope of claims of the present invention. The term "and/or" shall include the combination of a plurality of listed items or any of the plurality of listed items.
When one element is described as being "connected" or "accessed" to another element, it shall be construed as being connected or accessed to the other element directly but also as possibly having another element in between. On the other hand, if one element is described as being "directly connected" or "directly accessed" to another element, it shall be construed that there is no other element in between.
The terms used in the description are intended to describe certain embodiments only, and shall by no means restrict the present invention. Unless clearly used otherwise, expressions in the singular number include a plural meaning. In the present description, an expression such as "comprising" or "consisting of is intended to designate a characteristic, a number, a step, an operation, an element, a part or combinations thereof, and shall not be construed to preclude any presence or possibility of one or more other characteristics, numbers, steps, operations, elements, parts or combinations thereof.
Unless otherwise defined, all terms, including technical terms and scientific terms, used herein have the same meaning as how they are generally understood by those of ordinary skill in the art to which the invention pertains. Any term that is defined in a general dictionary shall be construed to have the same meaning in the context of the relevant art, and, unless otherwise defined explicitly, shall not be interpreted to have an idealistic or excessively formalistic meaning.
Hereinafter, some embodiments of an integrated codec apparatus and a method thereof in accordance with an embodiment of the present invention will be described in detail with reference to the accompanying drawings. Identical or corresponding elements will be given the same reference numerals, regardless of the figure number, and any redundant description of the identical or corresponding elements will not be repeated.
FIG. 1 shows a brief structure of a typical decoder, and FIG. 2 shows a brief structure of a typical encoder.
As illustrated in FIG. 1, an MPEG-4 decoder 100 typically includes a variable length decoding unit 110, an inverse scanning unit 115, an inverse DC/ AC prediction unit 120, an inverse quantization unit 125, an inverse discrete cosine transform unit 130 and a VOP reconstruction unit 135. It shall be evident that the decoder 100 can have a changeable structure depending on an applied standard and some elements can be replaced with different elements.
If a transferred bit stream is syntax-parsed and corresponding header information and image data are extracted, the variable length decoding unit 110 determines a quantized discrete cosine transform (DCT) coefficient by using a predetermined Huffman table and the inverse scanning unit 115 generates data having the same sequence as a corresponding video 140 by performing inverse scanning. In other words, the inverse scanning unit 115 outputs corresponding values in the inverse order of scanning by various methods. In the encoding, after the quantization is performed, a scanning direction can be determined depending on the distribution of a frequency range. Typically, the scanning method can be performed in a zigzag form. Alternatively, the scanning can be performed per codec in various ways.
Syntax parsing can be integratedly performed by the variable length decoding unit 110 or an element for processing a bitstream 105 prior to the variable length decoding unit 110. In this case, since the same standard is applied to the corresponding encoder and decoder, the syntax parsing is processed by a predetermined setting only, to correspond to the pertinent standard.
The inverse DC/ AC prediction unit 120 determines the direction of a reference block for prediction by using the size of the DCT coefficient at a frequency band. The inverse quantization unit 125 performs the inverse quantization of inversely scanned data. In other words, the inverse quantization unit 125 returns DC and AC coefficients by using a quantization parameter (OP) designated in an encoding process.
The inverse discrete cosine transform unit 130 evaluates an actual video data pixel value to generate a video object plane (VOP) by performing an inverse discrete cosine transform.
The VOP reconstruction unit 135 decodes a video signal by using the VOP generated by the inverse discrete cosine transform unit 130 and outputs the decoded signal.
As illustrated in FIG. 2, an MPEG-4 encoder 200 typically includes a discrete cosine transform unit 210, a quantization unit 215, a DC/ AC prediction unit 220, a scanning unit 230 and a variable length encoding unit 235.
Each element included in the encoder 200 performs the inverse functions of the corresponding elements of the decoder 100. This is evident to any person of ordinary skill in the art. Briefly describing, the encoder 200 converts a video signal (i.e. a digital video pixel value) to a frequency value through the DCT and the quantization in order to performs the encoding. Then, the encoder 200 performs variable length encoding that differentiates the length of a corresponding bit according to the frequency of information to output it in a compressed bitstream format.
FIG. 3 shows a brief structure of a decoder in accordance with an embodiment of the present invention, and FIG. 4 shows a detailed bitstream processing operation of a decoding unit in accordance with an embodiment of the present invention. For example, the decoder description and a video bitstream of FIG. 3 may be generated and provided by an encoder.
Referring to FIG. 3, the decoder 300 includes a decoding unit 305 and a dividing unit 310. The decoding unit 305 includes a BSDL parser 320, a decoder forming unit 330, a toolbox 335 and a decoding solution 340. The BDSL parser 320 analyzes syntax information of a video bitstream inputted from the outside by using a BSDL schema inputted from the dividing unit 310. The video bitstream inputted into the BSDL parser 320 is the data encoded by a encoding method (e.g. MPEG-4 and AVS). It shall be understood by any person of ordinary skill in the art that the BSDL parser 320 can analyze the BSDL schema by itself or the BSDL parser 320 can be formed by an external algorithm through this description.
The BSDL parser 320 include a BSDL analysis processing unit 325, which is an internal processing unit for re-defining the structure of the BSDL parser 320 by reading the BSDL schema written in an XML grammar. The rule of re-defining it by using the BSDL schema is variable depending on a method applied by a maker. Accordingly, its basic aims are described as follows. A first aim is to allow information related to the length and meaning of the bitstream, written in the BSDL schema, to be recognizable. A second aim is to make a program- like routine actually operated by identical repeat or conditional sentence by reading a repeated structure and a conditional execution structure defined in the BSDL schema. Accordingly, it may be considerable that the BSDL parser 320 before being re-defined is in the state where the functions for accomplishing the aims are realized. The redefining operation can refer to the operation of forming the BSDL parser 320 to be actually operated by using the foregoing parsing functions. The BSDL parser 320 can be realized as a program making a fluid data flow by the control of the BSDL analysis processing unit 325. For example, the BSDL parser 320 can be realized by using a program language such as CAL (caltrop actor language), C, C++ and Java.
The BSDL analysis processing unit 325 and the BSDL parser 320 can be realized depending on a design reference of a decoder designer without any restriction. Of course, the developed BSDL application program such as BSDL reference software can be applied. The BSDL reference software is the official software made to smoothly operate the standardized BSDL by the MPEG. It shall be evident that the BSDL parser 320, which receives the BSDL schema, can also be realized easily by using the kind of software resources.
As described above in the description, the BSDL parser 320 can have the structure designed by various methods that a decoder designer selects. In other words, the decoder designer can selectively make the application and design of a detailed algorithm for allowing the BSDL parser 320 to perform designated functions. At this time, the BSDL parser 320 must be able to be re-defined by the result from the read BSDL schema, and the re-defined element must be also able to be in cooperation (e.g. communication) with other elements of the decoding unit 305.
The details of the syntax information included in the bitstream are written in the BSDL schema inputted into the BSDL parser 320. The details can include the length, meaning and appearance condition of the syntax information and a repeated appearance frequency. Here, the length of the syntax information refers to the length of bits occupied by certain information in the bitstream. The meaning of the syntax information shows what meaning the pertinent information has. This is because if a functional unit requests some information of A, for example, it maybe necessary to distinguish which information is A. Also, even though the video bitstream of the same standard is processed by using one BSDL schema, it is changed depending on the attributes of the bitstream whether or how many times a part of the syntax information appears. To define this kind of case, the appearance condition and the repeated appearance frequency can be included in the BSDL schema. For example, the appearance condition may be necessary to allow motion vector information not to be read when an infra frame is processed, and if a pertinent macroblock is assumed to have 6 identical structural blocks, the repeated appearance frequency can be used to repeat the pertinent block.
As shown in FIG. 4, the BSDL analysis processing unit 325 helps the BSDL parser 320 to read the information included in the bitstream according to the sequence of designated by the B SDL schema by transferring result information of the analyzed details to the BSDL parser 230.
The BSDL parser 320 converts contents of the bitstream, which is inputted by referring to the result information provided from the BSDL analysis processing unit 325, to meaningful data in order to provide the meaningful data to the decoder forming unit 330 and/or the decoding solution 340. For example, the meaningful data, provided to the decoder forming unit 330 and/or the decoding solution 340, can include encoded video data of a predetermined macroblock size, an ACpred flag for intra-encoded macroblocks, MB type & coded block pattern for chrominance (MCBPC) and a coded block pattern for luminance (CBPY). This data providing operation may be performed regardless of whether the decoder forming unit 330 or the decoding solution 340 is driven.
As described in the description, when the decoder decodes the bitstream by using the decoder description, the present invention is to allow the decoder description to be realized to have the structure using a BSDL system format or an XML based format that is linkable to the BSDL system. It shall be understood by any person of ordinary skill in the art that the decoder description can the XML format such as a BSDL and a CALML, and the BSDL schema and the CALML can have separated functions to be used for a syntax parsing operation and connection control between functional units, respectively. The BSDL performs the writing in a form of an XML document or an XML schema including the information related to the structure and constituting method of the bitstream. The language is made to represent at least one video bitstream structure. Although the bitstream technology method that is being used through verification by the conventional MPEG standard is applied as it is, using the BSDL make it possible to be highly compatible with other technologies. Since the language format and grammar related to BSDL is described in the MPEG-B part 5, the pertinent detailed description will be omitted.
Below are examples of the constitutions of the BSDL schema and the connection control information using BSDL and XML. Of course, it is obvious that these examples are not limited to the structures of the BSDL schema and the connection control information.
BSDL schema
<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="07> <xsd:element name="VOP" type="VideoObjectPlaneType" maxθccurs="unbounded" bs2:ifNext=M&vopSC;" rvc:port=" 1 "/> </xsd: sequence> </xsd:complexType>
</xsd:element> </xsd:sequence> </xsd : complexType> </xsd:element>
Connection control information <Network name="Decoder"> <Package> <QID> <ID id="MPEG4 Simple Profile" /> </QID>
</Package>
<Port kind="Input" name="BITSTREAM" />
<Port kind="Ouput" name="YUV" /> <Instance id="l">
<Class nanie="Parser">
<QID>
<ID id="c" />
</QID> </Class>
<Note kind="label" name=" Stream Parser" />
</Instance>
<Instance id="2">
<Class name="VS"> <QID>
<ID id="c" />
</QID>
<Note kind="label" name="Video Session" />
</Class> </Instance> Connection src="" src-port="BITSTREAM" dst="l" dst- port='fBITSTREAM" />
Connection src="l" src-port="CSCF dst=M2" dst-port="CSCI" /> Connection src="l " src-port="DATA" dst="2" dst-port="DATA" /> <Connection src="2" src-port="YUV" dst="" dst-ρort="YUV" /> </Network>
The description is on the assumption that some information such as decoder description 360 and encoded video data 380 is inputted from the outside. Alternatively, it is obvious that at least one of the decoder description 360 and the encoded video data 380 is already stored at an element of the decoding unit 305.
Referring to FIG. 3 again, the decoder forming unit 330 controls the decoding solution 340 to be realized by using the connection control information inputted from the dividing unit 310 and some of the bitstream data inputted from the BSDL parser 320 (e.g. at least one of encoded video data of a predetermined macroblock size, an ACpred flag for intra-encoded macroblocks, MB type & coded block pattern for chrominance (MCBPC) and a coded block pattern for luminance (CBPY)).
In other words, the decoder forming unit 330 controls some or all functional units of the toolbox 335 to be loaded and arranged in the decoding solution with being organically connected with each other by using the connection control information. Here, the connection control information is written by using a CAL markup language (CALML). The CALML is the XML format capable of writing the constitution of a decoder by using the caltrop markup language, which has currently been disputed by the MPEG standard committee. The caltrop markup language is constituted to include a program object, Actor, and connection relationships between each Actor. The CALML is the caltrop markup language which is expressed by the XML format. An example of the CALML has already shown above as the examples of the BSDL schema and the connection control information.
In particular, the decoder forming unit 330 has an authority to access the toolbox 335 including the sets of various functional units. The decoder forming unit 330 also sets the input and output connection between the functional units of the toolbox 335 and forms the decoding solution 340 as the set result. At this time, the input and output connection structure and executing sequence between the functional units is determined by referring to the connection control information. The decoder forming unit 330 can receive some information for recognizing the type of the inputted bitstream from the BSDL parser 320 and refer to the received information in a functional unit connecting operation. If all connection structures of functional units are determined, in case that data is expected to be continuously inputted from the outside, the connection structure maybe considered as an independent decoder, capable of analyzing and decoding all types of video bitstreams intended by a maker. At this time, this completed functional connection structure may be referred to as the decoding solution 340.
The toolbox 335 includes a plurality of functional units, each of which is realized to perform a predetermined process. Each of the functional units can be realized as a combination of program codes. Each functional unit included in the toolbox 335 can be segmentalized into a plurality of subtoolboxes divided by using each applied usage set. For example, each functional unit can be segmentalized into a first toolbox including the functional unit for MPEG and a second toolbox including other functional units. Alternatively, each functional unit can be segmentalized into a first toolbox as a set of the functional units for MPEG-2, a second toolbox as a set of the functional units for MPEG-4 and a third toolbox as a set of the functional units for AVS, which is a digital TV compression standard in China.
Of course, a plurality of toolboxes 335 can have an independent connection relationship with the decoder forming unit 330 and the decoding solution 340. In this case, the toolboxes 335 can be realized as the foregoing independent toolboxes such as the first toolbox and the second toolbox, which are not shown.
For the convenience of describing, the below description focuses on the case that one toolbox 335 includes a plurality of subtoolboxes or all functional units are included by being scattered without being grouping into sets. The toolbox 335 includes the functional units realized to perform each function (i.e. a predetermined process). Each functional unit forms successive connecting operation relationships by being loaded onto the decoding solution 340 by the connection control of the decoder forming unit 330, to thereby output the encoded video data included in the video bitstream to decoded video data. For example, the toolbox 335 can include a de-blocking filtering (DF) functional unit, a VOP reconstructing (VR) functional unit, a frame field reordering (FFR) functional unit, an intra prediction and picture reconstruction (IPR) functional unit, an inverse transform (IT) functional unit, an inverse quantization (IQ) functional unit, an inverse AC prediction (IAP) functional unit, an inverse scanning (IS) functional unit and a DC reconstruction (DCR) functional unit.
An IT 4x4 functional unit, an IQ 4x4 functional unit and a DCR 4x4 functional unit process the blocks having the size of 4x4. This is because although MPEG- 1/2/4 process data in 8x8 block size in the transform, quantization and prediction, MPEG-4 AVC may process data in 4x4 block size. It is obvious that the toolbox 335 can include any functional unit for performing a data decoding function regardless of an applied standard, a necessary functional unit for the developed technology can be added, an existing functional unit can be modified and an unnecessary functional unit can be deleted. For example, in the case of additionally needing the IS functional unit processing data in 4x4 block size to perform the decoding, the pertinent functional units can be included in the toolbox 335. Also, a special prediction (SPR) functional unit can be added to perform the intra prediction for the MPEG-4 AVC.
It is obviously possible to combine the functional units that are commonly applicable by a plurality of standards among each functional unit of the toolbox 335. Below is briefly described each function of the functional units which is evident to any person of ordinary skill in the art.
The DF functional unit is a de-blocking filter of MPEG-4 AVC, and the VR functional unit stores a decoded pixel value.
The FFR functional unit is for an interlaced mode, and the IPR functional unit performs the intra prediction of MPEG-4 A VC and then stores a decoded pixel value. As described above, the intra prediction of MPEG-4 AVC can be performed by the SPR functional unit.
The IT functional unit performs the inverse transform of DC values and AC values, and the IQ functional unit performs the inverse quantization of the AC values. The IAP functional unit performs the inverse AC prediction of the AC values, and the IS functional unit performs the inverse scan of the AC values. The DCR functional unit performs the inverse AC prediction and the inverse quantization of the DC values.
The decoding solution 340, which is formed by the decoder forming unit 330, receives the bitstream data (or encoded video data of a predetermined macroblock size) divided in a unit of syntax information by the BSDL parser 320.
As described above, the bitstream can be inputted through a tangible or intangible data interface for inputting and outputting data. In the case of software, the data interface can be a memory buffer, a virtual port determining the flow of data or a parameter of a program. In the case of hardware, the data interface can be a connection line of a circuit. Alternatively, the data interface can be realized in various ways.
The data can be continuously inputted through a pertinent interface regardless of the process performed by a certain functional unit (e.g. in order to perform the parallel processing). The decoding solution 340 processes the inputted data and outputs it as decoded video data. As shown in FIG. 4, data can be transferred from the data interface to each functional unit, and the functional unit can process the pertinent data and transfer the processed data to a following functional unit. All flow of data can be determined as pre-determined by the decoder forming unit 330.
The decoding solution 340 can include a storing unit for storing the data provided from the BSDL parser 320 (e.g. information extracted by the syntax parsing of a bitstream) and processing-resulted data of each functional unit. Each functional unit loaded by the control of the BSDL parser 320 can perform a predetermined process by using at least one of the data provided from the BSDL parser 320 and the resulted data of a previously operated functional unit. In this case, a following functional unit performing the corresponding process must recognize that the operation of the previous functional unit is completed. Herein, the decoder forming unit 330 can control whether the following functional unit starts the operation by continuously monitoring whether each functional unit completes the operation. Also, if the storing unit includes independent areas per each functional unit and the processing-resulted data of the previous functional unit is allowed to be stored in the area for the following functional unit by the control of the decoder forming unit 330, the following functional unit can perform the process immediately when the data necessary to perform the process is stored in the area. Alternatively, it is obviously possible that various methods for controlling a processing start time between the functional units are additionally considered.
Of course, the pertinent storing unit can be equipped in the decoder forming unit, and the decoder forming unit 330 can provide a functional unit to perform the current process with the data provided from the BSDL parser 320 (e.g. information extracted by the syntax parsing of a bitstream) and the processing-resulted data of each functional unit.
Hereinafter, the operation of the decoding unit 305 will be briefly described with reference to FIG. 4.
If a bitstream of an input image and a BSDL schema is inputted (and it is assumed that there is information A and information B at areas of the bitstream), the BSDL parser 320 recognizes that there are MB type data and 2-bit CBPY data at the areas corresponding to the information A and the information B, respectively, by reading the BSDL schema.
Then, the BSDL parser 320 reads bits in predetermined quantities that are designated in each area by using the received information and transfer the read information to the decoding solution according to given meanings.
The decoding solution 340 receives the data named as MB type and CBPY from the BSDL parser 320 to process the data. As described above, the decoding solution 340 is realized by allowing each functional unit to be loaded by the connection control of the decoder forming unit 330.
The data interface of the decoding solution 340 receives the data transferred from the outside and transfers the received data to the functional units requesting the pertinent data by referring to a connection relationship of the functional units previously formed by the connection control information. Each functional unit also performs the decoding operation according to the predetermined connection relationship (i.e. the connection relationship for processing data). All data flow and the connection relationship between the functional units depend on the details previously formed by the decoder forming unit 330. An output video frame is outputted by the successive processing of each functional unit. As described above, the decoder forming unit 330 and/or the decoding solution 340 can include a storing unit. This is to prevent the cease of the operation allowing the data to be transferred from the BSDL parser 320. This is also because the data can be provided in parallel for the decoding operation. Accordingly, each functional unit can read desired data from the storing unit to use the read data. The BSDL parser 320 can provide corresponding data to the decoder forming unit 330 to perform the decoding of encoded video data in order to allow the decoder forming unit 330 to provide the data to the decoding solution 340. Alternatively, the BSDL parser 320 can directly provide the pertinent data to the decoding solution 340. Referring to FIG. 3 again, the dividing unit 310 divides the inputted decoder description 360 into each information to input the divided information into decoding unit 305. The decoder description 360 inputted into the dividing unit 310 can include the BSDL schema 365 for writing the structure of a bitstream and the CALML data for writing the decoding operation of a bitstream. The aforementioned two types of data can be independently written by the XML grammar or integrated and transmitted for the efficient operation of a decoder.
FIG. 5 shows a decoder description input operation in accordance with another embodiment of the present invention.
As shown in FIG. 5, the decoder 300 can further include a description decoder 510. The description decoder 510 can generate the decoder description 360 by decoding an inputted encoded decoder description 520 in order to provide the generated decoder description 360 to the dividing unit 310.
Transmitting and receiving the encoded decoder description 360 makes it possible to reduce the amount of the transmitted and received data.
FIG. 6 shows a decoder description input operation in accordance with another embodiment of the present invention.
The above description with reference to FIG. 3 is related to the case that the decoder description 360 and the video bitstream are inputted into the decoding unit 305. The above description with reference to FIG. 5 is related to the case that the encoded decoder description 520 and the video bitstream 380 are inputted into the decoding unit 305.
However, as shown in FIG. 6, it is obvious that configuration information of the decoder description 360 can be initially divided and inputted into the decoding unit 305. In this case, the foregoing separating 310 and decoder description 360 can be obviously emitted.
FIG. 7 shows the structure of a decoding unit in accordance with another embodiment of the present invention. The above description with reference to FIG. 3 through FIG. 6 is related to the decoding unit 305 having the toolbox 335 and the decoder forming unit 330, which are separated from each other.
However, as shown in FIG. 7, it is obvious that the decoder forming unit 330 can include the toolbox 335 as an element.
In this case, the decoder forming unit 330 can perform not only the control operation of the connection structure between the functional units but also the selecting operation of a functional unit to be used. This may make it possible to realize decoding solution 340 in various types.
FIG. 8 shows the structure of a BSDL parser in accordance with another embodiment of the present invention.
The above description with reference to FIG. 3 is related to the BSDL parser 320 including the BSDL analysis processing unit 325.
However, the BSDL parser 320 of the present invention can be previously defined from the outside of the decoder 300 before starting the decoding of the bitstream. Accordingly, the aforementioned BSDL analysis processing unit 325 can be omitted. At this time, a BSDL parser maker 810 can be configured by using the existing application program such as a BSDL reference software.
The below description focuses on the case that a BSDL parser as an independent element performs a predetermined operation. Alternatively, the BSDL parser can be realized as one functional unit included in a toolbox or pre-included as an independent element in a decoding solution. If the BSDL parser is equipped in the toolbox, a decoder forming unit must load and control the BSDL parser to perform the process by using connection control information before the functional units performing the bitstream decoding is operated. Similarly, if the BSDL parser pre-includes in the decoding solution, the decoder forming unit must control the BSDL parser to perform the process before each loaded functional unit starts to perform the process. In each of the above cases, the operations and functions of the BSDL parser is the same as described above with reference to FIG. the related drawings. Accordingly, the pertinent detailed description will be omitted. However, it may be necessary that the decoder forming unit or/and the decoding solution receives the BSDL schema or/and the bitstream at the first time.
As described above, the decoding device and the method thereof in accordance with the present invention makes it easy to analyze a syntax element and control the connection of the functional units in one standard (or codec) or between different standards (or codecs). In other words, it is possible to change the sequence of syntax elements in the bitstream to be generated according to a certain standard, to insert a new syntax element or to delete the existing syntax elements. In accordance with the conventional art, the decoder is unable to normally decode a pertinent bitstream when a syntax element is manipulated. For example, if the corresponding bitstream is re-formed and transmitted by changing the sequence of the bitstream information from ABC to ACB, the decoder is not able to recognize the re- formed bitstream. This makes it impossible to normally decode the re-formed bitstream. Similarly, if the bitstream is re-formed as ABFC by newly inserting F or as AC by deleting B, the decoder is also not able to recognize the re-formed bitstream.
However, using the decoding device and the method thereof in accordance with the present invention can allow the decoder description information to be included in an expanded bitstream or to provide the decoder description information as independent data, the decoder 300 can smoothly permit decoding operation.
Hitherto, the syntax analyzing method for the bitstream decoding and the decoding device in accordance with the present invention has been described based on the MPEG-4 AVC. However, it is naturally that the present invention can be identically applied to the MPEG-I, MPEG-2, MPEG-4 and other video data encoding / decoding standards without any restriction.
Similarly, it is obvious that the information included in the connection control information can be also written as information for performing the decoding by a plurality of standards, instead of being written by using only information related to connection relationships between the functional units for performing the decoding by one standard and the processing operation requested for the pertinent functional unit.
For example, it is assumed that a plurality of initial frames of a video bitstream, a plurality of following frames and other frames are encoded in MPEG-2, MPEG-4 and MPEG-I , respectively. In this case, in order to decode an encoded video data, the connection control information is obviously defined such that the functional units conforming to each standard included in the toolbox 335 can be organically coupled in order to each frame encoded by using different encoding methods.
Hitherto, although some embodiments of the present invention have been shown and described for the above-described objects, it will be appreciated by any person of ordinary skill in the art that a large number of modifications, permutations and additions are possible within the principles and spirit of the invention, the scope of which shall be defined by the appended claims and their equivalents.
[Industrial Applicability]
The present invention is applicable to a video codec.

Claims

[CLAIMS] [Claim 1 ]
A decoding device comprising: a parser, configured to receive a schema information for analyzing a bitstream and convert the bitstream to a meaningful datum to output the datum; and a decoding solution, configured to output a video datum by performing a bitstream decoding by use of the datum.
[Claim 2] The device of Claim 1, further comprising: a toolbox, configured to include at least one functional unit realized to perform each predetermined process; and a decoder forming unit, configured to receive a connection control information corresponding to the bitstream, set a connection relationship of at least one functional unit included in the toolbox and control the functional unit(s) to be loaded onto the decoder solution.
[Claim 3]
The device of Claim 2, wherein the decoder forming unit receives the datum from the parser and provide the datum to the decoding solution.
[Claim 4]
The device of Claim 2, further comprising: a dividing unit, configured to receive a decoder description, divide the received decoder description into the schema information and the connection control information and output the schema information and the connection control information, respectively.
[Claim 5]
The device of Claim 2, wherein the decoding solution comprises a data interface, configured to receive the datum and provide the datum to a corresponding functional unit or allow the corresponding functional unit to read the datum.
[Claim 6]
The device of Claim 1, wherein the schema information is information related to details of syntax information included in the bitstream and comprises at least one of a length, a meaning and an appearance condition of the syntax information and a repeated appearance frequency.
[Claim 7] The device of Claim 1, wherein the schema information is written by using an XML grammar.
[Claim 8]
The device of Claim 2, wherein the connection control information is written by using a CAL markup language (CALML).
[Claim 9]
The device of Claim 2, wherein the toolbox is formed to include subtoolboxes which are sets of the functional units distinguished according to an applied standard.
[Claim 10]
The device of Claim 2, wherein the decoding solution comprises a working memory, configured to allow at least one functional unit to be loaded and operated.
[Claim 11 ] The device of Claim 2, wherein the toolbox is an element of the decoder forming unit.
[Claim 12] The device of Claim 2, wherein a functional unit loaded onto the decoding solution performs a predetermined process in which at least one of the datum and an output datum, outputted by a functional unit previously performing the process, is determined as an input datum.
[Claim 13] A decoding method comprising:
(a) converting a bitstream to a meaningful datum to output the datum by using an inputted schema information;
(b) setting a sequence of successive operations of functional units by using an inputted connection control information; and (c) allowing a bitstream decoding to be performed by the functional units by using the datum.
[Claim 14]
The method of Claim 13, wherein the (b) is performed by setting a process performing sequence of at least one of a plurality of functional units included in a toolbox.
[Claim 15] The method of Claim 13, wherein, if a decoder description in which the schema information and the connection control information are integrated is inputted, dividing the inputted decoder description into the schema information and the connection control information and outputting the schema information and the connection control information, respectively, is prior to the (a).
[Claim 16]
The method of Claim 13, wherein the schema information is information related to details of syntax information included in the bitstream and comprises at least one of a length, a meaning and an appearance condition of the syntax information and a repeated appearance frequency.
[Claim 17]
The method of Claim 13, wherein the schema information is written by using an XML grammar.
[Claim 18]
The method of Claim 13, wherein the connection control information is written by using a CAL markup language (CALML).
[Claim 19] The method of Claim 14, wherein a functional unit performs a predetermined process in which at least one of the datum and an output datum, outputted by a functional unit previously performing the process, is determined as an input datum.
[Claim 20] A recorded medium tangibly embodying a program of instructions executable by a decoding device to perform a decoding method, the recorded medium being readable by the decoding device, the program comprising: converting a bitstream to a meaningful datum to output the datum by using an inputted schema information; setting a sequence of successive operations of functional units by using an inputted connection control information; and allowing a bitstream decoding to be performed by the functional units by using the datum.
PCT/KR2008/002179 2007-04-17 2008-04-17 Bitstream decoding device and method WO2008127079A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP08741424A EP2147552A4 (en) 2007-04-17 2008-04-17 Bitstream decoding device and method
JP2010503974A JP5238018B2 (en) 2007-04-17 2008-04-17 Bitstream decoding apparatus and method
CN2008800204181A CN101682754B (en) 2007-04-17 2008-04-17 Bitstream decoding device and method
US12/580,867 US8582661B2 (en) 2007-04-17 2009-10-16 Bitstream decoding device having reconfigurable functional units and a corresponding decoding method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2007-0037432 2007-04-17
KR1020070037432A KR101305514B1 (en) 2007-04-17 2007-04-17 Bitstream decoding device and method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/580,867 Continuation US8582661B2 (en) 2007-04-17 2009-10-16 Bitstream decoding device having reconfigurable functional units and a corresponding decoding method

Publications (1)

Publication Number Publication Date
WO2008127079A1 true WO2008127079A1 (en) 2008-10-23

Family

ID=39864125

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2008/002179 WO2008127079A1 (en) 2007-04-17 2008-04-17 Bitstream decoding device and method

Country Status (6)

Country Link
US (1) US8582661B2 (en)
EP (1) EP2147552A4 (en)
JP (1) JP5238018B2 (en)
KR (1) KR101305514B1 (en)
CN (1) CN101682754B (en)
WO (1) WO2008127079A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101372418B1 (en) * 2007-10-19 2014-03-12 (주)휴맥스 Bitstream decoding device and method
KR101428130B1 (en) * 2009-10-22 2014-08-08 한국전자통신연구원 Apparatus and method for parsing bitstream
KR101504887B1 (en) 2009-10-23 2015-03-24 삼성전자 주식회사 Method and apparatus for video decoding by individual parsing or decoding in data unit level, and method and apparatus for video encoding for individual parsing or decoding in data unit level
CN102592640A (en) * 2011-12-27 2012-07-18 长春希达电子技术有限公司 Decoding chain customizing system and method
US20140327737A1 (en) 2013-05-01 2014-11-06 Raymond John Westwater Method and Apparatus to Perform Optimal Visually-Weighed Quantization of Time-Varying Visual Sequences in Transform Space

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5452006A (en) * 1993-10-25 1995-09-19 Lsi Logic Corporation Two-part synchronization scheme for digital video decoders
WO2000014967A1 (en) * 1998-09-02 2000-03-16 Koninklijke Philips Electronics N.V. Video signal transmission
US20070143664A1 (en) * 2005-12-21 2007-06-21 Motorola, Inc. A compressed schema representation object and method for metadata processing

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63263860A (en) * 1987-04-21 1988-10-31 Kokusai Denshin Denwa Co Ltd <Kdd> Parallel processing communication system
JPH05110447A (en) * 1991-10-17 1993-04-30 Canon Inc Data processing unit
JP3279860B2 (en) * 1995-03-17 2002-04-30 株式会社日立製作所 Signal decoding processor
JP3304241B2 (en) * 1995-09-04 2002-07-22 シャープ株式会社 Image playback device
KR100215439B1 (en) * 1996-02-08 1999-08-16 윤종용 Control circuit of parsing data syntax of high speed
US5920353A (en) * 1996-12-03 1999-07-06 St Microelectronics, Inc. Multi-standard decompression and/or compression device
JP2002245448A (en) * 1997-04-07 2002-08-30 Matsushita Electric Ind Co Ltd Arithmetic unit
JP4423820B2 (en) * 2001-06-27 2010-03-03 ソニー株式会社 Image processing apparatus and method, program, and recording medium
AU2002349188A1 (en) * 2001-11-26 2003-06-10 Interuniversitair Microelektronica Centrum Vzw Schema, syntactic analysis method and method of generating a bit stream based on a schema
ATE513415T1 (en) * 2001-12-28 2011-07-15 Koninkl Philips Electronics Nv METHOD FOR PROCESSING MULTIMEDIA CONTENT
US6721923B2 (en) 2002-02-20 2004-04-13 Agilent Technologies, Inc. System and method for generating integrated circuit boundary register description data
US7831990B2 (en) * 2002-04-29 2010-11-09 Sony Corporation Generic adaptation layer for JVT video
JP2006520033A (en) * 2003-02-19 2006-08-31 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ A method for outputting a bitstream based on a schema that generally describes the format for the bitstream.
CN1926871A (en) * 2004-03-09 2007-03-07 松下电器产业株式会社 Encoded data decoding apparatus
US8018463B2 (en) * 2004-05-10 2011-09-13 Nvidia Corporation Processor for video data
KR20050113501A (en) 2004-05-29 2005-12-02 삼성전자주식회사 Syntax parser for a h.264 video decoder
US8009740B2 (en) 2005-04-08 2011-08-30 Broadcom Corporation Method and system for a parametrized multi-standard deblocking filter for video compression systems
JP2007008274A (en) * 2005-06-29 2007-01-18 Hodaka Kk Inclusion preventive cover and bicycle equipped therewith
US20080077606A1 (en) * 2006-09-26 2008-03-27 Motorola, Inc. Method and apparatus for facilitating efficient processing of extensible markup language documents

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5452006A (en) * 1993-10-25 1995-09-19 Lsi Logic Corporation Two-part synchronization scheme for digital video decoders
WO2000014967A1 (en) * 1998-09-02 2000-03-16 Koninklijke Philips Electronics N.V. Video signal transmission
US20070143664A1 (en) * 2005-12-21 2007-06-21 Motorola, Inc. A compressed schema representation object and method for metadata processing

Also Published As

Publication number Publication date
JP2010525653A (en) 2010-07-22
US8582661B2 (en) 2013-11-12
KR101305514B1 (en) 2013-09-06
EP2147552A4 (en) 2011-05-04
CN101682754B (en) 2013-09-25
KR20080093563A (en) 2008-10-22
JP5238018B2 (en) 2013-07-17
EP2147552A1 (en) 2010-01-27
CN101682754A (en) 2010-03-24
US20100054342A1 (en) 2010-03-04

Similar Documents

Publication Publication Date Title
US8817886B2 (en) Bitstream decoding device having a toolbox with a plurality of functional units distinguishable via identification information and a corresponding method
US20090103631A1 (en) Device and method for unified codes
US8582661B2 (en) Bitstream decoding device having reconfigurable functional units and a corresponding decoding method
EP1977599A1 (en) Device and method for encoding/decoding video data
US20110044410A1 (en) Device and method for encoding/decoding
US20100208829A1 (en) Bitstream decoding device and method having decoding solution
KR101477218B1 (en) Device and Method for encoding/decoding
US9031136B2 (en) Device and method for encoding/decoding
EP2208347A2 (en) Bitstream decoding device and method
KR100970145B1 (en) Device and Method for encoding/decoding
US8565320B2 (en) Device and method for encoding/decoding video data
KR20100115238A (en) Device and method for codec design
WO2009005225A1 (en) Device and method for encoding/decoding video data
KR101444907B1 (en) Reconfigurable AVC Adaptive Video Decoder and Method thereof
KR101305517B1 (en) Bitstream decoding device and method having decoding solution
WO2009005226A1 (en) Device and method for encoding/decoding video data
WO2008048010A1 (en) Device and method for encoding/decoding bit-stream
KR101305516B1 (en) Bitstream decoding device and method having decoding solution

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200880020418.1

Country of ref document: CN

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

Ref document number: 08741424

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 1918/MUMNP/2009

Country of ref document: IN

ENP Entry into the national phase

Ref document number: 2010503974

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2008741424

Country of ref document: EP