WO2007105618A1 - バッファ制御方法、中継装置、通信システム - Google Patents
バッファ制御方法、中継装置、通信システム Download PDFInfo
- Publication number
- WO2007105618A1 WO2007105618A1 PCT/JP2007/054635 JP2007054635W WO2007105618A1 WO 2007105618 A1 WO2007105618 A1 WO 2007105618A1 JP 2007054635 W JP2007054635 W JP 2007054635W WO 2007105618 A1 WO2007105618 A1 WO 2007105618A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- buffer
- video stream
- relay device
- frame
- video
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
- H04N7/148—Interfacing a video terminal to a particular transmission medium, e.g. ISDN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/102—Gateways
- H04L65/1023—Media gateways
- H04L65/103—Media gateways in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/102—Gateways
- H04L65/1033—Signalling gateways
- H04L65/104—Signalling gateways in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
Definitions
- the present invention relates to a buffer control method for controlling a buffer provided in a relay device, and in particular, a videophone and a television with video through networks having different transmission path states (bandwidth, data loss, error characteristics).
- the present invention relates to a video buffer control method capable of minimizing disturbance of a video displayed on a receiving side due to an influence of a transmission path state when performing communication such as a conference.
- the present invention also relates to a relay device and a communication system to which the buffer control method is applied.
- code methods used for communication of such image and audio code data For example, a method of transmitting encoded data encoded by high-efficiency compression based on inter-frame prediction is often used as a moving image encoding method.
- the code method based on these inter-frame predictions the frame force code image located before and after is predicted. Then, by encoding the prediction parameters obtained by predicting the encoded image and the prediction residual image data, the information amount of the moving image data having a high correlation in the time direction is reduced.
- the prediction residual image data is transformed into a coding code or quantized, so that it can be compressed and coded with high efficiency, thereby enabling communication in a small transmission band.
- CS circuit switching
- the relay apparatus when performing real-time communication between networks having different transmission path states (bandwidth, data loss, error characteristics), a relay device is used to connect (relay) both networks.
- the relay apparatus includes a jitter buffer that absorbs jitter on the network, or performs delay reduction processing that reduces transmission delay when absorbing jitter.
- Patent Document 1 describes an encoded stream relay apparatus that inserts acquired code key information into an encoded stream. ing.
- Patent Document 1 Japanese Patent Laid-Open No. 2006-13583 (paragraphs 0029-0042, FIG. 6)
- Non-Patent Literature 1 H. bcnulznnne, S. Casner, R. Frederick, V. Jacobson, RTP: A Tran sport Protocol for Real-Time Applications ", RFC 3550, July 2003, Internet URL: http: // www. ietf.org/rfc/rfc3550.txt>
- Non-Patent Document 2 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU, "ITU-T Recommendation H.223", 03/1996
- the delay reduction processing is performed on the video stream
- the video stream is encoded using the prediction code that is widely used at the present time
- any arbitrary stream in the video stream can be obtained.
- the image quality of the video stream played back on the receiving side is greatly degraded.
- the video stream is encoded using the prediction code ⁇ , there is a problem that the video is reproduced while the video is deteriorated for a while.
- the present invention provides a buffer control method, a relay device, and a communication system that can reduce deterioration of the video displayed on the receiving side due to the influence of the state of the transmission path when communication involving video is performed.
- the purpose is to provide.
- a buffer control method is a buffer control method for controlling a buffer (for example, video buffer 208) provided in a relay device (for example, relay devices 101 and 401), which is a transmission terminal (for example, a transmission device).
- the terminal 102 stores the received video stream in the buffer of the relay device, and the amount of video stream data stored in the buffer of the relay device is a segment (some segments cannot be decoded due to loss or error). It is also characterized in that it includes a buffer control step that controls in units that can be decoded independently in other segments, for example, frames, video packets, GOBs, slices, NAL units).
- the buffer control method is a buffer control method for controlling a buffer included in a relay device, wherein a reception step of receiving a video stream from a transmission terminal, and the received video stream are relayed.
- a storage step for storing in the device buffer, a buffer control step for controlling the amount of data of the video stream stored in the relay device's nofer, and a video stream is extracted from the buffer in the relay device, and the destination receiving terminal (for example, It may also include a transmission step for transmission to the receiving terminal 103)! /.
- the buffer control method is a buffer control method for controlling a buffer included in a relay device, wherein a reception step of receiving a video stream from a transmission terminal, and the received video stream are relayed.
- a storage step for storing in the device buffer, a buffer control step for controlling the data amount of the video stream stored in the relay device's nofer, and a video stream is extracted from the relay device's noferer and transmitted to the destination receiving terminal.
- a video stream stored in the relay device's noffer at the noffer control step It is possible to perform a thinning process for thinning a predetermined amount of data.
- the video stream stored in the buffer of the relay device is discarded, and the input of the video stream to the buffer of the relay device is stopped or relayed.
- the amount of video stream data stored in the buffer of the relay device may be controlled on a segment basis by increasing the output rate of the video stream output from the device buffer.
- the buffer control method according to the present invention is a buffer control step in which at least one of a frame, a video packet, a GOB, a slice, and a NAL unit is used as a predetermined unit in the buffer control step. May control the data amount of the video stream stored in the.
- the buffer control method includes a threshold setting step for setting a threshold by a predetermined method, and the video stream stored in the buffer of the relay device based on the threshold set in the noffer control step.
- the amount of data may be controlled.
- the buffer control method according to the present invention provides buffer control based on a threshold value in the buffer control step.
- An upper limit value of the data amount of the video stream is set as a threshold value, and the relay device is provided on the condition that the data amount of the video stream stored in a notifier of the relay device is equal to or greater than the upper limit value.
- the input power to the buffer of the relay device, the power to discard at least part of the video stream in the buffer of the relay device, or the output bit rate of the video bit stream of the relay device of the relay device is increased. Control to do;
- the upper limit value and the lower limit value of the data amount of the video stream are set as threshold values, and the data amount of the video stream stored in the relay of the relay device becomes equal to or greater than the upper limit value.
- a thinning threshold value for thinning out the data amount of the video stream is set as a threshold value, and the buffer of the relay device is set on condition that the data amount of the video stream of the nofer of the relay device has reached the thinning threshold value. Do not input data of a predetermined amount to control;
- the amount of data of the video stream stored by the notifier of the relay device may be controlled using at least one of the controls.
- the buffer control method according to the present invention may control the data amount of the video stream stored in the buffer of the relay apparatus based on a predetermined timing in the buffer control step.
- the timing at a certain time, the timing when the number of received packets reaches a certain amount, and the data amount of the received video stream are Video stored in the buffer of the relay device based on at least one timing of reaching a certain amount, timing when the amount of data input to the video buffer reaches a certain amount, or timing when the number of received segments reaches a certain amount It may control the amount of data in the stream.
- the data amount of the video stream stored in the buffer of the relay device is controlled in accordance with the control command that also receives the external device (eg, external device 104) force. You may do.
- the external device eg, external device 10
- the buffer control method includes a frame type determination step of determining a frame type of a frame included in the video stream, and the relay device uses the frame type determined in the nofer control step. It may control the amount of video stream data stored in the buffer.
- the buffer control method includes a reference presence / absence determination step for determining whether or not the frame is a reference frame to which other frame forces are also referenced based on the frame type, and includes a buffer control step.
- a buffer control using the frame type the data amount of the video stream stored in the buffer of the relay device is controlled using the determination result of whether or not the frame is a referenced frame. Also good.
- the buffer control method includes a step of setting the priority of the frame according to the distance from the frame to be referred to. In the buffer control step, the buffer control using the frame type is performed. The amount of video stream data stored in the buffer of the relay device may be controlled using the priority of the frame. [0025] Further, the buffer control method according to the present invention includes a slice type determination step of determining a slice type of a slice included in the video stream, and uses the slice type determined in the nofer control step to It may control the amount of video stream data stored in the buffer.
- the buffer control method includes a type determining step for determining the type of the NAL unit included in the video stream, and relaying using the type of the NAL unit determined in the nofer control step. It may be used to control the amount of video stream data stored in the device buffer.
- the buffer control method refers to whether or not a NAL unit included in a video stream is a referenced unit that is referenced by another NAL unit included in the video stream. Including the presence / absence determination step, and in the nofer control step, the amount of video stream data stored in the buffer of the relay device is controlled using the determination result of whether or not the NAL unit is a referenced unit. Also good.
- the buffer control method includes a macroblock type determining step of determining a macroblock type of a macroblock included in the video stream, and using the macroblock type determined in the buffer control step.
- the data amount of the video stream stored in the buffer of the relay device may be controlled.
- the relay device is a relay device that relays communication of a video stream, and stores the video stream that has received the transmission terminal power in a buffer (for example, the video buffer 208) of the relay device.
- Storage control means for example, realized by the reception data separation unit 202 and nofer control means for controlling the data amount of the video stream stored in the buffer of the relay device in units of segments (for example, the video buffer control unit 207, 407).
- the relay device is a relay device that relays communication of a video stream, and has a receiving means (for example, realized by the receiving unit 201) that receives the video stream, and a receiving terminal.
- Storage control means for example, realized by the received data separation unit 202 that stores the video stream received by the means in the buffer (for example, video buffer 208) of the relay apparatus, and the buffer of the relay apparatus stores the video stream
- Video stream data Buffer control means for controlling the amount of data (for example, realized by the video buffer control units 207 and 407) and extraction means for extracting a video stream from the buffer of the relay device (for example, realized by the transmission data creation unit 209).
- transmission means for example, realized by the transmission unit 210) for transmitting the video stream extracted by the extraction means to the destination receiving terminal.
- the relay device is a relay device that relays communication of a video stream.
- the relay device receives a video stream from a transmission terminal, and the video stream received by the reception unit.
- Storage control means for storing in the device buffer, noffer control means for controlling the data amount of the video stream stored in the relay device, extraction means for extracting the video stream from the buffer of the relay device, extraction Transmitting means for transmitting the video stream extracted by the means to the destination receiving terminal, and the buffer control means is a thinning means for performing a thinning process for thinning out a predetermined amount of data of the video stream stored in the buffer of the relay device (
- the image buffer control units 207 and 407 may be included).
- the buffer control unit discards the video stream stored in the buffer of the relay device, stops input of the video stream to the buffer of the relay device, or buffers the relay device.
- the amount of video stream data stored in the buffer of the relay device may be controlled in units of segments by increasing the output rate of the video stream output from the relay unit.
- the buffer control means uses at least one of a frame, a video packet, a GOB, a slice, or a NAL unit as a predetermined unit, and the buffer of the relay device It may control the amount of data of the video stream to be stored.
- the relay apparatus further includes threshold setting means (for example, realized by the threshold setting unit 204) for setting a threshold by a predetermined method, and the buffer control means is set by the threshold setting means. Based on the threshold value, the data amount of the video stream stored in the buffer of the relay apparatus may be controlled.
- threshold setting means for example, realized by the threshold setting unit 204 for setting a threshold by a predetermined method
- the buffer control means is set by the threshold setting means. Based on the threshold value, the data amount of the video stream stored in the buffer of the relay apparatus may be controlled.
- the buffer control means includes a buffer based on a threshold value.
- An upper limit value of the data amount of the video stream is set as a threshold value, and the relay device is provided on the condition that the data amount of the video stream stored in a notifier of the relay device is equal to or greater than the upper limit value. Control to increase the output bit rate of the video bit stream of the relay device buffer, or to stop at least a part of the video stream in the buffer of the relay device ;
- the upper limit value and the lower limit value of the data amount of the video stream are set as threshold values, and the data amount of the video stream stored in the relay of the relay device becomes equal to or greater than the upper limit value.
- a thinning threshold value for thinning out the data amount of the video stream is set as a threshold value, and the buffer of the relay device is set on condition that the data amount of the video stream of the nofer of the relay device has reached the thinning threshold value. Control that does not input a predetermined amount of data into the control;
- the amount of data of the video stream stored by the notifier of the relay device may be controlled using at least one of the controls.
- the buffer control means may control the data amount of the video stream stored in the buffer of the relay apparatus based on a predetermined timing.
- the buffer control means includes a predetermined timing, a timing at a certain time, a timing when the number of received packets reaches a certain amount, and a data amount of the received video stream by a certain amount.
- the video stored in the buffer of the relay device based on at least one of the timing when the amount of data input to the video buffer reaches a fixed amount, or when the number of received segments reaches a certain amount. It may control the amount of data in the stream.
- the buffer control means controls the data amount of the video stream stored in the buffer of the relay device according to the control command received from the external device. Even what you control.
- the relay device includes frame type determination means (for example, realized by the segment interpretation unit 206) for determining the frame type of a frame included in the video stream, and the buffer control means includes: The amount of video stream data stored in the buffer of the relay apparatus may be controlled using the frame type determined by the frame type determination means.
- frame type determination means for example, realized by the segment interpretation unit 206 for determining the frame type of a frame included in the video stream
- the buffer control means includes: The amount of video stream data stored in the buffer of the relay apparatus may be controlled using the frame type determined by the frame type determination means.
- the relay apparatus is a referenced presence / absence judging means (for example, a stream interpreting unit) that judges whether or not the frame is a referenced frame that is referred to by another frame force based on the frame type.
- the buffer control means uses the determination result of whether or not the frame is a referenced frame as the buffer control using the frame type, and the video stream stored in the buffer of the relay device The amount of data may be controlled.
- the relay device includes priority setting means (for example, realized by the stream interpretation unit 406) that sets the priority of the frame according to the distance from the referenced frame, and performs nofer control.
- the means may control the data amount of the video stream stored in the buffer of the relay apparatus by using the frame priority as buffer control using the frame type.
- the relay apparatus further includes slice type determination means (for example, realized by the segment interpretation unit 206) for determining the slice type of a slice included in the video stream, and the buffer control means includes The data type of the video stream stored in the buffer of the relay apparatus may be controlled using the slice type determined by the type determining means.
- slice type determination means for example, realized by the segment interpretation unit 206 for determining the slice type of a slice included in the video stream
- the buffer control means includes The data type of the video stream stored in the buffer of the relay apparatus may be controlled using the slice type determined by the type determining means.
- the relay device includes a type determination unit (for example, realized by the segment interpretation unit 206) that determines the type of the NAL unit included in the video stream.
- the NAL unit type determined by the type determining unit may be used to control the data amount of the video stream stored in the relay device buffer.
- the NAL unit included in the video stream has a video stream.
- Referenced presence / absence determining means for example, realized by the segment interpretation unit 206) for determining whether or not the referenced unit is referenced by another NAL unit included in the stream.
- the buffer control means includes: The amount of video stream data stored in the buffer of the relay apparatus may be controlled by using the result of determining whether the NAL unit is a referenced unit by the reference presence / absence determining means.
- the relay apparatus includes macroblock type determination means (for example, realized by the segment interpretation unit 206) for determining the macroblock type of the macroblock included in the video stream, and provides nofer control.
- the means may control the data amount of the video stream stored in the buffer of the relay device using the macro block type determined by the macro block type determining means.
- a communication system is a communication system that performs video stream communication, and includes a relay device that relays video stream communication.
- the relay device relays a video stream received from a transmission terminal. It includes storage control means for storing in a buffer of the apparatus, and buffer control means for controlling the data amount of the video stream stored in the buffer of the relay apparatus in segment units.
- the communication system is a communication system that performs video stream communication, and includes a relay device that relays video stream communication.
- the relay device receives a video stream from a transmission terminal.
- the image processing apparatus may include extraction means for extracting a video stream from a buffer of the apparatus and transmission means for transmitting the video stream extracted by the extraction means to a destination receiving terminal.
- a buffer control program is a buffer control program for controlling a buffer included in a relay device, and stores a video stream that has received the transmission terminal power in a computer, in the buffer of the relay device. And a process for controlling the data amount of the video stream stored in the buffer of the relay apparatus in units of segments.
- a buffer control program controls a buffer included in a relay device. And a video stream stored in the buffer of the relay apparatus, a process of receiving the video stream from the transmitting terminal, a process of storing the received video stream in the buffer of the relay apparatus, and a video stream stored in the buffer of the relay apparatus.
- the processing for controlling the amount of data and the processing for extracting the video stream from the relay device and transmitting it to the destination receiving terminal may be executed.
- the video stream received by the transmitting terminal is stored in the buffer of the relay apparatus. It also controls the amount of video stream data stored in the buffer of the relay device in units of segments. Since nofer control is performed on a segment basis, when the relay device discards (reduces) a part of the video stream that should originally be transmitted, the image quality when the video is played back based on the video stream received by the receiving terminal is reduced. Degradation can be mitigated. Therefore, when communication involving video is performed, it is possible to reduce deterioration of the video displayed on the receiving side due to the influence of the state of the transmission path.
- the noffer control is performed on a segment basis, even when video stream communication is performed via networks having different transmission path states, code code data is transferred. It is possible to reduce the deterioration of the video displayed on the receiving side without coding due to the influence of the state of the transmission path.
- FIG. 1 is a block diagram showing an example of a configuration of a communication system using a noffer control method.
- FIG. 2 is a block diagram showing an example of the configuration of a relay device.
- FIG. 3 is an explanatory diagram showing an example of a video stream format relayed by a relay device.
- FIG. 4 is a flowchart showing an example of buffer control processing in which the relay device controls the video buffer.
- FIG. 5 is a block diagram showing another example of the configuration of the relay device.
- FIG. 6 is a block diagram illustrating an example of a configuration of a stream interpretation unit.
- FIG. 7 is a flowchart showing an example of processing for determining data priority based on a frame type.
- FIG.8 An example of processing for determining the priority of data based on whether or not it is a reference picture It is a flowchart which shows.
- FIG. 9 is a flowchart showing an example of processing for determining the priority of data based on whether it is IntraMB.
- the video buffer control method (buffer control method) according to the present invention is applied to a relay device that relays a video stream transmitted from a terminal.
- the buffer control method is applied to a communication system that relays communication through different networks using a relay device.
- the relay device that relays the video stream to which the terminal power is also transmitted includes means for receiving the video stream transmitted from the terminal and means for storing the received video stream in the video buffer. And means for controlling the amount of data in the buffer.
- the relay apparatus may include means for controlling the amount of data in the buffer in a predetermined unit.
- the relay device has (1) frame, (2) video packet, (3) GOB (Group Of Blocks), (4) slice, or (5) NAL (Network Abstraction Layer) unit as a predetermined unit. Means for using at least one of the video stream specific segments.
- the relay apparatus may include means for setting a threshold value by a predetermined method and means for controlling the data amount in the buffer based on the set threshold value. Further, the relay device may include means for controlling the amount of data in the buffer based on a predetermined timing. Also, the relay device may include means for controlling the amount of data in the buffer in accordance with a command from an external device, and extracts the video stream from the video buffer and transmits it to the relay destination terminal
- FIG. 1 is a block diagram showing an example of the configuration of a communication system using the buffer control method.
- the communication system transmits a relay device 101, a transmission terminal 102 that transmits a video stream, a reception terminal 103 that receives a video stream transmitted from the transmission terminal 102, and a video queue control command. And an external device 104.
- relay apparatus 101 and transmitting terminal 102 are connected via transmission line 105. Further, the relay device 101 and the receiving terminal 103 are connected via a transmission path 106. The relay device 101 and the external device 104 are connected via a transmission path 107.
- the transmission paths 105 to 107 are realized by a network using a wired or wireless IP (Internet Protocol) or a circuit switching network.
- transmitting terminal 102 and receiving terminal 103 are connected to networks having different transmission path states (bandwidth, data loss, error characteristics), respectively.
- transmission path states bandwidth, data loss, error characteristics
- the transmission path 105 and the transmission path 106 differ in bandwidth, data loss, and error characteristics.
- the power communication system showing a case where there is one transmission terminal 102 may include a plurality of transmission terminals 102.
- the communication system may include a plurality of receiving terminals 103.
- the transmission terminal 102 may have a function of receiving a video stream just by transmitting the video stream.
- the receiving terminal 103 may have a function of transmitting a video stream just by receiving the video stream.
- the external device 104 may be realized by the same device as the transmission terminal 102 or the reception terminal 103.
- the transmission terminal 102 is specifically realized by an information processing terminal such as a mobile phone or a PDA. Further, the transmission terminal 102 may be a terminal such as a personal computer, for example.
- the transmission terminal 102 has a function of transmitting a video stream via the transmission path 105. For example, the transmission terminal 102 transmits data including a video stream via the transmission path 105 in accordance with a user operation when performing a videophone call or a videoconference.
- the receiving terminal 103 is realized by an information processing terminal such as a mobile phone or a PDA. Further, the receiving terminal 103 may be a terminal such as a personal computer, for example.
- the receiving terminal 103 has a function of receiving a video stream via the transmission path 106.
- the receiving terminal 103 has a function of displaying video on a display unit such as a liquid crystal display unit based on the received video stream.
- the receiving terminal 103 receives data including a video stream via the transmission path 106 according to a user's operation when performing a video call or a video conference, and reproduces the video on the liquid crystal display unit. To do.
- the external device 104 is realized by an information processing device such as a workstation or a personal computer.
- the external device 104 is operated by a communication carrier or provider that manages the relay device 101, for example.
- the external device 104 has a function of transmitting a control command for controlling a buffer included in the relay device 101 to the relay device 101 via the transmission path 107.
- the external device 104 may be a terminal such as a mobile phone or a PDA when realized by the same device (for example, a user terminal) as the transmission terminal 102 or the reception terminal 103.
- relay device 101 is realized by a communication control device such as a gateway. Further, the relay device 101 may be an information processing device such as a workstation or a personal computer that executes processing according to a communication relay program for relaying communication.
- FIG. 2 is a block diagram illustrating an example of the configuration of the relay device. Relay device 101 2, receiving unit 201, received data separation unit 202, command receiving unit 203, threshold setting unit 204, timing generation unit 205, segment interpretation unit 206, video buffer control unit 207, video buffer 208, transmission data creation unit 209 and a transmission unit 210 are included.
- the receiving unit 201 has a function of receiving data including a video stream from the transmission terminal 102 via the transmission path 105.
- the reception data separation unit 202 has a function of separating a reception data force video stream and extracting a video stream.
- the reception data separation unit 202 has a function of storing the separated video stream in the video buffer 208.
- the command receiving unit 203 has a function of receiving a command from the external device 104 via the transmission path 107.
- the threshold value setting unit 204 has a function of setting a threshold value used for nota control.
- the timing generation unit 205 has a function of setting timing for performing the control and generating timing information.
- the segment interpretation unit 206 has a function of receiving a video stream from the reception data separation unit 202 and interpreting (analyzing) a segment in the video stream.
- the video buffer control unit 207 has a function of controlling the video buffer 208.
- the video buffer control unit 207 controls the video buffer 208 by performing processing such as deleting a video stream stored in the video buffer 208.
- the video buffer control unit 207 controls the video buffer 208 based on the control command received from the external device 104 by the command receiving unit 203.
- the video buffer control unit 207 controls the video buffer 208 based on the threshold set by the threshold value setting unit 204.
- the image buffer control unit 207 controls the image buffer 208 based on the timing set by the timing generation unit 205.
- the video buffer control unit 207 controls the video buffer 208 based on the analysis result of the segment interpretation unit 206.
- the video buffer 208 has a function of storing a video stream obtained by separation by the reception data separation unit 202.
- the transmission data creation unit 209 has a function of creating transmission data in a format that can be communicated using the transmission path 106 based on the video stream in the video buffer 208.
- the transmission unit 210 has a function of transmitting the transmission data created by the transmission data creation unit 209 to the reception terminal 103 via the transmission path 106.
- the format of data received by the receiving unit 201 is a transmission format that depends on the communication protocol used in the transmission path 105. Also, data to be transmitted by the transmitter 210 The transmission format depends on the communication protocol used on the transmission path 106.
- the transmission format here is a format used when transmitting a video stream such as an RTP format in an IP network or an H.223 format in a circuit switching network.
- Non-Patent Document 1 “H. Schulzrinne, S.
- the storage device of the relay device 101 stores various programs for relaying video stream communication via different networks.
- the storage device of the relay device 101 controls the computer to store the video stream that has also received the transmission terminal power in the buffer of the relay device, and control the data amount of the video stream stored in the buffer of the relay device in units of segments.
- a buffer control program for executing the processing to be executed is stored.
- FIG. 3 is an explanatory diagram showing an example of a format of a video stream relayed by the relay apparatus 101.
- the video stream is composed of a plurality of frames 30-1 to 30-n.
- VP indicates a video packet in MPEG4.
- the frame 30-1 is composed of a plurality of VP31-1 to 31-m. Note that the frame 30-1 is not limited to one composed of a plurality of VP31-1 to 31-m, and may not be divided in VP units. Also, frames 30-2 to 30-11, like frame 30-1, may be composed of multiple VPs, but they are not separated by VP units.
- the buffer control method is not limited to a specific code format, and for example, , Communication of video streams encoded using MPEG1, MPEG2, etc. You may apply to the communication system to perform.
- the frames included in the video stream are not limited to being divided into VP units, and may be divided into units specific to video code systems such as GOB and slices in H.263, for example. Further, for example, the frame may be divided into units unique to the video code system such as NAL units and slices in H.264.
- FIG. 4 is a flowchart showing an example of a nota control process in which the relay apparatus 101 controls the video buffer 208.
- the user of the transmission terminal 102 performs a videophone call or video conference with the user of the reception terminal 103
- the user of the transmission terminal 102 operates the transmission terminal 102 to perform an instruction operation to transmit a video stream.
- the transmission terminal 102 transmits data including a video stream to the relay apparatus 101 via the transmission path 105 in accordance with a user operation.
- the receiving unit 201 of the relay apparatus 101 receives reception data including at least a video stream from the transmission terminal 102 via the transmission path 105 (step Sl l). Then, reception data separation section 202 separates the video stream from the reception data based on the transmission format used in transmission path 105, and extracts the video stream (step S12). Also, the received data separation unit 202 stores the separated video stream in the video buffer 208 (step S13). According to the above processing, video streams are sequentially stored in the video buffer 208 of the relay apparatus 101.
- the command receiving unit 203 of the relay device 101 receives a control command from the external device 104 via the transmission path 107 at a predetermined timing (step S14). Then, the video buffer control unit 207 discards (deletes) the video stream stored in the video buffer 208 in accordance with the control command received by the command receiving unit 203 (step S15).
- threshold setting section 204 of relay apparatus 101 sets a predetermined threshold in advance.
- the video buffer control unit 207 discards (deletes) the video stream stored in the video buffer 208 according to the threshold set by the threshold setting unit 204 in step S15.
- the timing generation unit 205 of the relay apparatus 101 is set in advance with a predetermined timing. Imming is set. In this case, the video buffer control unit 207 discards (deletes) the video stream stored in the video buffer 208 according to the timing set by the timing generation unit 205 in step S15.
- the segment interpretation unit 206 of the relay apparatus 101 analyzes the segment included in the video stream when receiving the video stream.
- the video notifier controller 207 discards (deletes) the video stream in the video buffer 208 in units of segments according to the segment analyzed by the segment interpreter 206 in step S15.
- the video buffer control unit 207 controls the video buffer 208 in accordance with all of the control command, threshold value, timing, and segment analysis result from the external device 104, so that the control command, threshold value,
- the video buffer 208 may be controlled in accordance with any one or more of timing and segment analysis results.
- the relay device 101 does not include the command receiving unit 203, and the communication system may not include the external device 104 that transmits the control command.
- the relay apparatus 101 may not include the threshold setting unit 204.
- the relay apparatus 101 may not include the timing generation unit 205.
- the video buffer control unit 207 may discard all of the video streams which may or may not discard some of the video streams stored in the video buffer 208.
- the transmission data creation unit 209 of the relay apparatus 101 converts the video stream stored in the video buffer 208 (the video stream remaining in the video buffer 208 without being discarded in step S15) into the transmission format used in the transmission path 106. Process and create transmission data (step S16). Then, the transmission unit 210 transmits the transmission data created by the transmission data creation unit 209 to the reception terminal 103 via the transmission path 106 (step S17). The receiving terminal 103 displays a video on the display unit based on the video stream included in the data received from the relay device 101.
- processing for storing a video stream in the video buffer 208 or discarding data in the video buffer 208 is specifically performed by stopping input to the video buffer 208, This can be realized by increasing the output bit rate for outputting data from the image buffer 208.
- the control command transmitted from the external device 104 is transmitted from the external device 104 to the relay device 101 when it is desired to operate the video buffer 208 in the relay device 101 with an external force. Then, the data is transferred to the respective modules of the threshold setting unit 204, the timing generation unit 205, the segment interpretation unit 206, and the video buffer control unit 207 in the relay apparatus 101 via the command reception unit 203.
- the buffer is cleared from the video buffer 208 so that the video stream of the previous transmission terminal 102 before switching is not transmitted (
- a control command for deleting the video stream is transmitted from the external device 104.
- it is passed to the video buffer control unit 207 via the command receiving unit 203.
- the receiving terminal 103 is changed to another receiving terminal in the communication system by transfer, a control command for deleting the video stream from the video buffer 208 is transmitted from the external device 104.
- control command power to increase / decrease may be transmitted from the external device 104. Then, a control command may be passed to the video buffer control unit 207 via the command receiving unit 203. Further, a control command for changing to a threshold value in accordance with the change in the bit rate or frame rate may be passed to the threshold setting unit 204. Further, a control command for changing to buffer control timing in accordance with the change in the bit rate or frame rate may be passed to the timing generation unit 205. Further, it may be passed to the command power segment interpreter 206 for changing the control to a segment in accordance with the change in the bit rate or frame rate. In addition, these four control commands may be sent independently and a plurality of control commands may be issued simultaneously.
- the video stream transmitted from the transmission terminal 102 is changed to a stream encoded with MPEG4, the video stream in the video buffer 208 is cleared.
- a control command to be (deleted) may be passed to the video buffer control unit 207.
- a control command may be transferred to the segment interpretation unit 206 so as to interpret (analyze) the segment in accordance with the video stream to be changed. The same applies when changing to a stream encoded using a method other than MPEG4 and H.263.
- the threshold setting unit 204 may set the threshold according to the setting contents of the setting file stored in the storage device such as a memory in advance.
- the threshold setting unit 204 may set the threshold according to setting information input from a predetermined setting terminal (for example, a terminal such as a personal computer) connected to the relay apparatus 101.
- the threshold value setting unit 204 sets, for example, the upper limit value of the data amount of video streams that can be accumulated (stored) in the video buffer 208 as a threshold value. In this case, when it is determined that video streams exceeding the upper limit value have accumulated in the buffer 208, the video buffer control unit 207 discards (deletes) some or all of the video streams in the video buffer 208. Alternatively, the video buffer control unit 207 stops input to the video buffer 208 or increases the output bit rate from the video buffer 208.
- the threshold setting unit 204 may set, for example, two values of an upper limit value and a lower limit value of the data amount of the video stream accumulated in the video buffer 208 as the threshold value.
- the video buffer control unit 207 inputs the video stream input to the video buffer 208 to the video stream data stored in the video buffer 208. Control is not performed until the amount reaches the lower limit.
- the video buffer control unit 207 may control the output bit rate of the video stream from the video buffer 208 so as to increase until the data amount of the video stream stored in the video buffer 208 reaches the lower limit value.
- the threshold setting unit 204 independently calculates the input bit rate and frame rate of the video stream or receives the input bit rate and frame rate from the external device 104 via the command receiving unit 203. May be. In this case, the threshold setting unit 204 may increase the upper limit of the data amount of the video stream stored in the video buffer 208 when the acquired bit rate or frame rate is instantaneously high.
- the threshold setting unit 204 when a video stream is input to the video buffer 208, A data amount of a video stream input at a predetermined time (for example, minutes, seconds, milliseconds, etc.) or a differential value of the data amount may be calculated. Then, the threshold value setting unit 204 may set a value for comparison with the obtained data amount or differential value as the threshold value. In this case, for example, when the differential value of the input bit rate is large, the threshold setting unit 204 may increase the upper limit value of the video buffer 208. Alternatively, in order to prevent the data from overflowing from the video buffer 208, control such as stopping the input of the video stream before the buffer amount reaches the upper limit value may be performed.
- a thinning threshold is set for thinning out the data in the video buffer 208, and when the buffer amount reaches the thinning threshold, a predetermined amount of data is buffer controlled (for example, a predetermined amount of data stored in the video buffer 208). May not be input). That is, the video buffer control unit 207 may execute a thinning process for thinning out a predetermined data amount of the video stream stored in the video buffer 208. It is also possible to set a plurality of thinning thresholds.
- the data amount for one frame is buffer-controlled, and the buffer amount You can also buffer the amount of data for 2 frames at the 2/3 point (when the second decimation threshold is reached).
- timing generation unit 205 sets a predetermined timing (hereinafter also referred to as “nofer control timing”) and generates timing information.
- “Buffer control timing” is timing when the video buffer control unit 207 looks inside the video buffer 208 (checks the video stream stored in the video buffer 208) and performs the buffer control.
- the timing generation unit 205 may set the nota control timing according to the setting contents of the setting file stored in advance in a storage device such as a memory. In addition, the timing generation unit 205 may set a certain timing as the buffer control timing in accordance with setting information in which a predetermined setting terminal power connected to the relay apparatus 101 is also input.
- the timing generation unit 205 may use the timing at which the reception unit 201 receives data as the buffer control timing. Further, the timing generation unit 205 may use the timing at which the control command is received from the command receiving unit 203 as the nota control timing.
- the timing generation unit 205 receives data compared to the amount of data stored in the video buffer 208.
- the nofer control timing may be set to be delayed.
- the timing generation unit 205 may be set to advance the nofer control timing when the data amount of the video stream from the reception data separation unit 202 is large or when the reception frequency of the video stream is high. .
- the timing here refers to the timing when the number of received packets reaches a certain amount, even when the timing is based on time information such as every certain time, the timing when the data amount of the received video stream reaches a certain amount, and input to the video buffer It may be the timing when the amount of data reached a certain amount. Also, in conjunction with the segment interpretation unit 206 shown below, the timing when the number of received frames reaches a certain amount, the timing when the number of segments unique to the received video code system reaches a certain amount, etc.
- segment interpretation segment analysis included in the video stream
- segment interpretation unit 206 two types of segments, ie, a frame and a unit specific to the video code system that divides the frame (for example, a video packet, GOB, slice, or NAL unit) are assumed as segments to be analyzed.
- the segment interpretation unit 206 for example, has the ability to divide the video stream into frames by performing segment analysis processing, and the ability to divide the video stream into units specific to the video code system. Is identified.
- the unit specific to the video code system as a segment is a frame divided, and some segments in the video stream cannot be decoded due to packet loss or bit error. Even if it exists, it is a unit that other segments in the video stream can be decoded independently.
- the segment interpretation unit 206 identifies a segment in the video stream by using, for example, a method of searching for a start code indicating a segment delimiter from the video stream as a segment interpretation method. Further, the segment interpretation unit 206 may specify a segment in the video stream by using, for example, a method for determining a segment break from the transmission format. In addition, the segment interpretation unit 206 may specify a segment in the video stream using, for example, a segment interpretation method unique to the video stream.
- MPEG4 video packet (VP) is used as a segment unit.
- VP MPEG4 video packet
- the segment interpretation unit 206 determines whether to interpret a misaligned segment (frame or video packet) according to a preset initial value or a control command received from the command receiving unit 203.
- the relay apparatus 101 uses the segment interpreted by the segment interpretation unit 206 here as a unit when inputting the video stream to the video buffer 208 or discarding the video stream in the video buffer 208.
- the frame rate of the video received by the receiving terminal 103 does not change, and the received VP can be decoded normally.
- the VP31-2 shown in FIG. 3 is discarded by the buffer control and not transmitted to the receiving terminal 103, the other VP31-1, 31-3 to 31-m constituting the frame 30-1 Is successfully decoded.
- the decoding process of the VP31-2 portion in the frame depends on the accuracy of the decoder of the receiving terminal 103. Therefore, by performing the buffer control in units of video packets as a segment according to the accuracy of the decoder of the receiving terminal 103, it is possible to reduce image quality degradation of an image reproduced by the receiving terminal 103.
- the receiving terminal 103 normally decodes the frame 30-2 up to the next VP or frame part because the head part has been discarded (for example, the header part has been discarded). I can't.
- receiving terminal 103 cannot normally decode up to the next VP or frame portion.
- buffer control is performed in units of a certain amount of bytes instead of in units of segments, a large amount of data that cannot be correctly decoded even if received is transmitted to the receiving terminal B103, and the image reproduced by the receiving terminal 103 is transmitted.
- image quality degradation In the present embodiment, by performing the video buffer control in units of segments, it is possible to mitigate image quality degradation of an image reproduced by the receiving terminal 103.
- the video buffer control unit 207 receives information from the command receiving unit 203, the threshold setting unit 204, the timing generation unit 205, and the segment interpretation unit 206, and controls the video stream in the video buffer 208.
- relay apparatus 101 stores in video buffer 208 the video stream from which the received data power received from transmitting terminal 102 is also separated. Further, the relay device 101 analyzes the segment included in the video stream, and controls the data amount of the video stream stored in the video buffer 208 in units of segments based on the segment analysis result. Since buffer control is performed on a segment basis, when the relay device 101 discards (reduces) a part of the video stream that it should originally transmit, the image quality when the video is played back based on the video stream received by the receiving terminal 103 is reduced. Degradation can be mitigated. Therefore, it is possible to reduce the deterioration of the video displayed on the receiving side due to the influence of the state of the transmission path when performing communication involving video.
- the nofer control is performed in units of segments, even when video stream communication is performed via networks with different transmission path states, encoded data is transferred. It is possible to reduce the deterioration of the video displayed on the receiving side without coding due to the influence of the state of the transmission path.
- the relay device using the video buffer control method specifies video stream information included in the video stream in addition to the components shown in the first embodiment. Means are provided.
- the relay device transmits, as video stream information, (1) frame type, (2) slice type, (3) type of NAL unit, (4) presence or absence of reference to NAL unit, or (5) Means using at least one of the macroblock types are provided.
- the relay device includes means for controlling the amount of data using the specified video stream information, extracts the video stream from the video buffer, and transmits it to the relay destination terminal.
- the basic configuration of the communication system is the same as the configuration shown in the first embodiment (see FIG. 1).
- the function of relay apparatus 401 is different from the function of relay apparatus 101 shown in the first embodiment.
- FIG. 5 is a block diagram showing another example of the configuration of the relay device.
- the relay device 401 includes the stream interpretation unit 406 instead of the segment interpretation unit 206 of the relay device 101 shown in FIG. And different.
- the functional capability of the video buffer control unit 407 is different from the function of the video buffer control unit 207 shown in FIG.
- the relay device 401 provides means (buffer interpretation unit 406 and video buffer control unit 407) to buffer control using the video stream information to the relay device 101 shown in the first embodiment. ) Is added.
- the functions of the receiving unit 201, the received data separating unit 202, the command receiving unit 203, the threshold setting unit 204, the timing generating unit 205, the video buffer 208, the transmission data creating unit 209, and the transmitting unit 210 are the same as those in the first embodiment. These functions are the same as those shown in Fig. 1.
- the stream interpretation unit 406 has a function of performing segment interpretation (segment analysis) and acquiring (extracting) video stream force segment information.
- the video buffer control unit 407 has a function of controlling the video buffer 208.
- the video buffer control unit 407 is the same as the video buffer control unit 207 shown in the first embodiment.
- the command receiver 208 controls the video notifier 208 based on the control command received from the external device 104.
- the video buffer control unit 407 controls the video buffer 208 based on the threshold set by the threshold setting unit 204, similarly to the video buffer control unit 207 shown in the first embodiment.
- the video buffer control unit 407 controls the video buffer 208 based on the timing set by the timing generation unit 205 in the same manner as the video buffer control unit 207 shown in the first embodiment.
- the video buffer control unit 407 includes the segment analyzed by the stream interpretation unit 406 and the segment information extracted by the stream interpretation unit 406.
- the video buffer control unit 207 performs buffer control.
- FIG. 6 is a block diagram showing an exemplary configuration of the stream interpretation unit 406.
- the stream interpretation unit 406 includes a segment interpretation unit 206 and a segment information acquisition unit 501 as shown in FIG. Similar to the segment interpretation unit 206 included in the relay apparatus 101 shown in the first embodiment, the segment interpretation unit 206 has a function of interpreting (analyzing) a segment in the video stream.
- the segment information acquisition unit 501 has a function of acquiring (extracting) segment-specific information (segment information) from the segments (segments included in the video stream) interpreted by the segment interpretation unit 206.
- the relay device 401 receives a video stream from the transmission terminal 102 and stores it in the video buffer 208 according to the same processing as the buffer control processing shown in FIG.
- the video stream stored in the buffer 208 is transmitted to the receiving terminal 103.
- segment interpretation unit 206 of the stream interpretation unit 406 receives the video stream and receives the video stream from the reception data separation unit 202
- segment interpretation unit 206 of the stream interpretation unit 406 and the segment interpretation unit 206 shown in the first embodiment segments are interpreted in frame units or units unique to the video coding scheme that divides the frame. Further, the segment interpretation unit 206 sends (outputs) the interpreted segment to the segment information acquisition unit 501.
- the segment information acquisition unit 501 acquires (extracts) segment information based on the segment analysis result from the segment interpretation unit 206.
- the segment information acquisition unit 501 outputs the obtained segment information to the video buffer control unit 407.
- the control unit 407 uses the segment information input from the stream interpretation unit 406 for the control of the nofer.
- the segment information acquisition unit 501 obtains (extracts) a frame type as segment information by analyzing the header portion at the head of the stream, analyzing the transmission format, or the like.
- the video buffer control unit 407 controls the video buffer 208 using the frame type determined by the segment information acquisition unit 501. Therefore, the amount of processing that is increased to determine the frame type can be kept small.
- the stream interpretation unit 406 determines the priority of data in buffer control based on the extracted frame type. Then, the video buffer control unit 407 controls the video buffer 208 according to the priority determined by the stream interpretation unit 406. For example, the video buffer control unit 407 performs control so that the video stream stored in the video buffer 208 is discarded in units of segments in the order of priority.
- FIG. 7 is a flowchart showing an example of processing for determining the priority of data based on the frame type.
- the stream interpretation unit 406 first determines whether or not the frame type power frame is based on the frame type extracted by the segment information acquisition unit 501 (step S601). When it is determined that the frame is an I frame, the stream interpretation unit 406 increases the priority of the frame because it is data that can be decoded independently by inter-screen prediction (step S602). In other words, the stream interpretation unit 406 sets so that the priority of the I frame is high.
- step S601 When it is determined in step S601 that the frame is other than the I frame (for example, B frame), the stream interpretation unit 406 determines the decoded video quality depending on the situation of the other frame in the inter-screen prediction. The priority of the frame is lowered (step S603). That is, the stream interpretation unit 406 sets the priority of frames other than the I frame to be low.
- the stream interpretation unit 406 sets the priority of frames other than the I frame to be low.
- the priority of the V and frame (P frame immediately before the I frame) to the lowest, and gradually increase the priority as it approaches the referenced frame.
- the present invention is not limited to the P frame immediately before the I frame, and if there is a frame that is not referred to by other frames !, the priority may be set to be significantly lower. For example,
- the B frame is not referenced by other frames, and even if the B frame is discarded, the output video stream will not be disturbed. For this reason, setting the priority of the B frame to a significantly low level is not considered.
- the stream interpretation unit 406 determines whether or not the frame is a reference frame by referring to other frame forces based on the frame type. Then, the video buffer control unit 407 controls the data amount of the video stream stored in the video buffer 208 using the determination result. Also, the stream interpretation unit 406 sets the frame priority according to the distance from the referenced frame. Then, the video buffer control unit 407 controls the data amount of the video stream stored in the video buffer 208 using the set frame priority.
- the frame When interpreted as a segment in slice units in H.264, the frame may be read as a slice in FIG.
- the segment information acquisition unit 501 determines and extracts the slice type of the slice included in the video stream as segment information. Then, the video buffer control unit 407 controls the video buffer 208 using the slice type determined by the segment information acquisition unit 501.
- the segment information acquisition unit 501 may determine and extract the macroblock type of the macroblock included in the video stream as the segment information. Then, the video buffer control unit 407 may control the video buffer 208 using the macro block type determined by the segment information acquisition unit 501.
- the segment The information acquisition unit 501 determines whether the NAL unit included in the video stream is a referenced unit (reference picture) that is referenced by another NAL unit included in the video stream. Then, the video buffer control unit 407 controls the video buffer 208 using the determination result of whether or not the NAL unit is a reference picture.
- the NAL unit generally has a header including a flag indicating whether or not it is a reference picture called a NAL header, and an identifier indicating the NAL unit type.
- the stream interpretation unit 406 determines whether or not the segment (NAL unit) is a reference picture based on a flag indicating whether or not it is a reference picture included in the NAL unit, and can perform the buffer control. Define data priorities.
- FIG. 8 is a flowchart showing an example of processing for determining the priority of data based on whether or not it is a reference picture.
- the stream interpretation unit 406 first determines whether or not the segment is a reference picture (step S701). If it is determined that it is a reference picture, the stream interpretation unit 406 increases the priority of the segment because the segment is data that is referenced by another picture (step S702). That is, the stream interpretation unit 406 sets the reference picture to have a higher priority.
- step S701 If it is determined in step S701 that the picture is not a reference picture, the stream interpretation unit 406 has no influence on other pictures even if the picture of the segment is lost (discarded). Is lowered (step S703). That is, the stream interpretation unit 406 sets the priority of pictures other than the reference picture to be low. If only pictures other than the reference picture are discarded, the output video stream will not be disturbed at all, although the bit rate and frame rate will decrease.
- the priority used for nota control can also be set using the NAL unit type.
- the segment information acquisition unit 501 determines the type of the NAL unit included in the video stream. Then, the video buffer control unit 407 controls the video buffer 208 using the type of NAL unit determined by the segment information acquisition unit 501.
- the NAL unit type is the sequence 'parameter' set.
- (SPS) indicates a picture parameter set (PPS)
- this information becomes necessary parameters for the subsequent decoding of the video stream, so the priority is the highest.
- PPS picture parameter set
- the stream interpretation unit 406 sets the second highest priority because it is an important value indicating the boundary between frames.
- the stream interpretation unit 406 indicates that when the NAL unit type indicates an IDR picture slice, all the states necessary for combining the bit streams are reset, and this has a high effect on subsequent decoding. Therefore, set the priority to the third highest. Then, the stream interpretation unit 406 sets a low priority when the NAL unit type is other than the above-described types.
- the stream interpretation unit 406 is not a NAL unit, for example, MPEG4 Coder Config Info (DCI) information is also a parameter necessary for decoding a video stream, and therefore has a high priority. It can also be set.
- DCI MPEG4 Coder Config Info
- the stream interpretation unit 406 reduces the priority of the received data when receiving the same parameters as the previous SPS, PPS, or DCI. It is exempted from setting.
- segments are interpreted in units of VP (video packet), and 1 VP is 1 macroblock.
- the stream interpretation unit 406 can determine whether it is IntraMB by analyzing the leading part of the MB, and determines the priority of data in the noffer control. Also, since only the beginning of the MB needs to be analyzed, the increase in processing volume can be minimized.
- FIG. 9 is a flowchart showing an example of processing for determining the priority of data based on whether or not it is IntraMB.
- the stream interpretation unit 406 first determines whether or not the segment is an I frame (step S801). If it is determined that the segment is an I frame, the stream interpretation unit 406 terminates the process without changing the priority of the segment because all MB types are IntraMB and there is no difference between the segments. .
- the stream interpretation unit 406 determines whether the segment is IntraMB (step S802). When it is determined that the segment is IntraMB, the stream interpretation unit 406 can decode the MB alone when adopting the video encoding method without performing inter-frame prediction on frames other than I frames. , Increase the priority of the segment (step S803). That is, the stream interpretation unit 406 sets the priority of the IntraMB segment to be high.
- step S802 If it is determined in step S802 that it is an MB other than IntraMB, the stream interpretation unit 406 may decode using prediction based on other data, so the priority of the segment is reduced (step S804). That is, the stream interpretation unit 406 sets so that the priority of MB segments other than Intra MB is low.
- VP may be read as a segment unit specific to another video encoding method such as GOB, slice, or NAL unit.
- the priority assignment method (priority setting method) shown in Fig. 7 to Fig. 9 is an example.
- the same effect can be obtained even if it is changed according to the user's setting policy. Can do.
- the video buffer control unit 407 discards data (video stream) having a low priority among the data in the video buffer 208 in units of segments or a video buffer of data having a low priority. Stop input to 208.
- the relay apparatus 401 may intentionally change the transmission order of data with high priority and transmit the data.
- the relay device 401 can determine which sequence the data belongs to based on the PPS in the slice 'header, as in the case of using H.264.
- the transmission order of high priority data may be intentionally changed.
- the present invention can be applied to a relay device that relays video stream communication via different networks. It can also be applied to a communication system including a relay device that relays communication between different networks.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Communication Control (AREA)
Abstract
Description
Claims
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/281,665 US8239901B2 (en) | 2006-03-14 | 2007-03-09 | Buffer control method, relay apparatus, and communication system |
JP2008505102A JP4924605B2 (ja) | 2006-03-14 | 2007-03-09 | バッファ制御方法、中継装置、通信システム |
KR20087021364A KR101166446B1 (ko) | 2006-03-14 | 2007-03-09 | 버퍼 제어 방법, 중계 장치, 통신 시스템 |
MX2008011210A MX2008011210A (es) | 2006-03-14 | 2007-03-09 | Metodo de control de memoria intermedia, dispositivo de retransmision y sistema de comunicacion. |
EP07738120A EP1995920A4 (en) | 2006-03-14 | 2007-03-09 | BUFFER MEMORY CONTROL METHOD, RELAY DEVICE, AND COMMUNICATION SYSTEM |
BRPI0706826-3A BRPI0706826A2 (pt) | 2006-03-14 | 2007-03-09 | método de controle de buffer, aparelho relé e sistema de comunicação |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006069261 | 2006-03-14 | ||
JP2006-069261 | 2006-03-14 | ||
JP2006118335 | 2006-04-21 | ||
JP2006-118335 | 2006-04-21 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2007105618A1 true WO2007105618A1 (ja) | 2007-09-20 |
Family
ID=38509441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2007/054635 WO2007105618A1 (ja) | 2006-03-14 | 2007-03-09 | バッファ制御方法、中継装置、通信システム |
Country Status (8)
Country | Link |
---|---|
US (1) | US8239901B2 (ja) |
EP (1) | EP1995920A4 (ja) |
JP (1) | JP4924605B2 (ja) |
KR (1) | KR101166446B1 (ja) |
BR (1) | BRPI0706826A2 (ja) |
MX (1) | MX2008011210A (ja) |
RU (1) | RU2008135839A (ja) |
WO (1) | WO2007105618A1 (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009154656A1 (en) * | 2008-06-17 | 2009-12-23 | Thomson Licensing | Network abstraction layer (nal)-aware multiplexer with feedback |
WO2010002420A1 (en) * | 2008-07-01 | 2010-01-07 | Thomson Licensing | Network abstraction layer (nal)-aware multiplexer |
CN101951512A (zh) * | 2010-08-24 | 2011-01-19 | 中国科学院深圳先进技术研究院 | 一种直播视频和实时视频的分片转码方法和*** |
US20110158201A1 (en) * | 2008-08-28 | 2011-06-30 | Kyocera Corporation | Radio terminal and communication terminal |
CN102440024A (zh) * | 2009-05-29 | 2012-05-02 | 华为技术有限公司 | 用于在无线通信***中进行中继节点流量控制的***和方法 |
JP2012156829A (ja) * | 2011-01-27 | 2012-08-16 | Brother Ind Ltd | 符号化装置、符号化方法、および符号化プログラム |
US8412364B2 (en) | 2008-12-25 | 2013-04-02 | Huawei Technologies Co., Ltd. | Method and device for sending and playing streaming data |
CN103313122A (zh) * | 2012-03-09 | 2013-09-18 | 联想(北京)有限公司 | 一种数据处理方法及电子设备 |
JP2013247561A (ja) * | 2012-05-28 | 2013-12-09 | Idk Corp | データ中継装置、データ中継方法、データ伝送システムおよびプログラム |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7793317B2 (en) * | 2005-08-19 | 2010-09-07 | At&T Intellectual Property I, L.P. | System and method of managing video streams to a set top box |
JP4987760B2 (ja) * | 2008-03-05 | 2012-07-25 | 株式会社オートネットワーク技術研究所 | 中継装置、通信システム及び通信方法 |
US8401075B2 (en) * | 2008-12-31 | 2013-03-19 | General Instrument Corporation | Hybrid video encoder including real-time and off-line video encoders |
EP2517519A1 (en) | 2009-12-22 | 2012-10-31 | Fujitsu Limited | Quality of service control in a relay |
US20110235709A1 (en) * | 2010-03-25 | 2011-09-29 | Apple Inc. | Frame dropping algorithm for fast adaptation of buffered compressed video to network condition changes |
US20130091528A1 (en) * | 2010-06-23 | 2013-04-11 | Mitsubishi Electric Corporation | Video reproduction system, receive terminal, home gateway device, and quality control system |
US20140118463A1 (en) * | 2011-06-10 | 2014-05-01 | Thomson Licensing | Video phone system |
US9445058B2 (en) * | 2012-05-14 | 2016-09-13 | Intuitive Surgical Operations, Inc | Method for video processing using a buffer |
KR101957282B1 (ko) * | 2012-08-29 | 2019-03-12 | 삼성전자주식회사 | 동영상 제어장치 및 방법 |
US9438652B2 (en) * | 2013-04-15 | 2016-09-06 | Opentv, Inc. | Tiered content streaming |
US10009628B2 (en) | 2013-06-07 | 2018-06-26 | Apple Inc. | Tuning video compression for high frame rate and variable frame rate capture |
KR102209292B1 (ko) | 2015-11-04 | 2021-01-29 | 삼성전자 주식회사 | 멀티미디어 시스템에서 데이터 제공 방법 및 장치 |
JP6168671B1 (ja) * | 2016-03-24 | 2017-07-26 | 株式会社日立国際電気 | 映像切替装置を備えた符号化装置および映像切替検知方法を含む符号化方法 |
US10638192B2 (en) * | 2017-06-19 | 2020-04-28 | Wangsu Science & Technology Co., Ltd. | Live streaming quick start method and system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1132207A (ja) * | 1997-07-10 | 1999-02-02 | Canon Inc | 画像処理装置及びその方法並びにメモリ媒体 |
JP2002217969A (ja) * | 2001-01-23 | 2002-08-02 | Mitsubishi Electric Corp | データ中継装置及びデータ中継方法 |
JP2004158929A (ja) * | 2002-11-01 | 2004-06-03 | Sharp Corp | 動画像処理方法および動画像処理装置ならびに動画像伝送装置 |
JP2006013583A (ja) | 2004-06-22 | 2006-01-12 | Nippon Telegr & Teleph Corp <Ntt> | 符号化ストリーム中継装置、その方法及びプログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR0152772B1 (ko) | 1991-10-10 | 1998-10-15 | 구자홍 | 영상압축에서의 버퍼 제어 방법 및 장치 |
US5758194A (en) * | 1993-11-30 | 1998-05-26 | Intel Corporation | Communication apparatus for handling networks with different transmission protocols by stripping or adding data to the data stream in the application layer |
JP4368482B2 (ja) * | 2000-02-25 | 2009-11-18 | 富士通株式会社 | データ通信システム |
US7133362B2 (en) * | 2001-11-14 | 2006-11-07 | Microsoft Corporation | Intelligent buffering process for network conference video |
JP2003244220A (ja) * | 2002-02-14 | 2003-08-29 | Nippon Telegr & Teleph Corp <Ntt> | 伝送レート制御装置並びに当該装置を含むネットワークシステム及び経路制御装置 |
US20040190607A1 (en) * | 2002-04-03 | 2004-09-30 | Koji Wakimoto | Video relay device, video distribution system, video relay method |
US7542435B2 (en) * | 2004-05-12 | 2009-06-02 | Nokia Corporation | Buffer level signaling for rate adaptation in multimedia streaming |
-
2007
- 2007-03-09 EP EP07738120A patent/EP1995920A4/en not_active Withdrawn
- 2007-03-09 JP JP2008505102A patent/JP4924605B2/ja not_active Expired - Fee Related
- 2007-03-09 KR KR20087021364A patent/KR101166446B1/ko active IP Right Grant
- 2007-03-09 MX MX2008011210A patent/MX2008011210A/es not_active Application Discontinuation
- 2007-03-09 US US12/281,665 patent/US8239901B2/en active Active
- 2007-03-09 BR BRPI0706826-3A patent/BRPI0706826A2/pt not_active IP Right Cessation
- 2007-03-09 RU RU2008135839/09A patent/RU2008135839A/ru not_active Application Discontinuation
- 2007-03-09 WO PCT/JP2007/054635 patent/WO2007105618A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1132207A (ja) * | 1997-07-10 | 1999-02-02 | Canon Inc | 画像処理装置及びその方法並びにメモリ媒体 |
JP2002217969A (ja) * | 2001-01-23 | 2002-08-02 | Mitsubishi Electric Corp | データ中継装置及びデータ中継方法 |
JP2004158929A (ja) * | 2002-11-01 | 2004-06-03 | Sharp Corp | 動画像処理方法および動画像処理装置ならびに動画像伝送装置 |
JP2006013583A (ja) | 2004-06-22 | 2006-01-12 | Nippon Telegr & Teleph Corp <Ntt> | 符号化ストリーム中継装置、その方法及びプログラム |
Non-Patent Citations (4)
Title |
---|
"TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU", ITU-T RECOMMENDATION H. 223, March 1996 (1996-03-01) |
H. SCHULZRINNE ET AL.: "RTP: A Transport Protocol for Real-Time Applications", RFC 3550, July 2003 (2003-07-01), Retrieved from the Internet <URL:<URL:http://www.ietf.org/rfc/rfc3550.txt>> |
H. SCHULZRINNE ET AL.: "RTP: A Transport Protocol for Real-Time Applications", RFC 3550, July 2003 (2003-07-01), Retrieved from the Internet <URL:http://www.ietf.org/rfc/rfc3550.txt>> |
See also references of EP1995920A4 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009154656A1 (en) * | 2008-06-17 | 2009-12-23 | Thomson Licensing | Network abstraction layer (nal)-aware multiplexer with feedback |
WO2010002420A1 (en) * | 2008-07-01 | 2010-01-07 | Thomson Licensing | Network abstraction layer (nal)-aware multiplexer |
US20110158201A1 (en) * | 2008-08-28 | 2011-06-30 | Kyocera Corporation | Radio terminal and communication terminal |
US8412364B2 (en) | 2008-12-25 | 2013-04-02 | Huawei Technologies Co., Ltd. | Method and device for sending and playing streaming data |
CN102440024A (zh) * | 2009-05-29 | 2012-05-02 | 华为技术有限公司 | 用于在无线通信***中进行中继节点流量控制的***和方法 |
CN102440024B (zh) * | 2009-05-29 | 2014-03-05 | 华为技术有限公司 | 用于在无线通信***中进行中继节点流量控制的***和方法 |
CN101951512A (zh) * | 2010-08-24 | 2011-01-19 | 中国科学院深圳先进技术研究院 | 一种直播视频和实时视频的分片转码方法和*** |
CN101951512B (zh) * | 2010-08-24 | 2012-11-28 | 中国科学院深圳先进技术研究院 | 一种直播视频和实时视频的分片转码方法和*** |
JP2012156829A (ja) * | 2011-01-27 | 2012-08-16 | Brother Ind Ltd | 符号化装置、符号化方法、および符号化プログラム |
CN103313122A (zh) * | 2012-03-09 | 2013-09-18 | 联想(北京)有限公司 | 一种数据处理方法及电子设备 |
JP2013247561A (ja) * | 2012-05-28 | 2013-12-09 | Idk Corp | データ中継装置、データ中継方法、データ伝送システムおよびプログラム |
Also Published As
Publication number | Publication date |
---|---|
EP1995920A4 (en) | 2011-11-09 |
BRPI0706826A2 (pt) | 2011-04-05 |
JPWO2007105618A1 (ja) | 2009-07-30 |
RU2008135839A (ru) | 2010-03-10 |
EP1995920A1 (en) | 2008-11-26 |
MX2008011210A (es) | 2008-09-11 |
KR20080102144A (ko) | 2008-11-24 |
US8239901B2 (en) | 2012-08-07 |
JP4924605B2 (ja) | 2012-04-25 |
KR101166446B1 (ko) | 2012-07-19 |
US20090313676A1 (en) | 2009-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101166446B1 (ko) | 버퍼 제어 방법, 중계 장치, 통신 시스템 | |
US7653251B2 (en) | Method, apparatus, system, and program for switching image coded data | |
EP1845691B1 (en) | Media stream relay device and method | |
KR20060111036A (ko) | 약전계 상황을 고려한 이동 통신 단말기에서의 화상 통화서비스 제공 방법 | |
Schierl et al. | 3GPP compliant adaptive wireless video streaming using H. 264/AVC | |
JP5516408B2 (ja) | ゲートウェイ装置と方法とシステム | |
CN101395871A (zh) | 缓冲器控制方法、中继装置、通信*** | |
EP2308215B1 (en) | Thinning of packet-switched video data | |
JP4662085B2 (ja) | 動画像蓄積システム、動画像蓄積方法および動画像蓄積プログラム | |
JP2005244315A (ja) | 映像ストリーミング伝送のネットワーク品質安定化装置 | |
WO2007091207A1 (en) | Providing and handling information on a state of a media stream | |
JP4744457B2 (ja) | 通信方法および通信装置 | |
JP4252017B2 (ja) | 符号化ストリーム中継装置、その方法及びプログラム | |
JP5516409B2 (ja) | ゲートウェイ装置と方法とシステム並びに端末 | |
EP2290978A1 (en) | Server device, communication method, and program | |
Lewcio et al. | A method for seamless codec changeover during active video calls | |
JP2006074555A (ja) | マルチメディアゲートウェイにおける音声・動画調整方式 | |
WO2007031924A2 (en) | Video telephone system, video telephone terminal, and method for video telephoning | |
Wu et al. | MPEG-4 video transport over the Internet: A summary | |
JP2002141944A (ja) | データ送信装置、およびデータ送信方法、並びにプログラム記憶媒体 | |
Brangoulo et al. | Video transmission over UMTS networks using UDP/IP | |
JP2005094305A (ja) | 画像符号化装置 | |
KR20040064968A (ko) | 영상전화 시스템의 픽쳐타입 손실 대응 복호화 방법 | |
KR20040064969A (ko) | 영상전화 시스템의 영상 포맷 손실 대응 복호화 방법 | |
KR20040064970A (ko) | 영상전화 시스템의 픽쳐타입 손실 대응 복호화 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07738120 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2008505102 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007738120 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020087021364 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: MX/a/2008/011210 Country of ref document: MX |
|
ENP | Entry into the national phase |
Ref document number: 2008135839 Country of ref document: RU Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 200780007950.5 Country of ref document: CN |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12281665 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: PI0706826 Country of ref document: BR Kind code of ref document: A2 Effective date: 20080821 |