US 8407552 Method based on error corrector codes, applicable to a variable rate multimedia datastream

ABSTRACT – A method and apparatus are provided for creating a matrix for correcting errors of transmission of multimedia data packets at a non-constant rate between a sender terminal and at least one receiver terminal. The multimedia data packets constitute elements of the correction matrix. The correction matrix has dimensions that are determined as a function of a maximum rate of the multimedia data packets at the input of the sender terminal, and the multimedia data packets are placed in the correction matrix at regular time slots. A noted absence of any multimedia data packets for a given time slot is represented in the correction matrix by an empty location.

FIELD OF THE DISCLOSURE

The disclosure lies in the field of telecommunications, and more particularly in the field of the transmission of multimedia data streams.

BACKGROUND OF THE DISCLOSURE

In a communication network of packet type, such as an IP (Internet Protocol) network for example, the transmission of multimedia data streams, taking the form of multimedia data packets, between a sender terminal emitting a multimedia data stream and one or more receiver terminals may be impaired in the event of malfunction of equipment belonging to the network (such as routers), of disruption of transmission, etc. This impairment is manifested by the loss of one or more multimedia data packets exchanged between the sender terminal and the receiver terminal, which loss gives rise to a degradation in the quality of service.

A mechanism is known for correcting errors occurring during the transmission of multimedia data packets, which regenerates at the level of the receiver terminal lost multimedia data packets with the aid of correction data packets. This is the so-called error correction or Forward Error Correction (FEC) technique. An exemplary implementation of such a technique is defined in the document Code of Practise #3 release 2 from the Pro MPEG (Moving Picture Experts Group) Forum.

Such a mechanism is used in particular when the receiver terminal has no return pathway for communication with the sender terminal. Indeed, in this case the use of a retransmission protocol such as the TCP/IP (Transmission Control Protocol/Internet Protocol) or RTP/RTCP (Real-time Transport Protocol/Real-time Transport Control Protocol) protocols is impossible.

Indeed, in such a configuration the receiver terminal cannot inform the sender terminal of the non-receipt of certain multimedia data packets, thus prohibiting any resending of the lost packets. Such is the case with streams of multimedia data packets broadcast to a plurality of receiver terminals able to receive them, an example may be DTT (Digital Terrestrial Television) streams.

A scheme based on error correcting codes such as the one proposed by the Pro MPEG Forum consists, at the sender terminal level, in creating a transmission errors correction matrix. The multimedia data packets are placed in the correction matrix as they are generated, each multimedia data packet being identified by a sequence number stored in its RTP header. Two multimedia data packets generated consecutively, and therefore adjacent in the correction matrix, are identified by two consecutive sequence numbers.

Once the correction matrix has been completed, correction data packets are generated on the basis of groups of multimedia data packets. Such groups correspond, for example, to multimedia data packets constituting rows or columns of the correction matrix.

The correction data packets thus generated form a redundancy of the data of the multimedia data packets constituting the groups of multimedia data packets on the basis of which they are generated.

Such correction data packets also comprise information making it possible to reconstruct the correction matrix at the level of the receiver terminal.

The multimedia data packets and the correction data packets are thereafter sent to the receiver terminal or terminals. These two types of data packets form the subject of different data streams so as to allow receiver terminals which are not able to implement this error corrector based scheme to be able nevertheless to utilize the stream of multimedia data packets.

It is therefore necessary to reserve additional bandwidth so as to ensure the forwarding of the correction data packets, the stream of these packets generating an overhead.

Such an overhead is fixed as a function of the size of the correction matrix. The overhead engendered by the stream of correction data packets is defined by the ratio between the number of multimedia data packets constituting the correction matrix and the correction data packets associated with this same correction matrix. The dimensions of the correction matrix being fixed, the value of the overhead is constant.

On receipt of the multimedia data packets and correction data packets, the receiver terminal reconstructs the correction matrix. Each multimedia data packet received is placed in the correction matrix thus reconstructed at the location which it had in the original correction matrix by means of its sequence number and of additional information contained in the correction data packets.

The loss of a multimedia data packet is manifested in the reconstructed correction matrix by an empty location just where the lost multimedia data packet ought to be situated. The lost multimedia data packet is reconstructed with the aid of one or more correction data packets corresponding to the row and/or the column of the original correction matrix to which the lost multimedia data packet belongs.

Such a scheme applies mainly to constant rate or CBR (Constant Bit Rate) streams of multimedia data packets. The multimedia data packet stream rate being constant, the dimensions of the correction matrix, which are defined as a function of this rate, are constant, the correction matrix is consequently a matrix of fixed size. In an indicative case such as this, the duration necessary to generate the correction data packets, which duration corresponds to the duration necessary to complete the correction matrix, and to carry out the correction of the multimedia data packet stream received by the receiver terminal, is constant. Likewise, the latency introduced by the application of this scheme to correct a multimedia data stream is constant. The maximum number of lost multimedia data packets exhibiting consecutive sequence numbers which can be corrected by applying this scheme is also constant.

When the scheme based on error correcting codes is applied to non-constant rate or VBR (Variable Bit Rate) multimedia data streams, the dimensions of the correction matrix are determined as a function of the mean rate of the multimedia data packet stream for example. The dimensions of the correction matrix then remain fixed until the end of transmission of the stream of multimedia data packets. Likewise, the value of the overhead engendered by the stream of correction data packets is constant.

When the multimedia data packet stream rate varies, the correction matrix is, in most cases, either under-dimensioned or overdimensioned with respect to the actual value of the multimedia data packet stream rate.

In the indicative case where the correction matrix is under-dimensioned with respect to the multimedia data packet stream rate, the number of rows of the matrix is less than the maximum number of consecutively generated multimedia data packets which must be able to be corrected for such a multimedia data packet stream rate. Thus when a number of multimedia data packets is equal to the maximum number of consecutively generated multimedia data packets that can be corrected, these multimedia data packets occupy more than one row of the correction matrix. If all these multimedia data packets are lost during transmission, as they occupy more than one row of the correction matrix, certain columns of the correction matrix exhibit more than one empty location. It then becomes impossible for these columns to regenerate the lost multimedia data packets with the aid of the correction data packets.

This gives rise to a loss of effectiveness of the correction applied with a view to regenerating the multimedia data packets lost during transmission since it is not possible to regenerate them all.

In the indicative case where the correction matrix is over-dimensioned with respect to the multimedia data packet stream rate, the duration of filling of a matrix is longer than if the dimensions of the correction matrix were tailored to the multimedia data packet stream rate. Thus the time needed for the application of the scheme based on error corrector codes is, in most cases, much longer with an overdimensioned matrix than with a matrix tailored to the multimedia data packet stream rate.

This increase in the time needed for the application of the scheme based on error corrector codes is incompatible with the quality of service requirements of services for broadcasting audiovisual data streams, such as the time interval needed by a user receiving the streams of multimedia data packets to switch from one stream to another.

Thus, it is apparent that the application of the scheme based on error correcting codes to a multimedia data stream with non-constant rate gives rise to loss of effectiveness of correction and an increase in the processing time intervals which are prejudicial to the quality of the service delivered to the users receiving the streams of multimedia data packets. Such drawbacks make the use of this scheme unsuitable for correcting multimedia data packet streams at non-constant rate.

With multimedia data packet stream broadcasting at non-constant rate tending to expand, there consequently exists a growing requirement among telecommunications operators for a scheme based on error correcting codes allowing the processing of multimedia data streams at non-constant rate which does not exhibit such drawbacks.

SUMMARY

An aspect of the disclosure relates to a method of creating a matrix for correcting errors of transmission of multimedia data packets at non-constant rate between a sender terminal and at least one receiver terminal, said multimedia data packets constituting elements of said correction matrix.

Such a method of creating a matrix for correcting transmission errors is particular in that the correction matrix has dimensions which are determined as a function of a maximum rate of said multimedia data packets at the input of said sender terminal, and in that said multimedia data packets are placed in the correction matrix at regular time slots, a noted absence of any multimedia data packets for a given time slot being represented in said correction matrix by an empty location.

By dimensioning the correction matrix as a function of the maximum rate that can be attained by the multimedia data packets at the input of the sender terminal, so that said matrix exhibits a fixed size whatever the actual rate of the multimedia data packets, the ability to process all the multimedia data packets to be sent is ensured. The multimedia data packets are generated by a sending device, such as a video stream encoder. The output of this device for sending the stream of multimedia data packets is connected as input to the sender terminal.

In order to take rate fluctuations into account, the multimedia data packets are placed in the matrix at regular time slots. The duration of this time slot must be less than or equal to the duration separating the receipt by the receiver terminal of two multimedia data packets sent consecutively by the sending device when the rate at the input of the sender terminal is a maximum. Thus, at each time slot a multimedia data packet is placed in the correction matrix. If in the course of a time slot, no multimedia data packet is generated, the location provided in the correction matrix for this multimedia data packet is left empty. One proceeds in this way until the correction matrix is completely filled. The correction matrix thus obtained is termed a “voids matrix” since the absence of multimedia data packets results in an empty hole in the correction matrix.

By dimensioning the matrix as a function of the maximum rate of the multimedia data packets and by taking into account the variations of this rate during the creation of the matrix, everything happens as if the stream of processed data packets had a constant rate. Such a method makes it possible, consequently, to apply the error correcting codes scheme to a stream of multimedia data packets at non-constant rate without being confronted with the drawbacks of the prior art.

According to a particular feature of the creation method which is the subject of an embodiment of the invention, it comprises a step of generating correction data packets on the basis of said multimedia data packets placed in said correction matrix, and a step of sending at least one message comprising at least one of said correction data packets and an indication about the empty locations and an indication about the location of said multimedia data packets in the correction matrix.

Such a message consists of one or more correction data packets. The indications about the location of the empty locations in the correction matrix as well as the indications about the location of the multimedia data packets in the correction matrix are contained in the header of the correction data packets constituting the second message.

According to a particular feature of the creation method which is the subject of an embodiment of the invention, it comprises a step of generating correction data packets on the basis of said multimedia data packets placed in said correction matrix, a step of sending at least one first message comprising at least one of said correction data packets and an indication about the empty locations in the correction matrix and a step of sending at least one second message comprising at least one of said multimedia data packets and an indication about the location of said at least one multimedia data packet in the correction matrix.

Such a second message consists of one or more multimedia data packets. The indications about the location of the multimedia data packets in the correction matrix are contained in the header of the packets of these multimedia data.

In this embodiment, the first message now comprises only the correction data packets and the indications about the location of the empty locations in the correction matrix.

The implementation of this embodiment gives rise to a modification of the RTP header of the multimedia data packets.

According to another particular feature of the method of creating a correction matrix which is the subject of an embodiment of the invention, when several multimedia data packets are sent in one and the same time slot, said multimedia data packets are placed simultaneously in adjacent locations of the correction matrix.

This characteristic makes it possible to manage the sending of multimedia data packets in bursts. Such a situation arises when there is a sudden variation in the rate of the multimedia data packets.

An embodiment of the invention also relates to a method of reconstructing a matrix for correcting errors of transmission of multimedia data packets at non-constant rate between a sender terminal and at least one receiver terminal, said method comprising a step of placing said multimedia data packets so as to reconstruct said correction matrix.

Such a method of reconstructing a correction matrix comprises, prior to the placing step, a step of reception by said receiver terminal of at least one message comprising an indication about the location of the multimedia data packets and an indication about empty locations corresponding to an absence of multimedia data packets in the correction matrix.

According to a particular feature of the reconstruction method which is the subject of an embodiment of the invention, said message received also comprises at least one correction data packet, said correction data packet being generated on the basis of the multimedia data packets sent by the sender terminal.

According to another particular feature of the reconstruction method which is the subject of an embodiment of the invention, during the reception step, the receiver terminal receives a first message comprising at least one correction data packet, said correction data packet being generated on the basis of the multimedia data packets sent by the sender terminal, and an indication about the empty locations in the correction matrix, and a second message comprising at least one of said multimedia data packets and an indication about the location of said at least one multimedia data packet in the correction matrix.

With the aid of the information contained in the message or messages, as well as of the dimensions of the correction matrix, the receiver terminal is capable of reconstructing the correction matrix. The dimensions of the correction matrix are known to the receiver terminal by reading the header of the correction data packets in accordance with what is defined in the Code of Practise #3 release 2.

Once it has identified the empty elements corresponding to multimedia data packets lost by detecting a sequence break in the sequence numbers identifying the multimedia data packets and with the aid of the indications about the empty locations, the receiver terminal undertakes their reconstruction with the aid of the correction data packets. The benefit of these first and second messages sent following the creation of the correction matrix is therefore seen.

An embodiment of the invention also relates to a sender terminal emitting multimedia data packets at non-constant rate, said sender terminal comprising means for creating a matrix for correcting errors of transmission of the multimedia data packets between said sender terminal and at least one receiver terminal, said multimedia data packets constituting elements of said correction matrix.

Such a sender terminal is particular in that it comprises, furthermore, means for determining the dimensions of the correction matrix as a function of a maximum rate of said multimedia data packets, and means for placing said multimedia data packets in the correction matrix at regular time slots, the absence of data packets resulting in an empty location in said correction matrix.

An embodiment of the invention also relates to a receiver terminal receiving multimedia data packets at non-constant rate, said receiver terminal comprising means for reconstructing a matrix for correcting errors of transmission of said multimedia data packets between a sender terminal and said receiver terminal, said receiver terminal also comprising means for placing said multimedia data packets so as to reconstruct said correction matrix.

Such a receiver terminal is particular in that it comprises, furthermore, means for receiving at least one first message comprising an indication about the location of the multimedia data packets, and an indication about empty locations corresponding to an absence of multimedia data packets in the correction matrix.

An embodiment of the invention further relates to a first signal intended to be transmitted between a sender terminal and at least one receiver terminal. Such a first signal is a carrier bearing a message comprising an indication about a location of elements and an indication about empty locations corresponding to an absence of elements in a matrix for correcting errors of the transmission of multimedia data packets at non-constant rate between the sender terminal and the receiver terminal, said multimedia data packets constituting the elements of said correction matrix.

 

Related Posts