WO1999034550A1 - Apparatus for reproduction of encoded signal - Google Patents

Apparatus for reproduction of encoded signal Download PDF

Info

Publication number
WO1999034550A1
WO1999034550A1 PCT/JP1998/006009 JP9806009W WO9934550A1 WO 1999034550 A1 WO1999034550 A1 WO 1999034550A1 JP 9806009 W JP9806009 W JP 9806009W WO 9934550 A1 WO9934550 A1 WO 9934550A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
data
start code
information
unit
Prior art date
Application number
PCT/JP1998/006009
Other languages
English (en)
French (fr)
Inventor
Ryoji Yamaguchi
Eiji Miyagoshi
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co., Ltd. filed Critical Matsushita Electric Industrial Co., Ltd.
Priority to JP53483899A priority Critical patent/JP3564145B2/ja
Priority to EP98961647A priority patent/EP0987854B1/en
Priority to DE1998638672 priority patent/DE69838672T2/de
Priority to US09/380,187 priority patent/US7809246B1/en
Publication of WO1999034550A1 publication Critical patent/WO1999034550A1/ja
Priority to US12/486,279 priority patent/US8649662B2/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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0602Systems characterised by the synchronising information used
    • H04J3/0605Special codes used as synchronising signal
    • H04J3/0608Detectors therefor, e.g. correlators, state machines
    • 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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream

Definitions

  • the present invention relates to an encoded signal reproducing apparatus, and more particularly, to a simplified circuit configuration of an apparatus for reproducing a digital code string in which audio, video, and other additional information are multiplexed, such as a video CD, a DVD, and a digital CS broadcast. It is related to what was planned. Background art
  • an encoding method defined by the MPEG standard is generally used for video signals in many cases.
  • encoding schemes other than the MPEG encoding scheme have been considerably adopted for audio signals.
  • the multiplexing of coded video and audio data is performed according to the multiplexing method defined in the MPEG system standard. Has been multiplexed.
  • Fig. 3 shows an example of data obtained by encoding video information, audio information, and additional information multiplexed by packets.
  • the multiplexed and encoded data is byte aligned.
  • the audio signal and the video signal are each digitally encoded by an encoding device, and are multiplexed in packet units by a multiplexer.
  • a timing signal indicating the beginning of the bucket (hereinafter referred to as a bucket start code).
  • a packet header H consisting of HL, video and audio synchronous reproduction information R, etc.
  • encoded video signal data CDP and audio signal are encoded according to the type of packet.
  • Either data CDS or additional information coded data CDA is placed Bucket start code System from prefix to end of header
  • the encoded data part of the video, audio, and additional information data of the layer 1 and the header 1 or later is the elementary layer.
  • encoding a video signal In encoding a video signal, hierarchical encoding of the video signal is performed, and a code string indicating the start of the layer and a code string indicating the layer name are used. The same code sequence is used for the code sequence that indicates the start of this layer and the start code prefix (prefix) that indicates the above-mentioned bucket head.
  • the prefix code of the bucket start code appears in a multiplexed data string for each data unit indicated by the bucket length included in the packet header information, the bucket length normally included in the packet header information is used.
  • the prefix code of the bucket start code appears in the data sequence for each data unit Therefore, there is no confusion between the bucket start code prefix and the hierarchical start code of the encoded video data. .
  • packets containing video coded data may receive multiplexed data with an indefinite bucket length, unlike packets containing video coded data. I do. Such a situation occurs, for example, in a multiplexed data stream obtained by converting a transport packet used in digital CS broadcasting or the like into a PES (illertaized Elementary Stream) packet.
  • PES recordingaized Elementary Stream
  • FIG. 12 is a diagram showing the operation when reading the encoded video data, in which the bucket boundary between the video bucket 1 and the video bucket 2 is located between ('' 3 ') and (' ⁇ '). Indicates that The read pointer reads video bucket 1 as xO, xl, ⁇ 2 ..., and is sequentially transferred to the decode buffer. The pointer reaches ⁇ 'of video packet 2 beyond the packet boundary, and ( ⁇ ', ⁇ 0 ', ⁇ , ⁇ '), the ability to recognize the existence of a packet boundary for the first time at this point. At this time, the decoding buffer has already stored up to ( ⁇ ') in video packet 2.
  • the read pointer Since the data has been transferred as valid data, the read pointer is returned to the packet boundary again, and the data corresponding to the pattern of (',', ⁇ ',' ⁇ , ⁇ ') is originally subject to decoding. Since the data is not used in the system but is used in the system, the pointer is returned again and read out so that this data is not sent to the decode buffer.
  • Fig. 4 shows the video coding
  • the layer start codes of the video encoded data are ( ⁇ ') and (' ⁇ ', ⁇ ', ⁇ 0 ⁇ ) with the packet start codes (' ⁇ ', ⁇ ', ⁇ ', ⁇ ') and a bucket header.
  • the start code prefix detection unit that detects the prefix of the start code reads data from the input buffer and detects the pattern of the start code prefix. Do. At this time, the read address of the human buffer is address ⁇ . After detecting the pattern of ( ⁇ ',' 00 ', ⁇ ), the start code prefix detection unit notifies the start code discrimination unit located at the subsequent stage that the pattern has been detected. —Start the Toco discriminator.
  • the start code discriminating unit reads the data at address / 3, and determines whether this is an identifier ('B9' to 'FF') indicating the beginning of the bucket, or whether the start code (' 00 'to' ⁇ 8 ').
  • the data at address / 3 ( ⁇ ') is an identifier indicating the start of a packet, so the start code discriminator notifies the header analyzer that it has detected the packet head. Start the header analysis unit.
  • the data of the address ⁇ is a part of the video encoded data, it is necessary to connect to the subsequent part of the following video bucket data and transfer it to the decode buffer. Therefore, before starting the header analysis unit, In order to execute the transfer of address y data, the read address of the input buffer is reset from address / 3 to address y, which is the previous address, and the data of address ⁇ is transferred to the decode buffer. Need to be done. In addition to the data transfer of the address “y”, it is necessary to store information that the data of the address ⁇ is a part of the layer start code of the video encoded data.
  • the information that the ('00') data of the stored address V may be part of the layer start code is determined by the start code of the video playback unit of the encoded data part of the next video bucket. Used for detection. As described above, since the video packet has an indefinite length, the conventional coded signal reproducing apparatus performs complicated control that not only advances the read buffer of the input buffer but also returns it at the above-mentioned bucket boundary. I do it.
  • the information required for this includes audio and video synchronous playback information (PTS).
  • PTS video synchronous playback information
  • the reproduction information is often added for each basic reproduction unit of audio and video.
  • the reproduction information includes, in addition to the PTS, corresponding information indicating the presence / absence information of the PTS for each reproduction basic unit data included in each packet.
  • a method of temporarily storing the reproduction information in an internal memory of the encoded signal decoding device is conceivable.However, when a unit time includes a large number of basic audio and video reproduction units input to the decode buffer, However, the amount of synchronous reproduction information also increases in proportion to the amount of hardware required for the memory used for storing and storing data. This contributes to an increase in the area of the loop.
  • video and audio signal playback devices often employ a pipeline structure.
  • the data bus width is specified, and encoded data is transferred and decoded with the specified bus width, but the final part of the encoded data may be smaller than the data bus width.
  • the conventional coded signal reproducing apparatus is configured as described above.
  • the pattern shown in FIGS. 4a and 4b not only the read address of the input buffer at the bucket boundary is simply advanced, but also Further, a complicated control circuit for performing control to advance and return to the back is required.
  • hardware such as a memory may be required to hold reproduction information included in the packet header section.
  • the coincidence state between the code input for each predetermined bit and the prefix code of the packet start code is detected, and Matching condition at the beginning of the bucket start code
  • a matching state information output means for outputting state information; and a data formatting means for outputting predetermined data based on the matching state information, so that a matching state of a code string indicating a bucket boundary is provided.
  • the encoded signal reproducing apparatus when the input code string is video encoded data, the encoded signal reproducing apparatus further includes header analyzing means for analyzing a header of the bucket and outputting reproduction information.
  • the data format means inserts the reproduction information into a predetermined position of the encoded video data together with information indicating the validity of the reproduction information, so that the formatter transmits the reproduction information contained in the packet header.
  • the terminal code sequence detecting means for detecting the code sequence indicating the end of the encoded data from the code sequence of the encoded data, and the terminal code sequence detecting means
  • the data bus width of the pipeline transfer including the end of the encoded data becomes equal to the bus width of the pipeline transfer including other data.
  • a formatter unit for adding a predetermined number of pseudo data to the end of the code string indicating the end of the encoded data is provided, so that data transfer in the pipeline in the playback device is transferred to the pipeline. Oak
  • FIG. 1 is a block diagram showing a configuration of an encoded signal decoding device according to Embodiments 1 to 3 of the present invention
  • FIG. 2 is a diagram for explaining the operation of the encoded signal decoding device according to Embodiment 1 above.
  • FIG. 3 is an explanatory diagram showing a configuration of a multiplex signal
  • FIG. 4 is an explanatory diagram showing a multiplex signal in which a packet boundary in a decoded buffer is likely to be erroneous
  • FIG. Fig. 6 is a diagram showing the relationship between video packets and video playback units.
  • Fig. 6 is a diagram for explaining padding processing of the final portion of video coded data by a formatter.
  • Fig. 7 is a diagram showing multiple coding.
  • FIG. 3 is an explanatory diagram showing a configuration of a multiplex signal
  • FIG. 4 is an explanatory diagram showing a multiplex signal in which a packet boundary in a decoded buffer is likely to be erroneous
  • FIG. 8 is a diagram showing a unique code string inserted into data
  • FIG. 8 is a block diagram showing a modification of the encoded signal decoding device according to Embodiments 1 to 3 of the present invention
  • FIG. 10 is a lock diagram.
  • FIG. 10 explains the operation of the encoded signal decoding apparatus of the present invention, focusing on the formatter and start code state holding unit when the input bucket is a video bucket.
  • FIG. 11 is a diagram showing a flow for decoding an encoded signal according to the present invention.
  • FIG. 12 is a diagram showing a further flow for explaining the operation centering on the formatter and the start code state holding unit when the input bucket is a video bucket in the device.
  • FIG. 4 is a diagram for explaining an operation of reading encoded video data by a conventional encoded signal reproducing device. BEST MODE FOR CARRYING OUT THE INVENTION
  • FIG. 9 is a block diagram showing a conceptual configuration of a coded signal reproducing apparatus according to the present invention.
  • Ml receives a coded signal, compares a predetermined code with an input code
  • the matching state information output means for outputting the matching state information.
  • the M2 receives the above matching state information, and generates and decodes predetermined data in response to the occurrence of ('00') in the code, especially when ('00') appears in the code.
  • This is a data format means for outputting to a buffer. For data (excluding video signals) in which ( ⁇ ') does not appear in the encoded signal, the data is transferred to the decode buffer without involving the data formatting means # 2.
  • FIG. 1 is a more detailed block diagram of the encoded signal reproducing apparatus. This corresponds to the invention of claim 1 of the present application, and the configuration and control can be made easier than in the conventional device.
  • reference numeral 2s.1 denotes a multiplexed coded signal supply unit for supplying a multiplexed coded signal to the multiplexed coded signal demultiplexer, and a decoder unit such as a video CD or DVD player or a digital CS tuner.
  • 2 s 2 is the multiplexed coded signal supply unit 2 s 1
  • This is an input buffer that receives output, and is composed of, for example, a ring buffer.
  • 2 s 4 is an input buffer read control circuit that controls the read address by giving a read control signal (SIG 1) to the input buffer 2 s 2, and SW 1 is the input buffer A switch that switches the output of buffer 2 s 2 to one of the three terminals a, b, and c and outputs it.2 s 3 receives the signal when switch SW 1 is switched to terminal b and includes it in the bucket.
  • This is a start code detection unit that detects the start code prefix (pre-hidden code) that is multiplexed using a packet length and a synchronization signal consisting of the start code and a bucket identifier. A desired code sequence is detected from the sequence.
  • 2s5 is started in response to the status signal (SIG 8) output from the start code state holding unit 2s14, and is started by one byte which is the output signal of the start code debris detector 2s3.
  • a start code discriminator for discriminating whether the start code belongs to a bucket of the video signal, the audio signal, or the additional information. From the input buffer end h2 when the header analysis start signal (SIG11), which is the output signal from the second discriminator 2s5, and when the start code has been discriminated and switch SW1 is switched to terminal a, This is a header analysis unit that analyzes the header in response to this signal, and analyzes the code after the synchronization signal.
  • 2 s 7 is a reproduction information holding unit that receives a reproduction signal (SIG4) which is an output signal of the header analysis unit 2 s 6 and holds reproduction information
  • 2 s 14 is a start code flexure detection unit 2.
  • SIG5 which is the output signal of s3
  • SIG 17 reproduction information status signal
  • SIG 17 formatter start signal
  • SIG6 1-byte signal
  • PTS playback information
  • SIG7 the output signal of playback information holder 2s7
  • SIG8 the output signal of the start code state holding unit 2 s 14.
  • Data is output based on the information output by the matching state information output means including the start code flexure detection section 2s3, the start code state holding section 2s14, and the start code determination section 2s5. Generates and inserts a data string at a specified position in the video coded data.
  • SW2 is a start code prefix detector 2 s3, formatter 2 s1 3, and switch A switch that selects and outputs one of the outputs of the c terminal of SW1.
  • 2 s8 is a start code detector 2 s
  • the data separation control unit performs data separation control, and when the data transfer is completed, notifies the start code discrimination unit 2s5 of the completion using the notification signal (SIG 20).
  • 2 s 19 is the format start / end signal (S 1 G 19) output from the formatter 2 s 13 and the header end signal (SIG 18) output from the header analysis unit 2 s 6.
  • Outputs control signals (SI G3, SIG 10).
  • 2 s is the above switch SW 1, switch SW 2, start code flexure detection section 2 s 3, start code discrimination section 2 s 5, header analysis section 2 s 6, reproduction information holding section 2 s
  • This is a multiplexed signal separation unit consisting of a data separation control unit 2s8, a formatter unit 2si3, and a start code state holding unit 2s14.
  • 2 s 10 fetches the reproduction information held in the reproduction information holding unit 2 s 7 as a host control signal C (SIG 15) via the host bus (HB) and retrieves the data separation control unit 2.
  • a decoding unit 2d9 decodes the signal from s8, 2s9 is a decoding buffer that receives and holds the output signal of the data separation control unit 2s8 and supplies it to the decoding unit 2s10, It has independent storage areas for voice, audio, and additional information, and stores the data output from the data separation control unit 2s8 in predetermined areas.
  • 2 s 11 is a work memory used when the decoding unit 2 s 10 performs a decoding operation
  • 2 s 12 is a host control signal B for performing processing such as initial setting and resetting of the decoding unit 2 s 10.
  • the host CPU HB is connected to the playback information holding unit 2s7 and the decoding unit 2s10, and the data bus of the multiplexed coded signal supply unit 2s1. It is configured to output a supply control signal (SIG12) for controlling the supply operation.
  • decoding buffer 2 s 9 decoding unit 2 s l 0, work memory 2 s l
  • An encoded signal reproducing device 2 composed of 1 is configured.
  • 2 s 11 is an external memory realized by SDRAM or the like, and is generally configured by a chip different from the LSI which realizes other components.
  • the start code flexure detecting section 2s3, the start code discriminating section 2s5, and the start code state holding section 2s14 realize the coincidence state information output means Ml.
  • the formatter section 2 s 13 implements the data formatting means M2.
  • the header-one analysis unit 2 s 6 and the reproduction information holding unit 2 s 7 implement a header analysis unit.
  • the multiplexed coded data sequence supplied from the multiplexed coded signal supply unit 2 s 1 is temporarily stored in the input buffer 2 s 2.
  • the switch SW1 is first connected to the contact b under the control of the controller 2s19.
  • the multiplexed data string stored in the input buffer 2 s 2 is output one byte at a time to the start code prefix detector 2 s 3 under the control of the input buffer read control circuit 2 s 4. .
  • the start code flexure detecting section 2s3, together with the start code state holding section 2s14, detects a packet start code which is a head code of the bucketed data. Then, start using the status information (SIG 8) from the start code state holding unit 2 s 14 described later. Activate the code discriminator 2 s 5.
  • the start code discriminating unit 2s5 uses the fact that the bucket identifier is different depending on whether the packet is a video bucket, an audio bucket, or an additional information bucket, and determines which type of bucket is input. If the packet identifier following the start code prefix code is an identifier representing a desired data sequence to be reproduced, the header analysis unit 2 determines that the packet is a valid packet. Notify s6. Also, the start code discriminating section 2s5 activates the header analyzing section 2s6 regardless of whether the bucket is a valid bucket or an invalid bucket.
  • the start code determination unit 2 s 5 does not need to analyze the start code.
  • Switch SW 1 is switched to contact c and switch SW 2 is switched to contact f by controller controller 2 s 19, and the output bucket of input buffer 2 s 2 is output directly to data separation control unit 2 s 8 .
  • the data separation control unit 2s8 controls the data transfer of the voice bucket or the additional information packet to the decode buffer 2s9.
  • the decoding unit 2s10 decodes the audio packet or the additional information packet stored in the decode buffer 2s9 by the internal audio decoder or the additional information decoder, and temporarily stores the decoded signal in the work memory 2s11.
  • the decoded signal is read from the work memory 2 s 11 and output to the outside as a reproduced signal output.
  • next input bucket is a video bucket
  • the functions of the formatter 2 s 13 and the start code state holding unit 2 s 14 This will be described with reference to the flowchart in FIG.
  • the switch SW1 is first connected to the contact b (step S200), and the switch SW2 is not connected to any of the contacts.
  • the multiple data strings accumulated in the input buffer 2 s 2 are output one byte at a time to the start code bleeding detecting unit 2 s 3 under the control of the input buffer read control circuit 2 s 4.
  • Step S 201) Including the start code prefix detection section 2 s 3 and the start code state holding section 2 s 1 --the match state information output means M 1 is a packet which is a head code of the packetized data.
  • step S202 Detects the start code prefix (step S202) and notifies the start code status holding unit 2 s14 that ('00', 00 ', ⁇ ) has been input with the status update signal S15. I do.
  • the 1-byte start code prefix detecting unit 2 s 3 reads from the input buffer 2 s 2, and the 1-byte signal SI The start code discriminating unit 2s5 is notified by G6 (step S203).
  • step S204 the start code determining unit 2s5 determines that the bucket identifier is different depending on whether the bucket is a video bucket, an audio bucket, or an additional information packet. To determine which type of packet the input packet corresponds to. If the bucket identifier following the start code prefix code is an identifier representing a desired data string to be reproduced, Notifies the header analyzer 2s6 that the bucket is valid. Also, the start code discriminating unit 2 s 5 determines whether or not the packet is a valid bucket or an invalid bucket in step S 20. In step 5, the header analysis unit 2 s 6 is started.
  • Whether the packet is a valid bucket to be played back or an invalid packet not to be played back is determined by the host CPU at the start of playback by the SIG 13 and SIG 14 via the host bus (HB) by the host CPU (HB). This is performed by collating with the playback bucket identifier set to 5.
  • the controller 2 sl 9 switches the switch SW1 from the contact b to the contact a when the input bucket is determined to be a video bucket based on the determination result of the start code determining unit 2 s 5 (step S206), and outputs the video bucket to the header analysis unit 2s6. At this time, the switch SW2 is not connected to any contact.
  • the header analysis unit 2 s 6 receives the bucket from the input buffer 2 s 2, analyzes the bucket length included in the bucket header ⁇ playback information used for playback (step S 207), and The information is stored and stored in the reproduction information storage unit 2s7 (step S208).
  • the playback information includes information for synchronizing the playback time of audio and video called PTS, and information such as a flag indicating the presence / absence information of the PTS for each playback basic unit data included in each packet. Is included.
  • the header analysis unit 2s6 determines the end of the header based on the header information (step S209).
  • the controller 2s19 controls the switch SW2 so that it is not connected to any of the contacts, as well as the data separation controller 2s8 and the start code.
  • Activate the fix detector 2 s 3 step S 210).
  • the data separation control unit 2s8 controls data transfer to the decode buffer 2s9 based on the data separation information held by the header analysis unit 2s6. I will.
  • the encoded video data stored in the decoded buffer 2s9 is decoded by the video decoder in the decoding unit 2s10 in the same way as the encoded data of audio and additional information, and the reproduced signal is output. Is done.
  • the decoding unit 2s10 is capable of performing a decoding process using the work memory 2sl1. At this time, the synchronization with the encoded audio data is performed using the reproduction information held in the reproduction information holding unit 2s7. The decoding operation is performed so that
  • the header analysis unit 2s6 analyzes the header, and if it is determined that the data included in the input bucket is video data, the controller 25 19 switches to the switch 5 ⁇ ⁇ 1, SW 2 And the bucket storing the video data is connected to terminals b and d (step S211), and after the header ends, the video encoded data area is transferred to the decode buffer 2s9 side Then, the bucket storing the video data is connected to the start code blur detector 2 s 3 via the terminal b of the switch SW 1 (step S 2 1 2). In order to detect the start code, the above-mentioned activated start code detector 2 s 3 is activated to detect the next bucket start code and to separate the data of the next bucket. There is a need.
  • the layer start codes (' ⁇ ', ⁇ ',' ⁇ , ⁇ 0 'to' ⁇ 8 ') and the packet start codes ( ⁇ ', ⁇ ', ⁇ , 'B9' to 'FF') are similar patterns, causing confusion between them and the possibility of erroneous packet boundaries.
  • one byte ( ⁇ ') is read out to the start code flexure detecting unit 2s3.
  • the start code prefix detector 2 s 3 knows that the current status is “0” from the status signal SIG 8, and detects the state in which one ('00') is input by using the status update signal SIG 5. Notify the state storage unit 2 s 14.
  • the start code status holding unit 2 s 14 uses the status code (2 s 14) as the start code status holding unit 2 s 14 to indicate the status holding ( ⁇ ') as the history information of the matching status of the first code. Is updated from "0" to "1".
  • one byte ( ⁇ ') is read out to the start code flexure detector 2s3.
  • the start code detection unit 2 s 3 learns from the status signal SIG 8 that the current status is ⁇ 1 '' and further checks the state where ('00') is input with the status update signal SIG 5. Notify the start code state holding unit 2 s 14. As a result, the state where two consecutive ('00') are input is notified to the state code state holding unit 2 s 14, and two consecutive ( ⁇ ') are used as the history information. In order to indicate the held state, the start code state holding unit 2s14 updates the status from "1j" to "2".
  • one byte ( ⁇ ') is read out to the start code prefix detector 2 s 3, and the start code prefix detector 2 s 3 outputs the status signal. It knows that the current status is “2” at SIG 8 and notifies the formatter unit 2 si 3 of a one-byte signal SIG 6 indicating ( ⁇ '). In addition, the start code status holder 2 s 1 4 force The formatter unit 2 s 13 is activated by the status signal SIG 8 indicating the status “2”.
  • ( ⁇ ') is read out to the start code flexure detector 2 s 3, and the start code flexure detector 2 s 3 reads the current state signal SIG 8 It knows that the status is "3", and notifies the start code discriminating unit 2s5 of the state in which ( ⁇ ') has been input with the 1-byte signal SIG6. Further, the start code state holding unit 2 s 14 notifies the start code discrimination unit 2 s 5 of the current status “3” with the status signal SIG 8.
  • the start code discrimination unit 2 s 6 determines whether the value is ( ⁇ ') or a value from (' 00 ') to (' ⁇ 8 ') based on the input 1-byte signal SIG 6. Judge which of the values from (' ⁇ 9') to ('ff) is from the one-byte signal SIG6.
  • the input 1-byte signal SIG6 signal is ( ⁇ '), and therefore, the status is “3” and the 1-byte signal SIG6 power; ( ⁇ '). It is determined from the 1-byte signal SIG6 that it is an identifier.
  • the start code discriminating unit 2s5 notifies the start code state holding unit 2s14 of the status update signal by SIGX 1 and notifies the status by ( ⁇ ) of the hierarchical start code of the video encoded data. ') Is updated to status "1", which has one state.
  • the start code discrimination unit 2 s 5 sends the signal SIG 9 to the formatter unit 2 s 13 according to the value of the one-byte signal SIG 6 input at SIG 9, and outputs the signal from the formatter unit 2 s 13. Control force data.
  • the formatter unit 2 s 13 receives the SIG 9, connects the switch SW 2 to e, and prepares to transfer the formatter output to the decode buffer 2 s 9 via the data separation control unit 2 s 8.
  • the input state of the start code blur detector 2 s 3 is 1-byte signal SIG 6 with status “3”; ( ⁇ '), that is, ( ⁇ ', '00', '01' , ⁇ '), and corresponds to pattern ⁇ in Table (1), so there is no formatter output.
  • the formatter unit 2 s 13 controls the controller 2 s 19 using the format start / end signal SIG 19 so that the switch SW 2 is not connected to any of the three terminals when the format is completed.
  • the SIG 9 detects the packet start code (' ⁇ ', ⁇ ', ⁇ ', ⁇ '), and after the format output process, starts analyzing the header.
  • the format output completion signal is notified as SIGX 2 to the start code determination unit 2 s 5, and the start code determination unit 2 s 5 receives the SIGX 2 and starts the header analysis unit 2 s 6 with SIG 11.
  • the update of the status of the start code state holding unit 2 s 14 by SIGX 1 is determined by which part of the start code flexure inputted to the decod buffer 2 s 9 by the format operation is inputted. . If the number of ( ⁇ ') is 1, status "1", and 2 or more ( ⁇ ') are input If the status "2" is input (' ⁇ ', ⁇ ',' ⁇ ), the status is updated to "3". Otherwise, the status is updated to "0".
  • SI GX 1 changes the status of the start code status
  • patterns other than patterns A and in the above table (1) are as follows. The operation will be described.
  • the start code flexure detector 2 s 3 sends data (“ ⁇ ”) with a value other than 1 byte ('00'). ') Is input, as shown in Fig. 1 lc, the start code flexure detector 2 s 3 converts the input g string ( ⁇ ', 'XX') to the start code flexure. Therefore, the status update signal SIG5 is used to update the start code state holding unit 2 s 14 from status “1” to status “0”. The start code state holding unit 2 s 14 whose status has been updated controls the formatter unit 2 s 13 to output (' ⁇ ', 'XX') by the status update signal SIG 8.
  • the activated formatter unit 2 s 13 sends the format start signal SIG 19 to the controller 2 s 19, and the controller 2 s 19 connects the switch SW 2 to e, ( ⁇ ',' XX ' ) Is output to the data separation control unit 2 s 8.
  • the formatter section 2s13 completes the output, it sends a format end signal to the controller section 2s19 by SIG19, and switches the switch SW2 to d.
  • the formatter end signal SIG 16 is sent to the start code prefix detection unit 2 s 3, and the start code prefix detection unit 2 s 3 resumes operation in status “0”.
  • the start code status holding unit 2 s 14 with the updated status controls the formatter unit 2 s 13 to output ( ⁇ ⁇ ⁇ ⁇ ⁇ ',' () () ', ⁇ ') from the status IG IG8 You.
  • the activated formatter unit 2 s 1 3 sends a format start signal S ⁇ G 19 to the controller 2 sl 9, and the controller 2 s 19 narrows the switch SW2 to e, (' ⁇ ', '00' , ' ⁇ ') to the data separation control unit 2 s 8 u
  • the formatter unit 2 s 13 completes the output
  • the format is completed by S G 19 and the ⁇ signal is sent to the controller unit 2 s 1 Send to 9 and switch SW 2 to d.
  • the formatter end signal SIG 16 is sent to the start code flex detector 2 s 3, and the start code flex detector 2 s 3 resumes the operation with the status “0j.
  • For pattern D-1 In the state of status “3” as shown in Fig.
  • the start code flex detection unit 2 s 3 outputs a value other than ('( ⁇ )') or (' ⁇ 9') to ('ff).
  • the start code flexure detector 2 s 3 When ( ⁇ ') having a value is input, as shown in FIG. 1c, the start code flexure detector 2 s 3 outputs the input code string ( ⁇ ', '00', ⁇ , ' Since it is determined that ⁇ ') is not the playback start code, the status update signal SIG 5 is used to update the status code holding unit 2 s 14 from status “3” to status “0”: status
  • the updated start code state holding unit 2 s 14 updates ( ⁇ ⁇ ⁇ ′, ⁇ ⁇ ⁇ ⁇ ',' 0 ⁇ , ' ⁇ ') are controlled to output the formatter 2 s 13.
  • the activated formatter unit 2 s 13 sends a format start signal SIG 19 to the controller 2 sl 9, and the controller 2 s 19 connects the switch SW 2 to e, ('00', ⁇ 0 ', ⁇ , ' ⁇ ') is output to the data separation control unit 2 s 8.
  • SIG 19 When the formatter section 2 s 1 3 completes the output, The format end signal is sent to the controller unit 2 s 19 by SIG 19 and the switch SW 2 is switched to d. Formatter end; S-No. SIG 16 is sent to start code prefix detector 2 s 3, and start code prefix detector 2 s 3 resumes operation in status 10 ”.
  • the start code discriminator 2 s 5 In the status "4", the start code discriminator 2 s 5 outputs the start code flexure detector 2 s 3, and the 1-byte signal IG 6 from ('00') or (' ⁇ 9) When the data (' ⁇ ') other than ('ff) is notified, the status update signal SIG5 is in the start code state. While the status of the start code state storage unit 2 s 14 is updated to ⁇ 4 '', the status is updated to ⁇ 0, '' while the same status update signal SIG 5 The formatter section 2 s 13 is started.
  • the activated formatter unit 2 s 13 sends a format start signal SIG 19 to the controller 2 s 19, and the controller 2 s 19 connects the switch SW 2 to e, ( ⁇ 1 , ⁇ ', ⁇ , ⁇ ',' ⁇ ') to the data separation control unit 2 s 8.
  • the formatter unit 2s13 sends a format end signal to the controller unit 2s19 by SIG19, and switches the switch SW2 to d.
  • the start end signal SIG 16 is sent to the start code prefix detection unit 2 s 3, and the start code prefix detection unit 2 s 3 resumes operation in the status “0 J”.
  • the formatter 2 s 13 is provided, and the formatter 2 s 13 coincides with the leading part ( ⁇ ′) of the predetermined code string detected by the start / start code pre-fix detector 2 s 3.
  • the upper part of the start-up code flex detection unit 2 s 3 force; detects the remaining part ( ⁇ ⁇ 0 ', ⁇ ', ⁇ , ⁇ ') of the detected predetermined code string
  • the formatter 2 s 13 coincides with the leading part ( ⁇ ′) of the predetermined code string detected by the start / start code pre-fix detector 2 s 3.
  • a code string other than the code string ( ⁇ ',' 00 '. ⁇ , ⁇ ') indicating the field of the bucket among the data not transferred to the decode buffer 2 s 9 Is output to the above-mentioned decode buffer 2 s 9, so that when the multiplexed coded signal is separated, ,
  • Embodiment 2 of the present invention will be described.
  • the second embodiment in addition to the functions shown in the first embodiment, there is no need to store a large amount of reproduction information inside the apparatus, and the hardware such as memory required for the storage is minimized. It is possible to suppress it. Since the basic configuration is the same as that shown in FIG. 1, the description is omitted here.
  • Figure 5a shows the unit structure of a bucket consisting of a video (video) bucket header and video coded data following the bucket header.
  • the video coded data included in the video bucket's socket contains multiple video data.
  • S units of re-cow may be included, and in FIG. 5, the video playback basic unit data 0 to 3 are included.
  • the video playback basic unit includes a video playback base unit start command at the beginning. It is not guaranteed that the video bucket always contains the video playback unit start code at the beginning of the video encoding data. Generally, data at a reproduction position that cannot be accommodated in the immediately preceding video packet, such as data 0, is placed at the beginning of the video coded data.
  • the display time information is allocated to the basic unit data included in the first video playback basic unit start code among the video playback units included in the video encoded data of the video packet, and In the case of the figure, video playback basic unit data 1 corresponds to it. No display time information was given for the others. In the case of packets without PTS, In this case, no PTS is assigned to any video playback basic unit data included in the video encoded data. Of the raw information extracted by the header analysis unit 2 s 6, only information for synchronizing the audio and video playback time called PTS is temporarily stored in the playback information holding unit 2 s 7.
  • the header analysis unit 2 s 6 activates the data separation control unit 2 s 8 and decodes the video data portion with respect to the decode bumper 2 s 9. Start the transfer. At this time, in order to detect a boundary start code included in the video coded data, a start code breach detector 2s3 that analyzes a bucket header is started.
  • start code prefix detection unit 2 s 3 When the start code prefix detection unit 2 s 3 detects the start code prefix code included in the video data, the start code prefix detection unit 2 s 3 starts the start code determination unit 2 s 5. Start up, look at the code next to the prefix code of the detected video data boundary start code, and start playback of video data boundary start code or video encoded data. Determine if it is the start code of the place.
  • the formatter 2 s 13 transmits the display start information (PTS), which is the reproduction information stored in the reproduction information holding unit 2 s 7, based on the analysis Yuisai of the start co one de discriminator 2 s 5, start code of the reproduction fundamental unit ( ⁇ ', ⁇ ', ' ⁇ , ⁇ ') de added to the end of - outputting the data ⁇
  • PTS display start information
  • the formatter 2 s 13 is provided, and among the pieces of playback information included in the bucket header, only the P display S that is the time display information is stored in the playback information holding unit 2 s. 7 Video playback for each unit * PTS is added to the end of the start code for each unit, and information (flag) indicating PTS invalid / valid is individually added.
  • the PTS needs to be held in the garment S in a ⁇ ⁇ - ⁇ -like manner, and the data before decoding is stored in the RAM (decode buffer 2) outside the device. s9), so that it is not necessary to hold a large amount of playback information inside the device, and the hardware scale such as memory required for holding the playback information is minimized.
  • Multiplexed digital code It is possible to provide an inexpensive device for regenerating rows.
  • Embodiment 3 of the present invention in addition to the functions described in the first embodiment, by supplementing data using a formatter section, transfer control of a data bus through which data sequentially flows in a pipeline manner can be simplified. Made Things. Since the basic configuration is the same as that shown in FIG. 1, the description is omitted here.
  • the start code discriminating unit 2 s 5 realizes a terminal code detecting means for detecting a code string indicating the end of the encoded data.
  • FIG. 6a shows the pattern of a code string at the end of video coded data in multiplex coded data.
  • the tail of the video encoded data is a data pattern that is smaller than the data width of the pipeline output from the multiplexed signal demultiplexing unit 2s and the decoding unit 2s10. is there.
  • the pattern of ( ⁇ ⁇ ',' 00 ', ⁇ ) is detected by the start code prefix detection section 2 s 3, and the boundary start indicating the video final data is detected by the start code determination section 2 s 5.
  • the code ( ⁇ ', ⁇ ', ⁇ ',' b7 ') is determined.
  • ('B7') indicates the sequence end code.
  • the start code discriminating unit 2 s 5 detects the last part of the final video data, it notifies the formatter 2 s 13 of that fact.
  • padding data ('FF') is added following the final data code string as shown in Fig. 6b and transferred to the decode buffer 2s9.
  • the byte width is 4 bytes (32 bits)
  • the number of padding data to be padded is equal to the bus width including the video final data by inserting three or more following the last data code column.
  • the video data of the last part can be read out by pipeline processing. Can be. Due to the addition of the padding data, the final video data portion that is less than the data bus width is aligned to fit into the data bus width.
  • a code called a program end code which indicates the end of the program
  • the addition of this code is a rule. If this code is not described, the host CPU cannot determine whether the data has been sent to the decode buffer to the end or the data has been interrupted in the middle. It is possible that the screen cannot be displayed, causing a problem that the system freezes.
  • there is no sequence end code at the end of the encoded video data there may be a problem that the last few images are not output. In such a case, it is possible to cope with the problem by inserting a unique code string uniformly in advance at the last packet (end of the sequence) of the packet string.
  • Fig. 7 shows the unity inserted into the FIG. 4 is a diagram showing a code string that is not necessary.
  • the unique code sequence has a code ⁇ "sequence similar to that of the bucket 1 starting code. That is, this unique code sequence is (' ⁇ ', ⁇ ', ⁇ ', 'XX'). However, (' ⁇ ') is a symbol that is not confused with the bucket start code-for example, sequence end code ('b7') or program end code ('b7'). , Bi) ') etc. are selected.
  • the unique code string is inserted by the host CPU 2s12 after the bucket data of the last bucket of the reproduction sequence.
  • the start code detection unit 2 s 3 in the multiplexed signal separation unit 2 s and the start code discrimination In section 2 s5 it is detected that unique code data has been input.
  • the start code discriminating unit 2s5 notifies the signal ig (SIG) so that the encoded data contained in the packet before the unique code string is transferred to the decode buffer 2S9. 20) is notified to the data separation control unit 2s8.
  • the data separation control unit 2s8 executes data transfer up to the bucket data decode buffer 2s9, and upon completion of the transfer, uses the notification signal (SIG20) to start the start command.
  • the transfer completion notification is sent to the one-way discrimination unit 2 s 5.
  • the start code discriminating unit 2s5 detects the unique code string, and transfers the data contained in the bucket of ⁇ of the unique code string to the decode buffer 2s9. This is notified to the host CPU 2 s 12 using the host control signal A (SIG 13). This makes it possible for the external host CPU 2s 12 to reliably detect that specific bucket data has been stored in the decode buffer 2s 9. Become.
  • the specific code string inserted is identified, and after this, a predetermined number of padding data is added, whereby each bus width is obtained.
  • the size of the data existing at the boundary can be made uniform. If a program end code is originally given to the packet after the packet sequence, two of these will be detected consecutively by adding the above specific code sequence. However, there is no problem in actual operation.
  • the formatter 2 s 13 is provided with a data padding function, and the formatter 2 s 13 is placed behind the code string less than the data bus width of the pipeline processing. Since padding data is added so that the size of the data existing within each bus width boundary is the same, data transfer in the pipeline in the playback device is satisfied by the data bus width in the pipeline. Until the end of the encoded data can be realized without the need for complicated transfer control, the data at the end of the encoded data surely flows through the pipeline of the playback device. This can be done without using complicated data transfer control.
  • the controller is used in addition to the host CPU. However, as shown in FIG. 8, the controller may be omitted by providing the host CPU with the function of the controller as shown in FIG. It has the same effect as.
  • the present invention relates to an encoded signal reproducing apparatus, and more particularly, to a simplified circuit configuration of an apparatus for reproducing a digital code string in which audio, video, and other additional information are multiplexed, such as a video CD, DVD, and digital CS broadcast. It is related to what is planned.

Description

W /34550
細 書 符号化信号再生装置 技術分野
この発明は、 符号化信号再生装置に関し、 特に、 ビデオ CD, DVD, ディジタル C S放送等、 音声, 映像やその他の付加情報が多重化された ディジタル符号列の再生を行う装置の回路構成の簡略化を図ったものに 関するものである。 背景技術
近年、 ビデオ CD, DVD, ディジタル C S放送等に見られるように、 画像信号, 音声信号, 及び字幕情報等の付加情報信号をディジタル符号 化, 多重化して記録, 伝送等するメディアが急速に普及しつつある。 し かるに、 前記のような符号化, 多重化されたディジタル信号の再生装置 を家庭等に普及させるには再生装置のコストダウンが必須である。 その ためには多重化した信号を分離する分離装置と、 分離された各ディジタ ル信号を復号する復号装置とを簡単かつコンパク 卜な回路構成で実現す ることが要求される。
ところで、 このようなディジタルメディアでは、 映像信号については MP EG規格で規定された符号化方式が一般的に使用されていることが 多い。 これに対し、 音声信号については MP EG符号化方式以外の符号 化方式もかなり採用されている。 そして、 映像, 音声の符号化データの 多重化には M P E Gシステムの規格で定義された多重化方式によってそ の多重化が行われている。
第 3図にパケットにより、 多重化された映像情報, 音声情報, 付加情 報を符 ^化したデータの例を示す。 多重化及び符号化されたデータはバ ィ トァライメントされている。 音声信号, 映像信号はそれぞれ符号化装 置によりディジタル符号化され、 多重化装置によりパケッ ト単位で多重 化されている„バケツ 卜の先頭にはバケツト先頭を示す向期信号(以下、 これをバケツ トスタートコ一ド · プレフィックスと称す) Sとバケツ ト が音声, 画像, 付加情報のいずれのパケットに該当するかを区別するた めの識別子 I、 パケッ トの長さを示すパケット長情報 L、 ヘッダ一長 H L、 映像, 咅声の同期再生情報 R等からなるパケッ トヘッダ Hが付加さ れる。 このパケッ トヘッダ Hの後にはパケットの種類に応じて、 映像信 号の符号化データ C D P , 音声信号の符号化データ C D S, 付加情報の 符号化データ C D Aのいずれかが配置される。 バケツ トスタートコード プレフィックスからヘッダー末端までをシステムレイヤ一、 ヘッダ一以 降の映像, 音声, 付加情報データの符号化データ部をエレメンタリーレ ィャ一とする。
映像信号の符号化においては、 映像信号の階層符号化が行われ、 その 階層の開始を示す符号列と階層名を示す符号列が使用される。 この階層 の開始を示す符号列と前述のバケツ ト先頭を示すスタートコ一ド前置コ —ド (プレフィックス) とは同じ符号列を使用する。
通常、 バケツ 卜のヘッダ情報に含まれるバケツ ト長で示されるデータ 単位毎にバケツトスタ一トコ一ドの前置コードが多重データ列に現れる ため、 通常、 パケッ トのヘッダー情報に含まれるバケツ ト長で示される データ単位毎にバケツトスタ一トコ一ドの前置コ一ドがデータ列に現れ るため、 バケツ トスタートコ一ドブレフィックスとビデオの符号化デ一 タの階層開始コードとの混同は起こらない。。
しかしながら、 ビデオ符号化データが含まれるパケッ トでは、 ォ一デ ィォ符号化データが含まれるバケツ ト等とは異なり、 バケツ ト長が不定 であるような多重化データが入力される場合が存在する。 このような状 況は、 例えば、 ディジタル C S放送等で使用されるトランスポートパケ ットを P E S (Pakettaized Elementary Stream) ノ ケットに変換した多 重化データ列において発生する。 前記のようなビデオ符号化データのパ ケッ ト長が不定である場合の, 従来の多重化データの分離の仕方につい て以下に示す。
第 1 2図はビデオ符号化データを読み出す際の動作を示す図であり、 映像バケツ ト 1 と映像バケツ ト 2のバケツ ト境界が、 ('χ3') と ('ΟΟ') の間に位置している場合を示す。 読み出しポインタは映像バケツ ト 1を xO, xl, χ2...と読み出し、 デコードバッファへ順次転送され、 パケット 境界を超えて、 ポインタが映像パケッ ト 2の ΈΟ'に到達し、 (ΌΟ', Ό0', ΌΓ, ΈΟ') のパターンが検出されると、 ここで初めてパケット境界が存 在することが認識される力 このときすでに、 デコードバッファには映 像パケッ ト 2の (ΈΟ') までのデータが有効データとして転送されてし まっているので、 読み出しポインタを再びパケット境界まで戻し、 ('ΟΟ', ΌΟ', 'ΟΓ, ΈΟ') のバタ一ンに相当するデータは、 本来デコード対象と なるデータではなく、 システムにて利用されるデータであるため、 この データをデコードバッファに送らないように再度ボインタを戻して読み 出しを行うようにしている。
第 4図にバケツ ト境界を誤りやすいパターンとして、 ビデオ符号化デ ータの階層開始コ一ドが 2つのパケッ卜の間で分割されてしまった場合 の, 2つの例を挙げて考える。
以下、 第 4 a, b図のそれぞれのパターンについて、 バケツ ト境界判定 動作を説明する。
まず、 第 4 a 図のパターンについて説明する。 第 4 a 図のパターンで は、 ビデオ符号化データの階層開始コードは、 (ΌΟ') と ('ΟΟ', ΌΙ', Ό0·) において、 パケッ トスター卜コード ('ΟΟ', ΌΟ', ΌΙ', ΌΕ') 及びバケツ トヘッダによって 2つのバケツ 卜に分割されて存在している。
このような場合においては、 スタートコ一ドの前置コ一ドを検出する スター卜コード前置コード検出部で、 入力バッファからデータを読み出 して、 スタートコード前置コードのパターンの検出を行う。 この時、 人 力バッファの読み出しァドレスはァドレス αである。 上記スタートコ一 ド前置コード検出部は、 (ΌΟ', '00', ΌΓ) のパターンを検出した後、 こ れを検出した旨を後段に位置するスタートコ一ド判別部に知らせ、 スタ —トコ一ド判別部を起動する。
次に、 スタートコード判別部は、 アドレス /3のデータを読み出して、 これがバケツ卜の先頭を表す識別子 ('B9'〜'FF') であるか、 ビデオ符号 化データの階^スタートコード ('00'〜'Β8') であるかを判定する。
第 4 a図のパターンでは、 アドレス /3のデータ (ΈΟ') はバケツ 卜の開 始を表す識別子であるので、 スタートコード判別部はパケッ ト先頭部を 検出したことをヘッダ解析部に通知し、 ヘッダ解析部を起動する。
この時、ァドレス γのデータはビデオ符号化データの一部であるため、 後続するビデオバケツトデータの続きの部分に接続してデコードバッフ ァへ転送する必要がある。そのため前記ヘッダ解析部の起動を行う前に、 ァドレス yのデータの転送を実行するために、 入力バッファの読み出し ア ドレスを、 ア ドレス /3からそれより前のァドレスであるァドレス yに 設定し直し、 ァドレス γのデータをデコードバッファに転送する動作を 行う必要がある。 また、 ア ドレス " yのデータ転送を行うのみではなく、 ァドレス γのデータがビデオ符号化データの階層開始コードの一部であ るという情報も記憶しておく必要がある。
第 4 b 図の場合には、 ア ドレス 3でパケッ ト開始を示す識別子をスタ 一トコ一ド判別部が判別した後に、 ビデオ符号化データの一部であるァ ドレス γ, δのデ一タをデコードバッファに転送するために、 ア ドレス 0にあった入力バッファの読み出しアドレスをア ドレス γに戻し、 アド レス y, δのデータをデコ一ドバッファに転送する制御を行う必要があ り、 第 4 a 図に示した場合よりも、 さらに多くの距離をポインタを移動 させることになる。 また、 第 4 a 図の場合と同じく、 ア ドレス , δの データがビデオ符号化データの階層開始コードの一部であるという情報 も記憶しておく必要がある。 記憶保持されたア ドレス Vの ('00') デー タが階層開始コ一ドの一部の可能性があるという情報は次の映像バケツ トの符号化データ部の映像再生単位の開始コードの検出に使用される。 このように、 ビデオパケッ トが不定長であるために、 従来の符号化信 号再生装置では、 上記バケツト境界部では入力バッファの読み出しボイ ンタを進めるだけではなくこれを戻すという, 複雑な制御を行うように している。
すなわち、 この従来の符号化信号再生装置では、 データの転送と判別 とを同じ入力バッファの読み出しボインタを用いて同時に行っているた め、 入力されたデータがシステムレイヤのデータであると判別できる部 分まで余分にデコ一ドバッファの書き込みポインタを進めて害き込みを 行う必要があり、 このため、 デコードバッファ書き込みポインタ訂正部 によってデコ一ドバッファの書き込みポインタを進める作業を行ってい る。 また、 入力されたデータがシステムレイヤのデータであった場合、 再度スタートコードの検出を行う必要があり、 そのために一旦ポインタ の値が戻るが、 これにより入力されたデータが書き濱されないように入 力バッファ読み出しポインタ訂正部を設けてボインタを訂正し、 かつ、 入力バッファに入力されたデータが書き潰されないように入力バッファ 保護部を設けて入力データを記憶しておくことにより、 その保護を行う ようにしている。 このため、 装置の構成および制御が複雑なものとなつ ている。
第 2番目として、 多重符号化信号の再生においては、 多重化に使用さ れるバケツトのヘッダ情報を用いる必要がある場合がある。 これに必要 な情報としては、 音声, 映像の同期再生情報 (P T S ) 等が挙げられる。 そして再生情報は主に、 音声、 映像の再生基本単位毎に付加されること が多い。 また、 再生情報には、 P T S以外に、 各パケッ トに含まれる再 生基本単位データ毎の上記 P T Sの有無情報を示す対応情報などが含ま れる。 符号化信号復号装置ではこの再生情報を再生のために使用する場 合には、 この再生情報を何らかの手段で記憶保持しておく必要がある。 例えば、 前記再生情報を符号化信号復号装置の内部のメモリに一時的に 保持する方法が考えられるが、 単位時間にデコードバッファに入力され る音声、 映像の再生基本単位が多く含まれる場合には、 その同期再生情 報も比例して多くなるため記憶保持に使用されるメモリに要するハード ウェアが大きなものとなり、 L S Iによりこれを実 ¾する場合にはチッ プ面積の増大の一因となる。
第 3番目として、 映像、 音声信号の再生装置においては、 パイプライ ン構造を採ることが多い。 パイプラインにおいてはデータバス幅が規定 されており、 規定のバス幅で符号化データは転送され復号が行われて行 くが、 符号化データの最終部分はデータバス幅に満たない場合が発生す る。 このデータバス幅に満たないデータの転送制御を行うために、 通常 のデータ転送とは異なるデータ転送制御、 つまり、 1バイ ト単位でのァ クセスを可能とするための処理パイプライン中で行う必要があり、 その 分ハ一ドウヱァが複雑化する。
従来の符号化信号再生装置は以上のように構成されており、 前記第 4 a,b 図のパターンでは、 バケツ ト境界部での入力バッファの読み出しァ ドレスを単に進めるだけでなく、 これをー且進めてから後ろに戻すよう な制御を行う複雑な制御回路が必要となっており、 また、 パケットへッ ダ部に含まれる再生情報を保持するのに、 データによっては、 メモリ等 のハードウエア資源が増大する要因となっているという問題点があった。 この発明は、 上記のような従来のものの問題点を解決するためになさ れたもので、 複雑な制御を要することなく、 少ないハードウェア資源で ディジタル信号を再生できる符号化信号再生装置を得ることを目的とす る。 発明の開示
以上のように、 本願発明に係る符号化信号再生装置によれば、 所定ビ ッ ト毎に入力される符号と、 パケッ トスタ一トコ一ドの前置コードとの 一致状態を検出して、 上記バケツ トスタートコードの先頭部分の一致状 態情報を出力する一致状態情報出力手段と、 上記一致状態情報に基づい て所定のデータを出力するデータフォーマツト手段とを備えるようにし たので、 バケツ ト境界を示す符号列の一致状態に応じて所定のデータが 出力されてバケツ トの境界を認識した時点で、 読み出しポインタをパケ ット境界前に戻すといった複雑なアドレスの制御を行わなくて済み、 そ のハードウエア規模が小規模で済み、 ディジタル符号列の再生を行う装 置を安価に提供できる効果がある。
また、 本願発明に係る符号化信号再生装置によれば、 上記入力される 符号列が映像符号化データである場合、 上記バケツトのヘッダを解析し て再生情報を出力するヘッダ解析手段を有し、 上記データフォーマッ ト 手段は、 上記再生情報を映像符号化データの所定の位置に、 該再生情報 の有効性を す情報とともに挿入するものとしたので、 フォーマッタが パケットへッダに含まれる再生情報を映像の符号化データに付加するこ とにより、 再生情報の保持に必耍とされるメモリなどのハードゥエァ規 模を小さく抑えることが可能となり、 ディジタル符号列の再生を行う装 置を安価に提供できる効果がある。
また、 本願発明に係る符号化信号再生装置によれば、 符号化データの 符号列から符号化データの終端を示す符号列を検出する終端符号列検出 手段と、 上記終端符号列検出手段によつて符号化データの終端を示す符 号列を検出した際に、 上記符号化データの終端が含まれるパイプライン 転送のデータバス幅が、 他のデータが含まれるパイブライ ン転送のバス 幅と等しくなるように、 該符号化データの終端を示す符号列の後尾に所 定個数の擬似データの付加を行うフォーマッタ部を備えるようにしたの で、 再生装置内のパイプライン中のデータ転送を、 パイプラインにおけ るデータバス幅に満たない符号化データの最終部まで複雑な転送制御を 要することなく実現することが可能となり、 ディジタル符号列の再生を 行う装置を安価に提供できる効果がある。
また、 本願発明に係る符号化信号再生装置によれば、 上記擬似データ の付加を行う前に、 バケツト列の最後のバケツ 卜に特定の符号列を挿入 するようにしたので、 符号化データの終端を示す符 g '列が存在しない場 合においても、 確実に上記所定個数の擬似データの付加が行える効果が ある。 図面の簡単な説明
第 1図は本発明の実施の形態 1ないし 3による符号化信号復号装置の 構成を示すプロック図であり、 第 2図は上記実施の形態 1による符号化 信号復号装置の動作を説明するためのフロー示す図であり、 第 3図は多 重信号の構成を示す説明図であり、 第 4囡はデコ一ドバッファ内のパケ ッ ト境界を誤りやすい多重信号を示す説明図であり、 第 5図は映像パケ ットと映像再生単位の関係を示す図であり、 第 6図はフォーマッタによ る映像符号化データ最終部のパディング処理を説明するための図であり、 第 7図は多重符号化データに挿入されたユニークな符号列を示す図であ り、 第 8図は本発明の実施の形態 1ないし 3による符号化信号復号装匱 の変形例を示すブロック図であり、 第 9図は本発明の符号化信号復号装 置の概念的な構成を示すブロック図であり、 第 1 0図は本発明の符号化 信号復号装置において、 入力されたバケツ 卜が映像バケツ 卜である場合 のフォーマッタ, スタートコ一ド状態保持部を中心とした動作を説明す るためのフローを示す図であり、 第 1 1図は本発明の符号化信号復号装 置において、 入力されたバケツトが映像バケツ 卜である場合のフォーマ ッタ, スタートコ一ド状態保持部を中心とした動作を説明するためのさ らなるフローを示す図であり、 第 1 2図は従来の符号化信号再生装置に よるビデオ符号化データの読み出し動作を説明するための図である。 発明を実施するための最良の形態
実施の形態 1 .
以下、 本発明の実施の形態 1による符号化信号再生装置について、 図 面を参照しながら説明を行う。 第 9図は本発明の符号化信号再生装置の 概念的な構成を示すブロック図であり、 図において、 M lは符号化信号 を受け、 所定の符号と入力された符号との照合を行い、 一致状態情報を 出力する一致状態情報出力手段、 M 2は上記一致状態情報を受けて、 特 に符号中に ('00') が現れる場合に、 これに応じて所定のデータを生成 してデコードバッファに出力するデ一タフォ一マツト手段である。また、 符号化信号に (ΌΟ') が現れない場合のデータ (ビデオ信号を除く) に ついては、 データフォーマット手段 Μ 2は関与せずに、 データはデコー ドバッファに転送される。
第 1図は上記符号化信号再生装置のより詳細なプロック図である。 こ れは本願の請求項 1の発明に相当するものであり、 従来の装置よりも構 成や制御を簡単にできるようにしたものである。
第 1図において、 2 s .1は本多重符号化信号分離装置に対し多重符号 化信号を供給する多重符号化信号供給部であり、 ビデオ C Dや D V Dの プレーヤ、 あるいはディジタル C Sチューナ等のデコーダ部の前段まで の都分がこれに該 する。 2 s 2はこの多重符号化信号供給部 2 s 1の 出力を受ける入力バッファであり、 例えば、 リングバッファ等で構成さ れている。 2 s 4はこの入力バッファ 2 s 2に対して読み出し制御信号 (S I G 1) を与えて読み出しア ドレスを制御することにより、 その読 み出し制御を行う入力バッファ読み出し制御回路、 SW1はこの入カバ ッファ 2 s 2の出力を 3つの端子 a, b, cのいずれかに切り替えて出 力するスィツチ、 2 s 3はこのスィッチ SW1が端子 bに切り替えられ た時の信号を受けてバケツ卜に含まれるスタートコ一ドブレフィックス (前匿コード)を検出するスタートコ一ドブレフィ ックス検出部であり、 スタートコ一ドブレフィ ックスとバケツト識別子からなる同期信号とパ ケット長を用いてデータが多重化された符号列から所望の符号列を検出 するものである。 また、 2 s 5は、 スタートコード状態保持部 2 s 14 の出力するステータス信号 (S I G 8) を受けて起動され、 スタートコ 一ドブレフィックス検出部 2 s 3の出力信号である 1バイ トのスタート コード値 (S I G6) を受けて、 スタートコードが映像信号, 音声信号、 付加情報のいずれのバケツ 卜に属するものであるかの判別を行うスター トコ一ド判別部、 2 s 6はこのスタートコ一ド判別部 2 s 5からの出力 信号であるヘッダー解析起動信号(S I G 1 1)、及びスタートコードの 判別が終了しスィツチ SW1が端子 aに切り替えられた時の, 入力バッ フ了 h 2からの信号を受けてヘッダの解析を行うヘッダ解析部であり、 同期信号以降の符号の解析を行うものである。
また、 2 s 7は上記ヘッダ解析部 2 s 6の出力信号である再生信号(S I G4) を受けて再生情報の保持を行う再生情報保持部、 2 s 14はス タートコ—ドブレフィ ックス検出部 2 s 3の出力信号であるステータス 更新信号 (S 1 G 5) を受けて、 その信号によって更新されたステータ スを保持するスタートコード状態保持部である。 また、 2 s 1 3はへッ ダ解析部 2 s 6の出力信号である再生情報状態信 (S I G 1 7), スタ —トコード判別部 2 s 5の出力信号であるフォ一マッタ起動信号 (S I G 9),スタートコードプレフィ ックス検出部 2 s 3の出力信号である 1 バイ ト信号(S I G6), 再生情報保持部 2 s 7の出力信号である再生情 報 (PT S) (S I G 7)、 およびスタートコ一ド状態保持部 2 s 14の 出力信号であるステータス信号 (S I G8) を受けて特定の数値列が入 力されると、 これに対応する数値列を出力するフォーマッタであり、 前 記スタートコ一ドブレフィ ックス検出部 2 s 3とスタートコ一ド状態保 持部 2 s 14とスタートコ一ド判別部 2 s 5からなる一致状態情報出力 手段の出力する情報に基づいてデータを生成し、 映像符号化デ一タの所 定の位置にデータ列の挿入を行うものである。
SW2はスタートコードプレフィ ックス検出部 2 s 3, フォーマッタ 2 s 1 3, スィッチ SW1の c端子の出力のいずれか 1つを選択して出 力するスィッチ、 2 s 8はスタートコード判別部 2 s 5の出力する通知 信号 (S I G 20) を受けて、 スィッチ SW 1 , SW2が端子 c, ίに それぞれ切り替えられた時の, 入力バッファ 2 s 2からの信号を受けて パケッ トの境界を認識してデ一タの分離制御を行うデ一タ分離制御部で あり、 データ転送が終了するとそのことを上記通知信号 (S I G 20) を用いて上記スタートコード判別部 2 s 5に通知を行う。 2 s 1 9はフ ォ一マッタ 2 s 1 3から出力されるフォーマツ ト開始/終了信号 (S 1 G 1 9)、およびヘッダ一解析部 2 s 6から出力されろヘッダー終了信号 (S I G 1 8) を受けて、 スィッチ SW1と SW2の切り替え制御を行 うコントローラであり、 それぞれのスィツチを制御するための切り替え 制御信号 (S I G3, S I G 10) を出力する。
また、 2 sは以上のスィッチ SW1 , スィッチ SW2, スタートコ一 ドブレフィ ックス検出部 2 s 3, スタ一 トコ一ド判別部 2 s 5, へッダ 解析部 2 s 6, 再生情報保持部 2 s 7, データ分離制御部 2 s 8, フォ 一マッタ部 2 s i 3, スタートコード状態保持部 2 s 14から構成され た多重信号分離部である。
また、 2 s 1 0は再生情報保持部 2 s 7において保持している再生情 報をホス トバス (HB) を介してホス ト制御信号 C (S I G 1 5) とし て取り出してデータ分離制御部 2 s 8からの信号の復号を行う復号部、 2 s 9はデータ分離制御部 2 s 8の出力信号を受けてこれを保持し、 復 号部 2 s 10に供給するデコードバッファであり、 映像用, 音声用, 付 加情報用のそれぞれ独立した記憶領域を有し、 上記データ分離制御部 2 s 8から出力されたデータをそれぞれ所定の領域に振り分けて記憶する。 2 s 1 1は復号部 2 s 1 0が復号動作を行う際に使用するワークメモリ、 2 s 12は復号部 2 s 10の初期設定やリセッ ト等の処理を行うための ホス 卜制御信号 B (S I G 14)のやり取りを行うホス卜 CPUであり、 そのホス トバス HBには再生情報保持部 2 s 7と復号部 2 s 1 0が接続 され、 また多重符号化信号供給部 2 s 1のデータ供給動作を制御するた めの供給制御信号 (S I G 1 2) を出力するように構成されている。 以上の構成により、 多重符号化信号供給部 2 s 1, ホス 卜バス HB, ホス ト C PU2 s l 2, コントローラ 2 s 1 9, デコ—ドバッファ 2 s 9, ワークメモリ 2 s 1 1を除く各部、すなわち、 入力バッファ 2 s 2, 入力バッファ読み出し制御回路 2 s 4, スィ ッチ SW1, スィ ッチ SW 2, スタートコードプレフィ ックス検出部 2 s 3, スター トコード判別 部 2 s 5, ヘッダ解析部 2 s 6, 再生情報保持部 2 s 7, データ分離制 御部 2 s 8, フォーマッタ部 2 s i 3, スタートコード状態保持部 2 s
14, デコー ドバッファ 2 s 9 , 復号部 2 s l 0, ワークメモリ 2 s l
1からなる符号化信号再生装置 2が構成されている。
さらに、 上記構成において、 デコードバッファ 2 s 9, ワークメモリ
2 s 1 1が SDRAMなどによって実現される外部メモリであり、 その 他の構成要素を実現する L S Iとは異なるチップにて構成されているの が一般的である。
また、 上記構成において、 スタートコ一ドブレフィ ックス検出部 2 s 3, スタ一トコ一ド判別部 2 s 5, スター トコ一ド状態保持部 2 s 14 が一致状態情報出力手段 Mlを実現するものとなっており、 フォーマツ タ部 2 s 1 3がデータフォーマツ ト手段 M2を実現するものとなってい る。 さらに、 ヘッダ一解析部 2 s 6, 再生情報保持部 2 s 7がヘッダ解 析手段を実現するものとなっている。
次に、 動作について説明する。 多重符号化信号供給部 2 s 1から供給 される多重符号化データ列は入力バッファ 2 s 2に一旦蓄積される。 こ の時コントローラ 2 s 1 9の制御により、 最初にスィツチ SW1は接点 bに接続される。前記入力バッファ 2 s 2に蓄積された多重データ列は、 入力バッファ読み出し制御回路 2 s 4の制御により、 スタートコ一ドプ レフィ ックス検出部 2 s 3に向けて、 1バイ トずつ出力される。 前記ス タートコ一ドブレフィ ックス検出部 2 s 3はスタートコ一ド状態保持部 2 s 14とともに、 バケツト化されているデータの先頭コードであるパ ケットスタートコ一ドを検出する。 そして、 後述するスタ一卜コード状 態保持部 2 s 14からのステータス情報 (S I G 8) を用いてスタート コ一ド判別部 2 s 5を起動する。
前記スタートコード判別部 2 s 5はパケットが映像バケツ 卜であるか 音声バケツトであるか付加情報バケツトであるかに応じてバケツト識別 子が異なることを用いて、 入力されたバケツ 卜がいずれの種類のバケツ トに該当するかを判別し、 スタートコード前置コードに続くパケット識 別子が再生すべき所望のデータ列を表す識別子である場合には、 有効パ ケットであることをヘッダ解析部 2 s 6に通知する。 また、 スタートコ 一ド判別部 2 s 5はバケツ卜が有効バケツ 卜であるか無効バケツ 卜であ るかに関わらず、 ヘッダ解析部 2 s 6を起動する。
スタートコード判別部 2 s 5の判定により、 入力されたパケットが音 声バケツ トまたは付加情報パケットであると判定された場合、 スタート コードの解析は不要なので、 スター トコ一ド判別部 2 s 5はコント口一 ラ 2 s 1 9により、 スィッチ S W 1を接点 cに切り替えるとともにスィ ツチ S W 2を接点 f に切り替え、 入力バッファ 2 s 2の出力バケツ トを 直接データ分離制御部 2 s 8に出力する。
データ分離制御部 2 s 8はこの音声バケツトまたは付加情報パケント の, デコードバッファ 2 s 9へのデータ転送を制御する。
復号部 2 s 1 0は内部の音声デコーダまたは付加情報デコーダにより、 デコードバッファ 2 s 9に蓄えられた音声パケン トまたは付加情報パケ ットを復号してその復号信号を一旦ワークメモリ 2 s 1 1に蓄え、 この 復号信号をワークメモリ 2 s 1 1から読み出して外部に再生信号出力と して出力する。
次に入力されたバケツ 卜が映像バケツトである場合において、 特に、 前記フォーマッタ 2 s 1 3, スタートコ一ド状態保持部 2 s 1 4の機能 について、 第 2図のフローチャートを参照して説明する。
上述したように、 コントローラ 2 s 1 9の制御により、 最初にスィッ チ SW1は接点 bに接続され(ステップ S 200)、 スィツチ SW2はい ずれの接点にも接続されない。 前記入力バッファ 2 s 2に蓄積された多 重データ列は、 入力バッファ読み出し制御回路 2 s 4の制御により、 ス タートコ一ドブレフィックス検出部 2 s 3に向けて、 1バイ トずつ出力 される (ステップ S 201)。前記スタ一トコ一ドプレフィックス検出部 2 s 3とスタートコ一ド状態保持部 2 s 1 を含む--致状態情報出力手 段 M 1は、 パケッ ト化されているデータの先頭コードであるパケッ トス タートコードプレフィ 'ンクスを検出して (ステップ S 202)、 スタート コード状態保持部 2 s 14へステータス更新信号 S 1 5で('00', 00', ΌΓ)が入力されたことを通知する。 次にステータス情報 (S I G8) を 用いてスタートコ一ド判別部 2 s 5を起動した後、 入力バッファ 2 s 2 より 1バイ トスタートコードプレフィックス検出部 2 s 3は読み出し、 1バイ ト信号 S I G6でスタートコード判別部 2 s 5へ通知する (ステ ップ S 203 )。
次に、 ステップ S 204において、 前記スタートコード判別部 2 s 5 は、 バケツ卜が映像バケツ 卜であるか音声バケツ 卜であるか付加情報パ ケットであるかに応じてバケツ ト識別子が異なることを用いて、 入力さ れたパケットがいずれの種類のパケットに該当するかを判別し、 スター トコ一ド前置コ一ドに続くバケツト識別子が再生すべき所望のデータ列 を表す識別子である場合には、 有効バケツトであることをヘッダ解析部 2 s 6に通知する。 また、 スタートコード判別部 2 s 5はパケットが有 効バケツトであるか無効バケツ 卜であるかに関わらず、 ステップ S 20 5においてヘッダ解析部 2 s 6を起動する。 再生すべき有効なバケツト か、 再生しない無効なパケッ トか否かは、 再生開始時に、 ホス ト CPU により、 ホストバス (HB) を介して S I G 1 3, S I G 14により、 スタートコード判別部 2 s 5に設定される再生バケツトの識別子との照 合によって行われる。
コントローラ 2 s l 9は、 スタートコ一ド判別部 2 s 5の判定結果に より、 入力されたバケツ 卜がビデオバケツ 卜であると判定された場合、 スィッチ SW1を接点 bから接点 aに切り替え (ステップ S 206)、へ ッダ解析部 2 s 6にビデオバケツ卜を出力する。 この時もスィツチ SW 2はいずれの接点にも接続されないままである。
ヘッダ解析部 2 s 6は入力バッファ 2 s 2からのバケツトを受け取り、 バケツ トヘッダに含まれているバケツト長ゃ再生の際に使用する再生情 報等を解析して (ステップ S 207)、 この再生情報を再生情報保持部 2 s 7に記憶保持する (ステップ S 208)。 また、 上記再生情報には、 P T Sと呼ばれる音声と映像の再生時間の同期を行うための情報や、 各パ ケッ 卜に含まれる再生基本単位データ毎の上記 P T Sの有無情報を示す フラグなどの情報が含まれる。
さらに、 ヘッダ解析部 2 s 6はヘッダ情報に基づいてヘッダの終端部 を判別する (ステップ S 209)。 これらのビデオデータの処理を実行し ている間、 コントローラ 2 s 1 9はスィッチ SW2をいずれの接点にも 接続されないように制御するとともに、 データ分離制御部 2 s 8、 およ びスタートコ一ドブレフィックス検出部 2 s 3を起動する (ステップ S 2 1 0)。 このデータ分離制御部 2 s 8は、ヘッダ解析部 2 s 6が保有す るデータ分離情報をもとにデコードバッファ 2 s 9へのデータ転送を制 御する。
デコ一ドバッファ 2 s 9に格納された映像の符号化データは、 音声や 付加情報の符号化データの場合と同様に、 それぞれ復号部 2 s 1 0内の 映像デコーダにより復号され、 再生信号が出力される。 復号部 2 s 1 0 はワークメモリ 2 s l 1を使用して復号処理を行う力 その際、 前記再 生情報保持部 2 s 7に保持された再生情報を用いて音声の符号化データ との同期がとれるように復号動作を行う。
次に、 ヘッダ解析部 2 s 6がヘッダの解析を行い、 入力バケツ 卜に含 まれるデータが映像データであることが判明した場合、 コントローラ 2 5 1 9はスィンチ5 \\^ 1, S W 2を制御して、 この映像データが格納さ れたバケツトを端子 b, dに接続し (ステップ S 2 1 1 )、 ヘッダの終了 後、 ビデオ符号化データ領域をデコードバッファ 2 s 9の側に転送しな がら (ステップ S 2 1 2 )、 この映像データが格納されたバケツ トをスィ ツチ S W 1の端子 bを介してスタートコ一ドブレフィックス検出部 2 s 3に接続し、 次のパケッ ト先頭のスタートコードの検出を行うために、 上記起動されたスタ一トコ一ドブレフィックス検出部 2 s 3を起動して 次のバケツトスタ一トコ一ドを検出し、 次のバケツ 卜のデータの分離を 行う必要がある。
しかるに、 その際、 階層符号化された映像符号列に含まれる階層開始 コード ('Οϋ', ΌΟ', 'ΟΓ, Ό0'~'Β8') とパケッ トスタートコード (ΌΟ', ΌΟ', ΌΓ, 'B9'〜'FF') とが類似したパターンであるため両者の混同を 生じ、 パケット境界を誤ってしまう可能性がある。
ここで以下にこのようなバケツト境界を誤りやすいパターンとして、 まず、 ビデオ符号化データの階層開始コードが 2つのバケツ 卜の間で分 割されてしまった場合の 2つの例における本実施の形態の動作を第 4図、 及び第 1 0図 1 0を参照しつつ説明する。
まず、 第 1 0 a 図に示すように、 スタートコ一ドブレフィ ックス検出 部 2 s 3へ 1バイ ト (ΌΟ')を読み出す。 スタートコー ドプレフィ ックス 検出部 2 s 3は、 ステータス信号 S I G 8で現在のステータスが 「 0」 であることを知り、 ('00') が 1つ入力された状態をステータス更新信号 S I G 5でスタートコ一ド状態保持部 2 s 1 4へ通知する。 スターとコ 一ド状態保持部 2 s 1 4は先頭コードの一致状態の履歴情報と して、 (ΌΟ') を保持した状態を示すために、 スタートコード状態保持部 2 s 1 4は、 ステータスを 「0」 から 「 1」 に更新させる。
次に第 1 0 b 図に示すように、 スタートコ一 ドブレフィ ックス検出部 2 s 3へ 1バイ ト (ΌΟ')を読み出す。 スタ一 トコ一ドブレフィ ックス検 出部 2 s 3は、 ステータス信号 S I G 8で現在のステータスが 「 1」 で あることを知り、 さらに ('00')が入力された状態をステータス更新信号 S I G 5でスタートコ一ド状態保持部 2 s 1 4に通知する。 これで、 ('00') が 2つ連続して入力された状態をステートコード状態保持部 2 s 1 4へ 通知したことにになり、 履歴情報として、 (ΌΟ')を 2つ連続して保持した 状態を示すために、 スタートコード状態保持部 2 s 1 4は、 ステータス を 「 1 j から 「2」 に更新させる。
次に、 第 1 0 c 図に示すように、 スタートコードプレフィ ックス検出 部 2 s 3へ 1バイ ト (ΌΟ') を読み出し、 スタートコ一 ドブレフィ ック ス検出部 2 s 3は、ステータス信号 S I G 8で現在のステータスが 「2」 であることを知り、 (ΌΟ') を示す 1バイ ト信号 S I G 6をフォーマッタ 部 2 s i 3に通知する。 さらに、 スタートコード状態保持部 2 s 1 4力 らのステータス 「2」 を示すステータス信号 S I G 8によって、 フォー マッタ部 2 s 1 3を起動させる。
次に第 1 O d図に示すように、 その後、 (ΌΓ) をスタートコ一ドブレ フィックス検出部 2 s 3に読み出し、 スタートコ一ドブレフィックス検 出部 2 s 3は、 ステータス信号 S I G 8で現在のステータスが 「 2」 で あることを知り、 (ΌΓ) が入力された状態をステータス更新信号 S I G 5でスタートコ一ド状態保持部 2 s 1 4へ通知する。 これで、 ('00', ΌΟ', ΌΓ) が入力された状態をスタートコード状態保持部 2 s 1 4に通知し たことになり、スタートコ一ド状態保持部 2 s 1 4は、履歴情報として、 (ΌΟ', ΌΟ', ΌΓ) を保持した状態を示すために、 ステータスを 「2」 から 「3」 に更新させる。
次に第 1 O e図に示すように、 (ΈΟ') をスタートコ一ドブレフィック ス検出部 2 s 3に読み出し、 スタートコ一ドブレフィックス検出部 2 s 3は、 ステータス信号 S I G 8で現在のステータスが 「3」 であること を知り、 (ΈΟ') が入力された状態を 1バイ ト信号 S I G 6でスタートコ 一ド判別部 2 s 5に通知する。 さらに、 スタートコ一ド状態保持部 2 s 1 4は、 現在のステータス 「 3」 をステータス信号 S I G 8でスタート コード判別部 2 s 5に通知する。
これを受けてスタートコ一ド判別部 2 s 6は入力された 1バイ ト信号 S I G 6をもとに (ΌΟ') か、 ('00') から(' Β 8')までの値か、 ('Β9')から('ff) までのいずれの値かを 1バイ ト信号 S I G 6から判断する。 本例では入 力された 1バイ ト信号 S I G 6信号は (ΈΟ')であるため、ステータス「 3」 でかつ、 1バイ ト信号 S I G 6力; (ΈΟ')であることから、 ビデオパケット の識別子であることを 1バイ ト信号 S I G 6から判断する。 第 1 l a 図 に示すように、 スタートコ一ド判別部 2 s 5は S I G X 1でスタートコ ―ド状態保持部 2 s 1 4にステータス更新信号を通知し、 ステータスを ビデオ符号化データの階層スタートコードの (ΌΟ') が 1つある状態で あるステータス 「 1」 に更新する。 一方、 スタートコード判別部 2 s 5 は、 S I G 9で入力される 1バイ ト信号 S I G 6の値に応じて、 信号 S I G 9をフォーマッタ部 2 s 1 3に送り、 フォーマッタ部 2 s 1 3の出 力データを制御する。 フォーマッタ部 2 s 1 3は S I G 9を受けて、 ス イッチ S W 2を eに接続しフォーマッタ出力をデータ分離制御部' 2 s 8 を介してデコードバッファフ 2 s 9へ転送する準備を行う。本例の場合、 スタートコ一ドブレフィックス検出部 2 s 3の入力状態がステータス 「3」で 1バイ ト信号 S I G 6力; (ΈΟ')、すなわち、 (ΌΟ', '00', '01', ΈΟ') であり、 表 ( 1 ) のパターン Εに相当するため、 フォーマッタ出力はな レヽ。 フォーマッタ部 2 s 1 3はフォーマツ トを完了するとスィツチ S W 2を 3つの端子いずれにも接続しないように、 フォーマツ ト開始ノ終了 信号 S I G 1 9を用いてコントローラ 2 s 1 9を制御する。 これは、 S I G 9でパケッ トのスタートコード ('ΟΟ', ΌΟ', ΌΙ', ΈΟ') を検出した ことから、 フォーマッ ト出力処理後、 ヘッダ一解析に入るためである。 フォーマツ ト出力完了信号は S I G X 2としてスタートコ一ド判別部 2 s 5に通知され、 スター トコード判別部 2 s 5は S I G X 2を受けてへ ッダー解析部 2 s 6を S I G 1 1で起動する。
S I G X 1によるスタートコ一ド状態保持部 2 s 1 4のステータスの 更新は、 フォーマツ 卜動作によってデコ一ドバッファ 2 s 9に入力され たスタートコ一ドブレフィ ックスのどの部分が入力されたかで決定され る。 (ΌΟ')が 1個の場合はステータス 「 1」、 (ΌΟ')が 2個以上入力された らステータス 「2」、 ('ΟΟ', ΌΟ', 'ΟΓ)が入力されたらステータス 「3」、 それ以外はステータス 「0」 に更新される。
(1)
Figure imgf000024_0001
第 4b図に示す場合は、 第 4a図の時と同様に、 (ΌΟ', Ό0·) でフォー マッタ部 2 s 1 3からは 1個の ('00') が出力され、 ステータス 「2 J となり、 次の ('00') がスタートコードプレフィ ックス検出部 2 s 3に 入力された時点でも (ΌΟ') が 1個フォーマッタ部 2 s 1 3から出力さ れる。 ここまでに、 ア ドレス y, 5のビデオ階層開始コードの一部であ る ('00', '00') はデコードバッファ 2 s 9へ転送される。 その後の (ΌΓ,
ΈΟ') が入力される時の動作は、 第 4a 図の場合と同様である。 なお、
(ΈΟ') が 1バイ ト信号 S I G 6でスタートコ一ド判別部 2 s 5に入力 された時に、 ('()◦', '00') がデコードバッファ 2 s 9に入力されている ため、 S I GX 1でスター トコ一ド状態保持部 2 s 1 4のステータスを
「3」 から 「2」 に更新する点が異なる。
また、 上記表 ( 1 ) のパターン A, Ε以外のパターンについて以下に 動作の説明を行う。
パターン Bの場合、 第 1 O b 図に示したようなステータス 「 1」 状態 の後に、 スタートコ一ドブレフィ ックス検出部 2 s 3へ 1バイ ト ('00') 以外の値のデータ ('ΧΧ') が入力された場合は、 第 1 l c 図に示すよう に、 スタートコ一ドブレフィ ックス検出部 2 s 3は入力された符 g列 (ΌΟ', 'XX') がスタ一トコ一ドブレフィックスでないことが判別される ので、 ステータス更新信号 S I G 5でスタートコ一ド状態保持部 2 s 1 4をステータス 「 1」 からステータス 「0」 に更新する。 ステータスが 更新されたスタートコード状態保持部 2 s 1 4は、 ステータス更新信号 S I G 8により ('ΟΟ', 'XX') を出力するようフォーマッタ部 2 s 1 3を 制御する。 起動されたフォーマッタ部 2 s 1 3は、 フォーマツ ト開始信 号 S I G 1 9をコントローラ 2 s 1 9へ送り、 コントローラ 2 s 1 9は スィッチ S W 2を eに接続し、 (ΌΟ', 'XX') をデータ分離制御部 2 s 8 へ出力する。 フォーマッタ部 2 s 1 3は出力を完了すると、 S I G 1 9 によりフォーマツ ト終了信号をコン トロ一ラ部 2 s 1 9へ送り、 スイツ チ S W 2を dに切り替える。 フォーマッタ終了信号 S I G 1 6はスター トコ一ドブレフィ ックス検出部 2 s 3に送られ、 スタートコ一ドプレフ イツクス検出部 2 s 3はステータス 「0」 での動作を再開する。
パターン Cの場合、 第 1 0 c 図に示すようなステータス 2の状態で、 スタートコ一ドプレフイツクス検出部 2 s 3に (ΌΟ')もしくは (ΌΓ)以外 の値を持つ (ΎΥ')が入力された場合、 第 1 l c図に示すように、 スタート コードプレフィックス検出部 2 s 3は、 入力された符号列 (Ό0', ΌΟ', •ΥΥ') がスタートコ一ドプレフィックスでないことが判別されるので、 ステータス更新信号 S I G 5でスタートコ一ド状態保持部 2 s 1 4をス PC 8/0 009
24
テータス 「2」 からスタータス 「0」 へ更新する。 ステータスを更新さ れたスター卜コード状態保持部 2 s 1 4は、 ステータス ί I G 8に より (Όϋ', '()()', ΎΥ')を出力するようフォーマッタ部 2 s 1 3を制御す る。 起動されたフォーマッタ部 2 s 1 3はフォーマツ 卜開始信号 S 丄 G 1 9をコントローラ 2 s l 9へ送り、 コントローラ 2 s 1 9はスィッチ SW2を eに接絞し、 ('Οϋ', '00', 'ΥΥ') をデ一タ分離制御部 2 s 8へ出 力すろ u フォーマッタ部 2 s 1 3は出力を完了すると S 丄 G 1 9により フォーマッ ト終了 β号をコン卜ローラ部 2 s 1 9へ送り、 スィツチ SW 2を dに切り替える。 フォーマッタ終了信号 S I G 1 6はスター卜コー ドブレフィ ックス検出部 2 s 3に送られ、 スタートコ一 ドブレフィ ック ス検出部 2 s 3はステータス 「0j での動作を再開する。 パターン D— 1の場合、 第 1 Oe 図に示すようなステータス 「3」 の 状態で、 スター トコ一 ドブレフィ ックス検出部 2 s 3に('(Κ)')もしく は ('Β9')から('ff)以外の値を持つ (ΎΥ')が入力された場合、第 1 1 c図に示す ように、 スタートコ一ドブレフィ ックス検出部 2 s 3は入力された符号 列(ΌΟ', '00', ΌΓ, 'ζζ')が再生^位の開始コードでないことが判別され るので、 ステータス更新信号 S I G 5でスタ一トコ一ド状 保持部 2 s 14をステータス 「3」 からステータス 「0」 へ更新する: ステータス を更新されたスタートコ一ド状態保持部 2 s 14はステータス S 1 G 8により(Όϋ', ΌΟ', '0Γ, 'ζζ')を出力するようフォーマッタ部 2 s 1 3を制御する。 起動されたフォーマッタ部 2 s 1 3はフォーマツ 卜開始 信号 S I G 1 9をコントローラ 2 s l 9へ送り、 コン トローラ 2 s 1 9 はスィッチ SW2を eに接続し、 ('00', Ό0', ΌΓ, 'ζζ')をデータ分離制 御部 2 s 8へ出力する。 フォーマッタ部 2 s 1 3は出力を完了すると、 S I G 1 9によりフォーマッ ト終了信号をコントローラ部 2 s 1 9へ送 り、 スィッチ SW 2を dに切り替える。 フォーマッタ終; S号 S I G 1 6は、 スタートコ一ドブレフィ ックス検出部 2 s 3に送られ、 スタ一 卜 コードプレフィ ックス検出部 2 s 3はステータス 1 0」 での作動を再開 する。
パターン D— 2の場合、 第 1 0 e図に示すようなステータス 「 3」 状 態でスタートコ一ドブレフィ ックス検出部 2 s 3に('00')が入力された 場合、 第 1 I d 図に示すように、 S I G 6でスタートコ一ド判別部 2 s 5に 1バイ トデータを通知し、 スタートコ一ド判別部 2 s 5は入力され た符号列 (Όϋ', 'ϋθ', 'ϋΓ, ΌΟ') が再生単位の開始コードである 能性 があることを判別し、 ステータス更新信号 S I G 5でスター トコード状 態保持部 2 s 1 4をステータス 「 3」 からステータス 「 4 ! へ更新する。 ステータス 「4」 の状態で、 スタートコード判別部 2 s 5が、 スタート コードブレフィ ックス検出部 2 s 3力、らさらに 1バイ 卜信 I G 6で ('00')もしくは ('Β9)から('ff)以外のデータ('ζζ')の通知を受けた ¾合、 ステ —タス更新信号 S I G 5がスタートコ一ド状態保持部 'i s I 4に通知さ れ、 スタ一トコ一ド状態保持部 2 s 1 4のステータスは 「 4」 力、ら 「 0」 に更新される一方で、 同じステータス更新信号 S I G 5 により、 フォー マッタ部 2 s 1 3が起動される。 起動されたフォーマッタ部 2 s 1 3は フォーマッ ト開始信号 S I G 1 9をコントローラ 2 s 1 9へ送り、 コン トローラ 2 s 1 9はスィッチ S W 2を eに接続し、 (ΌΟ1, Όϋ', ΌΓ, ΌΟ', 'ζζ')をデータ分離制御部 2 s 8へ出力する。 フォーマッタ部 2 s 1 3は 出力を完了すろと、 S I G 1 9によりフォーマツ ト終了信号をコントロ ーラ部 2 s 1 9へ送り、 スィ ッチ S W 2を dに切り替える。 フォーマッ タ終了信号 S I G 1 6はスター卜コードプレフィックス検出部 2 s 3に 送られ、 スター トコ一ドブレフィ ックス検出部 2 s 3はステータス 「0 J での動作を再開する。
また、 パターン D— 3の場合はステータス 「4」 の状態で S I G 6で (ΌΟ')と(ΌΓ)以外の ('ΧΥ')が連続して通知された場合に、 フォーマッタ部 2 s 1 3力; (Ό0', ΌΟ', ΌΓ, Ό0', ΌΟ', 'ΧΥ')を出力する点が異なるだけ である。
さらに、 D— 4の場合、 ステータス 「4」 の状態で、 S T G 6で ('()()', '00', Ό Γ)と('Β9')から('ff)までの値を取る('ΧΥ')が連続して通知された場 合に、 フォーマッタ部 2 s 1 3力; ('00', ΌΟ', ΌΓ)を出力し、 S 1 G X 1 によりスタ一 卜コ一ド状態保持部 2 s 1 4のステータスをステータス 「4」 からステータス 「 3」 に更新する点が異なるだけである。
このように、 本実施の形態 1によれば、 フォーマッタ 2 s 1 3を設け て、 スタートスタートコ一ドプレフイツクス検出部 2 s 3により検出さ れる所定の符 列の先頭の一部分 (ΌΟ') と一致する符 列が検出され た場合に、 上 スタートスタ一トコ一ドブレフィ ックス検出部 2 s 3力; 上記検出された所定の符号列の残り部分 (Ό0', Όϋ', ΌΓ, ΈΟ') を検出 して、 ('ΟΟ', '00', 'Οϋ') のパターンを検出してフォーマッタ 2 s 1 3力; (Όϋ') を 1つ出力し、 そして、 パケッ トの境界が確定された後、 1:.記 デコードバッファ 2 s 9へ転送していないデータのうち、 上記バケツ 卜 の垸界を示すための符号列 (ΌΟ', '00'. ΌΓ, ΈΟ') 以外の符号列に相当 するデータを上記デコ一ドバッファ 2 s 9に出力するようにしたことに より、 多重符号化信号の分離の際に、 入力バッファの読み出しア ドレス の進行, 後退を行うとレ、うような複雑な制御をする必要がなくなり、 こ のため、 入カバッファ読み出し制御回路による入カバッファの銃み出し ァドレスの制御が節単になり、その分ハ一ドウエア規模が少なくて済み、 多重化されたディジタル符号列の再生を行う装置を安価に提供できる ,, 実施の形態 2 .
次に、 本発明の実施の形態 2による符号化信号再生装^について説明 を行う。 この実施の形態 2は、上記実施の形態 1に示した機能に加えて、 装置内部に多くの再生情報を保持しておく必要がなく、 保持に必要なメ モリなどのハードウェアを最小限に抑えることが可能となるようにした ものである。 基本的な構成は第 1図に示したものと同じであるため、 二 こではその説明は省略する。
第 5 a 図にビデオ (映像) のバケツ トヘッダとこのバケツ トヘッダに 続く ビデオ符号化データからなるバケツ 卜の単位構造を示す,, 映像バケ 'ソ トに含まれる映像符号化データには複数の映像再牛 S本単位が含まれ ることがあり、 第 5図では映像再生基本単位データ 0から 3までが含ま れている。 映像再生基本単位はその先頭部分に映像再生基木単位開始コ 一ドを含む。 映像バケツ 卜には常に映像再生単位開始コ一ドが映像符^ 化デ一タ先頭部分に含まれてレ、ることは保証されておらず、 第 5図の映 像冉生基本単位デ一タ 0のように、 直前のビデオパケッ トに収まりきれ なかつた再生 位のデータが映像符号化データの先頭部に位笸するのが 一般的である。 表示時間情報 (P T S ) は映像パケッ トの映像符号化デ 一タに含まれる映像再生単位の中で最初の映像再生基本単位開始コ一ド の含まれる基本単位データに対して割り当てられ、 第 5図の場合、 映像 再生基本単位データ 1がそれに該当する。 その他のものについては表示 時間情報は与えられていない。 なお、 P T Sが存在しないパケッ トの場 合、 映像符号化データに含まれるいずれの映像再生基本単位データにも P T Sは割り当てられないことになる。 ヘッダ解析部 2 s 6で抽出され た 生情報のうち、 P T Sと呼ばれる音声と映像の再生時問の同期を行 うための情報のみが再生情報保持部 2 s 7に一時的に記憶される。 ^記 へッダ解析部 2 s 6は、 へッダ部分の解析が終了すると、 デ一タ分離制 御部 2 s 8を起動し、 デコードバンファ 2 s 9に対してビデオデータ部 分の転送を開始する。 この時、 ビデオ符号化データに含まれる境界スタ 一トコ一ドを検出するために、 バケツ トヘッダの解析を行うスタートコ 一ドブレフィックス検出部 2 s 3を起動する。
スタートコ一ドブレフィックス検出部 2 s 3力;、 ビデオデータに含ま れるスタートコ一ド前置コードを検出すると、 上記スター卜コードブレ フィ ックス検出部 2 s 3は、 スタートコード判別部 2 s 5を起動し、 上 記検出されたビデオデータの境界スタートコ一ドの前置コ一ドの次の符 号を見て、 ビデオデータの境界スタートコ一ドかビデオ符号化データの 再生基本'申.位の開始コードであるかどうかを判別する。
そして上記スタートコ一ドブレフィックスに続く符号から、 生.!;本 単位の開始コ一ドであると判定された場合には、 フォーマッタ 2 s 1 3 は、 上記再生情報保持部 2 s 7に記憶された再生情報である表示開始情 報 (P T S ) を、 上記スタートコ一ド判別部 2 s 5の解析結采をもとに、 再生基本単位の開始コード (ΌΟ', ΌΟ', 'ΟΓ, ΌΟ') の後尾に付加したデ —タを出力する π すなわち、 第 5 b 図に示すように、 映像符兮化データ に含まれる複数の再生基本単位のうち、 時間的に先頭に位置するものに は、 その後尾に状態フラグと P T Sを付加し、 状態フラグを有効を不す 符号を付与し、 それ以降の再生 S本単には、 次のパケッ トヘッダが検出 されるまで P T Sは現れないため、 それぞれに上記状態フラグに P T S が無効であることを示すフラグを付与するとともに P T Sを付加する。 このように、 本実施の形態 2によれば、 フォーマッタ 2 s 1 3を設け、 バケツ トへッダに含まれる再生情報のうち、 時間表示情報である P丁 S のみを再生情報保持部 2 s 7に取り込み、 再生; ¾本単位毎に映像再生 * 本単位の開始コード後尾にそれぞれ P T Sを付加するとともに、 P T S 無効、 有効を示す情報 (フラグ) を個々に付加するようにしたので、 パ ケッ 卜へッダに含まれる再生情報のうち P T Sのみを Η··Υ-的に 生装 S 内部に保持しておけばよく、デコ一ド前のデータは装置外部の R AM (デ コードバッファ 2 s 9 ) にて保持することとなり、 このため、 装置内部 に多くの再生情報を保持しておく必要がなく、 再生情報の保持に必要と されるメモリなどのハードウエア規模を最小限に抑えることが可能とな り、 多重化されたディジタル符号列の再生を行う装置を安価に提供でき る。
なお、 抽出した P T Sを最初の再生基本単位にのみ付加し、 他の再-生 基本単位には付加しないようにすろことも可能であるが、 生基本^位 毎に P T Sを一律付加する方式の方が、 フォーマッタの動作が一定化さ れ制御が簡単で、 また再生時のルーチンも簡略化することができる利点 がある。
実施の形態 3 .
次に、 本発明の実施の形態 3による符号化信号再生装置について説明 を行う。 この実施の形態 3は、上記実施の形態 1で示した機能に加えて、 フォーマッタ部を用いてデータを補填することにより . データが順次パ ィプライン的に流れるデータバスの転送制御を簡単にできるようにした ものである。 基本的な構成は第 1図に示したものと同じであるため、 こ こではその説明は省略する。 なお、 ここでは、 スタートコード判別部 2 s 5が、 符号化データの終端を示す符号列を検出する終端符号検出手段 を実現するものとなっている。
第 6 a 図は多重符号化データ中の、 ビデオ符号化データの最後尾部分 の符号列のパターンを示す。 この第 6 a 図からも明らかなように、 ビデ ォ符号化データの最後尾は多重信号分離部 2 sや復号部 2 s 1 0から出 力されたパイプラインのデータ幅に満たないデータパターンである。 入 力されたデータパターンはスタートコードプレフィ ックス検出部 2 s 3 で (ΌΟ', '00', ΌΓ) のパターンが検出され、 スタートコード判別部 2 s 5でビデオ最終データを示す境界スター卜コード(ΌΟ', ΟΠ', ΌΙ', 'b7') が判別される。 なお、 ('b7') は、 シーケンスエンドコードを示すもので ある。 以上のようにして、 スタートコ一ド判別部 2 s 5はビデオ最終デ —タの最終部を検出すれば、その旨をフォーマッタ 2 s 1 3に通知する„ そしてフォーマッタ 2 s 1 3は、ビデオ最終データを生成するとともに、 最終データ符号列に続けて第 6 b図に示すように、 パディング用のデー タ ('FF') を付加し、 デコードバッファ 2 s 9に転送する。 ここでは、 付加するパディング用のデータの個数は、 バイ ト幅が 4バイ ト (3 2ビ ッ ト) の場合、 最終データ符^ "列に続けて 3つ以上入れることにより、 ビデオ最終データを含むバス幅分のデータについてパイプライン処理す ることができる。 つまり、 パイプライン転送のデータバスの幅が nバイ 卜であるとすると、 最終部のビデオデータがバス幅境界から mバイ ト目 に存在する場合、 (nm)個以上のパディング用データを付加すること により、 上記最終部のビデオデータをパイプライン処理で読み出すこと ができる。 このパディングデータの付加により、 データバス幅に満たな かったビデオ最終データ部は、 データバス幅に納まるようにァラインメ ントされることになる。
その際、 パディングデ一タとしてはデコードバッファ 2 s 9からデー タの読み出しを行い、 復号を行う復号部を誤動作させないデータを選ん でおくことが必要である。 例えば、 スタートコードプレフィックスとの エミユレ一シヨ ンの起こらない (》ff) などが挙げられる。 そして、 最終 データ列にパディングデ一タを付加することにより、 復 に必要なパイ プラインのデータバス幅に満たない符号を含む符号列を、 バイ トァクセ スのような複雑なデータバスの転送制御を必要とすることなく転送する ことが可能となる。
ところで、 通常、 画像符号化データの場合、 プログラムエンドコード と呼ばれる、 プログラムの終了を示す符号がバケツ 卜の ¾後に付加され ているが、 例えば、 現在の M P E G規格などでは、 この符 の付加は規 定されていないため、 この符号の記述がない場合には、 データがデコ一 ドバッファに最後まで送られてきたのか、 途中で途切れたのかをホス ト C P Uが判別できなくなるために、 再生途中で次の画面が表示できなく なり、 システムがフリ一ズしてしまうような不具合が生じることが考え られる。 また、 ビデオ符号化データの末尾にシーケンスエンドコードが 無い場合、最後の数枚の映像が出力されないという不具合も考えられる。 このような場合には、 パケッ ト列の最後のパケッ ト (シーケンスの終 端) に予めユニークな符号列を一律挿入しておくことで対処することが 可能である。
すなわち、 第 7図はパケッ ト境界に挿入された, 多^;符^列にュニー クな符号列を示す図である。 前記ユニークな符号列としてはバケツ 卜 1 始コードと同様な符^"列を持つものをここでは想定している。すなわち、 このユニークな符号列は、 ('θϋ', ΌΟ', ΌΙ', 'XX') のよ うな形態をとる„ 但し、 ('χχ')はバケツ ト開始コードと混同されることのないような符 -、 例えば、 シーケンスエンドコード('b7')やプログラムエン ドコード(,bi)') などが選ばれる。 また、 前記ユニークな符号列は、 ホス 卜 C P U 2 s 1 2が再生シーケンスの末尾のバケツトのバケツ トデータの後ろに挿入す るようにする。
特定のデータバケツ 卜の後段にホスト C P U 2 s 1 2によってュニー クな符号列が入力されると、 多重信号分離部 2 sにおけるスタートコ一 ドブレフィ ックス検出部 2 s 3と、 スタートコ一ド判別部 2 s 5でュニ —クな符号データが入力されたことが検知される。 この時、 前記ュニー クな符号列の前のパケッ 卜に含まれる符号化データのデコ—ドバッファ 2 S 9への転送を行うように、 スタートコ一ド判別部 2 s 5は通知 ig号 ( S I G 2 0 ) を用いてデータ分離制御部 2 s 8に通知を行う。
これを受けてデータ分離制御部 2 s 8は、 バケツ 卜データのデコード バッファ 2 s 9までのデ一タ転送を実行し、 転送が完了すると、 通知信 号 (S I G 2 0 ) を用いてスタートコ一ド判別部 2 s 5に転送完了通知 を行う。 転送完了通知を受けたスタートコード判別部 2 s 5は、 このュ ニークな符号列が検出され、 かつ前記ユニークな符号列の^のバケツ 卜 に含まれるデータがデコードバッファ 2 s 9に転送されたことをホス 卜 制御信号 A ( S I G 1 3 ) を用いてホス ト C P U 2 s 1 2に通知する。 これにより、 特定のバケツ トデータがデコードバッファ 2 s 9に格納さ れたことを外部のホス 卜 C P U 2 s 1 2は確実に検知することが可能と なる。
そして、以上のように特定の符号列が挿入された符号データに対して、 上記挿入した特定の符号列を識別し、 これの後に所定個数のパディンゲ 用のデータを付加することにより、 各バス幅境界 に存在するデータの 大きさを均一にすることができる。 なお、 パケッ ト列の: ¾後のパケッ ト にもともとプログラムエンドコ一ドが付与されている場合には、 上記特 定の符号列の付加によって、 これが 2つ連続して検出されるようになる 、 実際の動作上は何ら支障をきたすことはない。
このように、 本実施の形態 3によれば、 フォーマッタ 2 s 1 3にデ一 タのパディング機能を持たせ、 フォーマッタ 2 s 1 3がパイブライン処 理のデータバス幅に満たない符号列の後ろにパディングデータの付加を 行い、 各バス幅境界内に存在するデータの大きさが同じになるようよう にしたので、 再生装觜内のパイブライン中のデータ転送を、 パイプライ ンにおけるデ一タバス幅に満たない符号化デ一タの¾終部まで、 複雑な 転送制御を要することなく実現することが可能となり、 符 ¾ -デ一タの最 終部のデータが再生装置のパイプライン内を確実に流れることを、 複雑 なデータ転送制御を用いることなく可能にすることができる。
また、 バケツ ト列の最後のバケツ 卜に特定の符号列を - 律付加するこ とで、 特定のデータ列の信号が入力された場合に、 多重データの入力終 端と認識し、 最後に特定の符号列が入力した後、 前記特定の符号列が入 力する前のデータをデコードバッファに転送し、 その後、 前記特定の符 号列の検出を外部のホスト C P Uに通知することによって、 特定のパケ ッ 卜のデータがデコードバッファに入力されたことを確実に外部 C P U は検知することが可能となる。 従って、 その後、 C P U 2 s 1 2はバイ プラィンのクリァを行うことにより、 復号部 2 s 1 0の初期化を行い、 次に行う符号化に備えることができる- なお、 上記実施の形態 1ないし 3では、 ホス ト C P Uの他にコント口 —ラを設けるようにしたが、 第 8図に示すように、 コントローラの機能 をホス ト C P Uにも持たせることにより、 コン卜ローラを省略するよう にしてもよく、 上記実施の形態 1ないし 3と同様の効果を奏する。
産業上の利用可能性
この発明は、 符号化信号再生装置に関し、 特に、 ビデオ C D , D V D , ディジタル C S放送等、 音声, 映像やその他の付加情報が多重化された ディジタル符号列の再生を行う装置の回路構成の簡略化を図つたものに 関するものである。

Claims

請 求 の 範 囲
1 . 所定ビッ ト毎に入力される符号と、 パケッ トスタートコードの前 置コー ドとの一致状態を検出して、 上記パケッ トスター トコードの先頭 部分の--致状態情報を出力する一致状態情報出力手段と、
上記一致状態情報に基づいて所定のデータを出力するデータフォーマ ット手段とを備えたことを特徴とする符号化信号再生装置
2 . 上記一致状態情報出力手段は、
上記入力される符号列から所定ビッ 卜毎にバケツ 卜スタートコ一ドの 先頭部分の一致状態を検出して現時点での一致情報を出力する先頭コー ド検出部と、
上記現時点での一致情報を入力して先頭コードの一致状態の履歴情報 を保持する一致状態履歴情報保持部と含むことを特徴とする請求の範囲 第 1項記載の符号化信号再生装置。
3 . 上記一致状態情報出力手段は、
入力される符号列からから所定ビッ ト毎にバケツ トスタートコー ドの 先頭部分の一致状態を検出して現時点での一致情報を出力する先頭コー ド検出部と、
上記現時点での一致情報を入力して先頭コ一ドの ·致状態の履歴情報 を保持する一致状態履歴情報保持部と、
上記履歴情報およびバケツ トスタ一トコー ドの後半部に存在するパケ ッ トスタ一卜コード識別子とを用いてバケツ トスタートコ一ドを判別す るスタートコ一ド判別部とを含むことを特徴含むことを特徴とする請求 の範囲第 1項記載の符号化信号冉生装匱。
4 . 上記一致状態情報出力手段は、 入力される符号列からから所定ビッ ト毎にパケッ 卜スタートコ一ドの 先頭部分の 致状態を検出して現時点での一致情報を出力する先頭コ一 ド検出部と、
上記現時点での --致情報を入力して先頭コードの一致状態の頎歴情報 を保持する -致状態履歴情報保持部と、
上記履歴情報およびバケツ トスタートコ一ドの後半部に相当する位置 に存在する映像符号化データの映像階層識別子から映像データの階]!開 始コ一ドを判別するスタートコ一ド判別部とを含むことを特徴とする請 求の範囲第 1項記載の符号化信号再生装置。
5 . 上記入力される符号列が映像符号化データである場合、 上記バケ "ノ トのへッダを解析して再生情報を出力するへッダ解析手段を有し、 ヒ記データフォーマツ ト手段は、 上記再生情報を映像符号化データの 所定の位置に、 該再生情報の有効性を示す情報とともに挿入するもので あることを特徴とする請求の範囲第 1項記載の符号化 ^ 生装置,、
6 . 上記ヘッダ解析手段は、
上記パケッ 卜のへッダを解析して上記再生情報を出力するへッダ解析 部と、 上記再生情報を保持する再生情報保持部とを含むことを特徴とす る請求の範囲第 4項記載の符号化信号再生装置。
7 . 上記ヘッダ解析部は、
スタートコ一ドが判別さ たときに起動されるものであることを特徴 とする請求の範囲第 6項記載の符号化信号再生装 S。
8 . 符号化データの符号列から符号化データの終端を示す符号列を検 出する終端符号列検出手段と、
上記終端符号列検出手段によって符号化データの終端を示す符号列を 検出した際に、 上記符号化データの終端が含まれるパイブライン転送の データバス幅が、 他のデ一タが含まれるパイプライン 、送のバス幅と等 しくなるように、 該符号化データの終端を示す符号列の後尾に所定個数 の擬似データの付加を行うフォーマッタ部を備えたことを特徴とする符 号化信号再生装置。
9 . 復兮化前のバケツ 卜列の最後のバケツ 卜に特定の符号列を挿人す る特定符 -列挿入手段を備え、
上記フォーマッタ手段は、 上記特定の符号列の後部に 卜.記所定個数の 擬似データの付加を行うことを特徴とする請求の範囲第 S項記載の符号 化信号再生装置。
1 0 . 上記入力される符号列が、 音声と映像、 及びこれに付随する再 生情報とが多重化され多重符号化信号であることを特徴とする請求の範 囲第 1項ないし第 9項のいずれかに記載の符号化信号 尘装^。
PCT/JP1998/006009 1997-12-26 1998-12-28 Apparatus for reproduction of encoded signal WO1999034550A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP53483899A JP3564145B2 (ja) 1997-12-26 1998-12-28 符号化信号再生装置
EP98961647A EP0987854B1 (en) 1997-12-26 1998-12-28 Apparatus for reproduction of encoded signal
DE1998638672 DE69838672T2 (de) 1997-12-26 1998-12-28 Vorrichtung zur reproduktion eines kodierten signals
US09/380,187 US7809246B1 (en) 1997-12-26 1998-12-28 Apparatus for reproduction of encoded signal
US12/486,279 US8649662B2 (en) 1997-12-26 2009-06-17 Coded signal reproduction apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP36086397 1997-12-26
JP9/360863 1997-12-26

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US09/380,187 A-371-Of-International US7809246B1 (en) 1997-12-26 1998-12-28 Apparatus for reproduction of encoded signal
US12/486,279 Division US8649662B2 (en) 1997-12-26 2009-06-17 Coded signal reproduction apparatus

Publications (1)

Publication Number Publication Date
WO1999034550A1 true WO1999034550A1 (en) 1999-07-08

Family

ID=18471239

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1998/006009 WO1999034550A1 (en) 1997-12-26 1998-12-28 Apparatus for reproduction of encoded signal

Country Status (6)

Country Link
US (2) US7809246B1 (ja)
EP (2) EP0987854B1 (ja)
JP (1) JP3564145B2 (ja)
CN (1) CN1136691C (ja)
DE (2) DE69838672T2 (ja)
WO (1) WO1999034550A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6851035B1 (en) * 2000-07-28 2005-02-01 Marconi Communications, Inc. Method and apparatus for storing data packets with a packet boundary indicator

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4592935B2 (ja) * 2000-09-11 2010-12-08 パナソニック株式会社 ヘッダ復元装置およびヘッダ復元方法
US20030004992A1 (en) * 2001-06-29 2003-01-02 Yoshinori Matsui Data reproduction apparatus and data reproduction method
JP3807379B2 (ja) * 2003-02-21 2006-08-09 ソニー株式会社 パターン検出回路
KR100754189B1 (ko) * 2005-11-01 2007-09-03 삼성전자주식회사 디지털 컨텐츠를 기록한 정보저장매체와 디지털 컨텐츠관리 방법 및 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1168763A (ja) * 1997-08-19 1999-03-09 Hitachi Ltd システムデコーダ

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4847877A (en) * 1986-11-28 1989-07-11 International Business Machines Corporation Method and apparatus for detecting a predetermined bit pattern within a serial bit stream
JP3050666B2 (ja) * 1991-10-15 2000-06-12 古河電気工業株式会社 多重伝送方式における同期方式
JP2785220B2 (ja) * 1992-09-22 1998-08-13 ソニー株式会社 データ符号化装置および方法、並びにデータ復号化装置および方法
JPH0787434B2 (ja) * 1993-06-15 1995-09-20 日本電気株式会社 二重化信号多重方式
WO1995008823A1 (fr) 1993-09-21 1995-03-30 Sony Corporation Procede et dispositif de transmission de donnees, decodeur de donnees et support d'enregistrement de donnees
WO1995026595A1 (en) * 1994-03-29 1995-10-05 Scientific-Atlanta, Inc. Packet alignment method and apparatus for simplifying parsing at a decoder in a packet-based communications system
US5633686A (en) * 1994-09-14 1997-05-27 Boden; Scott T. Adaptive digital video system
US5815634A (en) * 1994-09-30 1998-09-29 Cirrus Logic, Inc. Stream synchronization method and apparatus for MPEG playback system
US5602920A (en) * 1995-05-31 1997-02-11 Zenith Electronics Corporation Combined DCAM and transport demultiplexer
JPH10190705A (ja) * 1996-10-22 1998-07-21 Sony Corp 伝送装置および方法、並びに、受信装置および方法
US6359911B1 (en) * 1998-12-04 2002-03-19 Koninklijke Philips Electronics N.V. (Kpenv) MPEG-2 transport demultiplexor architecture with non-time-critical post-processing of packet information
US6434146B1 (en) * 1998-12-04 2002-08-13 Koninklijke Philips Electronics N.V. Use of sequencing information in a local header that allows proper synchronization of packets to subsidiary interfaces within the post-processing environment of an mpeg-2 packet demultiplexing architecture

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1168763A (ja) * 1997-08-19 1999-03-09 Hitachi Ltd システムデコーダ

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP0987854A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6851035B1 (en) * 2000-07-28 2005-02-01 Marconi Communications, Inc. Method and apparatus for storing data packets with a packet boundary indicator

Also Published As

Publication number Publication date
DE69842136D1 (de) 2011-03-31
EP0987854A1 (en) 2000-03-22
US20090257735A1 (en) 2009-10-15
US7809246B1 (en) 2010-10-05
EP0987854B1 (en) 2007-11-07
DE69838672D1 (de) 2007-12-20
DE69838672T2 (de) 2008-03-06
US8649662B2 (en) 2014-02-11
EP1630997B1 (en) 2011-02-16
EP1630997A3 (en) 2006-04-19
CN1249094A (zh) 2000-03-29
JP3564145B2 (ja) 2004-09-08
CN1136691C (zh) 2004-01-28
EP0987854A4 (en) 2005-01-05
EP1630997A2 (en) 2006-03-01

Similar Documents

Publication Publication Date Title
KR100217497B1 (ko) 부호화 기호의 복호회로 및 그 동기제어방법
US7750935B2 (en) Apparatus for setting a data stream band width and associated methodology
JPH11112454A (ja) Pesデコーダを有するmpegiiシステム
JPH1173737A (ja) 記録装置及び方法、再生装置及び方法並びに記録媒体
JPH11163817A (ja) ディジタル符号化多重化装置
US8509227B2 (en) Data analysis apparatus and data analysis method
WO1999034550A1 (en) Apparatus for reproduction of encoded signal
US7957422B2 (en) Demultiplexer
US8010374B2 (en) Audio coding apparatus and audio decoding apparatus
JP3916615B2 (ja) 多重符号化信号再生装置
JP3768008B2 (ja) 画像信号再生装置
KR100376578B1 (ko) 디지털 데이터 스트림 기록방법 및 그에 따른 표현제어정보 제공방법
JP3764806B2 (ja) 受信装置
JP4300190B2 (ja) 受信装置及び受信方法
JP2001298715A (ja) ストリーム記録装置、ストリーム編集装置、ストリーム再生装置および記録媒体
JP4538489B2 (ja) ストリーム受信装置、ストリーム受信方法、及びストリーム送受信方法
JP4538488B2 (ja) ストリーム受信装置、ストリーム受信方法、及びストリーム送受信方法
JPH10134515A (ja) 同期回路
JP2001016270A (ja) パケット変換処理システム
JP3121054B2 (ja) 情報記録再生装置
JPH10188484A (ja) 圧縮データの同期検出回路
JP2000106669A (ja) 画像信号再生装置及び画像信号再生方法
JPH03224320A (ja) 可変長データの抽出回路
JPH09294077A (ja) 圧縮音声データ処理方法及びデータストリーム再生方法とそれらの装置
JP2011151753A (ja) 記録再生装置及び記録再生方法

Legal Events

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

Ref document number: 98802891.3

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): CN JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1998961647

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 09380187

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1998961647

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1998961647

Country of ref document: EP