1. Field of the Invention
The present invention relates to a multiplexing device which multiplexes a plurality of pieces of data applied.
2. Description of the Related Art
Various standards related to multimedia communication have been specified so far. ITU-T Recommendation H.324, for example, defines a system and a terminal device for multimedia communication using an analog channel. Also specified are Standard H.324/M for a mobile channel switched network and Standard 3G-324M for an advanced mobile communication network.
In these standards, Standard H.223 is specified as a system for multiplexing control data, voice coding data and image coding data into a single stream.
Standard H.223 provides a logical channel for each of voice data, image data and control data to enable QoS (Quality of Service) control for each logical channel.
For H.324/M and 3G-324M, the system which has improved transmission error resistance of Standard H.223 is specified by Standard H.223 Annex A,B,C.
Based on such standards, systems and the like for multiplexing voice data, image data and control data have been proposed (see e.g. Japanese Patent Laying-Open No. 2002-152730) and developed.
Common multiplexing device according to conventional art which can be expected from ITU-T Recommendation H.223 will be described.
FIG. 6 is a block diagram showing a structure of a common multiplexing device. With reference to FIG. 6, the common multiplexing device includes a multiplexing parameter control unit 103, a control data adaptation unit 104, a voice data adaptation unit 105, an image data adaptation unit 106 and a multiplexing layer unit 107.
The multiplexing device shown in FIG. 6 is a device which multiplexes coded image and voice into a single stream. To the present multiplexing device, applied other than image data 102 which is a coded image and voice data 101 which is coded voice are control data 100 as control information related to a coding system or a multiplexing system of voice and images.
The control data 100 is input to the control data adaptation unit 104, the voice data 101 is input to the voice data adaptation unit 105 and the image data 102 is input to the image data adaptation unit 106.
The multiplexing parameter control unit 103 assigns each of the control data adaptation unit 104, the voice data adaptation unit 105 and the image data adaptation unit 106 its maximum AL-SDU (Adaptation Layer-Service Data Unit) size.
AL-SDU is an SDU of an adaptation layer and a maximum AL-SDU size is a parameter which specifies a maximum size of an AL-SDU. Assume that a maximum AL-SDU size of the control data adaptation unit 104 is a maximum AL1-SDU size, a maximum AL-SDU size of the voice data adaptation unit 105 is a maximum AL2-SDU size and a maximum AL-SDU size of the image data adaptation unit 106 is a maximum AL3-SDU size.
The multiplexing parameter control unit 103 assigns the multiplexing layer unit 107 a maximum MUX-PDU (Multiplex-Protocol Data Unit) size.
MUX-PDU is a PDU in a multiplexed layer and a maximum MUX-PDU size is a parameter which specifies a maximum size of an MUX-PDU.
The control data adaptation unit 104, the voice data adaptation unit 105 and the image data adaptation unit 106 provide a function of an adaptation layer according to properties of each data.
The control data adaptation unit 104 generates an AL-PDU (AL1-PDU) which stores applied control data 100 and sends the same to the multiplexing layer unit 107. At this time, when the size of the input control data 100 is equal to or smaller than the maximum AL1-SDU size, the control data adaptation unit 104 takes the control data 100 as an AL-SDU (AL1-SDU) without processing. When the size of the control data 100 is larger than the maximum AL1-SDU size, the control data adaptation unit 104 segments the control data 100 on a maximum AL1-SDU size basis to take each segmented data as the AL1-SDU. As to the control data, no additional information exists, so that the AL1-SDU is as it is taken as the AL1-PDU.
The voice data adaptation unit 105 generates an AL-PDU (AL2-PDU) which stores applied voice data 101 and sends the same to the multiplexing layer unit 107. At this time, when the size of the input voice data 101 is equal to or smaller than the maximum AL2-SDU size, the voice data adaptation unit 105 takes the voice data 101 as an AL-SDU (AL2-SDU) without processing. When the size of the voice data 101 is larger than the maximum AL2-SDU size, the voice data adaptation unit 105 segments the voice data 101 on a maximum AL2-SDU size basis to take each segmented data as the AL2-SDU. As to the voice data, a sequence number and a CRC (Cyclic Redundancy Check) code are attached to the AL2-SDU as required to have the AL2-PDU. Sequence number is a number indicative of the order of data and a CRC code is a code for use in detecting a bit error.
The image data adaptation unit 106 generates an AL-PDU (AL3-PDU) which stores applied image data 102 and sends the same to the multiplexing layer unit 107. At this time, when the size of the input image data 102 is equal to or smaller than the maximum AL3-SDU size, the image data adaptation unit 106 takes the image data 102 as an AL-SDU (AL3-SDU) without processing. When the size of the image data 102 is larger than the maximum AL3-SDU size, the image data adaptation unit 106 segments the image data 102 on a maximum AL3-SDU size basis to take each segmented data as the AL3-SDU. As to the image data, a sequence number and a CRC code are attached to the AL3-SDU as required to have the AL3-PDU.
The multiplexing layer unit 107 multiplexes the AL1-PDU from the control data adaptation unit 104, the AL2-PDU from the voice data adaptation unit 105 and the AL3-PDU from the image data adaptation unit 106 and attaches an MUX-PDU header to the multiplexed data to generate an MUX-PDU and output the same as multiplexed data 108. At this time, the multiplexing layer unit 107 segments the AL-PDU as required such that the size of the MUX-PDU is within the maximum MUX-PDU size. With a plurality of multiplexing tables for use in multiplexing prepared in advance, the multiplexing layer unit 107 uses any of the multiplexing tables for the multiplexing processing.
MUX-PDU header is formed of a PM (Packet Marker), an MC (Multiplex Code) and an HEC (Header Error Control). PM indicates whether a last byte of an AL-SDU is included or not. MC indicates a multiplexing table used. HEC is information for detecting an error in an MUX-PDU header.
With a common multiplexing device, a size of data which can be processed is limited due to constraints on hardware and the like. In general, however, the image data 102 has a larger size than those of the control data 100 and the voice data 101, so that the image data 102 whose size exceeds the upper limit might be applied in some cases. In such a case, the image data 102 should be segmented or abandoned. When the data is abandoned, it is impossible to properly multiplex applied data.
In addition, while the image data 102 is in general input on a VP (Video Packet) basis or a segmented data basis, if the multiplexing device simply segments the image data 102 irrespectively of a delimitation of a VP, the delimitation of the VP goes out of order to prevent proper decoding of multiplexed image data.