US6792470B2 - Method and apparatus for communicating with data frames having priority levels - Google Patents

Method and apparatus for communicating with data frames having priority levels Download PDF

Info

Publication number
US6792470B2
US6792470B2 US09/796,759 US79675901A US6792470B2 US 6792470 B2 US6792470 B2 US 6792470B2 US 79675901 A US79675901 A US 79675901A US 6792470 B2 US6792470 B2 US 6792470B2
Authority
US
United States
Prior art keywords
data
frame
priority
frames
threshold value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime, expires
Application number
US09/796,759
Other versions
US20020004838A1 (en
Inventor
Rolf Hakenberg
Carsten Burmeister
Thomas Wiebke
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sovereign Peak Ventures LLC
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=8168014&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=US6792470(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Assigned to MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD. reassignment MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BURMEISTER, CARSTEN, HAKENBERG, ROLF, WIEBKE, THOMAS
Publication of US20020004838A1 publication Critical patent/US20020004838A1/en
Priority to US10/633,574 priority Critical patent/US6877038B2/en
Application granted granted Critical
Publication of US6792470B2 publication Critical patent/US6792470B2/en
Priority to US11/068,751 priority patent/US20050144643A1/en
Assigned to PANASONIC CORPORATION reassignment PANASONIC CORPORATION CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD.
Assigned to SOVEREIGN PEAK VENTURES, LLC reassignment SOVEREIGN PEAK VENTURES, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: PANASONIC CORPORATION
Assigned to SOVEREIGN PEAK VENTURES, LLC reassignment SOVEREIGN PEAK VENTURES, LLC CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE ADDRESS PREVIOUSLY RECORDED ON REEL 048829 FRAME 0921. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Assignors: PANASONIC CORPORATION
Adjusted expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1671Details of the supervisory signal the supervisory signal being transmitted together with control information
    • H04L1/1678Details of the supervisory signal the supervisory signal being transmitted together with control information where the control information is for timing, e.g. time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1854Scheduling and prioritising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1887Scheduling and prioritising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2404Monitoring of server processing errors or hardware failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2408Monitoring of the upstream path of the transmission network, e.g. client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols

Definitions

  • the present invention relates to a data transmission method and apparatus and more particularly to video streaming applications.
  • video and multimedia communications many applications exist in which video streams are delivered over non-reliable channels. Examples of such applications include personal computers, TV apparatus and computer cards, MPEG decoders and boards, multimedia transceiver systems and set-top receiver units, DVD devices, video recorders and CCD cameras, video signal equipment, frame grabbers and image capture boards, industrial and medical imaging products, video printers and projectors, or the like. It will therefore be appreciated that many kinds of video streaming applications in the consumer market as well as professional applications exist both in software and hardware.
  • a video stream consists of a flow of bit-packets called frames that contain information about the video picture itself as well as some meta information such as time stamps.
  • the frames contain the video information in different formats depending on the video compression. Some of these frames can be used independently, so-called intra-coded frames or I-frames, while others depend on the preceding frame, so-called predictive-coded frames or P-frames.
  • FIG. 1 illustrates a conventional video streaming system.
  • Video server 110 transmits video data through channel 150 to video client 160 .
  • the video server 110 includes a transmitter buffer unit 130 which receives video frames with nearly no delay from video source application 120 .
  • the bit rate of this internal transmission is only limited by the video source application's bit rate.
  • the frames first undergo segmentation, i.e. splitting data packets by lower layer protocols into smaller segments with the number of segments depending on the length of the packet, which is variable and may for instance amount to 200 or 2,000 byte. This segmentation determines one part of the transmission time for the respective packet.
  • the segments are sent on the channel in defined time slots according to the available channel bit rate.
  • unreliable channels 150 bit errors occur and the available channel bit rate varies in time, if the channel is shared by multiple users. This leads to a significant and variable propagation delay.
  • Access to the channel 150 is given to the transmitter buffer unit 130 by channel access controller 140 .
  • the bit rate of channel 150 is lower than the bit rate of the video stream received from video source application 120 , those segments which could not be sent are buffered by the transmitter buffer unit 130 in a first-in-first-out (FIFO) queuing discipline.
  • the transmission buffer unit and the channel access controller are isolated entities and totally independent from the video application. Hence, the video source application 120 does not receive any feedback about the status of the frames as to whether they are already sent or whether they are buffered. All data will be sent by the transmitter buffer unit 130 in the order it arrived.
  • the segments or PDUs (protocol data units) transmitted by the video server 110 are received by the video client 160 in a receiver buffer unit 170 .
  • the receiver buffer unit 170 includes a buffer for storing the received data, and also reassembles the frames from the segments.
  • the video frames are then sent to video display application 180 which might for example likewise be a storage device or the like.
  • the first problem is that because of changes in the channel condition, the bit error rate may increase such that packet loss occurs. Since compressed video streams are extremely susceptible for packet loss, the video quality is decreased dramatically.
  • the second problem may arise from the variable and sometimes very high delay of the video data which might lead to situations in which the delay requirements for the transmission are no longer fulfilled and the video performance again is decreased dramatically.
  • ARQ automatic repeat request
  • RTP Real-Time Transport Protocol
  • this protocol adds some information to the video frames such as time stamps and sequence numbers, encapsulated in RTP packets. This information is used to send the video frames at the right time and in correct sequence.
  • the receiver may perform some measurements, e.g. of delay jitter, and may signal the results to the source by means of the RTP control protocol (RTCP).
  • One approach to deal with both problems is to improve the RTP technique such that only the I-frames are retransmitted and that before sending any frame a judgement is made whether the retransmitted I-frame would still arrive in time.
  • Such integration of retransmission mechanisms in the RTP technique can be for instance done by using multi-purpose acknowledgement (MACK) packets which can be extended by protocol-specific fields.
  • MACK multi-purpose acknowledgement
  • the delay is kept in a reasonable range by discarding “old” frames, i.e. frames that would be received after expiration of their display time.
  • retransmission of lost data frames is performed based on a comparison of the priority level of the frame with a threshold value.
  • a threshold value This goes beyond the teaching of the prior art in that not only I-frames may be retransmitted. Consequently, by providing a priority threshold, the invention allows for adapting the transmission capability to a number of factors including actual channel properties.
  • the priority level of any data frame to be transmitted is compared with the threshold value. With the invention it is therefore possible to increase the video quality even when the priority threshold value is fixed.
  • the invention is therefore in particular advantageous when applied to compressed video (e.g. MPEG-4) streaming transmissions over unreliable (e.g. wireless) links.
  • compressed video e.g. MPEG-4
  • unreliable e.g. wireless
  • Comparing the priority level of the missing data frame with a threshold value and transmitting the frame on the basis of the comparison result may advantageously be performed at the server side as well as the client side. If the decision is made in the client there is no need to send retransmission requests in those cases where the decision is denied, but the priority of the actual frame has to be transmitted. This leads to a most efficient use of the channel bandwidth in uplink direction, however the transmitted data in downlink direction is slightly increased. On the other hand, when the transmission decision is done on the server side, the server receives feedback information which might be valuable. Moreover, the client would advantageously be more inexpensively constructed.
  • the server would be in the position to most efficiently update his knowledge about the channel state, keep the delay requirements and use the channel bandwidths.
  • priority levels are assigned to the data frames preferably based on the logical depth of multidependency. By this measure it is incidentally taken into consideration that those frames which are independent (I-frames) are the most important frames, whereas dependent frames are less important. Moreover, in contrast to the prior art, even the group of dependent frames is divided into more important and less important frames. This allows for fine tuning the retransmission behaviour to an extent which is not known from the prior art.
  • Another advantage of the present invention is that the improvement of the video quality may be increased by making the transmission decision dynamically. This is done according to a preferred embodiment of the invention by calculating the priority threshold value based on the measured available channel bandwidth. Additionally, the measured sending bit rate may be used. Consequently, the compensation for missing packets may be improved once again.
  • the invention may be combined with the requirement that a lost frame is retransmitted only when it is expectable that the retransmitted frame will still arrive in time.
  • the channel bandwidth is shared between several users or applications it is very important to transmit as little data as possible. This is true in particular because the user might pay for the used bandwidth, i.e. the transmitted bits. If there are video packets retransmitted which would not reach the receiver in time because of the high utilization of the channel, bandwidth is wasted. This bandwidth could be used either for the retransmission of frames which have a higher priority or by other users or applications.
  • FIG. 1 is a prior art video streaming system
  • FIG. 2 is a video streaming system according to a preferred embodiment of the invention.
  • FIG. 3 is a graph illustrating the priority assignment to the frames according to the preferred embodiment of the invention.
  • FIG. 4 is a flow chart illustrating the process of sending a video stream
  • FIG. 5 is a flow chart illustrating the retransmission decision in the process of sending a video stream as depicted in FIG. 4;
  • FIG. 6 is a flow chart illustrating a first example of the priority decision being part of the retransmission decision depicted in FIG. 5;
  • FIG. 7 is a flow chart illustrating a second example of the priority decision
  • FIG. 8 is a flow chart illustrating a third example of the priority decision.
  • FIG. 9 is a flow chart illustrating the process of receiving a video stream.
  • the video server 110 includes a video source application 120 , a transmission buffer unit 130 and a channel access controller 140 which function substantially as described in the context of the prior art video streaming system of FIG. 1 .
  • the video client 160 includes a receiver buffer unit 170 and a video display application 180 . Data are sent from the video server 110 to the video client 160 through channel 150 .
  • the video client 160 further comprises loss detection unit 240 , which is connected to the receiver buffer unit 170 .
  • the loss detection unit 240 detects that a frame is missing, it generates a retransmission request which preferably includes the reception times and frame lengths of two preceding data frames. For this purpose, the loss detection unit 240 stores during normal operation the time stamp and length of the most recent two packets.
  • the retransmission request has been generated, which might be a negative acknowledgement (NACK) or a multi-purpose acknowledgement (MACK) packet, the request undergoes segmentation by transmitter buffer unit 250 and is sent under control of channel access controller 260 through channel 150 to video server 110 .
  • NACK negative acknowledgement
  • MACK multi-purpose acknowledgement
  • receiver buffer unit 230 receives the data and reassembles the request. The request is then forwarded to control unit 210 , and to the retransmission buffer 220 .
  • the retransmission buffer buffers the I- and P-frames sent from the video source application 120 to the transmitter buffer unit 130 for retransmission purposes.
  • the control unit 210 upon receiving the time and length information of the two most recent packets, updates the priority thresholds.
  • the control unit 210 upon receiving the time and length information of the two most recent packets, updates the priority thresholds.
  • receives video frames from the video source application 120 or the retransmission buffer 220 it performs the transmission decision on the basis of the priority levels assigned to the data frames.
  • the assignment of priorities to frames is illustrated in more detail in FIG. 3 .
  • I-frames have been given the highest priority since an I-frame can be displayed by video display application 180 independently from other frames.
  • the first P-frame which closely follows the I-frame depends only on the preceding I-frame.
  • the second P-frame depends on the first P-frame, and since the first P-frame depends on the I-frame, the second P-frame is two-fold dependent and therefore less important than the first P-frame.
  • This scheme may be adopted for the following P-frames so that P-frames with higher depth of multidependency, i.e. later P-frames, are more unimportant and are therefore given the lower priority levels.
  • the priority is set to 1/n for the n-th P-frame. It will however be appreciated by those of ordinary skill in the art that another functional dependency may be chosen.
  • the process of sending a video stream includes the step of receiving a video frame from the video source application 120 (step 410 ). Then it is checked in step S 420 whether a retransmission request has been received. If no retransmission request has been received, the process proceeds with step S 440 , otherwise the information from the retransmission request is used to update the channel estimation first (step S 430 ). In step S 440 the transmission decision is made, which will be described in detail in the next figures.
  • the transmission time of a frame consists of two parts. One part is independent of the length of the frame, whereas the other part is length dependent.
  • the frame-length independent time consists mainly of the network delay, i.e. the propagation delay, and the buffering delay due to congestion. In contrast, the frame-length dependent delay is determined by the segmentation and the available bandwidth. The following equation describes the transmission delay of frame i:
  • D i is the transmission delay
  • l i is the frame length in bits
  • t 1 is the frame-length independent time 1
  • t 2 is the frame-length dependent time per bit.
  • loss detection unit 240 stores the reception times and packet lengths of the most recent frames. If an error occurs, these values and the values of the missing or erroneously received frame are transmitted to the video server 110 . This can be done either by attaching a Receiver Report to the NACK packet or by using a MACK packet. The overhead added by supplementing the NACK or MACK packet with such additional information is negligibly small.
  • step S 440 If it is decided in step S 440 that the frame should be discarded, the process proceeds with step S 460 . If the frame should be sent to the transmission buffer 130 , step S 450 is executed. Then the sending bit rate is updated in step S 470 and the control unit 210 will wait for the next frame to receive from the video source application 120 or the retransmission buffer 220 (step S 410 ).
  • step S 440 Before comparing the priority with a threshold value, a mechanism is introduced to decide whether the frame should be sent or discarded according to an estimated arrival time since it is not necessary to send frames that are already too late. For that purpose, the arrival time of the frame is estimated, i.e. the transmission delay is calculated in step S 510 .
  • control unit 210 evaluates the priority of the missing frame as will be now explained in more detail.
  • control unit 210 first obtains the priority level of the frame in step S 610 , and then accesses the fixed threshold level in step S 620 .
  • the fixed threshold levels have been defined at the time of transmission set-up according to the channel condition and video bit rate at that time. It is then decided in step S 630 whether the priority level of the frame exceeds the priority threshold level. Only if this is the case, the frame is transmitted. Otherwise, it is decided to discard the frame.
  • FIG. 7 differs from that of FIG. 6 mainly in that not a fixed threshold level is used but that the priority threshold is calculated based on the measured available channel bandwidth (steps S 710 , S 720 ). This scheme is based on the idea that, if only a small bandwidth of the channel is available, it might be better to send frames with higher priority only.
  • B v is the bandwidth needed for the video transmission if no retransmissions are performed at all
  • l and k is a factor to adapt the mechanism to the system and the bit error rate which is assumed to be fixed for the transmission.
  • Yet another improvement of the priority decision process may be achieved as illustrated in FIG. 8 by additionally measuring the bit rate of the sent frames in step S 810 .
  • This improvement is based on the discovery that with bad channel conditions, i.e. high bit error rates, the number of frames to be retransmitted increases. It is therefore advantageous to monitor the amount of data that was sent to ensure that enough channel bandwidth is reserved to transmit at least the important frames.
  • B s is the bit rate of the sent frames
  • p and q denote the oldest and the most recently sent frames
  • l j , t q and t p are the previously stored lengths in bits and transmission times of the respective frames.
  • FIG. 9 illustrates the process of receiving a video stream in video client 160 .
  • a retransmission request is generated and transmitted in steps S 930 and S 940 as described above.
  • the retransmission decision is performed by control unit 210 of video server 110 , it will be appreciated by the skilled person that the decision whether a missing frame is to be retransmitted may likewise be performed at the receiver.
  • the video client 160 would comprise a control unit (not shown) for calculating the priority threshold value and comparing the priority level of the missing frame with the threshold value.
  • a retransmission request would be sent from video client 160 to the video server 110 .
  • the retransmission decision step S 440 illustrated in FIGS. 5 to 8 , would then be incorporated into the process of receiving the video stream in FIG. 9 prior to the step S 930 of generating a retransmission request.

Abstract

The invention relates to a method and apparatus for transmitting and receiving video data arranged in data frames forming a data stream. Each frame has assigned a priority level. Once a data frame has been transmitted through an unreliable channel and has not been received at the receiver, the priority level of the missing data frame is compared with a priority threshold value, and is then retransmitted if its priority level is greater than the priority threshold value. The retransmission decision is performed either at the transmitting or at the receiving side. According to a preferred embodiment, the priority level of any data frame to be transmitted is compared with the threshold value. The priority decision may involve the calculation of the priority threshold value based on a measurement of the available channel bandwidths and eventually on the bit rate of previously sent frames. The retransmission decision further may include an estimation of the arrival time of the data frame to be retransmitted.

Description

The present invention relates to a data transmission method and apparatus and more particularly to video streaming applications.
In video and multimedia communications many applications exist in which video streams are delivered over non-reliable channels. Examples of such applications include personal computers, TV apparatus and computer cards, MPEG decoders and boards, multimedia transceiver systems and set-top receiver units, DVD devices, video recorders and CCD cameras, video signal equipment, frame grabbers and image capture boards, industrial and medical imaging products, video printers and projectors, or the like. It will therefore be appreciated that many kinds of video streaming applications in the consumer market as well as professional applications exist both in software and hardware.
A video stream consists of a flow of bit-packets called frames that contain information about the video picture itself as well as some meta information such as time stamps. The frames contain the video information in different formats depending on the video compression. Some of these frames can be used independently, so-called intra-coded frames or I-frames, while others depend on the preceding frame, so-called predictive-coded frames or P-frames.
FIG. 1 illustrates a conventional video streaming system. Video server 110 transmits video data through channel 150 to video client 160. For this purpose, the video server 110 includes a transmitter buffer unit 130 which receives video frames with nearly no delay from video source application 120. The bit rate of this internal transmission is only limited by the video source application's bit rate. In the transmitter buffer unit 130 the frames first undergo segmentation, i.e. splitting data packets by lower layer protocols into smaller segments with the number of segments depending on the length of the packet, which is variable and may for instance amount to 200 or 2,000 byte. This segmentation determines one part of the transmission time for the respective packet.
Once the frames have undergone segmentation the segments are sent on the channel in defined time slots according to the available channel bit rate. In unreliable channels 150 bit errors occur and the available channel bit rate varies in time, if the channel is shared by multiple users. This leads to a significant and variable propagation delay.
Access to the channel 150 is given to the transmitter buffer unit 130 by channel access controller 140. As the bit rate of channel 150 is lower than the bit rate of the video stream received from video source application 120, those segments which could not be sent are buffered by the transmitter buffer unit 130 in a first-in-first-out (FIFO) queuing discipline. The transmission buffer unit and the channel access controller are isolated entities and totally independent from the video application. Hence, the video source application 120 does not receive any feedback about the status of the frames as to whether they are already sent or whether they are buffered. All data will be sent by the transmitter buffer unit 130 in the order it arrived.
The segments or PDUs (protocol data units) transmitted by the video server 110 are received by the video client 160 in a receiver buffer unit 170. The receiver buffer unit 170 includes a buffer for storing the received data, and also reassembles the frames from the segments. The video frames are then sent to video display application 180 which might for example likewise be a storage device or the like.
Two main problems occur in video transmissions over unreliable links. The first problem is that because of changes in the channel condition, the bit error rate may increase such that packet loss occurs. Since compressed video streams are extremely susceptible for packet loss, the video quality is decreased dramatically. The second problem may arise from the variable and sometimes very high delay of the video data which might lead to situations in which the delay requirements for the transmission are no longer fulfilled and the video performance again is decreased dramatically.
For reducing the packet loss several mechanisms exist in the prior art. One of these mechanisms is a method called automatic repeat request (ARQ), according to which the loss of a packet is detected in the receiver and the transmitter is informed accordingly. The transmitter then automatically repeats the transmission of the lost packet so that missing video frames are retransmitted. However, not all of the lost packets can be retransmitted because of the delay requirements and/or limited bandwidth of the transport channel. Moreover, such prior art systems lead to a higher delay which might not be tolerable in any case.
A prior art system for overcoming the second problem, i.e. the occurrence of a variable and sometimes very high channel delay, is called Real-Time Transport Protocol (RTP). To control the display times and cope with the real time requirements, this protocol adds some information to the video frames such as time stamps and sequence numbers, encapsulated in RTP packets. This information is used to send the video frames at the right time and in correct sequence. The receiver may perform some measurements, e.g. of delay jitter, and may signal the results to the source by means of the RTP control protocol (RTCP).
One approach to deal with both problems, i.e. packet loss and channel delay, is to improve the RTP technique such that only the I-frames are retransmitted and that before sending any frame a judgement is made whether the retransmitted I-frame would still arrive in time. Such integration of retransmission mechanisms in the RTP technique can be for instance done by using multi-purpose acknowledgement (MACK) packets which can be extended by protocol-specific fields. By restricting retransmission to I-frames and introducing a timer-based judgement for deciding whether to send a frame or to discard it, both problems are addressed, leading to an increased video quality because more frames can be displayed. The delay is kept in a reasonable range by discarding “old” frames, i.e. frames that would be received after expiration of their display time.
Such systems however, would have a significant degree of inadaptability because the retransmissions are limited to the I-frames even when enough free bandwidth is available to retransmit all frames. In certain channel conditions many correctly received P-frames are discarded at the video client, because the preceding P-frame was not received correctly.
Moreover, such techniques perform poorly because frames are sent which should have been discarded and vice versa. This is because the judgement whether to send a frame or to discard it is based on a fixed estimated transmission time which is set at the beginning of the transmission for every packet and is the same for all the packets, being independent of the channel status and the respective packet length. The fixed estimated transmission time is needed to calculate the time at which the frame would be received.
A similar method for selectively retransmitting missing data packets of a data stream is disclosed in U.S. Pat. No. 5,918,002. Retransmission is prioritized based on data types of the data packets. For example, since parent I-frames are needed to render dependent child P-frames, data packets which include I-frames are assigned higher priority for transmission and/or retransmission over data packets which include only P-frames. Moreover, the sequence of retransmission requests is priority-dependent.
Another technique which is concerned with resuming playback taking into consideration the different importance of I- and P-frames is disclosed in U.S. Pat. No. 5,784,527.
In U.S. Pat. No. 5,768,527 it is disclosed that upon detection of a lost packet the client device requests a number of multiple copies of the lost packet, with said number depending on the importance of the lost frame.
The mentioned prior art, however, leads to the above-described disadvantages when transmitting video data through an unreliable channel, that is, a reduced video stream quality due to a restricted capacity and because the prior art techniques may use the channel bandwidth inefficiently.
It is therefore the object of the invention to provide a method and an apparatus for receiving and transmitting video data forming a data stream leading to increased video quality when being operated on an unreliable channel.
This object is solved according to the invention as defined in the independent claims.
According to the invention, retransmission of lost data frames is performed based on a comparison of the priority level of the frame with a threshold value. This goes beyond the teaching of the prior art in that not only I-frames may be retransmitted. Consequently, by providing a priority threshold, the invention allows for adapting the transmission capability to a number of factors including actual channel properties. According to a preferred embodiment, the priority level of any data frame to be transmitted is compared with the threshold value. With the invention it is therefore possible to increase the video quality even when the priority threshold value is fixed.
The invention is therefore in particular advantageous when applied to compressed video (e.g. MPEG-4) streaming transmissions over unreliable (e.g. wireless) links.
Comparing the priority level of the missing data frame with a threshold value and transmitting the frame on the basis of the comparison result may advantageously be performed at the server side as well as the client side. If the decision is made in the client there is no need to send retransmission requests in those cases where the decision is denied, but the priority of the actual frame has to be transmitted. This leads to a most efficient use of the channel bandwidth in uplink direction, however the transmitted data in downlink direction is slightly increased. On the other hand, when the transmission decision is done on the server side, the server receives feedback information which might be valuable. Moreover, the client would advantageously be more inexpensively constructed.
Preferred embodiments of the invention are defined in the dependent claims.
If the transmission decision is done on the server side, it is advantageous when the client's retransmission requests include the reception times and frame lengths of two preceding data frames. Using this information, the server would be in the position to most efficiently update his knowledge about the channel state, keep the delay requirements and use the channel bandwidths.
Moreover, since in contrast to the prior art systems the transmission time of the packets is measured during the video streaming, they are no longer assumed to be the same for all packets. Changes in the transmission time may therefore lead to a dynamic adaptation of the video stream quality to changing channel conditions.
Independently of whether the transmission decision is performed on the transmitter or on the receiver side, priority levels are assigned to the data frames preferably based on the logical depth of multidependency. By this measure it is incidentally taken into consideration that those frames which are independent (I-frames) are the most important frames, whereas dependent frames are less important. Moreover, in contrast to the prior art, even the group of dependent frames is divided into more important and less important frames. This allows for fine tuning the retransmission behaviour to an extent which is not known from the prior art.
Another advantage of the present invention is that the improvement of the video quality may be increased by making the transmission decision dynamically. This is done according to a preferred embodiment of the invention by calculating the priority threshold value based on the measured available channel bandwidth. Additionally, the measured sending bit rate may be used. Consequently, the compensation for missing packets may be improved once again.
Furthermore, the invention may be combined with the requirement that a lost frame is retransmitted only when it is expectable that the retransmitted frame will still arrive in time. In particular in cases where the channel bandwidth is shared between several users or applications it is very important to transmit as little data as possible. This is true in particular because the user might pay for the used bandwidth, i.e. the transmitted bits. If there are video packets retransmitted which would not reach the receiver in time because of the high utilization of the channel, bandwidth is wasted. This bandwidth could be used either for the retransmission of frames which have a higher priority or by other users or applications.
The invention will now be described in more detail with reference to the accompanying drawings, in which:
FIG. 1 is a prior art video streaming system;
FIG. 2 is a video streaming system according to a preferred embodiment of the invention;
FIG. 3 is a graph illustrating the priority assignment to the frames according to the preferred embodiment of the invention;
FIG. 4 is a flow chart illustrating the process of sending a video stream;
FIG. 5 is a flow chart illustrating the retransmission decision in the process of sending a video stream as depicted in FIG. 4;
FIG. 6 is a flow chart illustrating a first example of the priority decision being part of the retransmission decision depicted in FIG. 5;
FIG. 7 is a flow chart illustrating a second example of the priority decision;
FIG. 8 is a flow chart illustrating a third example of the priority decision; and
FIG. 9 is a flow chart illustrating the process of receiving a video stream.
Referring now to FIG. 2, the video server 110 includes a video source application 120, a transmission buffer unit 130 and a channel access controller 140 which function substantially as described in the context of the prior art video streaming system of FIG. 1. Similarly, the video client 160 includes a receiver buffer unit 170 and a video display application 180. Data are sent from the video server 110 to the video client 160 through channel 150.
The video client 160 further comprises loss detection unit 240, which is connected to the receiver buffer unit 170. Once the loss detection unit 240 detects that a frame is missing, it generates a retransmission request which preferably includes the reception times and frame lengths of two preceding data frames. For this purpose, the loss detection unit 240 stores during normal operation the time stamp and length of the most recent two packets. Once the retransmission request has been generated, which might be a negative acknowledgement (NACK) or a multi-purpose acknowledgement (MACK) packet, the request undergoes segmentation by transmitter buffer unit 250 and is sent under control of channel access controller 260 through channel 150 to video server 110.
In the video server 110, receiver buffer unit 230 receives the data and reassembles the request. The request is then forwarded to control unit 210, and to the retransmission buffer 220. The retransmission buffer buffers the I- and P-frames sent from the video source application 120 to the transmitter buffer unit 130 for retransmission purposes.
The control unit 210, upon receiving the time and length information of the two most recent packets, updates the priority thresholds. When receiving video frames from the video source application 120 or the retransmission buffer 220, it performs the transmission decision on the basis of the priority levels assigned to the data frames. The assignment of priorities to frames is illustrated in more detail in FIG. 3.
As apparent therefrom, according to the present invention I-frames have been given the highest priority since an I-frame can be displayed by video display application 180 independently from other frames. The first P-frame which closely follows the I-frame depends only on the preceding I-frame. The second P-frame depends on the first P-frame, and since the first P-frame depends on the I-frame, the second P-frame is two-fold dependent and therefore less important than the first P-frame. This scheme may be adopted for the following P-frames so that P-frames with higher depth of multidependency, i.e. later P-frames, are more unimportant and are therefore given the lower priority levels. In the embodiment of FIG. 3 the priority is set to 1/n for the n-th P-frame. It will however be appreciated by those of ordinary skill in the art that another functional dependency may be chosen.
Referring now to FIG. 4, the process of sending a video stream includes the step of receiving a video frame from the video source application 120 (step 410). Then it is checked in step S420 whether a retransmission request has been received. If no retransmission request has been received, the process proceeds with step S440, otherwise the information from the retransmission request is used to update the channel estimation first (step S430). In step S440 the transmission decision is made, which will be described in detail in the next figures.
The transmission time of a frame consists of two parts. One part is independent of the length of the frame, whereas the other part is length dependent. The frame-length independent time consists mainly of the network delay, i.e. the propagation delay, and the buffering delay due to congestion. In contrast, the frame-length dependent delay is determined by the segmentation and the available bandwidth. The following equation describes the transmission delay of frame i:
D i t 1 +l i ·t 2,
where Di is the transmission delay, li is the frame length in bits, t1 is the frame-length independent time1 and t2 is the frame-length dependent time per bit.
Assuming that the times t1 and t2 are nearly constant between two packet arrivals, the equation can be resolved when the transmission delays D, and D2 Of two preceding frames have been previously measured: t 1 = D 2 l 1 - D 1 l 2 l 1 - l 2 , t 2 = D 1 - D 2 l 1 - l 2 .
Figure US06792470-20040914-M00001
It is consequently possible to calculate the transmission delay of a missing frame from the times t1 and t2 which are evaluated on the basis of the transmission delays of two preceding frames. For this purpose, loss detection unit 240 stores the reception times and packet lengths of the most recent frames. If an error occurs, these values and the values of the missing or erroneously received frame are transmitted to the video server 110. This can be done either by attaching a Receiver Report to the NACK packet or by using a MACK packet. The overhead added by supplementing the NACK or MACK packet with such additional information is negligibly small.
If it is decided in step S440 that the frame should be discarded, the process proceeds with step S460. If the frame should be sent to the transmission buffer 130, step S450 is executed. Then the sending bit rate is updated in step S470 and the control unit 210 will wait for the next frame to receive from the video source application 120 or the retransmission buffer 220 (step S410).
The transmission decision of step S440 will now be explained in more detail with reference to FIG. 5. Before comparing the priority with a threshold value, a mechanism is introduced to decide whether the frame should be sent or discarded according to an estimated arrival time since it is not necessary to send frames that are already too late. For that purpose, the arrival time of the frame is estimated, i.e. the transmission delay is calculated in step S510.
If it is then determined in step S520 that the estimated arrival time is later than the desired time to display the video frame, the frame will be discarded instead of being transmitted. Otherwise, control unit 210 evaluates the priority of the missing frame as will be now explained in more detail.
Referring now to FIG. 6, control unit 210 first obtains the priority level of the frame in step S610, and then accesses the fixed threshold level in step S620. There should be two different priority levels. One for frames transmitted for the first time (possibly all frames are transmitted for the first time) and for the retransmissions. The fixed threshold levels have been defined at the time of transmission set-up according to the channel condition and video bit rate at that time. It is then decided in step S630 whether the priority level of the frame exceeds the priority threshold level. Only if this is the case, the frame is transmitted. Otherwise, it is decided to discard the frame.
While this advantageously involves a minimum overhead and implementation effort only, it may be improved as apparent from FIG. 7. The process illustrated in FIG. 7 differs from that of FIG. 6 mainly in that not a fixed threshold level is used but that the priority threshold is calculated based on the measured available channel bandwidth (steps S710, S720). This scheme is based on the idea that, if only a small bandwidth of the channel is available, it might be better to send frames with higher priority only.
Since the available bandwidth is the reciprocal of t2, the measurement of the available channel bandwidth can make use of the above-mentioned measurement of transmission delays: B ch = 1 t 2 .
Figure US06792470-20040914-M00002
The available channel bandwidth Bch measured in step S710 is then used in step S720 to calculate the priority threshold value Pth according to the following equation: P th = k · B v B ch
Figure US06792470-20040914-M00003
where Bv is the bandwidth needed for the video transmission if no retransmissions are performed at all, l and k is a factor to adapt the mechanism to the system and the bit error rate which is assumed to be fixed for the transmission. There should be two different k-factors. One for transmissions for the first time (possibly all frames should be transmitted for the first time) and one for the retransmissions.
Yet another improvement of the priority decision process may be achieved as illustrated in FIG. 8 by additionally measuring the bit rate of the sent frames in step S810. This improvement is based on the discovery that with bad channel conditions, i.e. high bit error rates, the number of frames to be retransmitted increases. It is therefore advantageous to monitor the amount of data that was sent to ensure that enough channel bandwidth is reserved to transmit at least the important frames. To estimate the bit rate of sent frames, an average bit rate over a number of preceding frames which were sent is calculated according to the following equation: B s = i = q p l i t q - t p .
Figure US06792470-20040914-M00004
In this equation, Bs is the bit rate of the sent frames, p and q denote the oldest and the most recently sent frames, and lj, tq and tp are the previously stored lengths in bits and transmission times of the respective frames.
Using the bit rate Bs of sent frames measured in step S810, the priority threshold value Pth is then calculated in step S820, similarly to the calculation described above: P th = k · B s B ch .
Figure US06792470-20040914-M00005
While the transmission mechanisms on the basis of a priority decision have been described together with an arrival time estimation, it will be appreciated by those of ordinary skill in the art that the mechanisms may likewise be used independently from each other.
FIG. 9 illustrates the process of receiving a video stream in video client 160. Upon detecting in step S920 that a video frame is missing, a retransmission request is generated and transmitted in steps S930 and S940 as described above. While in the preferred embodiment, the retransmission decision is performed by control unit 210 of video server 110, it will be appreciated by the skilled person that the decision whether a missing frame is to be retransmitted may likewise be performed at the receiver. For this purpose, the video client 160 would comprise a control unit (not shown) for calculating the priority threshold value and comparing the priority level of the missing frame with the threshold value. Only in case it is decided to retransmit the missing frame, a retransmission request would be sent from video client 160 to the video server 110. The retransmission decision step S440, illustrated in FIGS. 5 to 8, would then be incorporated into the process of receiving the video stream in FIG. 9 prior to the step S930 of generating a retransmission request.

Claims (12)

What is claimed is:
1. A method of transmitting video data from a server to a client, the data being arranged in data frames forming a data stream, each frame having assigned a priority level, said method comprising:
receiving, at the server, a client's retransmission request for a data frame;
comparing the priority level of the requested data frame with a priority threshold value; and
retransmitting the requested data frame if the priority level is greater than the priority threshold value,
wherein the assignment of priority levels to frames is performed according to the logical depth of the multidependency of the respective frame.
2. A method of transmitting video data from a server to a client, the data being arranged in data frames forming a data stream, each frame having assigned a priority level, said method comprising:
receiving, at the server, a client's retransmission request for a data frame;
comparing the priority level of the requested data frame with a priority threshold value; and
retransmitting the requested data frame if the priority level is greater than the priority threshold value,
wherein said comparing includes measuring the available channel bandwidth and calculating the priority threshold value based on the measured bandwidth.
3. The method according to claim 2,
wherein said comparing further includes measuring the bit rate of previously sent frames, and
wherein the priority threshold value is calculated based on the measured bandwidth and the measured bit rate.
4. A method of transmitting video data from a server to a client, the data being arranged in data frames forming a data stream, each frame having assigned a priority level, said method comprising:
receiving, at the server, a client's retransmission request for a data frame;
comparing the priority level of the requested data frame with a priority threshold value;
retransmitting the requested data frame if the priority level is greater than the priority threshold value; and
estimating the data frame arrival time and comparing the estimated arrival time with the desired arrival time for suppressing transmission if the estimated arrival time is not before the desired arrival time.
5. A method of receiving video data from a server, the data being arranged in data frames forming a data stream, each frame having assigned a priority level, said method comprising:
detecting that a data frame is missing;
comparing the priority level of the missing data frame with a priority threshold value; and
sending a retransmission request for the missing data frame to the server,
wherein the assignment of priority levels to frames is performed according to the logical depth of the multidependency of the respective frame.
6. A method of receiving video data from a server, the data being arranged in data frames forming a data stream, each frame having assigned a priority level, said method comprising:
detecting that a data frame is missing;
comparing the priority level of the missing data frame with a priority threshold value; and
sending a retransmission request for the missing data frame to the server,
wherein said comparing includes measuring the available channel bandwidth and calculating the priority threshold value based on the measured bandwidth.
7. The method according to claim 6, wherein said comparing further includes measuring the bit rate of previously sent frames, and
wherein the priority threshold value is calculated based on the measured bandwidth and the measured bit rate.
8. A method of receiving video data from a server, the data being arranged in data frames forming a data stream, each frame having assigned a priority level, said method comprising:
detecting that a data frame is missing;
comparing the priority level of the missing data frame with a priority threshold value;
sending a retransmission request for the missing data frame to the server; and
estimating the data frame arrival time and comparing the estimated arrival time with the desired arrival time for suppressing transmission if the estimated arrival time is not before the desired arrival time.
9. The method according to claim 1, wherein P-frames with higher depth of multidependency are given the lower priority levels.
10. The method according to claim 9, wherein the priority level is set to 1/n for the n-th P-frame, and
wherein n is an integer.
11. The method according to claim 5, wherein P-frames with higher depth of multidependency are given the lower priority levels.
12. The method according to claims 11, wherein the priority level is set to 1/n for the n-th P-frame, and
wherein n is an integer.
US09/796,759 2000-03-02 2001-03-02 Method and apparatus for communicating with data frames having priority levels Expired - Lifetime US6792470B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US10/633,574 US6877038B2 (en) 2000-03-02 2003-08-05 Data transmission method and apparatus
US11/068,751 US20050144643A1 (en) 2000-03-02 2005-03-02 Data transmission method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP00104388.4 2000-03-02
EP00104388A EP1130839B1 (en) 2000-03-02 2000-03-02 Method and apparatus for retransmitting video data frames with priority levels

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US10/633,574 Division US6877038B2 (en) 2000-03-02 2003-08-05 Data transmission method and apparatus

Publications (2)

Publication Number Publication Date
US20020004838A1 US20020004838A1 (en) 2002-01-10
US6792470B2 true US6792470B2 (en) 2004-09-14

Family

ID=8168014

Family Applications (3)

Application Number Title Priority Date Filing Date
US09/796,759 Expired - Lifetime US6792470B2 (en) 2000-03-02 2001-03-02 Method and apparatus for communicating with data frames having priority levels
US10/633,574 Expired - Lifetime US6877038B2 (en) 2000-03-02 2003-08-05 Data transmission method and apparatus
US11/068,751 Abandoned US20050144643A1 (en) 2000-03-02 2005-03-02 Data transmission method and apparatus

Family Applications After (2)

Application Number Title Priority Date Filing Date
US10/633,574 Expired - Lifetime US6877038B2 (en) 2000-03-02 2003-08-05 Data transmission method and apparatus
US11/068,751 Abandoned US20050144643A1 (en) 2000-03-02 2005-03-02 Data transmission method and apparatus

Country Status (4)

Country Link
US (3) US6792470B2 (en)
EP (2) EP1361690B1 (en)
JP (2) JP4623616B2 (en)
DE (1) DE60020672T2 (en)

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020186661A1 (en) * 2001-05-04 2002-12-12 Terago Communications, Inc. System and method for hierarchical policing of flows and subflows of a data stream
US20030002501A1 (en) * 2001-06-26 2003-01-02 Jean-Marc Reme Packet transmission method with packet retransmission requests and a control mechanism relating to the transmission of such requests
US20030016673A1 (en) * 2001-06-29 2003-01-23 Ramesh Pendakur Correcting for data losses with feedback and response
US20030039224A1 (en) * 2001-07-07 2003-02-27 Samsung Electronics Co., Ltd. Data transmitting and receiving method in a mobile communication system
US20030078983A1 (en) * 2001-10-23 2003-04-24 Sullivan Terence Sean Message prioritization and buffering in a limited network
US20030199249A1 (en) * 2002-04-23 2003-10-23 Qiang Cao Radio telecommunications network, a method of transmitting data in a radio telecommunications network, a receiver, and a method of receiving
US20040261113A1 (en) * 2001-06-18 2004-12-23 Baldine-Brunel Paul Method of transmitting layered video-coded information
US20050036546A1 (en) * 2001-10-05 2005-02-17 Rey Jose Luis Video data transmission method and apparatus
US20050088519A1 (en) * 2003-10-22 2005-04-28 Brookins Nicholas S. Video surveillance system
US20050254508A1 (en) * 2004-05-13 2005-11-17 Nokia Corporation Cooperation between packetized data bit-rate adaptation and data packet re-transmission
US20050259947A1 (en) * 2004-05-07 2005-11-24 Nokia Corporation Refined quality feedback in streaming services
US20060104279A1 (en) * 2004-11-18 2006-05-18 Fellman Ronald D Low-latency automatic repeat request packet recovery mechanism for media streams
US20060129723A1 (en) * 2004-12-15 2006-06-15 Microsoft Corporation Retry strategies for use in a streaming environment
US20060159019A1 (en) * 2001-05-04 2006-07-20 Slt Logic Llc System and method for policing multiple data flows and multi-protocol data flows
US20070078660A1 (en) * 2000-07-08 2007-04-05 Radioscape Limited Digital Transactions for the Delivery of Media Files
US20070161351A1 (en) * 2004-01-30 2007-07-12 Chul-Hee Lee Methods and apparatuses for measuring transmission quality of multimedia data
US20080016247A1 (en) * 2006-07-14 2008-01-17 Abroadcasting Company System and method to efficiently broadcast television video and audio streams through the internet from a source in single leading time zone to multiple destinations in lagging time zones
US20080123578A1 (en) * 2002-11-07 2008-05-29 Matsushita Electric Industrial Co., Ltd. Method Of Determining Feedback In A Communication System
US20080151935A1 (en) * 2001-05-04 2008-06-26 Sarkinen Scott A Method and apparatus for providing multi-protocol, multi-protocol, multi-stage, real-time frame classification
US7502818B2 (en) 2001-12-12 2009-03-10 Sony Corporation Data communications system, data sender, data receiver, data communications method, and computer program
US20090119565A1 (en) * 2002-01-10 2009-05-07 Samsung Electronics Co., Ltd. Data transmitting/receiving system and method thereof
US20090213856A1 (en) * 2001-05-04 2009-08-27 Slt Logic Llc System and Method for Providing Transformation of Multi-Protocol Packets in a Data Stream
US20100034216A1 (en) * 2007-02-01 2010-02-11 Ashley Pickering Data communication
US20100058134A1 (en) * 2008-08-28 2010-03-04 Canon Kabushiki Kaisha Information processing apparatus, and control method, program and recording medium therefor
US20100325510A1 (en) * 2008-02-21 2010-12-23 Toshizo Nogami Transmission device, reception device, communication system, and communication method
US7962573B2 (en) 2000-03-21 2011-06-14 Intel Corporation Method and apparatus to determine broadcast content and scheduling in a broadcast system
US20110283009A1 (en) * 2010-05-13 2011-11-17 Canon Kabushiki Kaisha Network streaming of a video stream over multiple communication channels
US20110286345A1 (en) * 2010-05-20 2011-11-24 Thomson Licensing Method of determination of transmission quality of a communication link between a transmitter and a receiver and corresponding apparatus
US20110307900A1 (en) * 2010-06-14 2011-12-15 Microsoft Corporation Changing streaming media quality level based on current device resource usage
US8117193B2 (en) 2007-12-21 2012-02-14 Lemi Technology, Llc Tunersphere
US20120223939A1 (en) * 2011-03-02 2012-09-06 Noh Junyong Rendering strategy for monoscopic, stereoscopic and multi-view computer generated imagery, system using the same and recording medium for the same
US8316015B2 (en) 2007-12-21 2012-11-20 Lemi Technology, Llc Tunersphere
US8494899B2 (en) 2008-12-02 2013-07-23 Lemi Technology, Llc Dynamic talk radio program scheduling
US8667161B2 (en) 2000-09-07 2014-03-04 Black Hills Media Personal broadcast server system for providing a customized broadcast
US8755763B2 (en) 1998-01-22 2014-06-17 Black Hills Media Method and device for an internet radio capable of obtaining playlist content from a content server
US8848718B2 (en) 2002-06-04 2014-09-30 Google Inc. Hierarchical metering in a virtual router-based network switch
US8943540B2 (en) 2001-09-28 2015-01-27 Intel Corporation Method and apparatus to provide a personalized channel
US9015147B2 (en) 2007-12-20 2015-04-21 Porto Technology, Llc System and method for generating dynamically filtered content results, including for audio and/or video channels
US9516370B1 (en) 2004-05-05 2016-12-06 Black Hills Media, Llc Method, device, and system for directing a wireless speaker from a mobile phone to receive and render a playlist from a content server on the internet
US20160366475A1 (en) * 2014-04-22 2016-12-15 Tencent Technology (Shenzhen) Company Limited Method for controlling network media information publication, apparatus, and server
US20190229876A1 (en) * 2016-07-07 2019-07-25 Sony Corporation Wireless communication apparatus
US20220139536A1 (en) * 2018-07-17 2022-05-05 Icu Medical, Inc. Detecting missing messages from clinical environment
US11783935B2 (en) 2018-07-17 2023-10-10 Icu Medical, Inc. Health checks for infusion pump communications systems

Families Citing this family (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4549610B2 (en) 2001-11-08 2010-09-22 ソニー株式会社 COMMUNICATION SYSTEM, COMMUNICATION METHOD, TRANSMISSION DEVICE AND METHOD, RECEPTION DEVICE AND METHOD, AND PROGRAM
US7075891B2 (en) * 2001-11-26 2006-07-11 Lucent Technologies Inc. Method and apparatus for transmitting and receiving data packets to avoid stall during re-sequencing of data packets
CN1739101A (en) * 2001-12-15 2006-02-22 汤姆森许可公司 System and method for delivering data streams of multiple data types at diffferent priority levels
FR2838584A1 (en) * 2002-04-16 2003-10-17 Koninkl Philips Electronics Nv Digital/audio word packet transmission mobile receiver via internet having network receiver demanding word retransmission where packet lost detected and transit time estimator deactivating demand where criteria exceeded.
KR100537499B1 (en) * 2002-07-26 2005-12-19 삼성전자주식회사 Method of generating transmission control parameter and selective retranmission method according to the packet characteristics.
AU2002339523A1 (en) 2002-09-06 2004-03-29 Telefonaktiebolaget Lm Ericsson (Publ) Method and devices for controlling retransmissions in data streaming
US7386176B2 (en) 2002-11-15 2008-06-10 Ricoh Company, Ltd. Image sending apparatus and image receiving apparatus for sending and receiving code sequence data
US7474792B2 (en) 2002-12-02 2009-01-06 Ricoh Company, Ltd. Image processing apparatus for using distortion amount information
JP2004187099A (en) * 2002-12-04 2004-07-02 Shinko Electric Ind Co Ltd Communication control method, communication system and communication equipment
US9138644B2 (en) * 2002-12-10 2015-09-22 Sony Computer Entertainment America Llc System and method for accelerated machine switching
US8526490B2 (en) * 2002-12-10 2013-09-03 Ol2, Inc. System and method for video compression using feedback including data related to the successful receipt of video content
US9077991B2 (en) * 2002-12-10 2015-07-07 Sony Computer Entertainment America Llc System and method for utilizing forward error correction with video compression
US8711923B2 (en) 2002-12-10 2014-04-29 Ol2, Inc. System and method for selecting a video encoding format based on feedback data
US9314691B2 (en) * 2002-12-10 2016-04-19 Sony Computer Entertainment America Llc System and method for compressing video frames or portions thereof based on feedback information from a client device
US8964830B2 (en) 2002-12-10 2015-02-24 Ol2, Inc. System and method for multi-stream video compression using multiple encoding formats
US8549574B2 (en) * 2002-12-10 2013-10-01 Ol2, Inc. Method of combining linear content and interactive content compressed together as streaming interactive video
US9192859B2 (en) 2002-12-10 2015-11-24 Sony Computer Entertainment America Llc System and method for compressing video based on latency measurements and other feedback
US8949922B2 (en) * 2002-12-10 2015-02-03 Ol2, Inc. System for collaborative conferencing using streaming interactive video
US9061207B2 (en) * 2002-12-10 2015-06-23 Sony Computer Entertainment America Llc Temporary decoder apparatus and method
US20090118019A1 (en) * 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
US9227139B2 (en) 2002-12-10 2016-01-05 Sony Computer Entertainment America Llc Virtualization system and method for hosting applications
US8979655B2 (en) 2002-12-10 2015-03-17 Ol2, Inc. System and method for securely hosting applications
US9446305B2 (en) 2002-12-10 2016-09-20 Sony Interactive Entertainment America Llc System and method for improving the graphics performance of hosted applications
US20100166056A1 (en) * 2002-12-10 2010-07-01 Steve Perlman System and method for encoding video using a selected tile and tile rotation pattern
US9108107B2 (en) 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US10201760B2 (en) * 2002-12-10 2019-02-12 Sony Interactive Entertainment America Llc System and method for compressing video based on detected intraframe motion
US8366552B2 (en) * 2002-12-10 2013-02-05 Ol2, Inc. System and method for multi-stream video compression
FR2849734A1 (en) * 2003-01-06 2004-07-09 Thomson Licensing Sa DVB-T SIGNAL RECEIVING SYSTEM WITH ISOFREQUENCY REMISSION
JP4133421B2 (en) 2003-02-20 2008-08-13 株式会社日立製作所 Content receiving apparatus, content difference transmitting apparatus, and content distribution system in content distribution system
JP4266733B2 (en) * 2003-07-10 2009-05-20 三菱電機株式会社 Video receiver
KR100526183B1 (en) * 2003-07-15 2005-11-03 삼성전자주식회사 Apparatus and Method for efficient data transmission/reception in Mobile Ad-hoc Network
US8554860B1 (en) * 2003-09-05 2013-10-08 Sprint Communications Company L.P. Traffic segmentation
US8327411B2 (en) * 2003-12-01 2012-12-04 Sharp Laboratories Of America, Inc. Low-latency random access to compressed video
US20080303903A1 (en) * 2003-12-02 2008-12-11 Connexed Technologies Inc. Networked video surveillance system
US8737219B2 (en) 2004-01-30 2014-05-27 Hewlett-Packard Development Company, L.P. Methods and systems that use information about data packets to determine an order for sending the data packets
US7620685B2 (en) * 2004-04-21 2009-11-17 Microsoft Corporation Smart shares and transports
US10268352B2 (en) 2004-06-05 2019-04-23 Sonos, Inc. Method and apparatus for managing a playlist by metadata
CN101057438A (en) 2004-10-12 2007-10-17 阿瓦雷公司 Resource sharing in a telecommunications environment
US20060085827A1 (en) * 2004-10-18 2006-04-20 Toshiro Ozawa Entertainment content preprocessing
JP2008523689A (en) * 2004-12-10 2008-07-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Wireless video streaming and prioritized streaming using single layer coding
US7477653B2 (en) 2004-12-10 2009-01-13 Microsoft Corporation Accelerated channel change in rate-limited environments
WO2006075302A1 (en) 2005-01-17 2006-07-20 Koninklijke Philips Electronics N.V. System, transmitter, receiver, method and software for transmitting and receiving ordered sets of video frames
JP4187746B2 (en) * 2005-01-26 2008-11-26 三洋電機株式会社 Video data transmission device
DE102005012668B4 (en) * 2005-03-17 2012-02-16 Bernhard Blöchl Frame error detection and correction method for digital video
JP2006270450A (en) * 2005-03-23 2006-10-05 Yamaha Corp Transmission device
JP2006279436A (en) * 2005-03-29 2006-10-12 Toshiba Corp Multimedia communication system and data deleting method for re-transmission
US7765305B2 (en) * 2005-04-07 2010-07-27 Microsoft Corporation Retry request overload protection
KR100657314B1 (en) * 2005-05-04 2006-12-20 삼성전자주식회사 Apparatus and method for transmitting multimedia streaming
JP4688566B2 (en) * 2005-05-10 2011-05-25 富士通東芝モバイルコミュニケーションズ株式会社 Transmitter and receiver
KR100720592B1 (en) 2005-09-01 2007-05-22 엘지전자 주식회사 Method for Restoration Transport Error of Intra Frame
US20070058730A1 (en) * 2005-09-09 2007-03-15 Microsoft Corporation Media stream error correction
US7969997B1 (en) * 2005-11-04 2011-06-28 The Board Of Trustees Of The Leland Stanford Junior University Video communications in a peer-to-peer network
US8537741B2 (en) * 2006-01-13 2013-09-17 Alcatel Lucent Method of header compression over channels with out-of-order delivery
US7609709B2 (en) * 2006-01-23 2009-10-27 Alcatel-Lucent Usa Inc. Video aware traffic management
US7979784B2 (en) * 2006-03-29 2011-07-12 Samsung Electronics Co., Ltd. Method and system for enhancing transmission reliability of video information over wireless channels
EP3866416B1 (en) 2006-04-12 2023-08-23 TQ Delta, LLC Method and apparatus for packet retransmission and memory sharing
KR100763207B1 (en) * 2006-05-03 2007-10-04 삼성전자주식회사 Method and apparatus for transmitting/receiving uncompressed audio/video data and transmission frame structure
US20070270103A1 (en) * 2006-05-16 2007-11-22 Samsung Electronics Co., Ltd. Method and apparatus for transmitting/receiving uncompressed audio/video data
US20070268972A1 (en) * 2006-05-16 2007-11-22 Samsung Electronis Co., Ltd. Method and apparatus for transmitting/receiving uncompressed AV data
US20070291853A1 (en) * 2006-06-19 2007-12-20 Samsung Electronics Co., Ltd. Method and apparatus for transmitting/receiving uncompressed data
JP2008017331A (en) * 2006-07-07 2008-01-24 Toshiba Corp Packet stream transmitter
US8411581B2 (en) * 2006-07-25 2013-04-02 Broadcom Corporation Method and system for medium access control (MAC) layer specialization for voice and multimedia data streams
JP4809174B2 (en) * 2006-09-27 2011-11-09 京セラ株式会社 Communication apparatus and data transmission method
JP4836871B2 (en) * 2007-05-31 2011-12-14 Kddi株式会社 Video data transmitting apparatus, program, and method for assigning priority to encoded image
US20090002556A1 (en) * 2007-06-11 2009-01-01 Picongen Wireless Inc. Method and Apparatus for Packet Insertion by Estimation
EP2026580A1 (en) * 2007-06-12 2009-02-18 British Telecommunications public limited company Video processing
JP5084362B2 (en) * 2007-06-18 2012-11-28 キヤノン株式会社 Data transmission apparatus and data transmission / reception system
JP5224731B2 (en) * 2007-06-18 2013-07-03 キヤノン株式会社 Video receiving apparatus and video receiving apparatus control method
KR101212613B1 (en) * 2007-06-20 2012-12-14 노키아 지멘스 네트웍스 오와이 Avoiding collisions between semi-persistent allocation and dynamic allocation in radio access networks
US9168457B2 (en) 2010-09-14 2015-10-27 Sony Computer Entertainment America Llc System and method for retaining system state
US20090164576A1 (en) * 2007-12-21 2009-06-25 Jeonghun Noh Methods and systems for peer-to-peer systems
US20090178096A1 (en) * 2008-01-03 2009-07-09 Microsoft Corporation Intelligent over-transmission of media data segments
JP2009232109A (en) * 2008-03-21 2009-10-08 Panasonic Corp Radio terminal device and retransmission method
FR2930387B1 (en) * 2008-04-17 2010-09-24 Canon Kk METHOD OF PROCESSING A CODED DATA FLOW
JP4460011B2 (en) * 2008-05-27 2010-05-12 国立大学法人広島大学 Moving image distribution system, moving image distribution method, server in moving image distribution system, and user terminal in moving image distribution system
JPWO2010007749A1 (en) * 2008-07-17 2012-01-05 パナソニック株式会社 Transmission device, reception device, rate control device, transmission method, and reception method
JP5207895B2 (en) * 2008-09-17 2013-06-12 キヤノン株式会社 Transmitting apparatus, receiving apparatus, method, and program
JP5104717B2 (en) * 2008-10-23 2012-12-19 富士通株式会社 Data distribution apparatus, relay apparatus, data distribution method, and data distribution program
JP2010252060A (en) * 2009-04-16 2010-11-04 Hitachi Ltd Method for transmission and reception in transmitting and receiving system
JP5585109B2 (en) * 2010-02-10 2014-09-10 ヤマハ株式会社 Video transmission device
KR101758613B1 (en) * 2010-03-09 2017-07-31 삼성전자주식회사 Broadcasting contents providing method and apparatus and system thereof
FR2958482B1 (en) * 2010-03-31 2012-04-13 Canon Kk METHOD FOR MANAGING A RECEIVER DEVICE OF A DATA STREAM TRANSMITTED BY A TRANSMITTER DEVICE, COMPUTER PROGRAM PRODUCT, STORAGE MEDIUM AND CORRESPONDING RECEIVER DEVICE
US9628226B2 (en) 2010-09-30 2017-04-18 Qualcomm Incorporated Block acknowledgement with retransmission policy differentiation
US8761147B2 (en) * 2011-01-17 2014-06-24 Texas Instruments Incorporated Selective protection based on sequence numbers in coexisting networks
JP5632319B2 (en) * 2011-03-29 2014-11-26 京セラ株式会社 base station
KR20130003544A (en) * 2011-06-30 2013-01-09 한국전자통신연구원 Method and system for synchronizing contents between terminals
US20140036999A1 (en) * 2012-06-29 2014-02-06 Vid Scale Inc. Frame prioritization based on prediction information
CN104247377B (en) * 2012-07-09 2018-07-27 松下知识产权经营株式会社 Communication device, communication means, program
US9603039B2 (en) 2013-04-03 2017-03-21 Qualcomm Incorporated Opportunistic media patching for a communication session
WO2015066836A1 (en) * 2013-11-05 2015-05-14 华为技术有限公司 Video service data transmission method, data receiving device and data transmitting device
CN103780907B (en) * 2014-01-27 2018-01-16 浙江宇视科技有限公司 A kind of method and apparatus of video data flow shaping
KR102198701B1 (en) * 2014-07-03 2021-01-05 삼성전자주식회사 Method and apparatus for transmitting and receiving information in a multimedia system
DE102015205478A1 (en) * 2015-03-26 2016-09-29 Bayerische Motoren Werke Aktiengesellschaft Method and device for configuring a transmission connection
US10152212B2 (en) 2015-04-10 2018-12-11 Sonos, Inc. Media container addition and playback within queue
US11949512B2 (en) * 2016-02-26 2024-04-02 Livestreaming Sweden Ab Retransmission of data in packet networks
CN106067847B (en) * 2016-05-25 2019-10-22 腾讯科技(深圳)有限公司 A kind of voice data transmission method and device
KR102483269B1 (en) * 2016-08-29 2023-01-02 삼성전자주식회사 Server apparatus, user terminal apparatus, control methods thereof and streaming system
RU2710282C1 (en) * 2019-04-24 2019-12-25 Федеральное государственное казенное военное образовательное учреждение высшего образования Академия Федеральной службы охраны Российской Федерации Data transmission method
CN110851255B (en) * 2019-11-07 2022-04-15 之江实验室 Method for processing video stream based on cooperation of terminal equipment and edge server
CN115001632A (en) * 2022-06-09 2022-09-02 咪咕文化科技有限公司 Information transmission method and device, electronic equipment and readable storage medium
US11589104B1 (en) * 2022-06-17 2023-02-21 Userful Corporation Latency compensation for external networks
CN116471425B (en) * 2023-04-20 2024-02-06 四川康和圣科技有限公司 Multimedia data management system based on big data analysis

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10126772A (en) 1996-10-18 1998-05-15 Chokosoku Network Computer Gijutsu Kenkyusho:Kk Dynamic image data transfer system
US5768533A (en) * 1995-09-01 1998-06-16 National Semiconductor Corporation Video coding using segmented frames and retransmission to overcome channel errors
US5768527A (en) 1996-04-23 1998-06-16 Motorola, Inc. Device, system and method of real-time multimedia streaming
EP0905976A1 (en) 1997-03-17 1999-03-31 Matsushita Electric Industrial Co., Ltd. Method of processing, transmitting and receiving dynamic image data and apparatus therefor
US5918002A (en) 1997-03-14 1999-06-29 Microsoft Corporation Selective retransmission for efficient and reliable streaming of multimedia packets in a computer network
US5956729A (en) * 1996-09-06 1999-09-21 Motorola, Inc. Multimedia file, supporting multiple instances of media types, and method for forming same
EP1006689A2 (en) 1998-11-30 2000-06-07 Matsushita Electric Industries Co., Ltd. Packet retransmission control using priority information
US6085253A (en) * 1997-08-01 2000-07-04 United Video Properties, Inc. System and method for transmitting and receiving data
US6104706A (en) * 1993-06-09 2000-08-15 Intelligence-At-Large, Inc. Method and apparatus for multiple media digital communication system
US6400695B1 (en) * 1998-05-22 2002-06-04 Lucent Technologies Inc. Methods and apparatus for retransmission based access priority in a communications system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3870978B2 (en) * 1994-06-03 2007-01-24 ソニー株式会社 Transmitting apparatus, transmitting method, receiving apparatus, and receiving method
JPH0879128A (en) * 1994-09-02 1996-03-22 Canon Inc Spread spectrum radio communication system
JP3516585B2 (en) * 1997-03-17 2004-04-05 松下電器産業株式会社 Data processing device and data processing method
FI108192B (en) * 1998-03-19 2001-11-30 Nokia Networks Oy A method and apparatus for controlling quality of service in a mobile communication system
JPH11331839A (en) * 1998-05-13 1999-11-30 Matsushita Electric Ind Co Ltd Device and method for re-transmitting video in video transmission
US6104757A (en) * 1998-05-15 2000-08-15 North Carolina State University System and method of error control for interactive low-bit rate video transmission
US6490705B1 (en) * 1998-10-22 2002-12-03 Lucent Technologies Inc. Method and apparatus for receiving MPEG video over the internet
JP2001016276A (en) * 1999-06-29 2001-01-19 Canon Inc Communication equipment, communication method, storage medium and communication system
JP2002204220A (en) * 2000-10-27 2002-07-19 Matsushita Electric Ind Co Ltd Method and device for imparting and interpreting error tolerance

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6104706A (en) * 1993-06-09 2000-08-15 Intelligence-At-Large, Inc. Method and apparatus for multiple media digital communication system
US5768533A (en) * 1995-09-01 1998-06-16 National Semiconductor Corporation Video coding using segmented frames and retransmission to overcome channel errors
US5768527A (en) 1996-04-23 1998-06-16 Motorola, Inc. Device, system and method of real-time multimedia streaming
US5956729A (en) * 1996-09-06 1999-09-21 Motorola, Inc. Multimedia file, supporting multiple instances of media types, and method for forming same
JPH10126772A (en) 1996-10-18 1998-05-15 Chokosoku Network Computer Gijutsu Kenkyusho:Kk Dynamic image data transfer system
US5918002A (en) 1997-03-14 1999-06-29 Microsoft Corporation Selective retransmission for efficient and reliable streaming of multimedia packets in a computer network
EP0905976A1 (en) 1997-03-17 1999-03-31 Matsushita Electric Industrial Co., Ltd. Method of processing, transmitting and receiving dynamic image data and apparatus therefor
US6085253A (en) * 1997-08-01 2000-07-04 United Video Properties, Inc. System and method for transmitting and receiving data
US6400695B1 (en) * 1998-05-22 2002-06-04 Lucent Technologies Inc. Methods and apparatus for retransmission based access priority in a communications system
EP1006689A2 (en) 1998-11-30 2000-06-07 Matsushita Electric Industries Co., Ltd. Packet retransmission control using priority information
US6587985B1 (en) * 1998-11-30 2003-07-01 Matsushita Electric Industrial Co., Ltd. Data transmission method, data transmission apparatus, data receiving apparatus, and packet data structure

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
H. Zheng et al. "QoS Aware Mobile Video Communications", Milcom 1999. IEEE Military Communications. Conference Proceedings (Cat. No. 99CH36341), Proceedings of Conference on Military Communications (MILCOM'99), Atlantic City, NJ, USA, Oct. 31, 1999 to Nov. 3, 1999.

Cited By (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8792850B2 (en) 1998-01-22 2014-07-29 Black Hills Media Method and device for obtaining playlist content over a network
US8918480B2 (en) 1998-01-22 2014-12-23 Black Hills Media, Llc Method, system, and device for the distribution of internet radio content
US8755763B2 (en) 1998-01-22 2014-06-17 Black Hills Media Method and device for an internet radio capable of obtaining playlist content from a content server
US9397627B2 (en) 1998-01-22 2016-07-19 Black Hills Media, Llc Network-enabled audio device
US9312827B2 (en) 1998-01-22 2016-04-12 Black Hills Media, Llc Network enabled audio device and radio site
US8108542B2 (en) 2000-03-21 2012-01-31 Intel Corporation Method and apparatus to determine broadcast content and scheduling in a broadcast system
US8839298B2 (en) 2000-03-21 2014-09-16 Intel Corporation Method and apparatus to determine broadcast content and scheduling in a broadcast system
US7962573B2 (en) 2000-03-21 2011-06-14 Intel Corporation Method and apparatus to determine broadcast content and scheduling in a broadcast system
US7827236B2 (en) * 2000-07-08 2010-11-02 Kenora Technology, Llc Digital transactions for the delivery of media files
US20070078660A1 (en) * 2000-07-08 2007-04-05 Radioscape Limited Digital Transactions for the Delivery of Media Files
US8667161B2 (en) 2000-09-07 2014-03-04 Black Hills Media Personal broadcast server system for providing a customized broadcast
US20060087969A1 (en) * 2001-05-04 2006-04-27 Slt Logic Llc System and method for hierarchical policing of flows and subflows of a data stream
US7978606B2 (en) 2001-05-04 2011-07-12 Slt Logic, Llc System and method for policing multiple data flows and multi-protocol data flows
US7042848B2 (en) * 2001-05-04 2006-05-09 Slt Logic Llc System and method for hierarchical policing of flows and subflows of a data stream
US20090213856A1 (en) * 2001-05-04 2009-08-27 Slt Logic Llc System and Method for Providing Transformation of Multi-Protocol Packets in a Data Stream
US20060159019A1 (en) * 2001-05-04 2006-07-20 Slt Logic Llc System and method for policing multiple data flows and multi-protocol data flows
US7688853B2 (en) 2001-05-04 2010-03-30 Slt Logic, Llc System and method for hierarchical policing of flows and subflows of a data stream
US7835375B2 (en) 2001-05-04 2010-11-16 Slt Logic, Llc Method and apparatus for providing multi-protocol, multi-stage, real-time frame classification
US7822048B2 (en) 2001-05-04 2010-10-26 Slt Logic Llc System and method for policing multiple data flows and multi-protocol data flows
US20080151935A1 (en) * 2001-05-04 2008-06-26 Sarkinen Scott A Method and apparatus for providing multi-protocol, multi-protocol, multi-stage, real-time frame classification
US20020186661A1 (en) * 2001-05-04 2002-12-12 Terago Communications, Inc. System and method for hierarchical policing of flows and subflows of a data stream
US20040261113A1 (en) * 2001-06-18 2004-12-23 Baldine-Brunel Paul Method of transmitting layered video-coded information
US8621532B2 (en) 2001-06-18 2013-12-31 At&T Intellectual Property Ii, L.P. Method of transmitting layered video-coded information
US7958532B2 (en) * 2001-06-18 2011-06-07 At&T Intellectual Property Ii, L.P. Method of transmitting layered video-coded information
US7505465B2 (en) * 2001-06-26 2009-03-17 Koninklijke Philips Electronics N.V. Packet transmission method with packet retransmission requests and a control mechanism relating to the transmission of such requests
US20030002501A1 (en) * 2001-06-26 2003-01-02 Jean-Marc Reme Packet transmission method with packet retransmission requests and a control mechanism relating to the transmission of such requests
US8209574B2 (en) 2001-06-29 2012-06-26 Intel Corporation Correcting for data losses with feedback and response
US7269775B2 (en) * 2001-06-29 2007-09-11 Intel Corporation Correcting for data losses with feedback and response
US20030016673A1 (en) * 2001-06-29 2003-01-23 Ramesh Pendakur Correcting for data losses with feedback and response
US20050060752A1 (en) * 2001-06-29 2005-03-17 Intel Corporation Correcting for data losses with feedback and response
US7363569B2 (en) * 2001-06-29 2008-04-22 Intel Corporation Correcting for data losses with feedback and response
US7327709B2 (en) * 2001-07-07 2008-02-05 Samsung Electronics Co., Ltd Data transmitting and receiving method in a mobile communication system
US20030039224A1 (en) * 2001-07-07 2003-02-27 Samsung Electronics Co., Ltd. Data transmitting and receiving method in a mobile communication system
US8943540B2 (en) 2001-09-28 2015-01-27 Intel Corporation Method and apparatus to provide a personalized channel
US20050036546A1 (en) * 2001-10-05 2005-02-17 Rey Jose Luis Video data transmission method and apparatus
US20030078983A1 (en) * 2001-10-23 2003-04-24 Sullivan Terence Sean Message prioritization and buffering in a limited network
US7502818B2 (en) 2001-12-12 2009-03-10 Sony Corporation Data communications system, data sender, data receiver, data communications method, and computer program
US7823039B2 (en) * 2002-01-10 2010-10-26 Samsung Electronics Co., Ltd. Data transmitting/receiving system and method thereof
US20090119565A1 (en) * 2002-01-10 2009-05-07 Samsung Electronics Co., Ltd. Data transmitting/receiving system and method thereof
US20030199249A1 (en) * 2002-04-23 2003-10-23 Qiang Cao Radio telecommunications network, a method of transmitting data in a radio telecommunications network, a receiver, and a method of receiving
US7085540B2 (en) * 2002-04-23 2006-08-01 Lucent Technologies Inc. Radio telecommunications network, a method of transmitting data in a radio telecommunications network, a receiver, and a method of receiving
US8848718B2 (en) 2002-06-04 2014-09-30 Google Inc. Hierarchical metering in a virtual router-based network switch
US20080123578A1 (en) * 2002-11-07 2008-05-29 Matsushita Electric Industrial Co., Ltd. Method Of Determining Feedback In A Communication System
US7894401B2 (en) 2002-11-07 2011-02-22 Panasonic Corporation Method of determining feedback in a communication system
US20050088519A1 (en) * 2003-10-22 2005-04-28 Brookins Nicholas S. Video surveillance system
US7834904B2 (en) * 2003-10-22 2010-11-16 Sam Systems, Inc. Video surveillance system
US20070161351A1 (en) * 2004-01-30 2007-07-12 Chul-Hee Lee Methods and apparatuses for measuring transmission quality of multimedia data
US7912419B2 (en) * 2004-01-30 2011-03-22 Sk Telecom Co., Ltd. Methods and apparatuses for measuring transmission quality of multimedia data
US9516370B1 (en) 2004-05-05 2016-12-06 Black Hills Media, Llc Method, device, and system for directing a wireless speaker from a mobile phone to receive and render a playlist from a content server on the internet
US9554405B2 (en) 2004-05-05 2017-01-24 Black Hills Media, Llc Wireless speaker for receiving from a mobile phone directions to receive and render a playlist from a content server on the internet
US20050259947A1 (en) * 2004-05-07 2005-11-24 Nokia Corporation Refined quality feedback in streaming services
US20100215339A1 (en) * 2004-05-07 2010-08-26 Ye-Kui Wang Refined quality feedback in streaming services
US8010652B2 (en) 2004-05-07 2011-08-30 Nokia Corporation Refined quality feedback in streaming services
US8060608B2 (en) * 2004-05-07 2011-11-15 Nokia Corporation Refined quality feedback in streaming services
US7743141B2 (en) * 2004-05-07 2010-06-22 Nokia Corporation Refined quality feedback in streaming services
US20080189412A1 (en) * 2004-05-07 2008-08-07 Ye-Kui Wang Refined quality feedback in streaming services
US20050254508A1 (en) * 2004-05-13 2005-11-17 Nokia Corporation Cooperation between packetized data bit-rate adaptation and data packet re-transmission
US20060104279A1 (en) * 2004-11-18 2006-05-18 Fellman Ronald D Low-latency automatic repeat request packet recovery mechanism for media streams
US7522528B2 (en) * 2004-11-18 2009-04-21 Qvidium Technologies, Inc. Low-latency automatic repeat request packet recovery mechanism for media streams
US20060129723A1 (en) * 2004-12-15 2006-06-15 Microsoft Corporation Retry strategies for use in a streaming environment
US20080273455A1 (en) * 2004-12-15 2008-11-06 Microsoft Corporation Retry Strategies for Use in a Streaming Environment
US7813268B2 (en) 2004-12-15 2010-10-12 Microsoft Corporation Retry strategies for use in a streaming environment
US7370129B2 (en) * 2004-12-15 2008-05-06 Microsoft Corporation Retry strategies for use in a streaming environment
US20080016247A1 (en) * 2006-07-14 2008-01-17 Abroadcasting Company System and method to efficiently broadcast television video and audio streams through the internet from a source in single leading time zone to multiple destinations in lagging time zones
US7584289B2 (en) * 2006-07-14 2009-09-01 Abroadcasting Company System and method to efficiently broadcast television video and audio streams through the internet from a source in single leading time zone to multiple destinations in lagging time zones
US20100034216A1 (en) * 2007-02-01 2010-02-11 Ashley Pickering Data communication
US9015147B2 (en) 2007-12-20 2015-04-21 Porto Technology, Llc System and method for generating dynamically filtered content results, including for audio and/or video channels
US9311364B2 (en) 2007-12-20 2016-04-12 Porto Technology, Llc System and method for generating dynamically filtered content results, including for audio and/or video channels
US8874554B2 (en) 2007-12-21 2014-10-28 Lemi Technology, Llc Turnersphere
US8316015B2 (en) 2007-12-21 2012-11-20 Lemi Technology, Llc Tunersphere
US8117193B2 (en) 2007-12-21 2012-02-14 Lemi Technology, Llc Tunersphere
US9275138B2 (en) 2007-12-21 2016-03-01 Lemi Technology, Llc System for generating media recommendations in a distributed environment based on seed information
US9552428B2 (en) 2007-12-21 2017-01-24 Lemi Technology, Llc System for generating media recommendations in a distributed environment based on seed information
US8983937B2 (en) 2007-12-21 2015-03-17 Lemi Technology, Llc Tunersphere
US8577874B2 (en) 2007-12-21 2013-11-05 Lemi Technology, Llc Tunersphere
US20100325510A1 (en) * 2008-02-21 2010-12-23 Toshizo Nogami Transmission device, reception device, communication system, and communication method
US20100058134A1 (en) * 2008-08-28 2010-03-04 Canon Kabushiki Kaisha Information processing apparatus, and control method, program and recording medium therefor
US8494899B2 (en) 2008-12-02 2013-07-23 Lemi Technology, Llc Dynamic talk radio program scheduling
US20110283009A1 (en) * 2010-05-13 2011-11-17 Canon Kabushiki Kaisha Network streaming of a video stream over multiple communication channels
US8356109B2 (en) * 2010-05-13 2013-01-15 Canon Kabushiki Kaisha Network streaming of a video stream over multiple communication channels
US20110286345A1 (en) * 2010-05-20 2011-11-24 Thomson Licensing Method of determination of transmission quality of a communication link between a transmitter and a receiver and corresponding apparatus
US8681647B2 (en) * 2010-05-20 2014-03-25 Thomson Licensing Method of determination of transmission quality of a communication link between a transmitter and a receiver and corresponding apparatus
US8510763B2 (en) * 2010-06-14 2013-08-13 Microsoft Corporation Changing streaming media quality level based on current device resource usage
US20110307900A1 (en) * 2010-06-14 2011-12-15 Microsoft Corporation Changing streaming media quality level based on current device resource usage
US20120223939A1 (en) * 2011-03-02 2012-09-06 Noh Junyong Rendering strategy for monoscopic, stereoscopic and multi-view computer generated imagery, system using the same and recording medium for the same
US20160366475A1 (en) * 2014-04-22 2016-12-15 Tencent Technology (Shenzhen) Company Limited Method for controlling network media information publication, apparatus, and server
US10028019B2 (en) * 2014-04-22 2018-07-17 Tencent Technology (Shenzhen) Company Limited Method for controlling network media information publication, apparatus, and server
US20190229876A1 (en) * 2016-07-07 2019-07-25 Sony Corporation Wireless communication apparatus
US10841067B2 (en) * 2016-07-07 2020-11-17 Sony Corporation Wireless communication apparatus
US11343050B2 (en) * 2016-07-07 2022-05-24 Sony Corporation Wireless communication apparatus
US20220139536A1 (en) * 2018-07-17 2022-05-05 Icu Medical, Inc. Detecting missing messages from clinical environment
US11594326B2 (en) * 2018-07-17 2023-02-28 Icu Medical, Inc. Detecting missing messages from clinical environment
US11670416B2 (en) 2018-07-17 2023-06-06 Icu Medical, Inc. Tagging pump messages with identifiers that facilitate restructuring
US11783935B2 (en) 2018-07-17 2023-10-10 Icu Medical, Inc. Health checks for infusion pump communications systems
US11881297B2 (en) 2018-07-17 2024-01-23 Icu Medical, Inc. Reducing infusion pump network congestion by staggering updates
US11923076B2 (en) 2018-07-17 2024-03-05 Icu Medical, Inc. Converting pump messages in new pump protocol to standardized dataset messages

Also Published As

Publication number Publication date
EP1361690A3 (en) 2004-04-07
EP1130839A1 (en) 2001-09-05
JP2004007823A (en) 2004-01-08
EP1361690B1 (en) 2006-01-11
US20050144643A1 (en) 2005-06-30
US20040025184A1 (en) 2004-02-05
JP4623616B2 (en) 2011-02-02
DE60020672T2 (en) 2005-11-10
EP1361690A2 (en) 2003-11-12
JP3598110B2 (en) 2004-12-08
JP2001274861A (en) 2001-10-05
US6877038B2 (en) 2005-04-05
DE60020672D1 (en) 2005-07-14
EP1130839B1 (en) 2005-06-08
US20020004838A1 (en) 2002-01-10

Similar Documents

Publication Publication Date Title
US6792470B2 (en) Method and apparatus for communicating with data frames having priority levels
EP2061174B1 (en) Data communication system, data transmitting device and method, using probe packets and having a transmission buffer control
US6700893B1 (en) System and method for controlling the delay budget of a decoder buffer in a streaming data receiver
US7756127B2 (en) Mobile terminal
EP2532170B1 (en) Data flow control method and apparatus
US9306708B2 (en) Method and apparatus for retransmission decision making
EP2529528B1 (en) A method and apparatus for parsing a network abstraction-layer for reliable data communication
US8306058B2 (en) Communication system and techniques for transmission from source to destination
EP1301041A1 (en) Video data transmission method and apparatus
WO2002100067A1 (en) Real-time packetization and retransmission in streaming applications
JP3871661B2 (en) Multimedia content receiving apparatus and multimedia content receiving method
EP1781035A1 (en) Real-time scalable streaming system and method
Huszák et al. Selective retransmission of MPEG video streams over IP networks
Huszák et al. Source controlled semi-reliable multimedia streaming using selective retransmission in DCCP/IP networks
Huszák et al. TFRC-Based Selective Retransmission for Multimedia Applications.
DE60025541T2 (en) Method and apparatus for channel state based repeating of data packets
Razavi et al. Fuzzy control of adaptive timeout for video streaming over a Bluetooth interconnect
CN113612649A (en) Round trip estimation
CHOW TCP-friendly Video Transmission Over the Internet

Legal Events

Date Code Title Description
AS Assignment

Owner name: MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD., JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HAKENBERG, ROLF;BURMEISTER, CARSTEN;WIEBKE, THOMAS;REEL/FRAME:011939/0190

Effective date: 20010611

STCF Information on status: patent grant

Free format text: PATENTED CASE

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

FEPP Fee payment procedure

Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12

AS Assignment

Owner name: PANASONIC CORPORATION, JAPAN

Free format text: CHANGE OF NAME;ASSIGNOR:MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD.;REEL/FRAME:048513/0108

Effective date: 20081001

AS Assignment

Owner name: SOVEREIGN PEAK VENTURES, LLC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PANASONIC CORPORATION;REEL/FRAME:048829/0921

Effective date: 20190308

AS Assignment

Owner name: SOVEREIGN PEAK VENTURES, LLC, TEXAS

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE ADDRESS PREVIOUSLY RECORDED ON REEL 048829 FRAME 0921. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:PANASONIC CORPORATION;REEL/FRAME:048846/0041

Effective date: 20190308