两次接收到的语音数据压缩包中后一次的语音数据压缩包中的第一语音压缩帧。
[0034]由上述描述可知,若所述编号差值等于I,说明没有丢包,可直接读取语音数据。
[0035]进一步的,所述语音数据压缩包的N个语音压缩帧采用自然数依次编号。
[0036]由上述描述可知,通过对N个语音压缩帧进行依次编号,便于丢包后可根据编号顺序进行找包。
[0037]进一步的,所述N的取值为10。
[0038]由上述描述可知,根据实践过程,当N的取值为10时,在还原率高的同时传输效率最快。
[0039 ]本发明还提供了一种语音数据传输装置,包括接收模块I和计算模块2;
[0040]所述接收模块I,用于接收根据自然数依次编号的语音数据压缩包;所述语音数据压缩包由N个语音压缩帧组成,分别为I个用于语音数据读取的第一语音压缩帧和N-1个用于还原丢包的语音压缩帧;所述N-1个用于还原丢包的语音压缩帧为第一语音压缩帧后连续的语音数据;N的取值为大于I的整数;
[0041]所述计算模块2包括计算单元21、第一读取单元22和第二读取单元23;
[0042]所述计算单元21,用于计算连续两次接收到的语音数据压缩包的编号差值;
[0043]所述第一读取单元22,用于若所述编号差值大于I且小于等于N,则根据编号差值依次从所述N-1个用于还原丢包的语音压缩帧中与第一语音压缩帧连接的语音压缩帧开始读取;
[0044]所述第二读取单元23,用于若所述编号差值大于N,则读取两次接收到的语音数据压缩包中前一次的语音数据压缩包中的全部语音压缩帧。
[0045]进一步的,所述计算模块还包括第三读取单元;
[0046]所述第三读取单元,用于若所述编号差值等于I,则读取两次接收到的语音数据压缩包中后一次的语音数据压缩包中的第一语音压缩帧。
[0047]由上述描述可知,若所述编号差值等于I,说明没有丢包,可直接读取语音数据。
[0048]进一步的,所述语音数据压缩包的N个语音压缩帧采用自然数依次编号。
[0049]由上述描述可知,通过对N个语音压缩帧进行依次编号,便于丢包后可根据编号顺序进行找包。
[0050]进一步的,所述N的取值为10。
[0051 ]由上述描述可知,根据实践过程,当N的取值为10时,在还原率高的同时传输效率最快。
[0052]请参照图1,本发明的实施例一为:
[0053]本发明提供一种语音数据传输方法,以N取值为3为例进行说明。
[0054]例如:语音数据压缩包由3个语音压缩帧组成,第一个语音数据压缩包中的语音压缩帧依次编号为I,2,3;其中编号为I的语音压缩帧为本次真正要发送的数据,而编号为2,3的语音压缩帧为接下去连续两个语音数据压缩包所要发送的数据;因此,如果不发生丢包情况的话,编号为2,3的语音压缩帧是没有用的,编号为2,3的语音压缩帧只是用来后续丢包时找包用的。
[0055]假设:第一个语音数据压缩包中的语音压缩帧依次编号为I,2,3;第二个语音数据压缩包中的语音压缩帧依次编号为2,3,4;第三个语音数据压缩包中的语音压缩帧依次编号为3,4,5;接下来的语音数据压缩包以此类推。
[0056]以下实施例是说明第二个语音数据压缩包丢失的情况。
[0057]步骤1、接收端接收根据自然数依次编号的语音数据压缩包;
[0058]步骤2、接收端连续两次接收到的语音数据压缩包分别为第一个语音数据压缩包和第三个语音数据压缩包,此时接收端计算两个语音数据压缩包的编号差值,编号差值为2,即为传输过程丢失了 I个语音数据压缩包,此时从第一个语音数据压缩包从2个用于还原丢包的语音压缩帧中与第一语音压缩帧连接的语音压缩帧开始读取,也就是读取编号紧接的语音压缩帧,即为编号为2的语音压缩帧,由于只丢失一个包,所以只要读取一个语音压缩帧即可。这样的方式就可以还原丢失的数据内容。
[0059]若所述编号差值大于2,则读取两次接收到的语音数据压缩包中前一次的语音数据压缩包中的全部语音压缩帧,即为第一个语音数据压缩包中编号2和编号3的语音压缩帧。
[0060]由于N的值可取大也可取小,当取值过大时,带宽利用率就很低,传输效率就很慢,当取值过小时,丢失的数据不能尽可能的还原,导致通信质量低,然而通过多量的实验得出,当N的取值为1的时候,实现还原率高的同时传输效率最快。
[0061 ] 实施例二
[0062]与实施例一相类似,以N为10为例;
[0063]第一个语音数据压缩包中的语音压缩帧依次编号为1,2,3,4,5,6,7,8,9,10;
[0064]第二个语音数据压缩包中的语音压缩帧依次编号为2,3,4,5,6,7,8,9,10,11;
[0065]第三个语音数据压缩包中的语音压缩帧依次编号为3,4,5,6,7,8,9,10,11,12;
[0066]第四个语音数据压缩包中的语音压缩帧依次编号为4,5,6,7,8,9,10,11,12,13;
[0067]第五个语音数据压缩包中的语音压缩帧依次编号为5,6,7,8,9,10,11,12,13,14;
[0068]第六个语音数据压缩包中的语音压缩帧依次编号为6,7,8,9,10,11,12,13,14,15;
[0069]第七个语音数据压缩包中的语音压缩帧依次编号为7,8,9,10,11,12,13,14,15,16;
[0070]接下来的语音数据压缩包以此类推。
[0071 ]本实施例二是说明第三-五个语音数据压缩包丢失的情况。
[0072]步骤1、接收端接收根据自然数依次编号的语音数据压缩包;
[0073]步骤2、接收端连续两次接收到的语音数据压缩包分别为第二个语音数据压缩包和第六个语音数据压缩包,此时接收端计算两个语音数据压缩包的编号差值,编号差值为4,即为传输过程丢失了 3个语音数据压缩包,此时从第二个语音数据压缩包从9个用于还原丢包的语音压缩帧中与第一语音压缩帧连接的语音压缩帧开始读取,也就是读取编号紧接的语音压缩帧,即为编号为2的语音压缩帧开始,由于丢失了 3个语音数据压缩包,所以继续读取编号为3的语音压缩帧以及编号为4的语音压缩帧即可。然而按照编号为2的语音压缩帧开始播放,这样的方式就可以还原丢失的数据内容。
[0074]若所述编号差值大于10,则读取两次接收到的语音数据压缩包中前一次的语音数据压缩包中的全部语音压缩帧,例如差值为11,即为丢失10个语音数据压缩包,此时读取前一次语音数据压缩包内所有数据,虽然还差I个语音数据压缩包的内容无法读取到,但由于语言的连续性,当N值取到足够大时,还原度能够达到很高。
[0075]由于N的值可取大也可取小,当取值过大时,带宽利用率就很低,传输效率就很慢,当取值过小时,丢失的数据不能尽可能的还原,导致通信质量低,然而通过多量的实验得出,当N的取值为1的时候,实现还原率高的同时传输效率最快。
[0076]实施例三
[0077]与实施例一相类似,以N为15为例;
[0078]第一个语音数据压缩包中的语音压缩帧依次编号为1,2,3,4,5,6,7,8,9