传输多媒体数据的方法和装置的制造方法

文档序号:9729921阅读:519来源:国知局
传输多媒体数据的方法和装置的制造方法
【技术领域】
[0001]本发明涉及多媒体技术领域,特别涉及一种传输多媒体数据的方法和装置。
【背景技术】
[0002]随着终端技术以及多媒体技术的发展,终端不仅具有语音通话功能,还具有视频通话功能,两个用户之间可以通过终端进行视频通话,此时两个终端之间就需要传输多媒体数据。
[0003]为了便于描述,将进行视频通话的两个终端分别称为第一终端和第二终端,并且以第一终端向第二终端传输多媒体数据为例进行说明,则第一终端向第二终端传输多媒体数据的过程可以为:
[0004]第一终端将多媒体数据分为多个多媒体数据包,每隔预设传输间隔向第二终端发送一个多媒体数据包,获取重传时间间隔,并根据该重传时间间隔和当前时间,获取该多媒体数据包的超时重传时间;如果在到达该多媒体数据包的超时重传时间之前没有接收到第二终端发送的ACK(Acknowledgement,即确认字符),第一终端确定该多媒体数据包传输失败,此时重新向第二终端发送该多媒体数据包。
[0005]除了上述这种超时重发的传输机制之外,还存在一种FEC(Forward ErrorCorrect1n,前向纠错)传输机制,即第一终端每向第二终端发送出去若干个(设为m个)多媒体数据包,则第一终端根据这m个多媒体数据包来生成若干个(设为η个)FEC冗余包,并向第二终端发送这η个FEC冗余包。
[0006]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0007]如果采用超时重传的传输机制,则当重传时间间隔较长,则重传的多媒体数据包的网络延时较大,无法保证重传的多媒体数据包的实时性。如果采用FEC的传输机制且重传时间间隔较短,则浪费网络带宽。

【发明内容】

[0008]为了解决现有技术的问题,本发明提供了一种传输多媒体数据的方法和装置。技术方案如下:
[0009]—种传输多媒体数据的方法,所述方法包括:
[0010]向接收端发送多媒体数据包,将所述多媒体数据包添加到数据包集合中;
[0011]如果所述数据包集合中存在多个待重传的数据包,将所述多个待重传的数据包生成前向纠错FEC冗余包,向所述接收端发送所述FEC冗余包;
[0012]在所述数据包集合中包括的待重传的数据包的超时重传时间到达时,如果所述待重传的数据包传输失败,向所述接收端重新发送所述待重传的数据包。
[0013]可选的,所述向接收端发送多媒体数据包,将所述多媒体数据包添加到数据包集合中之前,还包括:
[0014]根据所述接收端的时延要求,确定生成FEC冗余包所需待重传的数据包的第一数目;
[0015]相应的,所述如果所述数据包集合中存在多个待重传的数据包,将所述多个待重传的数据包生成前向纠错FEC冗余包,包括:
[0016]如果所述数据包集合中存在大于或者等于第一数目个待重传的数据包,从所述数据包集合中选择第一数目个待重传的数据包,将所述选择的第一数目个待重传的数据包生成FEC包。
[0017]可选的,所述从所述数据包集合中选择第一数目个待重传的数据包,包括:
[0018]获取所述数据包集合中包括的每个待重传的数据包的发送时间;
[0019]根据所述每个待重传的数据包的发送时间,从所述数据包集合中选择第一数目个离当前时间最远的发送时间对应的多媒体数据包。
[0020]可选的,所述方法还包括:
[0021]获取当前时间和超时重传时间间隔,并根据所述当前时间和所述超时重传时间间隔,计算第一时间;
[0022]将所述多个待重传的数据包中的每个待重传的数据包的超时重传时间修改为所述第一时间。
[0023]可选的,所述方法还包括:
[0024]将所述多个待重传的数据包从所述数据包集合中删除,并将所述FEC冗余包添加到所述数据包集合中。
[0025]—种传输多媒体数据的装置,所述装置包括:
[0026]第一传输模块,用于向接收端发送多媒体数据包;
[0027]第一添加模块,用于将所述多媒体数据包添加到数据包集合中;
[0028]第二传输模块,用于如果所述数据包集合中存在多个待重传的数据包,将所述多个待重传的数据包生成前向纠错FEC冗余包,向所述接收端发送所述FEC冗余包;
[0029]第三传输模块,用于在所述数据包集合中包括的待重传的数据包的超时重传时间到达时,如果所述待重传的数据包传输失败,向所述接收端重新发送所述待重传的数据包。
[0030]可选的,所述装置还包括:
[0031]确定模块,用于根据所述接收端的时延要求,确定生成FEC冗余包所需待重传的数据包的第一数目;
[0032]相应的,所述第二传输模块,包括:
[0033]选择单元,用于如果所述数据包集合中存在大于或者等于第一数目个待重传的数据包,从所述数据包集合中选择第一数目个待重传的数据包;
[0034]生成单元,用于将所述选择的第一数目个待重传的数据包生成FEC包。
[0035]可选的,所述选择单元,包括:
[0036]获取子单元,用于获取所述数据包集合中包括的每个待重传的数据包的发送时间;
[0037]选择子单元,用于根据所述每个待重传的数据包的发送时间,从所述数据包集合中选择第一数目个离当前时间最远的发送时间对应的多媒体数据包。
[0038]可选的,所述装置还包括:
[0039]获取模块,用于获取当前时间和超时重传时间间隔;
[0040]计算模块,用于根据所述当前时间和所述超时重传时间间隔,计算第一时间;
[0041]修改模块,用于将所述多个待重传的数据包中的每个待重传的数据包的超时重传时间修改为所述第一时间。
[0042]可选的,所述装置还包括:
[0043]删除模块,用于将所述多个待重传的数据包从所述数据包集合中删除;
[0044]第二添加模块,用于将所述FEC冗余包添加到所述数据包集合中。
[0045]在本发明实施例中,向接收端发送多媒体数据包时,确定数据包集合中是否存在多个待重传的数据包,如果数据包集合中存在多个待重传的数据包,将多个待重传的数据包生成前向纠错FEC冗余包,向接收端发送该FEC冗余包,从而能将传输失败的数据包通过FEC冗余包补偿回来;从而避免了在延迟较大的通信链路上,通过超时重发而导致的数据包到达不及时的问题。在数据包集合中的待重传的数据包的超时重传时间到达时且该待重传的数据包传输失败,向接收端重新发送该待重传的数据包,从而对于延时较小的通信链路,通过快速的超时重传就将丢失的包补偿回来,避免了采用FEC而带来的额外的网络带宽消耗。
【附图说明】
[0046]图1是本发明实施例1提供的一种传输多媒体数据的方法流程图;
[0047]图2是本发明实施例2提供的一种传输多媒体数据的方法流程图;
[0048]图3-1是本发明实施例3提供的一种传输多媒体数据的装置结构示意图;
[0049]图3-2是本发明实施例3提供的另一种传输多媒体数据的装置结构示意图;
[0050]图3-3是本发明实施例3提供的一种第二传输模块的装置结构示意图;
[0051]图3-4是本发明实施例3提供的一种选择单元的装置结构示意图;
[0052]图3-5是本发明实施例3提供的另一种传输多媒体数据的装置结构示意图;
[0053]图3-6是本发明实施例3提供的另一种传输多媒体数据的装置结构示意图。
【具体实施方式】
[0054]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0055]实施例1
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1