WO2011000200A1 - Effective streaming media transmission method - Google Patents

Effective streaming media transmission method Download PDF

Info

Publication number
WO2011000200A1
WO2011000200A1 PCT/CN2009/076284 CN2009076284W WO2011000200A1 WO 2011000200 A1 WO2011000200 A1 WO 2011000200A1 CN 2009076284 W CN2009076284 W CN 2009076284W WO 2011000200 A1 WO2011000200 A1 WO 2011000200A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
data
frame
stamp
inter
Prior art date
Application number
PCT/CN2009/076284
Other languages
French (fr)
Chinese (zh)
Inventor
邹联忠
Original Assignee
深圳市融创天下科技发展有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市融创天下科技发展有限公司 filed Critical 深圳市融创天下科技发展有限公司
Publication of WO2011000200A1 publication Critical patent/WO2011000200A1/en

Links

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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]

Definitions

  • the present invention relates to the field of wireless streaming media, and in particular, to an efficient streaming media transmission method.
  • connection-based TCP protocol can provide reliable data transmission capabilities
  • flow control mechanism is based on the low bit error rate of the wired network and low latency.
  • BDPs network bandwidth extension products
  • AMDD additive increase multiplicative decrease
  • the unfair RTT in TCP congestion control causes unfair sharing of bandwidth by concurrent TCP flows with different RTTs .
  • TCP Transmission Control Protocol
  • the sender manages the information of the transmitted data packet through the transmission window and the timer, and the receiving end sends back an ACK acknowledge character (ACKnowledge Character) response to the received correct data packet, and the ACK response itself will also consume a considerable amount.
  • Network and processor resources In addition, in the TCP protocol, for data packet retransmission, data that has been sent but not yet confirmed is stored in the TCP protocol stack. For a high-concurrency wireless streaming server, the cache for each user is extremely large. The waste of host resources is more serious in wireless networks with large network bandwidth and high bandwidth jitter rate.
  • UDP User Datagram Protocol
  • data transmission Loss there is no congestion window, congestion control, and data caching as described in TCP.
  • the UDP protocol does not provide the error control function provided by the T CP.
  • some reliable data transmission based on UDP is also to buffer the transmitted data and wait for the ACK response. This wastes resources for streaming servers with a large amount of data and large users, and reduces the amount of concurrent servers. For example, if the server sends 500 packets, the server concurrency is 8000, and the size of each packet is 1K, then the server cache needs 500x8000xlK about 4G of memory. This has a huge impact on the performance of the server.
  • the present invention aims to provide an efficient streaming media transmission method based on the UDP protocol.
  • an efficient streaming video service on-demand scheme is proposed, which can improve the system. The user's experience and the resources of the server itself.
  • the present invention provides an efficient streaming media transmission method, and the specific steps of the method are as follows:
  • Step S1 Establish a video file on the server, the video file includes a plurality of data frames, and each data frame corresponds to a frame serial number and a frame inter-frame stamp;
  • Step S2 According to the length of the data frame, each data frame is divided into several data packets, or several data frames are combined into one data packet, and each data packet corresponds to one packet serial number and one packet time stamp. ;
  • Step S3 The server sends a data packet to the client, and records the packet serial number and the packet stamp of the data packet into the queue of the memory;
  • Step S4 The client detects whether there is a lost data packet according to the packet serial number, detects that there is a packet loss, returns the lost packet serial number to the server, and the server finds the corresponding according to the packet serial number in the queue in the memory. Baggage stamp,
  • Step S5 According to the mapping relationship between the inter-packet stamp and the inter-frame stamp, find one or more data frames corresponding to the lost data packet in the video file, and divide one data frame into several data packets, or Several data frames form a packet and then send the lost packet to the client.
  • the invention has the beneficial effects that the method of the invention can avoid the data cached by the server and retransmit the data that has been sent, which can greatly save the resources of the server.
  • FIG. 1 is a flow chart of a method for efficiently transmitting a high-efficiency streaming media according to the present invention
  • FIG. 2 is a diagram showing a data frame sequence number, a data frame length, and a corresponding frame inter-frame stamp of a local video file of the server;
  • FIG. 3 is a diagram showing a packet sequence number, a packet length, and a corresponding packet stamp after the video file shown in FIG. 2 is packaged according to the method of the present invention
  • FIG. 4 is a queue representation diagram corresponding to the packet sequence and the inter-packet stamp stored in the memory after the server sends the data packet shown in FIG. 3;
  • FIG. 5 is a schematic diagram of a server sending a data packet according to the present invention.
  • FIG. 6 is a diagram showing the relationship between the memory footprint of the prior art server and the amount of users sent by the server;
  • FIG. 7 is the memory footprint and the amount of users of the method for sending the streaming media by the server. Diagram of the relationship.
  • the present invention designs an efficient streaming media on demand scheme based on the UDP protocol, which is based on the feature of playing an on-demand file, and extracts the strategy of not caching the already transmitted data, thereby greatly saving server resources. .
  • FIG. 1 is a schematic flow chart of the method of the present invention, and the specific steps of the method are as follows:
  • Step S1 Establish a video file on the server, the video file includes a plurality of data frames, each data frame corresponds to a frame serial number and a frame inter-frame stamp; wherein the data frame can be a video frame or an audio
  • the interval between frames is equal, that is, one frame is separated by 0.12000 seconds.
  • Step S2 Dividing each data frame into several data packets according to the length of the data frame, or combining several data frames into one data packet, each data packet corresponding to a packet serial number and an inter-packet stamp ;
  • S21 First determine the packet length L in a wireless transmission environment, the size of each data frame is n, when n is greater than L ⁇ , the frame is cut into ⁇ /L+1 data packets, before n/ Each L packet has a length of L and the last packet has a length of 0%!
  • n/L is the rounding function after division, and % is the remainder function after division; when n is less than L ⁇ , the data is added by the frame or subsequent data frames smaller than L to form a data length less than or equal to L data packet;
  • S22 establishing a mapping relationship between the inter-frame stamp and the frame inter-frame stamp, when n is greater than L ⁇ , wherein the n /L+l records have the same inter-frame stamp, that is, the frame inter-frame stamp of the data frame; If n is smaller than L ⁇ , the inter-packet stamp recorded by the data packet is the frame inter-frame stamp corresponding to the first data frame whose length is less than L.
  • FIG. 3 is a diagram showing a packet sequence number, a packet length, and a corresponding packet interval after the video file shown in FIG. 2 is packaged according to the method of the present invention:
  • a packet length L is set equal to 1200
  • the data frame length n of frame sequence 1 in Figure 2 is 2853, so n is greater than L
  • the length of the 2 data packets is 1200
  • the length of the third data packet is ! %L, which is the remainder 453 of 2853/1200.
  • the first column is the packet length corresponding to the packet sequence numbers 1, 2, and 3.
  • n is equal to L ⁇ , the frame is treated directly as a packet.
  • Step S3 The server sends a data packet to the client, and records the packet serial number and the packet stamp of the data packet into the queue of the memory;
  • the first column 1, 4, 5...18 is the packet serial number, where 1 is the third of the three packets.
  • a packet number, 4 is the packet number of 0.12000 between packets.
  • Step S4 The client detects whether there is a lost data packet according to the packet serial number, detects that there is a packet loss, returns the lost packet serial number to the server, and the server finds the corresponding according to the packet serial number in the queue in the memory.
  • the package is marked as follows:
  • the lost packet sequence number of the client to feedback is 1, 4, so the packet serial number 1 and 4 can be found in the memory of the server (as shown in FIG. 4), and the corresponding package can be found respectively.
  • Time stamp for example, the lost packet sequence number of the client to feedback is 1, 4, so the packet serial number 1 and 4 can be found in the memory of the server (as shown in FIG. 4), and the corresponding package can be found respectively.
  • the missing packet sequence number returned by the client is 2 or 3, so the packet serial number 2 or 3 (as shown in FIG. 4) and the corresponding packet stamp cannot be found in the memory of the server, so The previous packet sequence number 1 closest to the serial number is found in the sequence number queue, and the previous packet sequence number closest to the packet sequence number 2 or 3 is only the packet sequence number 1.
  • Step S5 According to the mapping relationship between the inter-packet stamp and the inter-frame stamp, find one or more data frames corresponding to the lost data packet in the video file, and divide one data frame into several data packets, or Several data frames form a packet and then send the lost packet to the client.
  • n is less than L ⁇ , then the first frame length is less than L, and the frame and subsequent data less than n are found by the inter-packet stamp.
  • a frame sequence number of less than 1200 (shown in Figure 2) is 0.12000, so a packet of length 253 and less than 1 200 consisting of frame sequence numbers 2, 3 is resent to the client.
  • the data packet is the lost data packet, and the (D+1) data packet is resent to the client.
  • the lost packet sequence number of the client to feedback is 2 or 3, where the previous packet sequence number closest to the packet sequence number 2 or 3 is only the packet sequence number 1, and the packet interval is 0.00000.
  • the method of the present invention can avoid the data cached by the server and retransmit the already sent data, which can greatly save the resources of the server.
  • Figure 6 shows the relationship between the amount of ordinary streaming server users and memory.
  • Figure 7 shows the relationship between the amount of streaming server users and memory after using the method described in this paper. It can be seen that after using this technology, the memory usage is significantly reduced. The amount is significantly improved. Server performance improvements are even more pronounced in wireless networks with large delays.

Abstract

The present invention refers to an effective streaming media transmission method based on data transmission protocol of User Datagram Protocol (UDP). The method includes the following steps: building a video document at a server, wherein the document includes several data frames and each data frame corresponds to one frame serial number and one frame time stamp; separating each data frame into several data packets, or combining several data frames to form one data packet, wherein each data packet corresponds to a packet serial number and a packet time stamp; sending data packets to a client and storing the packet serial numbers and packet time stamps of the data packets in the queue of memory by the server; detecting by the client whether packet loss occurs, and if yes, feeding the packet serial number of the lost packet back to the server; finding out the corresponding packet time stamp according to the packet serial number in the queue by the server; finding out the data frame corresponding to the lost packet based on the relationship between a packet time stamp and a frame time stamp, separating one data frame into several data packets or combining several data frames to form one data packet, and sending the lost data packet to the client.

Description

说明书  Instruction manual
Title of Invention:一种高效的流媒体传输方法Title of Invention: An efficient streaming media transmission method
#細或 #细 or
[1] 本发明涉及无线流媒体领域, 尤其涉及一种高效的流媒体传输方法。  [1] The present invention relates to the field of wireless streaming media, and in particular, to an efficient streaming media transmission method.
[2] 随着移动通信技术和视频压缩方法的迅速发展,利用无线 IP网络传输实吋视频流 技术受到了人们的关注。 在无线 IP网络和尽力服务 (best-effort) 的 Internet中传 输数据吋会发生丢包、 超吋等传输差错。 丢包率的数值一般比较小, 但是对用 户的影响非常大, 是影响视频质量的杀手, 尤其是目前使用的压缩比率都比较 高, 一个视频帧的丢失或损坏同样会影响到其它相关帧的解压缩, 直接损害接 收端视频播放的流畅性和清晰性。 因此, 需要在视频传输的同吋进行传输的差 错控制处理。 [2] With the rapid development of mobile communication technology and video compression methods, the use of wireless IP networks to transmit real video streaming technology has attracted people's attention. When transmitting data over a wireless IP network and a best-effort Internet, packet errors such as packet loss and overload can occur. The value of the packet loss rate is generally small, but it has a great impact on users. It is a killer that affects video quality. In particular, the compression ratio currently used is relatively high. Loss or damage of a video frame will also affect other related frames. Decompression directly damages the smoothness and clarity of the video playback at the receiving end. Therefore, error control processing for transmission at the same time of video transmission is required.
[3] 基于连接的 TCP协议虽然能提供可靠的数据传输能力,但是它的流量控制机制 是基于有线网络的低误码率及低吋延的。 随着网络带宽吋延产品 (BDP)的增加, 通常的 TCP协议开始变的低效。 这是因为它的 AIMD (additive increase multiplicative decrease) 算法彻底减少了 TCP拥塞窗口, 但不能快速的恢复可用 带宽。 另外, TCP拥塞控制中的不公平的 RTT(ROUnd-Trip Time分组的往返吋间;)造 成了拥有不同 RTT的并发 TCP流不公平地分享带宽。 尽管在小的 BDP网络中使用 通常的 TCP实现来相对平等的共享带宽, 但在拥有大量 BDP的无线网络中, 通常 不同 RTT的并发 TCP流就必须承受严重的不公平的问题。 在 TCP协议中, 发送端 通过发送窗和计吋器管理所发送的数据包的信息, 接收端对收到的正确数据包 回送 ACK确认字符 (ACKnowledge Character) 响应, ACK响应本身也将耗费相当 多的网络和处理器资源。 另外在 TCP协议中, 为了数据包重传, 发送过但是还未 确认的数据都保存在 TCP协议栈中, 对高并发量的无线流媒体服务器来说, 对每 一个用户都缓存会极大的浪费主机资源, 在网络吋延大, 带宽抖动率高的无线 网络中更加严重。 [3] Although the connection-based TCP protocol can provide reliable data transmission capabilities, its flow control mechanism is based on the low bit error rate of the wired network and low latency. As network bandwidth extension products (BDPs) increase, the usual TCP protocols become inefficient. This is because its AMDD (additive increase multiplicative decrease) algorithm completely reduces the TCP congestion window, but cannot quickly restore the available bandwidth. In addition, the unfair RTT in TCP congestion control (the round trip between R OU nd-Trip Time packets) causes unfair sharing of bandwidth by concurrent TCP flows with different RTTs . Although the usual TCP implementation is used in a small BDP network to achieve relatively equal shared bandwidth, in a wireless network with a large number of BDPs, concurrent TCP streams of different RTTs usually have to suffer from serious unfairness problems. In the TCP protocol, the sender manages the information of the transmitted data packet through the transmission window and the timer, and the receiving end sends back an ACK acknowledge character (ACKnowledge Character) response to the received correct data packet, and the ACK response itself will also consume a considerable amount. Network and processor resources. In addition, in the TCP protocol, for data packet retransmission, data that has been sent but not yet confirmed is stored in the TCP protocol stack. For a high-concurrency wireless streaming server, the cache for each user is extremely large. The waste of host resources is more serious in wireless networks with large network bandwidth and high bandwidth jitter rate.
[4] 而基于 UDP协议, UDP即 (User Datagram Protocol)用户数据报协议, 的数据传 输, 没有 TCP中所说的拥塞窗口, 拥塞控制, 及数据缓存。 但 UDP协议不提供 T CP提供的差错控制功能。 而现在有的以 UDP为基础实现的可靠的数据传输, 也 是先缓存发送过的数据再等待 ACK响应。 这对数据量及用户量大的流服务器来 说造成资源的浪费, 而且会降低服务器的并发量。 例如, 服务器发送 500个数据 包, 服务器并发量为 8000, 而每个数据包的大小为 1K, 那么服务器的缓存就需 要 500x8000xlK约 4G的内存。 这对服务器的性能有极大的影响。 [4] Based on the UDP protocol, UDP (User Datagram Protocol) User Datagram Protocol, data transmission Loss, there is no congestion window, congestion control, and data caching as described in TCP. However, the UDP protocol does not provide the error control function provided by the T CP. Nowadays, some reliable data transmission based on UDP is also to buffer the transmitted data and wait for the ACK response. This wastes resources for streaming servers with a large amount of data and large users, and reduces the amount of concurrent servers. For example, if the server sends 500 packets, the server concurrency is 8000, and the size of each packet is 1K, then the server cache needs 500x8000xlK about 4G of memory. This has a huge impact on the performance of the server.
[5] 鉴于此, 实有必要提出一种改进的方法以克服现有技术的缺陷。 [5] In view of this, it is necessary to propose an improved method to overcome the deficiencies of the prior art.
[6] 有鉴于此, 本发明目的在于提供一种基于 UDP协议的一种高效的流媒体传输方 法, 根据无线网络的特点, 提出一种高效的流媒体视频业务点播方案, 能很好 的提高用户的体验效果, 及降低服务器自身的资源。 [6] In view of this, the present invention aims to provide an efficient streaming media transmission method based on the UDP protocol. According to the characteristics of the wireless network, an efficient streaming video service on-demand scheme is proposed, which can improve the system. The user's experience and the resources of the server itself.
[7] 为了解决上述问题本发明提供一种高效的流媒体传输方法方法, 该方法具体步 骤如下:  [7] In order to solve the above problems, the present invention provides an efficient streaming media transmission method, and the specific steps of the method are as follows:
[8] 步骤 S1 : 在服务端建立一个视频文件, 该视频文件包括若干数据帧, 每一个数 据帧对应一个帧序列号和一个帧吋间戳;  [8] Step S1: Establish a video file on the server, the video file includes a plurality of data frames, and each data frame corresponds to a frame serial number and a frame inter-frame stamp;
[9] 步骤 S2: 根据数据帧的长度将每一数据帧分割成若干数据包, 或者将几个数据 帧组合成一个数据包, 每个数据包都对应一个包序列号和一个包吋间戳; [9] Step S2: According to the length of the data frame, each data frame is divided into several data packets, or several data frames are combined into one data packet, and each data packet corresponds to one packet serial number and one packet time stamp. ;
[10] 步骤 S3: 服务端向客户端发送数据包, 并将该数据包的包序列号与包吋间戳记 录到内存的队列里面; [10] Step S3: The server sends a data packet to the client, and records the packet serial number and the packet stamp of the data packet into the queue of the memory;
[11] 步骤 S4: 客户端根据包序列号检测有无丢失的数据包, 检测有包丢失吋, 将丢 失包序列号反馈至服务端, 服务端根据内存中的队列中包序列号找到对应的包 吋间戳,  [11] Step S4: The client detects whether there is a lost data packet according to the packet serial number, detects that there is a packet loss, returns the lost packet serial number to the server, and the server finds the corresponding according to the packet serial number in the queue in the memory. Baggage stamp,
[12] 步骤 S5: 根据包吋间戳与帧吋间戳的映射关系, 在视频文件中找到丢失数据包 对应的一个或多个数据帧, 将一个数据帧分割成几个数据包, 或者将几个数据 帧组成一个数据包, 再向客户端发送丢失的数据包。  [12] Step S5: According to the mapping relationship between the inter-packet stamp and the inter-frame stamp, find one or more data frames corresponding to the lost data packet in the video file, and divide one data frame into several data packets, or Several data frames form a packet and then send the lost packet to the client.
[13] 本发明的有益效果在于, 使用本发明方法能避免了服务器缓存已经传过的数据 及重传已经发送过的数据, 能极大的节省服务器的资源。 [13] The invention has the beneficial effects that the method of the invention can avoid the data cached by the server and retransmit the data that has been sent, which can greatly save the resources of the server.
國删 [14] 下面将结合附图及实施例对本发明作进一步说明, 附图中: Country deletion [14] The present invention will be further described below in conjunction with the accompanying drawings and embodiments, in which:
[15] 图 1为本发明高效流媒体传输方法的流程框图; [15] FIG. 1 is a flow chart of a method for efficiently transmitting a high-efficiency streaming media according to the present invention;
[16] 图 2为服务端本地视频文件的数据帧序列号、 数据帧长度以及对应帧吋间戳的 示图;  [16] FIG. 2 is a diagram showing a data frame sequence number, a data frame length, and a corresponding frame inter-frame stamp of a local video file of the server;
[17] 图 3为将图 2所示的视频文件按本发明方法打包后的包序列号、 数据包长度以及 对应的包吋间戳的示图;  [17] FIG. 3 is a diagram showing a packet sequence number, a packet length, and a corresponding packet stamp after the video file shown in FIG. 2 is packaged according to the method of the present invention;
[18] 图 4为服务端将图 3所示的数据包发送后存储在内存中的包序列与包吋间戳对应 的队列表示图; [18] FIG. 4 is a queue representation diagram corresponding to the packet sequence and the inter-packet stamp stored in the memory after the server sends the data packet shown in FIG. 3;
[19] 图 5为本发明服务端发送数据包的示意图; [19] FIG. 5 is a schematic diagram of a server sending a data packet according to the present invention;
[20] 图 6为一种现有技术服务端发送流媒体吋的内存占用量与用户量的关系图; [21] 图 7为本发明方法服务端发送流媒体吋的内存占用量与用户量的关系图。  [20] FIG. 6 is a diagram showing the relationship between the memory footprint of the prior art server and the amount of users sent by the server; [21] FIG. 7 is the memory footprint and the amount of users of the method for sending the streaming media by the server. Diagram of the relationship.
 difficult
[22] 本发明设计一种基于 UDP协议的高效的流媒体点播方案, 该方案根据播放的是 点播文件这一特点, 釆取不缓存已经发送过的数据这一策略, 极大地节约服务 器的资源。  [22] The present invention designs an efficient streaming media on demand scheme based on the UDP protocol, which is based on the feature of playing an on-demand file, and extracts the strategy of not caching the already transmitted data, thereby greatly saving server resources. .
[23] 下面结合附图来说明本发明具体实施。  [23] The specific implementation of the present invention will be described below with reference to the accompanying drawings.
[24] 图 1为本发明方法的流程示意图, 该方法具体步骤如下:  [24] FIG. 1 is a schematic flow chart of the method of the present invention, and the specific steps of the method are as follows:
[25] 步骤 S1 : 在服务端建立一个视频文件, 该视频文件包括若干数据帧, 每一个数 据帧对应一个帧序列号和一个帧吋间戳; 其中数据帧可以为视频帧或者是音频  [25] Step S1: Establish a video file on the server, the video file includes a plurality of data frames, each data frame corresponds to a frame serial number and a frame inter-frame stamp; wherein the data frame can be a video frame or an audio
[26] 结合图 2所示, 为服务端本地视频文件的数据帧序列号、 数据帧长度以及对应 帧吋间戳的示图, 其中图中第一列: 1、 2、 3、 ...18为数据帧序列号, 第二列 len =2853、 len=167、 len=68、 ...len=16为对应数据帧长度; 第三列 time=0.00000、 ti time=0.24000、 ...time=2.16000为对应的帧吋间戳。 此处帧吋间戳 的间隔是相等的即隔 0.12000秒为一帧。 [26] As shown in FIG. 2, it is a data frame serial number, a data frame length, and a corresponding frame inter-frame stamp of the local video file of the server, wherein the first column in the figure: 1, 2, 3, ... 18 is the data frame serial number, the second column len = 2853, len=167, len=68, ... len=16 is the corresponding data frame length; the third column time=0.00000, ti time=0.24000, ...time =2.16000 is the corresponding frame inter-frame stamp. Here, the interval between frames is equal, that is, one frame is separated by 0.12000 seconds.
[27] 步骤 S2: 根据数据帧的长度将每一数据帧分割成若干数据包, 或者将几个数据 帧组合成一个数据包, 每个数据包都对应一个包序列号和一个包吋间戳; [29] S21 : 先确定一个无线传输环境下的数据包长度 L, 每个数据帧的大小为 n, 当 n 大于 L吋, 将该帧切割成 η/L+l个数据包, 前 n/L个数据包每个长度为 L, 最后一 个数据包长度为0%!^, 其中 n/L为作除后取整函数, %为作除后取余函数; 当 n小 于 L吋, 由该帧或者与后续的小于 L的数据帧相加组成一个数据长度小于或等于 L 的数据包; [27] Step S2: Dividing each data frame into several data packets according to the length of the data frame, or combining several data frames into one data packet, each data packet corresponding to a packet serial number and an inter-packet stamp ; [29] S21: First determine the packet length L in a wireless transmission environment, the size of each data frame is n, when n is greater than L吋, the frame is cut into η/L+1 data packets, before n/ Each L packet has a length of L and the last packet has a length of 0%! ^, where n/L is the rounding function after division, and % is the remainder function after division; when n is less than L吋, the data is added by the frame or subsequent data frames smaller than L to form a data length less than or equal to L data packet;
[30] S22: 建立包吋间戳与帧吋间戳的映射关系, 当 n大于 L吋, 其中 n/L+l记录具有 相同的吋间戳, 即该数据帧的帧吋间戳; 当 n小于 L吋, 该数据包记录的包吋间 戳为第一个长度小于 L的数据帧对应的帧吋间戳。 [30] S22: establishing a mapping relationship between the inter-frame stamp and the frame inter-frame stamp, when n is greater than L吋, wherein the n /L+l records have the same inter-frame stamp, that is, the frame inter-frame stamp of the data frame; If n is smaller than L吋, the inter-packet stamp recorded by the data packet is the frame inter-frame stamp corresponding to the first data frame whose length is less than L.
[31] 图 3所示为将图 2所示的视频文件按本发明方法打包后的包序列号、 数据包长度 以及对应的包吋间戳的示图: 先设定一个数据包长度 L等于 1200, 图 2中帧序列 1 的数据帧长度 n为 2853, 因此 n大于 L, 将帧序列 1数据帧切割成 n/L+l个数据包, 即 2853/1200+1=3个数据, 前 2个数据包长度为 1200, 第 3个数据包长度为! %L, 即 2853/1200的余数 453, 由此图 3中, 第一列为包序列号 1、 2、 3对应的数据包长 度分别为 len=1200、 len=1200、 len=453 , 且为将数据帧 1切割而得, 因此包序列 号 1、 2、 3对应的吋间与帧序列号 1的吋间戳相同, 都为 time=0.00000、 time=0.00 000、 time=0.00000;  [31] FIG. 3 is a diagram showing a packet sequence number, a packet length, and a corresponding packet interval after the video file shown in FIG. 2 is packaged according to the method of the present invention: First, a packet length L is set equal to 1200, the data frame length n of frame sequence 1 in Figure 2 is 2853, so n is greater than L, and the frame sequence 1 data frame is cut into n/L+1 data packets, that is, 2853/1200+1=3 data, before The length of the 2 data packets is 1200, and the length of the third data packet is ! %L, which is the remainder 453 of 2853/1200. Thus, in Figure 3, the first column is the packet length corresponding to the packet sequence numbers 1, 2, and 3. They are len=1200, len=1200, len=453, and are obtained by cutting data frame 1. Therefore, the time between the sequence numbers 1, 2, and 3 and the frame number of the frame number 1 are the same. Time=0.00000, time=0.00 000, time=0.00000;
[32] 在图 2中, 帧序列号 2的长度为 167小于 L(1200)、 与后续帧序列号 3长度为 68也 小于 L, 且 167加 68等于 235满足小于 1200, 因此帧序列号 2、 3组成一个数据包 ( 图 3中的数据包号 4、 数据包长度为 235、 对应的包吋间戳为第一个小于 L的数据 帧对应的帧吋间戳, 即帧序列号 2对应的帧吋间戳 time=0.12000) 。  [32] In FIG. 2, the frame sequence number 2 has a length of 167 less than L (1200), and the subsequent frame sequence number 3 has a length of 68 and is less than L, and 167 plus 68 equals 235 to satisfy less than 1200, so the frame serial number 2 3, a data packet is formed (the packet number 4 in FIG. 3, the packet length is 235, and the corresponding inter-packet stamp is the frame inter-frame stamp corresponding to the first data frame smaller than L, that is, the frame serial number 2 corresponds to Frame time stamp time=0.12000).
[33] 如果 n等于 L吋, 则将该帧直接作为一个数据包。  [33] If n is equal to L吋, the frame is treated directly as a packet.
[34] 后续数据的打包过程由上述类推, 在此不再赞述。  [34] The packaging process of subsequent data is analogous to the above, and will not be mentioned here.
[35] 步骤 S3: 服务端向客户端发送数据包, 并将该数据包的包序列号与包吋间戳记 录到内存的队列里面;  [35] Step S3: The server sends a data packet to the client, and records the packet serial number and the packet stamp of the data packet into the queue of the memory;
[36] S31 : 当 n大于 L吋, 队列中只记录 n/L+l个数据包的第一个数据包的包序列号以 及对应的包吋间戳;  [36] S31: When n is greater than L吋, only the packet sequence number of the first packet of n/L+1 packets and the corresponding packet interval are recorded in the queue;
[37] S32: 当 n小于 L吋, 队列中记录几个小于 n的数据帧相加组成一个数据长度小于 或等于 L的数据包的包序列号以及第一个长度小于 L的数据帧对应的包吋间戳。 [38] 请参考图 3和图 5, 服务端按照打包好的数据包依照包序列号 1、 2、 3...18向客 户端发送数据包, [37] S32: When n is smaller than L吋, the data frames in the queue that are smaller than n are added to form a packet sequence number of a data packet whose data length is less than or equal to L and the first data frame whose length is less than L. Packing time stamp. [38] Please refer to FIG. 3 and FIG. 5, the server sends a data packet to the client according to the package serial number 1, 2, 3...18 according to the packaged data packet.
[39] 如图 4所示, 为服务端内存队列中记录的信息, 第一列 1、 4、 5...18为包序列号 , 其中 1为 3个包吋间戳为 0.00000中的第一个数据包号, 4为包吋间为 0.12000的 数据包号。  [39] As shown in FIG. 4, for the information recorded in the server memory queue, the first column 1, 4, 5...18 is the packet serial number, where 1 is the third of the three packets. A packet number, 4 is the packet number of 0.12000 between packets.
[40] 步骤 S4: 客户端根据包序列号检测有无丢失的数据包, 检测有包丢失吋, 将丢 失包序列号反馈至服务端, 服务端根据内存中的队列中包序列号找到对应的包 吋间戳, 具体步骤如下:  [40] Step S4: The client detects whether there is a lost data packet according to the packet serial number, detects that there is a packet loss, returns the lost packet serial number to the server, and the server finds the corresponding according to the packet serial number in the queue in the memory. The package is marked as follows:
[41] S41 : 如果在队列中能够査找到客户端反馈的丢失包序列号, 则说明丢失的数 据包为 n大于 L吋的第一个数据包或者 n小于 L吋的几个数据帧组成的数据包, 月艮 务器找到包序列号对应包吋间戳; [41] S41: If the missing packet sequence number fed back by the client can be found in the queue, it indicates that the lost packet is composed of the first data packet with n greater than L吋 or several data frames with n smaller than L吋. The data packet, the server finds the packet serial number corresponding to the packet interval;
[42] 本步骤中, 例如客户端向反馈的丢失的包序列号为 1、 4, 因此在服务端的内存 中可以找到包序列号 1、 4 (如图 4所示) 分别可以找到对应的包吋间戳。 [42] In this step, for example, the lost packet sequence number of the client to feedback is 1, 4, so the packet serial number 1 and 4 can be found in the memory of the server (as shown in FIG. 4), and the corresponding package can be found respectively. Time stamp.
[43] S42: 如果在队列中不能査找到客户端反馈的丢失包序列号, 则说明这是一个 大于 L的数据帧中的一个数据包, 则在序号吋间队列中找到与这个包序列号相隔 最近的前一个包序列号, 找到该前一个序列号对应包吋间戳; [43] S42: If the lost packet sequence number fed back by the client cannot be found in the queue, it indicates that this is a data packet in a data frame larger than L, and the serial number of the packet is found in the serial number queue. Between the nearest previous serial number, find the previous serial number corresponding to the packet;
[44] 例如例客户端向反馈的丢失的包序列号为 2或者 3, 因此在服务端的内存中不能 找到包序列号 2或者 3 (如图 4所示) 以及对应的包吋间戳, 因此在序号吋间队列 中找到与这个序列号相隔最近的前一个包序列号 1, 此处与包序列号 2或者 3相隔 最近的前一个包序列号只有包序列号 1。 [44] For example, the missing packet sequence number returned by the client is 2 or 3, so the packet serial number 2 or 3 (as shown in FIG. 4) and the corresponding packet stamp cannot be found in the memory of the server, so The previous packet sequence number 1 closest to the serial number is found in the sequence number queue, and the previous packet sequence number closest to the packet sequence number 2 or 3 is only the packet sequence number 1.
[45] 步骤 S5: 根据包吋间戳与帧吋间戳的映射关系, 在视频文件中找到丢失数据包 对应的一个或多个数据帧, 将一个数据帧分割成几个数据包, 或者将几个数据 帧组成一个数据包, 再向客户端发送丢失的数据包。 [45] Step S5: According to the mapping relationship between the inter-packet stamp and the inter-frame stamp, find one or more data frames corresponding to the lost data packet in the video file, and divide one data frame into several data packets, or Several data frames form a packet and then send the lost packet to the client.
[46] S51 : 如果在队列中能找到丢失包序列号, n大于 L吋, 则由包吋间戳直接获得 对应的帧吋间戳, 由帧吋间戳读取视频文件中的数据帧, 并将数据帧分割成 n/L+[46] S51: If the missing packet serial number can be found in the queue, n is greater than L吋, then the corresponding frame inter-frame stamp is directly obtained from the inter-packet stamp, and the data frame in the video file is read by the inter-frame stamp. And divide the data frame into n/L+
1个数据包, 向客户端重新发送第一个数据包; n小于 L吋, 则由包吋间戳找到第 一个帧长度小于 L的帧吋间戳, 该帧和后续的小于 n的数据帧相加组成一个数据 长度小于或等于 L的数据包向客户端重新发送; [47] 例如丢失包序列号 1, 对应的包吋间戳为 0.00000, 由包吋间戳 0.00000找到对应 的帧吋间戳 0.00000, 帧吋间戳 0.00000读取视频文件中的数据帧 1, 并将数据帧 分割成 2853/1200+1=3个数据包, 向客户端重新发送第一个数据包; 丢失包序列 号 4吋包吋间戳为 0.12000, 由于该包吋间戳就是第一个小于 1200的帧序列号为 2 (图 2所示) 的帧吋间戳 0.12000, 因此由帧序列号 2、 3组成一个长度为 253小于 1 200的数据包向客户端重新发送。 1 data packet, resending the first data packet to the client; n is less than L吋, then the first frame length is less than L, and the frame and subsequent data less than n are found by the inter-packet stamp. Adding frames to form a data packet whose data length is less than or equal to L is resent to the client; [47] For example, if the packet serial number 1 is lost, the corresponding inter-packet stamp is 0.00000, the corresponding inter-frame stamp 0.00000 is found by the inter-band stamp 0.00000, and the data frame 1 in the video file is read by the inter-frame stamp 0.00000, and Divide the data frame into 2853/1200+1=3 packets, and resend the first packet to the client; the lost packet sequence number 4 packet is 0.12000, because the packet is the first one. A frame sequence number of less than 1200 (shown in Figure 2) is 0.12000, so a packet of length 253 and less than 1 200 consisting of frame sequence numbers 2, 3 is resent to the client.
[48] S52: 如果在队列中不能査找到丢失包序列号, 根据该前一个序列号对应包吋 间戳对应帧吋间戳的数据帧读出来, 把这个数据帧切割与几个数据包, 将丢失 包序列号与该前一个序列号相减得出差值 D, 其中 (η/L+l) 个数据包中的第 (D+[48] S52: If the lost packet serial number cannot be found in the queue, the data frame is cut and several data packets according to the data frame of the previous serial number corresponding to the inter-frame stamp corresponding to the inter-frame stamp. Subtracting the missing packet sequence number from the previous sequence number yields a difference D , where (n/L+l) packets are in the (D+
1)数据包即丢失的数据包, 将第 (D+1)数据包重新发送给客户端。 1) The data packet is the lost data packet, and the (D+1) data packet is resent to the client.
[49] 例如例客户端向反馈的丢失的包序列号为 2或者 3, 此处与包序列号 2或者 3相隔 最近的前一个包序列号只有包序列号 1, 包吋间戳 0.00000找到对应的帧吋间戳 0. 00000, 帧吋间戳 0.00000读取视频文件中的数据帧 1, 并将数据帧分割成 2853/12 00+1=3个数据包, 将丢失包序列号 2或者 3与该前一个序列号 1相减得出差值 D等 于 1或 2, 其中 3个数据包中的第 (D+1)即第 1+1=2个或者 2+1=3个数据包即丢失的 数据包, 将第 2个 (包序列号为 2, 长度为 1200) 或者第 3个数据包 (包序列号为 3, 长度为 453) 重新发送给客户端。 [49] For example, the lost packet sequence number of the client to feedback is 2 or 3, where the previous packet sequence number closest to the packet sequence number 2 or 3 is only the packet sequence number 1, and the packet interval is 0.00000. Frame inter-frame stamp 0. 00000, frame inter-frame stamp 0.00000 reads data frame 1 in the video file, and divides the data frame into 2853/12 00+1=3 packets, which will lose the packet sequence number 2 or 3. Subtracting the previous sequence number 1 to obtain a difference D equal to 1 or 2, wherein the (D+1) of the 3 packets is the 1+1=2 or 2+1=3 packets. For the lost packet, resend the second (packet serial number 2, length 1200) or the third data packet (packet serial number 3, length 453) to the client.
[50] 使用本发明所述的这种方法能避免了服务器缓存已经改过过的数据及重传已经 发送过的数据, 能极大的节省服务器的资源。 图六是普通流服务器用户量与内 存的关系, 图七为釆用本文所述方法之后的流服务器用户量与内存关系, 从中 可以看到釆用本技术后, 内存使用量明显减小, 并发量明显提高。 在延迟大的 无线网络中对服务器性能改善更加明显。 [50] The method of the present invention can avoid the data cached by the server and retransmit the already sent data, which can greatly save the resources of the server. Figure 6 shows the relationship between the amount of ordinary streaming server users and memory. Figure 7 shows the relationship between the amount of streaming server users and memory after using the method described in this paper. It can be seen that after using this technology, the memory usage is significantly reduced. The amount is significantly improved. Server performance improvements are even more pronounced in wireless networks with large delays.
[51] 以上所述仅为本发明的较佳实施例而已, 并不用以限制本发明, 凡在本发明的 精神和原则之内所作的任何修改、 等同替换和改进等, 均应包含在本发明的保 护范围之内。 The above is only the preferred embodiment of the present invention, and is not intended to limit the present invention. Any modifications, equivalents, and improvements made within the spirit and scope of the present invention should be included in the present invention. Within the scope of protection of the invention.

Claims

权利要求书 Claim
[Claim 1] 1、 一种流媒体传输方法, 该方法基于 UDP的数据传输协议, 其特 征在于, 包括以下步骤:  [Claim 1] 1. A streaming media transmission method, which is based on a UDP data transmission protocol, and is characterized in that it comprises the following steps:
步骤 S1 : 在服务端建立一个视频文件, 该视频文件包括多个数据 帧, 每一个数据帧对应一个帧序列号和一个帧吋间戳;  Step S1: Establish a video file on the server, where the video file includes multiple data frames, and each data frame corresponds to a frame serial number and a frame inter-frame stamp;
步骤 S2: 根据数据帧的长度将每一数据帧分割成多个数据包, 或 者将几个数据帧组合成一个数据包, 每个数据包都对应一个包序 列号和一个包吋间戳;  Step S2: dividing each data frame into a plurality of data packets according to the length of the data frame, or combining several data frames into one data packet, each data packet corresponding to a packet sequence number and an inter-packet stamp;
步骤 S3: 服务端向客户端发送数据包, 并将该数据包的包序列号 与包吋间戳记录到内存的队列里面;  Step S3: The server sends a data packet to the client, and records the packet sequence number and the packet stamp of the data packet into the queue of the memory;
步骤 S4: 客户端根据包序列号检测有无丢失的数据包, 检测有包 丢失吋, 将丢失包序列号反馈至服务端, 服务端根据内存中的队 列中包序列号找到对应的包吋间戳; 步骤 S5: 根据包吋间戳与帧吋间戳的映射关系, 在视频文件中找 到丢失数据包对应的一个或多个数据帧, 将一个数据帧分割成几 个数据包, 或者将几个数据帧组成一个数据包, 再向客户端发送 丢失的数据包。  Step S4: The client detects whether there is a lost data packet according to the packet serial number, detects that there is a packet loss, returns the lost packet serial number to the server, and the server finds the corresponding packet according to the packet serial number in the queue in the memory. Step S5: According to the mapping relationship between the inter-packet stamp and the inter-frame stamp, find one or more data frames corresponding to the lost data packet in the video file, and divide one data frame into several data packets, or The data frames form a data packet, and then the lost data packet is sent to the client.
[Claim 2] 2、 如权利要求 1所述的流媒体传输方法, 其特征在于: 所述步骤 S  [Claim 2] 2. The streaming media transmission method according to claim 1, wherein: the step S
1中帧吋间戳为等分的。  The 1st frame inter-frame stamp is equally divided.
[Claim 3] 3、  [Claim 3] 3,
如权利要求 2所述的流媒体传输方法, 其特征在于: 所述步骤 S2包 括以下步骤:  The streaming media transmission method according to claim 2, wherein the step S2 comprises the following steps:
S21 : 先确定一个无线传输环境下的数据包长度 L, 每个数据帧的 大小为 n, 当 n大于 L吋, 将该帧切割成 η/L+l个数据包, 前 n/L个数 据包每个长度为 L, 最后一个数据包长度为 n%L, 其中: n/L为作 除后取整函数, %为作除后取余函数; 当 n小于 L吋, 由该帧或者 与后续的小于 n的数据帧相加组成一个数据长度小于或等于 L的数 据包; S22: 建立包吋间戳与帧吋间戳的映射关系, 当 n大于 L吋, 其中 n/ L+1记录具有相同的吋间戳, 即该数据帧的帧吋间戳; 当 n小于 L 吋, 该数据包记录的包吋间戳为第一个长度小于 L的数据帧对应的 帧吋间戳。 S21: First, determine a packet length L in a wireless transmission environment, and the size of each data frame is n. When n is greater than L吋, the frame is cut into η/L+1 data packets, and the first n/L data. Each packet has a length of L, and the last packet length is n%L, where: n/L is the rounding function after division, and % is the remainder function after division; when n is less than L吋, the frame or Subsequent data frames smaller than n are added to form a data packet whose data length is less than or equal to L; S22: Establish a mapping relationship between the inter-frame stamp and the frame inter-frame stamp, where n is greater than L吋, where the n/L+1 record has the same inter-frame stamp, that is, the frame inter-frame stamp of the data frame; when n is less than L吋, the packet interval recorded by the data packet is the frame inter-frame stamp corresponding to the first data frame whose length is less than L.
4、 4,
如权利要求 3所述的流媒体传输方法, 其特征在于: 所述步骤 S3包 括以下步骤: The streaming media transmission method according to claim 3, wherein the step S3 comprises the following steps:
S31 : 当 n大于 L吋, 队列中只记录 η/L+l个数据包的第一个数据包 的包序列号以及对应的包吋间戳;  S31: When n is greater than L吋, only the packet sequence number of the first data packet of η/L+1 data packets and the corresponding packet interval are recorded in the queue;
S32: 当 n小于 L吋, 队列中记录几个小于 n的数据帧相加组成一个 数据长度小于或等于 L的数据包的包序列号以及第一个长度小于 L 的数据帧对应的包吋间戳。  S32: When n is smaller than L吋, a plurality of data frames smaller than n are recorded in the queue and added to form a packet sequence number of a data packet whose data length is less than or equal to L, and a packet sequence corresponding to the first data frame whose length is less than L. stamp.
5、 5,
如权利要求 4所述的流媒体传输方法, 其特征在于: 所述步骤 S4包 括以下步骤: The streaming media transmission method according to claim 4, wherein the step S4 comprises the following steps:
S41 : 如果在队列中能够査找到客户端反馈的丢失包序列号, 则说 明丢失的数据包为 n大于 L吋的第一个数据包或者 n小于 L吋的几个 数据帧组成的数据包, 服务器找到包序列号对应包吋间戳; S42: 如果在队列中不能査找到客户端反馈的丢失包序列号, 则表 明这是一个大于 L的数据帧中的一个数据包, 则在序号吋间队列中 找到与这个包序列号相隔最近的前一个包序列号, 找到该前一个 序列号对应包吋间戳。  S41: If the lost packet sequence number fed back by the client is found in the queue, the lost data packet is a data packet consisting of a first data packet with n greater than L吋 or several data frames with n smaller than L吋. The server finds the packet sequence number corresponding to the packet interval; S42: If the missing packet sequence number fed back by the client cannot be found in the queue, it indicates that this is a packet in a data frame larger than L, and The previous packet sequence number closest to the packet sequence number is found in the queue, and the previous sequence number corresponding to the packet is found.
6、 6,
如权利要求 5所述的流媒体传输方法, 其特征在于: 所述步骤 S5包 括以下步骤: The streaming media transmission method according to claim 5, wherein the step S5 comprises the following steps:
S51 : 如果在队列中能找到丢失包序列号, n大于 L吋, 则由包吋间 戳直接获得对应的帧吋间戳, 由帧吋间戳读取视频文件中的数据 数据包; n小于 L吋, 则由包吋间戳找到第一个帧长度小于 L的帧吋 间戳, 该帧和后续的小于 n的数据帧相加组成一个数据长度小于或 等于 L的数据包向客户端重新发送; S51: If the missing packet serial number can be found in the queue, n is greater than L吋, then the corresponding frame inter-frame stamp is directly obtained from the inter-packet stamp, and the data in the video file is read by the inter-frame stamp. The data packet; if n is smaller than L吋, the first frame length is less than L, and the frame and the subsequent data frames smaller than n are added to form a data length less than or equal to L. The package is resent to the client;
S52: 如果在队列中不能査找到丢失包序列号, 根据该前一个序列 号对应包吋间戳对应帧吋间戳的数据帧读出来, 把这个数据帧切 割与几个数据包, 将丢失包序列号与该前一个序列号相减得出差 值 D, 其中 (η/L+l) 个数据包中的第 (D+1)数据包即丢失的数据包 , 将第 (D+1)数据包重新发送给客户端。  S52: If the lost packet serial number cannot be found in the queue, according to the data frame of the previous serial number corresponding to the inter-frame stamp corresponding to the inter-frame stamp, the data frame is cut with several data packets, and the packet is lost. The serial number is subtracted from the previous serial number to obtain a difference D, where the (D+1)th packet in the (η/L+l) data packet is the lost data packet, and the (D+1)th The packet is resent to the client.
[Claim 7] 7、 如权利要求 1所述的流媒体传输方法, 其特征在于: 所述数据 帧可以为视频帧或者是音频帧。  [Claim 7] 7. The streaming media transmission method according to claim 1, wherein: the data frame may be a video frame or an audio frame.
[Claim S] 8、 如权利要求 3所述的流媒体传输方法, 其特征在于: 当 n等于 L  [Claim S] 8. The streaming media transmission method according to claim 3, wherein: when n is equal to L
吋, 则将该帧直接作为一个数据包。  吋, the frame is directly used as a data packet.
PCT/CN2009/076284 2009-07-03 2009-12-30 Effective streaming media transmission method WO2011000200A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200910108577.3 2009-07-03
CN200910108577.3A CN101945427B (en) 2009-07-03 2009-07-03 Efficient streaming media transmission method

Publications (1)

Publication Number Publication Date
WO2011000200A1 true WO2011000200A1 (en) 2011-01-06

Family

ID=43410474

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2009/076284 WO2011000200A1 (en) 2009-07-03 2009-12-30 Effective streaming media transmission method

Country Status (2)

Country Link
CN (1) CN101945427B (en)
WO (1) WO2011000200A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104506455A (en) * 2014-12-26 2015-04-08 深圳市兰丁科技有限公司 Data packet ordering de-jittering method and data packet ordering de-jittering device

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130954A (en) * 2011-03-17 2011-07-20 华为技术有限公司 Method and device for transmitting data resources
CN102685143B (en) * 2012-05-23 2015-02-04 北京新媒传信科技有限公司 Audio data transmission method, client side and server
CN103096183B (en) * 2013-02-05 2015-12-09 清华大学 A kind of highly efficient stream media transmission method
CN103441826B (en) * 2013-07-12 2016-12-28 中国人民解放军国防科学技术大学 A kind of method and apparatus reducing radio communication packet loss
CN103533387B (en) * 2013-10-21 2016-08-17 腾讯科技(深圳)有限公司 A kind of live video control, equipment and system
EP3163780A4 (en) * 2014-07-29 2017-07-12 Huawei Technologies Co., Ltd. Data encryption and transmission method and device
CN104735473B (en) * 2015-03-05 2018-03-09 天脉聚源(北京)科技有限公司 A kind of detection method and device of video render
CN105187440A (en) * 2015-09-26 2015-12-23 北京暴风科技股份有限公司 Method and system for transmitting video data by using UDP protocol
CN105306065A (en) * 2015-11-10 2016-02-03 珠海多玩信息技术有限公司 Processing method and device for timestamps, extracting method and device for compressed character strings
CN106411894A (en) * 2016-09-29 2017-02-15 天脉聚源(北京)传媒科技有限公司 Video transmission method and system
CN106713317A (en) * 2016-12-22 2017-05-24 上海帝联信息科技股份有限公司 Method and device for transmitting streaming media file
CN108696771B (en) * 2017-04-11 2021-03-09 苏州谦问万答吧教育科技有限公司 Video playing method and device
CN107612841A (en) * 2017-08-21 2018-01-19 武汉斗鱼网络科技有限公司 A kind of method, apparatus and computer equipment for transmitting data
CN107566808A (en) * 2017-09-30 2018-01-09 深圳市智慧海洋科技有限公司 A kind of underwater image transmission method and system based on wireless water sound communication technique
CN107864132B (en) * 2017-11-03 2020-03-10 中广热点云科技有限公司 Method for solving screen splash phenomenon generated by video streaming transmission system
CN107968698B (en) * 2017-11-27 2021-06-15 中国铁道科学研究院集团有限公司通信信号研究所 General safety communication method based on MVB bus
CN110913421B (en) * 2018-09-18 2021-10-29 大唐移动通信设备有限公司 Method and device for determining voice packet number
CN113365098B (en) * 2021-06-01 2022-07-22 平安国际智慧城市科技股份有限公司 Video frame assembling method and device, electronic equipment and storage medium
CN114079654B (en) * 2022-01-05 2022-06-21 荣耀终端有限公司 Data retransmission method, system and related device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6996624B1 (en) * 2001-09-27 2006-02-07 Apple Computer, Inc. Reliable real-time transport protocol
CN101155311A (en) * 2006-09-27 2008-04-02 中兴通讯股份有限公司 Video code stream error detecting and processing method in video communication
CN101272500A (en) * 2008-05-14 2008-09-24 中兴通讯股份有限公司 Transmission method and system for video/audio data flow
CN101277270A (en) * 2008-05-23 2008-10-01 北京中讯宏达科技有限公司 Transmission method and system for flow medium data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6996624B1 (en) * 2001-09-27 2006-02-07 Apple Computer, Inc. Reliable real-time transport protocol
CN101155311A (en) * 2006-09-27 2008-04-02 中兴通讯股份有限公司 Video code stream error detecting and processing method in video communication
CN101272500A (en) * 2008-05-14 2008-09-24 中兴通讯股份有限公司 Transmission method and system for video/audio data flow
CN101277270A (en) * 2008-05-23 2008-10-01 北京中讯宏达科技有限公司 Transmission method and system for flow medium data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
XU, HUARONG ET AL.: "Real-time video transmission subsystem based on RTP", COMPUTER ENGINEERING AND DESIGN, vol. 26, no. 4, April 2005 (2005-04-01), pages 876 - 878 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104506455A (en) * 2014-12-26 2015-04-08 深圳市兰丁科技有限公司 Data packet ordering de-jittering method and data packet ordering de-jittering device

Also Published As

Publication number Publication date
CN101945427B (en) 2012-11-14
CN101945427A (en) 2011-01-12

Similar Documents

Publication Publication Date Title
WO2011000200A1 (en) Effective streaming media transmission method
JP4414311B2 (en) Multimedia streaming service system and method
US10542064B2 (en) Method, server side and system for computing bandwidth of network transmission of streaming media
US7773546B2 (en) System and method for a software-based TCP/IP offload engine for digital media renderers
CN109155707B (en) Requesting data retransmission in a multicast network
CN101656747A (en) Method and system for transmitting streaming media data
JP2004187286A (en) Mpeg-4 live unicast video streaming system in wireless network equipped with congestion control of end-to-end bit rate reference
CN101854286B (en) UDP (User Datagram Protocol)-based data stream sending-receiving method and device
WO2009088913A1 (en) Improved multimedia wireless distribution systems and methods
Liang et al. TCP-RTM: Using TCP for real time multimedia applications
JP2024509728A (en) Data retransmission processing method, device, computer equipment and computer program
US8127196B2 (en) Server and client for determining error restoration according to image data transmission, and method of determining error restoration according to image data transmission
McQuistin et al. TCP Hollywood: An unordered, time-lined, TCP for networked multimedia applications
US10491651B2 (en) Method and system for streaming low-delay high-definition video with partially reliable transmission
McQuistin et al. TCP goes to Hollywood
WO2010054551A1 (en) Method, device and system for video stream transmission
Zink et al. LC-RTP (loss collection RTP): reliability for video caching in the Internet
Samaraweera Return link optimization for internet service provision using DVB-S networks
CN103841380B (en) A kind of method and its system of media circulation distribution
McCreary et al. TCP-RC: a receiver-centered TCP protocol for delay-sensitive applications
Jin et al. Performance evaluation of a hybrid FEC/ARQ for wireless media streaming
Oda et al. Design and evaluation of hybrid congestion control mechanism for video streaming
WO2010105527A1 (en) Compressed real-time protocol optimization method and apparatus
Akester Reducing multicast collision loss for digital TV over 802.11 wireless networks
Chen et al. QoS of mobile real-time streaming adapted to bandwidth

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09846728

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09846728

Country of ref document: EP

Kind code of ref document: A1