CN104143333A - 一种音频传输方法、客户端及终端设备 - Google Patents

一种音频传输方法、客户端及终端设备 Download PDF

Info

Publication number
CN104143333A
CN104143333A CN201310172926.4A CN201310172926A CN104143333A CN 104143333 A CN104143333 A CN 104143333A CN 201310172926 A CN201310172926 A CN 201310172926A CN 104143333 A CN104143333 A CN 104143333A
Authority
CN
China
Prior art keywords
frame number
audio
client
audio frame
coding
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.)
Granted
Application number
CN201310172926.4A
Other languages
English (en)
Other versions
CN104143333B (zh
Inventor
张小龙
赵原
杨干荣
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.)
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen 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
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201310172926.4A priority Critical patent/CN104143333B/zh
Priority claimed from CN201310172926.4A external-priority patent/CN104143333B/zh
Priority to PCT/CN2013/085913 priority patent/WO2014180100A1/en
Priority to US14/108,230 priority patent/US9437205B2/en
Priority to ARP140101887A priority patent/AR096240A1/es
Publication of CN104143333A publication Critical patent/CN104143333A/zh
Application granted granted Critical
Publication of CN104143333B publication Critical patent/CN104143333B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42221Conversation recording systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0072Speech codec negotiation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/64Automatic arrangements for answering calls; Automatic arrangements for recording messages for absent subscribers; Arrangements for recording conversations
    • H04M1/65Recording arrangements for recording a message from the calling party
    • H04M1/656Recording arrangements for recording a message from the calling party for recording conversations

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明实施例提供一种音频传输方法、客户端及终端设备,其中的方法可包括:客户端检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作;所述客户端从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据;所述客户端对所述当前录制的所述音频文件的音频帧数据进行编码,并将所述编码后的音频帧数据传输至服务器。本发明可有效地提升音频传输效率,满足用户对音频传输时延的实际需求。

Description

一种音频传输方法、客户端及终端设备
技术领域
本发明涉及一种互联网技术领域,具体涉及音频技术领域,尤其涉及一种音频传输方法、客户端及终端设备。
背景技术
目前,应用客户端(如:IM(Instant Messenger,即时通讯)客户端、SNS(Social Networking Services,社会性网络服务)客户端)广泛使用录音技术,作为音频传输的基础,为用户提供更便捷的交流和沟通的服务。传统的音频传输的方案大致为:客户端在语音聊天界面中提供“录音”按键,用户按压该按键时发出音频传输请求,客户端调用客户端所在终端设备的录音程序开始录音,录取用户输入的语音数据;当用户松开该按键时录音结束,终端设备的录音程序将获得的完整语音数据进行录制处理形成音频文件,把音频文件传送至客户端进行音频编码和音频传输。上述方案中,由于音频传输过程需要等待录音结束后,才进行音频的录制、编码和传输,这使得音频传输的时延较大,无法适用于一些对传输时延要求比较高的场景,无法满足用户对音频传输时延的实际需求。
发明内容
本发明实施例提供一种音频传输方法、客户端及终端设备,可有效地提升音频传输效率,满足用户对音频传输时延的实际需求。
本发明第一方面提供一种音频传输方法,可包括:
客户端检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作;
所述客户端从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据;
所述客户端对所述当前录制的所述音频文件的音频帧数据进行编码,并将所述编码后的音频帧数据传输至服务器。
本发明第二方面提供一种客户端,可包括:
调用模块,用于在检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作;
采集模块,用于从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据;
编码模块,用于对所述当前录制的所述音频文件的音频帧数据进行编码;
传输模块,用于将所述编码后的音频帧数据传输至服务器。
本发明第三方面提供一种终端设备,可包括:上述第二方面提供的客户端。
实施本发明实施例,具有如下有益效果:
本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种音频传输方法的流程图;
图2为本发明实施例提供的另一种音频传输方法的流程图;
图3为本发明实施例提供的又一种音频传输方法的流程图;
图4为本发明实施例提供的又一种音频传输方法的流程图;
图5为本发明实施例提供的一种客户端的结构示意图;
图6为本发明实施例提供的另一种客户端的结构示意图;
图7为本发明实施例提供的编码模块的实施例的结构示意图;
图8为本发明实施例提供的方式确定单元的实施例的结构示意图;
图9为本发明实施例提供的触发检测模块的一个实施例的结构示意图;
图10为本发明实施例提供的触发检测模块的另一个实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中,终端设备可以包括但不限于:PC(Personal Computer,个人计算机)、平板电脑、手机、智能手机、笔记本电脑等设备。客户端可以包括但不限于:IM客户端、SNS客户端等等。其中,客户端安装于终端设备中,客户端属于终端设备中的客户端模块,终端设备属于客户端所在终端设备。
下面将结合附图1-附图4,对本发明实施例提供的音频传输方法进行详细介绍。
请参见图1,为本发明实施例提供的一种音频传输方法的流程图;该方法可包括以下步骤S101-步骤S104。
S101,客户端检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作。
其中,所述客户端所在终端设备的录音应用,可以为所述终端设备的操作系统的录音应用,例如:以Android(安卓,一种手机操作系统)为操作系统的终端设备,其录音应用可以为Android系统的录音应用。本发明实施例中,客户端可提供一个用于发起音频传输请求的按键,该按键处于按压状态时,则可发起音频传输请求,例如:客户端可提供一个“按住说话”功能按键,用户按住该功能按键,客户端则可检测到音频传输请求,此时用户可向客户端输入语音数据。本步骤中,客户端检测到音频传输请求时,可通过调用所述客户端所在终端设备的录音应用的API(Application Programming Interface,应用程序编程接口)接口,以调用所述终端设备的录音应用对用户输入的语音数据进行录音,并根据用户输入的语音数据进行音频文件的录制操作。
实际应用中,所述终端设备的录音应用进行音频文件的录制操作过程可以包括:所述终端设备的录音应用将用户输入的模拟的语音数据进行模数转换、抽样、量化等处理,形成至少一帧音频帧数据,该至少一帧音频帧数据可组成PCM(Pulse-code modulation,脉冲编码调制)格式的音频文件。
S102,所述客户端从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据。
如前步骤S101所述,所述终端设备的录音应用进行音频文件的录制操作过程中,会形成一帧一帧的音频帧数据;本步骤中,所述客户端从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据,具体为:每当所述终端设备的录音应用中形成一帧音频帧数据,所述客户端则从所述终端设备的录音应用中将该帧音频帧数据采集出来。
S103,所述客户端对所述当前录制的所述音频文件的音频帧数据进行编码。
其中,编码方式可为AMR(Adaptive Multi-Rate,一种音频格式)编码方式,包括定点编码方式和浮点编码方式。本步骤中,所述客户端优选采用AMR编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码;即所述客户端每采集到一帧音频帧数据,则采用AMR编码方式对该帧音频帧数据进行编码。
S104,所述客户端将所述编码后的音频帧数据传输至服务器。
本步骤中,将所述编码后的音频帧数据传输至服务器,则实现了对音频文件进行边录制边发送的过程。本步骤的一种可行的实施方式为:可以预设每次传输的所述编码后的音频帧数据的数量阈值,所述客户端缓存所述编码后的至少一帧音频帧数据,当缓存的所述编码后的音频帧数据的数据量到达预设数量阈值时,将该缓存的预设数量阈值的所述编码后的音频帧数据传输至服务器。本步骤的另一种可行的实施方式为:可以预设每次传输的所述编码后的音频帧数据的时长,所述客户端缓存所述编码后的至少一帧音频帧数据,当缓存的所述编码后的各帧音频帧数据的总帧长到达预设时长时,将该缓存的预设时长的所述编码后的音频帧数据传输至服务器。
本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
请参见图2,为本发明实施例提供的另一种音频传输方法的流程图;该方法可包括以下步骤S201-步骤S208。
S201,客户端检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作。
S202,所述客户端从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据。
本实施例的步骤S201-步骤S202可参见图1所示实施例的步骤S101-步骤S102,在此不赘述。
S203,所述客户端确定与所述终端设备相适配的编码方式。
其中,编码方式可为AMR编码方式,包括定点编码方式和浮点编码方式。定点编码方式具备占用CPU(Central Processing Unit,中央处理器)资源少,计算简单,保真度较低的特点;浮点编码方式具备占用CPU资源多,计算复杂,保真度较高的特点。本步骤可根据所述终端设备的CPU性能,确定与所述终端设备相适配的编码方式,例如:若所述终端设备的CPU性能较低(如:CPU资源较少且计算能力较低),本步骤可确定定点编码方式为与所述终端设备相适配的编码方式;再如:若所述终端设备的CPU性能较高(如:资源较多且计算能力较高),本步骤可确定浮点编码方式为与所述终端设备相适配的编码方式。
S204,所述客户端按照所确定的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码。
本步骤中,所述客户端按照与所述终端设备相适配的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码,可有效地提升编码效率,保证编码可靠性。
本实施例的步骤S203-步骤S204可以为图1所示实施例的步骤S103的具体细化步骤。
S205,所述客户端缓存所述编码后的音频帧数据。
S206,所述客户端检测是否存在传输触发事件,若检测结果为是,转入步骤S207;否则,继续步骤S206。
其中,传输触发事件包括:已缓存的所述编码后的音频帧数据的数据量达到预设数量阈值;或者,已缓存的所述编码后的音频帧数据的帧长达到预设时长。
S207,所述客户端提取已缓存的所述编码后的音频帧数据。
S208,所述客户端将提取的所述编码后的音频帧数据传输至服务器。
本步骤中,将所述编码后的音频帧数据传输至服务器,则实现了对音频文件进行边录制边发送的过程。
本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
请参见图3,为本发明实施例提供的又一种音频传输方法的流程图;该方法可包括以下步骤S301-步骤S310。
S301,客户端检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作。
S302,所述客户端从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据。
本实施例的步骤S301-步骤S302可参见图1所示实施例的步骤S101-步骤S102,在此不赘述。
S303,所述客户端判断已录制的所述音频文件的音频帧数据的平均编码时间是否大于预设时间阈值;若判断结果为是,转入步骤S304;否则,转入步骤S305。
本发明实施例中,由于所述终端设备的录音应用每录制形成一帧音频帧数据,所述客户端则采集该帧音频帧数据,并对该帧音频帧数据进行编码;当需要对当前录制的音频帧数据进行编码之前,本步骤中,所述客户端判断已录制的所述音频文件的音频帧数据的平均编码时间是否大于预设时间阈值,即所述客户端判断已编码的音频帧数据的平均编码时间是否大于预设时间阈值,该预设时间阈值可以根据实际情况进行设定,例如:可设定为1s,2s等等。如果判断结果为是,表明编码耗费时间较长,进一步表明所述终端设备的CPU性能较差,则可转入步骤S304。如果判断结果为否,表明编码耗费时间较短,进一步表明所述终端设备的CPU性能较高,可转入步骤S305。
S304,所述客户端将定点编码方式确定为与所述终端设备相适配的编码方式;之后转入步骤S306。
S305,所述客户端将浮点编码方式确定为与所述终端设备相适配的编码方式。
S306,所述客户端按照所确定的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码。
本步骤中,所述客户端按照与所述终端设备相适配的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码,可有效地提升编码效率,保证编码可靠性。
S307,所述客户端缓存所述编码后的音频帧数据。
S308,所述客户端检测已缓存的所述编码后的音频帧数据的数据量是否达到预设数量阈值,若检测结果为是,转入步骤S309;否则,继续步骤S308。
其中,预设数量阈值可根据实际情况进行设定,例如:可根据网络带宽设置预设数量阈值为2K、3K等等。本发明实施例中,由于所述终端设备的录音应用每录制形成一帧音频帧数据,所述客户端则采集该帧音频帧数据,对该帧音频帧数据进行编码,并缓存所述的音频帧数据;本步骤则判断已缓存的所述编码后的音频帧数据的数据量是否达到预设数量阈值,例如:假设一帧编码后的音频帧数据的数据量为1K,预设数量阈值为2K,则当所述客户端缓存两帧编码后的音频帧数据时,本步骤可检测到已缓存的所述编码后的音频帧数据的数据量达到预设数量阈值。
S309,所述客户端提取已缓存的所述编码后的音频帧数据。
按照步骤S308中的例子进行说明,本步骤提取已缓存的两帧编码后的音频帧数据,即提取已缓存的该数据量为2K的所述编码后的音频帧数据。需要说明的是,本步骤中所述客户端在提取已缓存的所述编码后的音频帧数据的同时,从所述客户端的缓存空间中将已被提取的所述编码后的音频帧数据进行删除。
S310,所述客户端将提取的所述编码后的音频帧数据传输至服务器。
本实施例的步骤S310可参见图2所示实施例的步骤S208,在此不赘述。
下面将以一个具体实例来说明本实施例的音频传输方法的具体流程。
假设终端设备为手机,客户端为手机中的IM客户端。IM客户端提供用于发起音频传输请求的“按住说话”功能按键。同时,假设一帧音频帧数据的数据量为1K,预设数量阈值为2K,预设时间阈值为1s。
用户按住IM客户端提供的“按住说话”功能按键时,IM客户端检测到音频传输请求,用户可向IM客户端输入语音数据。IM客户端调用手机的录音应用对用户输入的语音数据进行录音,并根据用户输入的语音数据处理形成至少一帧音频帧数据,该至少一帧音频帧数据可组成音频文件。
假设音频文件总共包含10帧音频帧数据,手机的录音应用已录制形成第1帧至第3帧音频帧数据,并已被IM客户端采集、编码处理,且IM客户端的缓存空间中已缓存第3帧音频帧数据,假设第1帧音频帧数据的编码时间为0.2s,第2帧音频帧数据的编码时间为0.8s,第3帧音频帧数据的编码时间为0.2s。手机的录音应用当前录制形成第4帧音频帧数据,手机的录音应用将该第4帧音频帧数据传送至IM客户端,IM客户端采集该帧音频帧数据。IM客户端计算已录制的第1帧至第3帧音频帧数据的平均编码时间为(0.2+0.8+0.2)/3=0.4s,小于预设时间阈值1s,IM客户端确定浮点编码方式为与手机相适配的编码方式。
IM客户端采用浮点编码方式对当前录制的第4帧音频帧数据进行编码,IM客户端缓存编码后的该第4帧音频帧数据,IM客户端的缓存空间中共包含编码后的第3帧音频帧数据和第4帧音频帧数据,IM客户端判断该已缓存的两帧音频帧数据的数据量大小为2K,已达到预设数量阈值2K,IM客户端则提取已缓存的该2K音频帧数据传输至服务器。
本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
请参见图4,为本发明实施例提供的又一种音频传输方法的流程图;该方法可包括以下步骤S401-步骤S410。
S401,客户端检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作。
S402,所述客户端从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据。
S403,所述客户端判断已录制的所述音频文件的音频帧数据的平均编码时间是否大于预设时间阈值;若判断结果为是,转入步骤S404;否则,转入步骤S405。
S404,所述客户端将定点编码方式确定为与所述终端设备相适配的编码方式;之后转入步骤S406。
S405,所述客户端将浮点编码方式确定为与所述终端设备相适配的编码方式。
S406,所述客户端按照所确定的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码。
S407,所述客户端缓存所述编码后的音频帧数据。
本实施例的步骤S401-步骤S407可参见图3所示实施例的步骤S301-步骤S306,在此不赘述。
S408,所述客户端检测已缓存的所述编码后的音频帧数据的帧长是否达到预设时长,若检测结果为是,转入步骤S409;否则,继续步骤S408。
其中,预设时长可根据实际情况进行设定,例如:可设置预设时长为2s、3s等等。本发明实施例中,由于所述终端设备的录音应用每录制形成一帧音频帧数据,所述客户端则采集该帧音频帧数据,对该帧音频帧数据进行编码,并缓存所述的音频帧数据;本步骤则判断已缓存的所述编码后的音频帧数据的帧长是否达到预设时长,例如:假设一帧编码后的音频帧数据的帧长为1s,预设数量阈值为2s,则当所述客户端缓存两帧编码后的音频帧数据时,本步骤可检测到已缓存的所述编码后的音频帧数据的帧长达到预设时长。
S409,所述客户端提取已缓存的所述编码后的音频帧数据。
按照步骤S408中的例子进行说明,本步骤提取已缓存的两帧编码后的音频帧数据,即提取已缓存的总帧长为2s的所述编码后的音频帧数据。需要说明的是,本步骤中所述客户端在提取已缓存的所述编码后的音频帧数据的同时,从所述客户端的缓存空间中将已被提取的所述编码后的音频帧数据进行删除。
S410,所述客户端将提取的所述编码后的音频帧数据传输至服务器。
本实施例的步骤S410可参见图2所示实施例的步骤S208,在此不赘述。
下面将以一个具体实例来说明本实施例的音频传输方法的具体流程。
假设终端设备为手机,客户端为手机中的IM客户端。IM客户端提供用于发起音频传输请求的“按住说话”功能按键。同时,假设一帧音频帧数据的帧长为1s,预设时长为2s,预设时间阈值为1s。
用户按住IM客户端提供的“按住说话”功能按键时,IM客户端检测到音频传输请求,用户可向IM客户端输入语音数据。IM客户端调用手机的录音应用对用户输入的语音数据进行录音,并根据用户输入的语音数据处理形成至少一帧音频帧数据,该至少一帧音频帧数据可组成音频文件。
假设音频文件总共包含10帧音频帧数据,手机的录音应用已录制形成第1帧至第3帧音频帧数据,并已被IM客户端采集、编码处理,且IM客户端的缓存空间中已缓存第3帧音频帧数据,假设第1帧音频帧数据的编码时间为0.2s,第2帧音频帧数据的编码时间为0.8s,第3帧音频帧数据的编码时间为0.2s。手机的录音应用当前录制形成第4帧音频帧数据,手机的录音应用将该第4帧音频帧数据传送至IM客户端,IM客户端采集该帧音频帧数据。IM客户端计算已录制的第1帧至第3帧音频帧数据的平均编码时间为(0.2+0.8+0.2)/3=0.4s,小于预设时间阈值1s,IM客户端确定浮点编码方式为与手机相适配的编码方式。
IM客户端采用浮点编码方式对当前录制的第4帧音频帧数据进行编码,IM客户端缓存编码后的该第4帧音频帧数据,IM客户端的缓存空间中共包含编码后的第3帧音频帧数据和第4帧音频帧数据,IM客户端判断该已缓存的两帧音频帧数据的总帧长为2s,已达到预设时长2s,IM客户端则提取已缓存的该总帧长2s的音频帧数据传输至服务器。
本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
下面将结合附图5-附图10,对本发明实施例提供的客户端的结构进行详细介绍。需要说明的是,附图5-附图10所示的客户端,用于执行本发明图1-图4所示实施例的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明图1-图4所示的实施例。
请参见图5,为本发明实施例提供的一种客户端的结构示意图;该客户端可包括:调用模块101、采集模块102、编码模块103和传输模块104。
调用模块101,用于在检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作。
其中,所述客户端所在终端设备的录音应用,可以为所述终端设备的操作系统的录音应用,例如:以Android为操作系统的终端设备,其录音应用可以为Android系统的录音应用。本发明实施例中,客户端可提供一个用于发起音频传输请求的按键,该按键处于按压状态时,则可发起音频传输请求,例如:客户端可提供一个“按住说话”功能按键,用户按住该功能按键,客户端则可检测到音频传输请求,此时用户可向客户端输入语音数据。当检测到音频传输请求时,所述调用模块101可通过调用所述客户端所在终端设备的录音应用的API接口,以调用所述终端设备的录音应用对用户输入的语音数据进行录音,并根据用户输入的语音数据进行音频文件的录制操作。
实际应用中,所述终端设备的录音应用进行音频文件的录制操作过程可以包括:所述终端设备的录音应用将用户输入的模拟的语音数据进行模数转换、抽样、量化等处理,形成至少一帧音频帧数据,该至少一帧音频帧数据可组成PCM格式的音频文件。
采集模块102,用于从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据。
由于所述终端设备的录音应用进行音频文件的录制操作过程中,会形成一帧一帧的音频帧数据,所述采集模块102从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据,具体为:每当所述终端设备的录音应用中形成一帧音频帧数据,所述采集模块102则从所述终端设备的录音应用中将该帧音频帧数据采集出来。
编码模块103,用于对所述当前录制的所述音频文件的音频帧数据进行编码。
其中,编码方式可为AMR编码方式,包括定点编码方式和浮点编码方式。所述编码模块103优选采用AMR编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码;即所述编码模块103每采集到一帧音频帧数据,则采用AMR编码方式对该帧音频帧数据进行编码。
传输模块104,用于将所述编码后的音频帧数据传输至服务器。
所述传输模块104将所述编码后的音频帧数据传输至服务器,则实现了对音频文件进行边录制边发送的过程。所述传输模块104的传输过程的一种可行的实施方式为:可以预设每次传输的所述编码后的音频帧数据的数量阈值,所述传输模块104可在所述客户端缓存所述编码后的至少一帧音频帧数据,当缓存的所述编码后的音频帧数据的数据量到达预设数量阈值时,所述传输模块104将该缓存的预设数量阈值的所述编码后的音频帧数据传输至服务器。所述传输模块104的传输过程的另一种可行的实施方式为:可以预设每次传输的所述编码后的音频帧数据的时长,所述传输模块104可在所述客户端缓存所述编码后的至少一帧音频帧数据,当缓存的所述编码后的各帧音频帧数据的总帧长到达预设时长时,所述传输模块104将该缓存的预设时长的所述编码后的音频帧数据传输至服务器。
本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
请参见图6,为本发明实施例提供的另一种客户端的结构示意图;调用模块101、采集模块102、编码模块103、传输模块104、缓存模块105、触发检测模块106和数据提取模块107。
缓存模块105,用于缓存所述编码后的音频帧数据。
触发检测模块106,用于检测是否存在传输触发事件。
其中,传输触发事件包括:已缓存的所述编码后的音频帧数据的数据量达到预设数量阈值;或者,已缓存的所述编码后的音频帧数据的帧长达到预设时长。
数据提取模块107,用于若存在传输触发事件,则提取已缓存的所述编码后的音频帧数据,并通知所述传输模块将提取的所述编码后的音频帧数据传输至服务器。
其中,所述数据提取模块107在提取已缓存的所述编码后的音频帧数据的同时,从所述客户端的缓存空间中将已被提取的所述编码后的音频帧数据进行删除。
本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
下面将结合附图7-附图10,对上述的客户端中的各模块进行详细介绍。
请参见图7,为本发明实施例提供的编码模块的实施例的结构示意图;该编码模块103可包括:方式确定单元1301和编码单元1302。
方式确定单元1301,用于确定与所述终端设备相适配的编码方式。
其中,编码方式可为AMR编码方式,包括定点编码方式和浮点编码方式。定点编码方式具备占用CPU资源少,计算简单,保真度较低的特点;浮点编码方式具备占用CPU资源多,计算复杂,保真度较高的特点。所述方式确定单元1301可根据所述终端设备的CPU性能,确定与所述终端设备相适配的编码方式,例如:若所述终端设备的CPU性能较低(如:CPU资源较少且计算能力较低),所述方式确定单元1301可确定定点编码方式为与所述终端设备相适配的编码方式;再如:若所述终端设备的CPU性能较高(如:资源较多且计算能力较高),所述方式确定单元1301可确定浮点编码方式为与所述终端设备相适配的编码方式。
编码单元1302,用于按照所确定的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码。
所述编码单元1302按照与所述终端设备相适配的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码,可有效地提升编码效率,保证编码可靠性。
请参见图8,为本发明实施例提供的方式确定单元的实施例的结构示意图;该方式确定单元1301可包括:判断子单元1311和确定子单元1312。
判断子单元1311,用于判断已录制的所述音频文件的音频帧数据的平均编码时间是否大于预设时间阈值。
由于所述终端设备的录音应用每录制形成一帧音频帧数据,所述客户端则采集该帧音频帧数据,并对该帧音频帧数据进行编码;当需要对当前录制的音频帧数据进行编码之前,所述判断子单元1311判断已录制的所述音频文件的音频帧数据的平均编码时间是否大于预设时间阈值,即所述判断子单元1311判断已编码的音频帧数据的平均编码时间是否大于预设时间阈值,该预设时间阈值可以根据实际情况进行设定,例如:可设定为1s,2s等等。如果判断结果为是,表明编码耗费时间较长,进一步表明所述终端设备的CPU性能较差。如果判断结果为否,表明编码耗费时间较短,进一步表明所述终端设备的CPU性能较高。
确定子单元1312,用于当已录制的所述音频文件的音频帧数据的平均编码时间大于预设时间阈值时,将定点编码方式确定为与所述终端设备相适配的编码方式;或者,用于当已录制的所述音频文件的音频帧数据的平均编码时间小于或等于预设时间阈值时,将浮点编码方式确定为与所述终端设备相适配的编码方式。
请参见图9,为本发明实施例提供的触发检测模块的一个实施例的结构示意图;该触发检测模块106可包括:数据量检测单元1601和第一确定单元1602。
数据量检测单元1601,用于检测已缓存的所述编码后的音频帧数据的数据量是否达到预设数量阈值。
其中,预设数量阈值可根据实际情况进行设定,例如:可根据网络带宽设置预设数量阈值为2K、3K等等。本发明实施例中,由于所述终端设备的录音应用每录制形成一帧音频帧数据,所述客户端则采集该帧音频帧数据,对该帧音频帧数据进行编码,并缓存所述的音频帧数据;所述数据量检测单元1601检测已缓存的所述编码后的音频帧数据的数据量是否达到预设数量阈值,例如:假设一帧编码后的音频帧数据的数据量为1K,预设数量阈值为2K,则当所述客户端缓存两帧编码后的音频帧数据时,所述数据量检测单元1601可检测到已缓存的所述编码后的音频帧数据的数据量达到预设数量阈值。
第一确定单元1602,用于在所述已缓存的所述编码后的音频帧数据的数据量达到预设数量阈值时,确定存在传输触发事件,并通知所述传输模块将所述编码后的音频帧数据传输至服务器。
请参见图10,为本发明实施例提供的触发检测模块的另一个实施例的结构示意图;该触发检测模块106可包括:帧长检测单元1611和第二确定单元1612。
帧长检测单元1611,用于检测已缓存的所述编码后的音频帧数据的帧长是否达到预设时长。
其中,预设时长可根据实际情况进行设定,例如:可设置预设时长为2s、3s等等。本发明实施例中,由于所述终端设备的录音应用每录制形成一帧音频帧数据,所述客户端则采集该帧音频帧数据,对该帧音频帧数据进行编码,并缓存所述的音频帧数据;所述帧长检测单元1611则检测已缓存的所述编码后的音频帧数据的帧长是否达到预设时长,例如:假设一帧编码后的音频帧数据的帧长为1s,预设数量阈值为2s,则当所述客户端缓存两帧编码后的音频帧数据时,所述帧长检测单元1611可检测到已缓存的所述编码后的音频帧数据的帧长达到预设时长。
第二确定单元1612,用于在所述已缓存的所述编码后的音频帧数据的帧长达到预设时长时,确定存在传输触发事件,并通知所述传输模块将所述编码后的音频帧数据传输至服务器。
本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
本发明实施例还公开了一种终端设备,该终端设备中包含客户端,该客户端的结构和功能可参见图5-图10所示实施例的相关描述,在此不赘述。需要说明的是,本实施例的终端设备可以应用于图1-图4所示的方法中。
通过上述实施例的描述,本发明实施例中,客户端能够在检测到音频传输请求时,调用客户端所在终端设备的录音应用进行音频文件的录制,并采集当前录制的音频文件进行编码传输处理,从而实现了对音频文件进行边录制边发送的过程,较好地减小了音频传输时延,有效地提升了音频传输效率,满足用户对音频传输时延的实际需求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (15)

1.一种音频传输方法,其特征在于,包括:
客户端检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作;
所述客户端从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据;
所述客户端对所述当前录制的所述音频文件的音频帧数据进行编码,并将所述编码后的音频帧数据传输至服务器。
2.如权利要求1所述的方法,其特征在于,所述客户端对所述当前录制的所述音频文件的音频帧数据进行编码之后,将所述编码后的音频帧数据传输至服务器之前,还包括:
所述客户端缓存所述编码后的音频帧数据。
3.如权利要求2所述的方法,其特征在于,所述客户端缓存所述编码后的音频帧数据之后,还包括:
所述客户端检测是否存在传输触发事件,
若存在传输触发事件,所述客户端提取已缓存的所述编码后的音频帧数据,并执行将提取的所述编码后的音频帧数据传输至服务器的步骤。
4.如权利要求3所述的方法,其特征在于,所述客户端检测是否存在传输触发事件,包括:
所述客户端检测已缓存的所述编码后的音频帧数据的数据量是否达到预设数量阈值;
若所述已缓存的所述编码后的音频帧数据的数据量达到预设数量阈值,所述客户端确定存在传输触发事件。
5.如权利要求3所述的方法,其特征在于,所述客户端检测是否存在传输触发事件,包括:
所述客户端检测已缓存的所述编码后的音频帧数据的帧长是否达到预设时长;
若所述已缓存的所述编码后的音频帧数据的帧长达到预设时长,所述客户端确定存在传输触发事件。
6.如权利要求1-5任一项所述的方法,其特征在于,所述客户端对所述当前录制的所述音频文件的音频帧数据进行编码,包括:
所述客户端确定与所述终端设备相适配的编码方式;
所述客户端按照所确定的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码。
7.如权利要求6所述的方法,其特征在于,所述客户端确定与所述终端设备相适配的编码方式,包括:
所述客户端判断已录制的所述音频文件的音频帧数据的平均编码时间是否大于预设时间阈值;
若已录制的所述音频文件的音频帧数据的平均编码时间大于预设时间阈值,所述客户端将定点编码方式确定为与所述终端设备相适配的编码方式;
若已录制的所述音频文件的音频帧数据的平均编码时间小于或等于预设时间阈值,所述客户端将浮点编码方式确定为与所述终端设备相适配的编码方式。
8.一种客户端,其特征在于,包括:
调用模块,用于在检测到音频传输请求时,调用所述客户端所在终端设备的录音应用进行音频文件的录制操作;
采集模块,用于从所述终端设备的录音应用中采集当前录制的所述音频文件的音频帧数据;
编码模块,用于对所述当前录制的所述音频文件的音频帧数据进行编码;
传输模块,用于将所述编码后的音频帧数据传输至服务器。
9.如权利要求8所述的客户端,其特征在于,还包括:
缓存模块,用于缓存所述编码后的音频帧数据。
10.如权利要求9所述的客户端,其特征在于,还包括:
触发检测模块,用于检测是否存在传输触发事件;
数据提取模块,用于若存在传输触发事件,则提取已缓存的所述编码后的音频帧数据,并通知所述传输模块将提取的所述编码后的音频帧数据传输至服务器。
11.如权利要求10所述的客户端,其特征在于,所述触发检测模块包括:
数据量检测单元,用于检测已缓存的所述编码后的音频帧数据的数据量是否达到预设数量阈值;
第一确定单元,用于在所述已缓存的所述编码后的音频帧数据的数据量达到预设数量阈值时,确定存在传输触发事件,并通知所述传输模块将所述编码后的音频帧数据传输至服务器。
12.如权利要求10所述的客户端,其特征在于,所述触发检测模块包括:
帧长检测单元,用于检测已缓存的所述编码后的音频帧数据的帧长是否达到预设时长;
第二确定单元,用于在所述已缓存的所述编码后的音频帧数据的帧长达到预设时长时,确定存在传输触发事件,并通知所述传输模块将所述编码后的音频帧数据传输至服务器。
13.如权利要求8-12任一项所述的客户端,其特征在于,所述编码模块包括:
方式确定单元,用于确定与所述终端设备相适配的编码方式;
编码单元,用于按照所确定的编码方式,对所述当前录制的所述音频文件的音频帧数据进行编码。
14.如权利要求13所述的客户端,其特征在于,所述方式确定单元,包括:
判断子单元,用于判断已录制的所述音频文件的音频帧数据的平均编码时间是否大于预设时间阈值;
确定子单元,用于当已录制的所述音频文件的音频帧数据的平均编码时间大于预设时间阈值时,将定点编码方式确定为与所述终端设备相适配的编码方式;或者,用于当已录制的所述音频文件的音频帧数据的平均编码时间小于或等于预设时间阈值时,将浮点编码方式确定为与所述终端设备相适配的编码方式。
15.一种终端设备,其特征在于,包括:如权利要求8-14任一项所述的客户端。
CN201310172926.4A 2013-05-10 2013-05-10 一种音频传输方法、客户端及终端设备 Active CN104143333B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201310172926.4A CN104143333B (zh) 2013-05-10 一种音频传输方法、客户端及终端设备
PCT/CN2013/085913 WO2014180100A1 (en) 2013-05-10 2013-10-24 Method, application, and device for audio signal transmission
US14/108,230 US9437205B2 (en) 2013-05-10 2013-12-16 Method, application, and device for audio signal transmission
ARP140101887A AR096240A1 (es) 2013-05-10 2014-05-09 Método, aplicación y dispositivo para la transmisión de señal de audio

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310172926.4A CN104143333B (zh) 2013-05-10 一种音频传输方法、客户端及终端设备

Publications (2)

Publication Number Publication Date
CN104143333A true CN104143333A (zh) 2014-11-12
CN104143333B CN104143333B (zh) 2016-11-30

Family

ID=

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106302437A (zh) * 2016-08-11 2017-01-04 北京云知声信息技术有限公司 语音处理方法及装置
CN111739543A (zh) * 2020-05-25 2020-10-02 杭州涂鸦信息技术有限公司 音频编码方法的调试方法及其相关装置
CN111953727A (zh) * 2020-05-06 2020-11-17 上海明略人工智能(集团)有限公司 音频传输方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1411256A (zh) * 2001-09-28 2003-04-16 诺基亚有限公司 电信会议安排
EP2043336A2 (en) * 2007-09-29 2009-04-01 Lenovo (Beijing) Limited Apparatus having mobile terminal as input/output device of computer and related system and method
CN102624874A (zh) * 2012-02-21 2012-08-01 腾讯科技(深圳)有限公司 一种语音信息传送方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1411256A (zh) * 2001-09-28 2003-04-16 诺基亚有限公司 电信会议安排
EP2043336A2 (en) * 2007-09-29 2009-04-01 Lenovo (Beijing) Limited Apparatus having mobile terminal as input/output device of computer and related system and method
CN102624874A (zh) * 2012-02-21 2012-08-01 腾讯科技(深圳)有限公司 一种语音信息传送方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106302437A (zh) * 2016-08-11 2017-01-04 北京云知声信息技术有限公司 语音处理方法及装置
CN111953727A (zh) * 2020-05-06 2020-11-17 上海明略人工智能(集团)有限公司 音频传输方法和装置
CN111739543A (zh) * 2020-05-25 2020-10-02 杭州涂鸦信息技术有限公司 音频编码方法的调试方法及其相关装置

Also Published As

Publication number Publication date
AR096240A1 (es) 2015-12-16
WO2014180100A1 (en) 2014-11-13

Similar Documents

Publication Publication Date Title
AU2016260156B2 (en) Method and device for improving audio processing performance
WO2013085507A1 (en) Low power integrated circuit to analyze a digitized audio stream
CN107274882B (zh) 数据传输方法及装置
CN104299622A (zh) 一种音频处理方法
CN105162555A (zh) 一种码率调整方法及其终端
CN110933706A (zh) 一种网络通信设置方法、装置、存储介质及终端
CN111768790B (zh) 用于传输语音数据的方法和装置
CN112235844A (zh) 网络切换方法、系统、装置、设备及存储介质
CN105897666A (zh) 实时语音通话中的实时语音接收设备及降低延迟的方法
CN109286554B (zh) 社交应用中社交功能解锁方法及装置
CN114245175A (zh) 视频转码方法、装置、电子设备及存储介质
CN113961289A (zh) 一种数据处理方法、装置、设备以及存储介质
US9437205B2 (en) Method, application, and device for audio signal transmission
CN112562688A (zh) 语音转写方法、装置、录音笔和存储介质
CN104700830A (zh) 一种语音端点检测方法及装置
CN104143333A (zh) 一种音频传输方法、客户端及终端设备
CN104901697B (zh) 一种信息处理方法及电子设备
CN116055762A (zh) 视频合成方法及装置、电子设备和存储介质
TW202004593A (zh) 支付方法及用戶端
CN104025524A (zh) 流媒体传输方法及装置、通信设备
CN104143333B (zh) 一种音频传输方法、客户端及终端设备
CN105554131A (zh) 一种数据处理方法及移动终端
CN103929524A (zh) 通话过程中记录信息的方法及应用该方法的移动终端
CN110034858B (zh) 数据包重传方法、装置、移动终端及存储介质
CN104348701A (zh) 一种在即时通信工具中进行文件传输的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1199136

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1199136

Country of ref document: HK

TR01 Transfer of patent right

Effective date of registration: 20200820

Address after: 518057 Nanshan District science and technology zone, Guangdong, Zhejiang Province, science and technology in the Tencent Building on the 1st floor of the 35 layer

Co-patentee after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd.

Patentee after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

Address before: Shenzhen Futian District City, Guangdong province 518057 Zhenxing Road, SEG Science Park 2 East Room 403

Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

TR01 Transfer of patent right