本发明涉及通信领域,更具体的说,涉及一种缩短呼叫建立时间的方法及对讲机。
背景技术:
对讲机是一种双向移动通信工具,在不需要任何网络支持的情况下,就可以通话,没有话费产生,适用于相对固定且频繁通话的场合。
目前,在使用对讲机时,只有在呼叫建立完成之后,才可以对用户输入的语音进行采集。呼叫建立的过程包括:对讲机中的处理器检测ptt按键被按下后,进行ptt按键的识别处理,此后,在与被呼叫方建立连接后,用语音提示音通知用户可以开始讲话。即在使用对讲机时,在语音提示音播放完毕后,用户输入的语音才可以被采集、并发送到被呼叫方。
但是,用户一般在按下ptt按键后,就开始说话,则用户在提示音播放完之前说的语音就不会被采集,进而导致用户在提示音播放完之前输入的语音丢失,影响双方通话的完整性。
技术实现要素:
有鉴于此,本发明提供一种缩短呼叫建立时间的方法及对讲机,以解决用户一般在按下ptt按键后,就开始说话,则用户在提示音播放完之前说的语音就不会被采集,进而导致用户在提示音播放完之前输入的语音丢失,影响双方通话的完整性的问题。
为解决上述技术问题,本发明采用了如下技术方案:
一种缩短呼叫建立时间的方法,应用于对讲机,包括:
检测所述对讲机的ptt按键上是否存在触摸点;其中,所述触摸点为用户的手指与所述ptt按键的接触点;
当检测出所述ptt按键上存在所述触摸点,判断所述触摸点存在的时间是否大于预设数值;
当判断出所述触摸点存在的时间大于所述预设数值时,采集语音;
当检测到所述ptt按键被按下、且所述对讲机与接收设备建立连接后,将采集的语音发送到所述接收设备。
优选地,所述采集语音后,还包括:
保存所述语音;
将所述语音拆分为多个活动语音和多个非活动语音;
将每个所述非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
将多个所述活动语音和多个所述片段语音按照语音生成时间进行组合,得到用户输入语音;
相应的,所述将采集的语音发送到所述接收设备,具体包括:
将所述用户输入语音发送到所述接收设备。
优选地,将所述语音拆分为多个活动语音和多个非活动语音,包括:
采用语音活动检测算法,将所述语音拆分为多个所述活动语音和多个所述非活动语音。
优选地,将所述用户输入语音发送到所述接收设备,包括:
将所述用户输入语音进行语音编码和信道编码,得到编码语音;
将所述编码语音发送到所述接收设备。
优选地,所述采集语音后,还包括:
将所述语音进行语音编码,得到编码处理语音;
保存所述编码处理语音;
基于语音编码过程中的语音活动检测结果,将所述编码处理语音拆分为多个活动语音和多个非活动语音;
将每个所述非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
将多个所述活动语音和多个所述片段语音按照语音生成时间进行组合,得到用户输入语音;
相应的,所述将采集的语音发送到所述接收设备,具体包括:
将所述用户输入语音发送到所述接收设备。
优选地,将所述用户输入语音发送到所述接收设备,包括:
将所述用户输入语音进行信道编码,得到信道编码语音;
将所述信道编码语音发送到所述接收设备。
一种对讲机,包括存储器和处理器;
其中,所述存储器用于存储程序;
处理器用于运行程序,其中,当所述处理器运行所述程序时用于:
检测所述对讲机的ptt按键上是否存在触摸点;其中,所述触摸点为用户的手指与所述ptt按键的接触点;
当检测出所述ptt按键上存在所述触摸点,判断所述触摸点存在的时间是否大于预设数值;
当判断出所述触摸点存在的时间大于所述预设数值,采集语音;
当检测到所述ptt按键被按下、且所述对讲机与接收设备建立连接后,将采集的语音发送到所述接收设备。
优选地,所述处理器用于采集语音后,还用于:
保存所述语音;
将所述语音拆分为多个活动语音和多个非活动语音;
将每个所述非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
将多个所述活动语音和多个所述片段语音按照语音生成时间进行组合,得到用户输入语音;
相应的,所述处理器用于将采集的语音发送到所述接收设备时,具体用于:
将所述用户输入语音发送到所述接收设备。
优选地,所述处理器用于将所述语音拆分为多个活动语音和多个非活动语音时,具体用于:
采用语音活动检测算法,将所述语音拆分为多个所述活动语音和多个所述非活动语音。
优选地,所述处理器用于将所述用户输入语音发送到所述接收设备时,具体用于:
将所述用户输入语音进行语音编码和信道编码,得到编码语音;
将所述编码语音发送到所述接收设备。
优选地,所述处理器用于采集语音后,还用于:
将所述语音进行语音编码,得到编码处理语音;
保存所述编码处理语音;
基于语音编码过程中的语音活动检测结果,将所述编码处理语音拆分为多个活动语音和多个非活动语音;
将每个所述非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
将多个所述活动语音和多个所述片段语音按照语音生成时间进行组合,得到用户输入语音;
相应的,所述处理器用于将采集的语音发送到所述接收设备时,具体用于:
将所述用户输入语音发送到所述接收设备。
优选地,所述处理器用于将所述用户输入语音发送到所述接收设备时,具体用于:
将所述用户输入语音进行信道编码,得到信道编码语音;
将所述信道编码语音发送到所述接收设备。
相较于现有技术,本发明具有以下有益效果:
本发明提供了一种缩短呼叫建立时间的方法及对讲机,本发明中ptt按键未被按下时,在用户的手指与所述ptt按键的接触时间大于预设数值时,就开始采集语音,避免了用户在提示音播放完之前输入的语音的丢失。解决了用户一般在按下ptt按键后,就开始说话,则用户在提示音播放完之前说的语音就不会被采集,进而导致用户在提示音播放完之前输入的语音丢失,影响双方通话的完整性的问题。
此外,本发明中将每个非活动语音丢弃预设比例的部分非活动语音,能够减少被呼叫方的语音播放时间,进而能够减少语音延迟的时间,即能够减少传输延时。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种缩短呼叫建立时间的方法的方法流程图;
图2为本发明提供的另一种缩短呼叫建立时间的方法的方法流程图;
图3为本发明提供的又一种缩短呼叫建立时间的方法的方法流程图;
图4为本发明提供的一种缩短呼叫建立时间的装置的结构示意图;
图5为本发明提供的另一种缩短呼叫建立时间的装置的结构示意图;
图6为本发明提供的又一种缩短呼叫建立时间的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种缩短呼叫建立时间的方法,应用于对讲机,参照图1,缩短呼叫建立时间的方法包括:
s101、检测对讲机的ptt按键上是否存在触摸点;当检测出ptt按键上存在触摸点,执行步骤s102。
其中,触摸点为用户的手指与ptt按键的接触点。检测对讲机的ptt按键上是否存在触摸点,即检测用户的手指是否与ptt按键接触。本实施例中的ptt按键为具有触摸传感功能的ptt按键。
需要说明的是,对讲机使用的模式为ptt模式,ptt模式指半双工通话,整个通话过程均需要按下ptt按键才能说话,使用者一般在使用对讲机时,首先会有把手指放在ptt按键上的动作,确定好按键位置后,按下ptt按键开始说话,从将手指放在ptt按键上,到按下ptt按键,需要几十毫秒。
s102、判断触摸点存在的时间是否大于预设数值;当判断出触摸点存在的时间大于预设数值时,执行步骤s103。
具体的,判断触摸点存在的时间是否大于预设数值,即判断用户在未按下ptt按键之前,用户的手指与ptt按键的接触时间是否大于预设数值,其中,预设数值可以是几秒或者十几秒。
需要说明的是,判断触摸点存在的时间是否大于预设数值是为了防止出现用户不小心触碰到ptt按键但是不需要讲话的这种情况。
s103、采集语音。
具体的,采集语音的过程包括:打开对讲机的麦克风以及编译码器codec的模数转换器adc。麦克风能够接收用户输入的声音信号,并将声音信号转换为模拟信号,模拟转换器将模拟信号转换为数字信号,并将数字信号进行保存。
s104、当检测到ptt按键被按下、且对讲机与接收设备建立连接后,将采集的语音发送到接收设备。
可选的,本发明的另一实施例中,对讲机与接收设备建立连接的过程包括:
生成并发送呼叫请求信息到接收设备,接收接收设备发送的确认连接信息。
将呼叫请求信息到接收设备后,接收设备会通过空口在接收到呼叫请求信息的时隙的隔壁时隙发送确认连接信息到对讲机。其中,空口为移动通信网络中,基站与移动终端之间的接口。
其中,接收设备可以是基站或者其他对讲机。其中,基站可以是数字移动无线电dmr、数字集群pdt、陆上集群无线电tetra基站,对讲机包括手台或者车台等。
本实施例提供了一种缩短呼叫建立时间的方法,本实施例中ptt按键未被按下时,在用户的手指与ptt按键的接触时间大于预设数值时,就开始采集语音,避免了用户在提示音播放完之前输入的语音的丢失。解决了用户一般在按下ptt按键后,就开始说话,则用户在提示音播放完之前说的语音就不会被采集,进而导致用户在提示音播放完之前输入的语音丢失,影响双方通话的完整性的问题。
可选的,本发明的另一实施例中,步骤s103后,还包括:
s204、保存语音;
其中,对讲机中开出一个缓冲区,用来存储采集的语音数据,其中,缓冲区的语音数据采用先入先出的方式存储。即优先存储的语音数据,优先被发送到接收设备中。
缓冲区的大小可以根据使用情况来定,主要是考虑容许的语音延迟,丢失信息的统计长度,以及内存支持的空间大小等,以最恶劣的情形dmr1:4省电为例,要发480ms预载波,再加上ptt按键软件处理时间100ms,大约要开一个能够存储580ms的语音数据的空间,但是这个空间并不会全部用上,会去掉一些非活动语音再存储,580ms是开的一个最大的最保险的空间。
需要说明的是,当存储空间能够存储580ms的语音数据时,若接收的语音数据超过580ms时,超出的语音数据会依次覆盖最先存储的语音数据。
举例来说,假设存储了600ms的语音数据,由于存储空间只能存储580ms的语音数据,此时,会将580-600ms之间的数据,覆盖了580ms中0-20ms之间的数据。
其中,存储单元一般以字节byte为单位,因而在存储语音数据时,需要看580ms的语音数据需要占用多大的空间,以8k采样率16byte采样,则100ms会占用800*2个bytes,则580ms占用800*2*5.8个bytes。
s205、将语音拆分为多个活动语音和多个非活动语音;
可选的,本发明的另一实施例中,步骤s205,包括:
采用语音活动检测算法,将语音拆分为多个活动语音和多个非活动语音。
语音活动检测(voiceactivitydetection,vad)又称语音端点检测,语音边界检测。目的是从声音信号流里识别和消除长时间的静音期,以达到在不降低业务质量的情况下节省话路资源的作用,可以有利于减少用户感觉到的端到端的时延。
其中,活动语音中包含用户说话的语音,非活动语音为静音,即非活动语音中不包含用户说话的语音。
其中,活动语音是不能够丢弃的,非活动语音可以丢弃。
s206、将每个非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
具体的,对于与非活动语音,丢弃预设比例的部分非活动语音,其中,预设比例可以为0.5、0.8或者1,以一段10ms的非活动语音为例,预设比例为0.5,则丢弃该非活动语音的0.5,即将一段10ms的非活动语音更改为一段5ms的片段语音。
需要说明的是,经试验证明,1s的语音里偷走120ms的非活动语音,拼接剩下的语音,组成连续语音后传输,用户很难感知与原有语音的差别。
s207、将多个活动语音和多个片段语音按照语音生成时间进行组合,得到用户输入语音;
其中,语音生成时间是指用户说出该语音的时间。现举例说明将多个活动语音和多个片段语音按照语音生成时间进行组合,得到用户输入语音的过程。
假设将语音拆分为3个活动语音和1个非活动语音,3个活动语音和1个非活动语音的语音生成时间顺序为活动语音1、非活动语音、活动语音2和活动语音3。
对非活动语音丢弃预设比例的部分非活动语音,即得到1个片段语音,再将活动语音和片段语音组合的过程中,将活动语音1放在第一个,将片段语音放在第二个,将活动语音2和活动语音3进行复制,依次放到片段语音之后。
相应的,步骤s104更改为步骤s208:
将用户输入语音发送到接收设备。
可选的,本发明的另一实施例中,将用户输入语音发送到接收设备,包括:
将用户输入语音进行语音编码和信道编码,得到编码语音,将编码语音发送到接收设备。
语音编码即声码器编码,是以语音信号产生的数字模型为基础,对数字语音进行分析,提出一组特征参数。特征参数主要是指表征声门振动的激励参数和表征声道特性的声道参数,这些参数携带有语音信号的主要信息,编码它们只需较少的比特数,在解码后可以由这些参数重新合成语音信号,其编码速率可低至2.4kbit/s及以下。
信道编码是对要在信道中传送的数字信号进行的纠、检错编码。具体的,在信道编码时,可以将模数转换器转换出的数字信号中添加前向纠错fec校验。
本实施例中,将每个非活动语音丢弃预设比例的部分非活动语音,能够减少被呼叫方的语音播放时间,进而能够减少语音延迟的时间,即能够减少传输延时。
可选的,本发明的另一实施例中,参照图3,采集语音后,还包括:
s304、将语音进行语音编码,得到编码处理语音;
其中,语音编码的过程请参照上述实施例中的说明,在此不再赘述。
s305、保存编码处理语音;
以2.4kbps带前向纠错编码fec的声码器为例,总体速率为3.6kbps,存储580ms的语音占用的存储空间为261bytes。
s306、基于语音编码过程中的语音活动检测结果,将编码处理语音拆分为多个活动语音和多个非活动语音;
其中,在语音编码的过程中,就能够对编码处理语音中包含的语音是活动语音还是非活动语音进行区分。
s307、将每个非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
s308、将多个活动语音和多个片段语音按照语音生成时间进行组合,得到用户输入语音;
步骤s104更改为步骤s309:
将用户输入语音发送到接收设备。
可选的,本发明的另一实施例中,将用户输入语音发送到接收设备,包括:
将用户输入语音进行信道编码,得到信道编码语音;
将信道编码语音发送到接收设备。
本实施例中,先进行语音编码后,在将编码处理语音拆分为多个活动语音和多个非活动语音,同上个实施例中拆分得到多个活动语音和多个非活动语音的时间不同,进而在拆分得到多个活动语音和多个非活动语音时,有不同的处理方法。
可选的,本发明的另一实施例中提供了一种缩短呼叫建立时间的装置,应用于对讲机,参照图4,缩短呼叫建立时间的装置包括:
检测单元101,用于检测对讲机的ptt按键上是否存在触摸点;其中,触摸点为用户的手指与ptt按键的接触点;
判断单元102,用于当检测单元检测出ptt按键上存在触摸点,判断触摸点存在的时间是否大于预设数值;
采集单元103,用于当判断单元102判断出触摸点存在的时间大于预设数值,采集语音;
发送单元104,用于当检测到ptt按键被按下、且对讲机与接收设备建立连接后,将采集的语音发送到接收设备。
可选的,本发明的另一实施例中,发送单元将采集的语音发送到接收设备时,具体用于:
将用户输入语音进行语音编码和信道编码,得到编码语音;
将编码语音发送到接收设备。
本实施例提供了一种缩短呼叫建立时间的装置,本实施例中ptt按键未被按下时,在用户的手指与ptt按键的接触时间大于预设数值时,就开始采集语音,避免了用户在提示音播放完之前输入的语音的丢失。解决了用户一般在按下ptt按键后,就开始说话,则用户在提示音播放完之前说的语音就不会被采集,进而导致用户在提示音播放完之前输入的语音丢失,影响双方通话的完整性的问题。
需要说明的是,本实施例中的各个单元的工作过程,请参照上述实施例中的说明,在此不再赘述。
可选的,本发明的另一实施例中,参照图5,还包括:
保存单元105,用于采集单元103采集语音后,保存语音;
拆分单元106,用于将语音拆分为多个活动语音和多个非活动语音;
语音丢弃单元107,用于将每个非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
语音组合单元108,用于将多个活动语音和多个片段语音按照语音生成时间进行组合,得到用户输入语音;
相应的,发送单元104用于将采集的语音发送到接收设备时,具体用于:将用户输入语音发送到接收设备。
可选的,本发明的另一实施例中,拆分单元106包括:
拆分子单元,用于采用语音活动检测算法,将语音拆分为多个活动语音和多个非活动语音。
本实施例中,将每个非活动语音丢弃预设比例的部分非活动语音,能够减少被呼叫方的语音播放时间,进而能够减少语音延迟的时间。
需要说明的是,本实施例中的各个单元的工作过程,请参照上述实施例中的说明,在此不再赘述。
可选的,本发明的另一实施例中,缩短呼叫建立时间的装置还包括:
语音编码单元109,用于采集单元103采集语音后,将语音进行语音编码,得到编码处理语音;
语音保存单元110,用于保存编码处理语音;
语音拆分单元111,用于基于语音编码过程中的语音活动检测结果,将编码处理语音拆分为多个活动语音和多个非活动语音;
丢弃单元112,用于将每个非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
组合单元113,用于将多个活动语音和多个片段语音按照语音生成时间进行组合,得到用户输入语音;
相应的,发送单元104将采集的语音发送到接收设备时,具体用于:
将用户输入语音发送到接收设备。
可选的,本发明的另一实施例中,发送单元104包括:
编码单元,用于将用户输入语音进行信道编码,得到信道编码语音;
语音发送单元,用于将信道编码语音发送到接收设备。
本实施例中,先进行语音编码后,在将编码处理语音拆分为多个活动语音和多个非活动语音,同上个实施例中拆分得到多个活动语音和多个非活动语音的时间不同,进而在拆分得到多个活动语音和多个非活动语音时,有不同的处理方法。
需要说明的是,本实施例中的各个单元的工作过程,请参照上述实施例中的说明,在此不再赘述。
可选的,本发明的另一实施例中提供了一种对讲机,包括存储器和处理器;
其中,所述存储器用于存储程序;
处理器用于运行程序,其中,当所述处理器运行所述程序时用于:
检测所述对讲机的ptt按键上是否存在触摸点;其中,所述触摸点为用户的手指与所述ptt按键的接触点;
当检测出所述ptt按键上存在所述触摸点,判断所述触摸点存在的时间是否大于预设数值;
当判断出所述触摸点存在的时间大于所述预设数值,采集语音;
当检测到所述ptt按键被按下、且所述对讲机与接收设备建立连接后,将采集的语音发送到所述接收设备。
在上述实施例的基础上,所述处理器用于采集语音后,还用于:
保存所述语音;
将所述语音拆分为多个活动语音和多个非活动语音;
将每个所述非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
将多个所述活动语音和多个所述片段语音按照语音生成时间进行组合,得到用户输入语音;
相应的,所述处理器用于将采集的语音发送到所述接收设备时,具体用于:
将所述用户输入语音发送到所述接收设备。
在上述实施例的基础上,所述处理器用于将所述语音拆分为多个活动语音和多个非活动语音时,具体用于:
采用语音活动检测算法,将所述语音拆分为多个所述活动语音和多个所述非活动语音。
在上述实施例的基础上,所述处理器用于将所述用户输入语音发送到所述接收设备时,具体用于:
将所述用户输入语音进行语音编码和信道编码,得到编码语音;
将所述编码语音发送到所述接收设备。
在上述实施例的基础上,所述处理器用于采集语音后,还用于:
将所述语音进行语音编码,得到编码处理语音;
保存所述编码处理语音;
基于语音编码过程中的语音活动检测结果,将所述编码处理语音拆分为多个活动语音和多个非活动语音;
将每个所述非活动语音丢弃预设比例的部分非活动语音,得到多个片段语音;
将多个所述活动语音和多个所述片段语音按照语音生成时间进行组合,得到用户输入语音;
相应的,所述处理器用于将采集的语音发送到所述接收设备时,具体用于:
将所述用户输入语音发送到所述接收设备。
在上述实施例的基础上,所述处理器用于将所述用户输入语音发送到所述接收设备时,具体用于:
将所述用户输入语音进行信道编码,得到信道编码语音;
将所述信道编码语音发送到所述接收设备。
本实施例中ptt按键未被按下时,在用户的手指与ptt按键的接触时间大于预设数值时,就开始采集语音,避免了用户在提示音播放完之前输入的语音的丢失。解决了用户一般在按下ptt按键后,就开始说话,则用户在提示音播放完之前说的语音就不会被采集,进而导致用户在提示音播放完之前输入的语音丢失,影响双方通话的完整性的问题。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。