CN111026532B - 用于语音数据的消息队列管理方法 - Google Patents

用于语音数据的消息队列管理方法 Download PDF

Info

Publication number
CN111026532B
CN111026532B CN201911256611.1A CN201911256611A CN111026532B CN 111026532 B CN111026532 B CN 111026532B CN 201911256611 A CN201911256611 A CN 201911256611A CN 111026532 B CN111026532 B CN 111026532B
Authority
CN
China
Prior art keywords
voice data
message queue
service module
identification information
data
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.)
Active
Application number
CN201911256611.1A
Other languages
English (en)
Other versions
CN111026532A (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.)
Sipic Technology Co Ltd
Original Assignee
Sipic Technology 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 Sipic Technology Co Ltd filed Critical Sipic Technology Co Ltd
Priority to CN201911256611.1A priority Critical patent/CN111026532B/zh
Publication of CN111026532A publication Critical patent/CN111026532A/zh
Application granted granted Critical
Publication of CN111026532B publication Critical patent/CN111026532B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开一种用于语音数据的消息队列管理方法,包括:对所接收到的语音数据进行傅里叶变化,并分成多帧语音数据片段;当确定消息队列中存在空闲存储单元时,从多帧语音数据片段中获取一帧语音数据片段,并生成对应于所述一帧语音数据片段的数据处理标识信息,数据处理标识信息用于标识所述一帧语音数据片段是否已被语音对话终端中的多个业务模块访问完毕,若是则更新所述数据处理标识;将所述一帧语音数据片段的数据处理标识信息和存储地址信息存入所述消息队列中。本发明实施例无需建立多个消息队列的情况下就能够确保所有的业务模块能够顺利的完成对语音数据片段的访问,简化了数据存储方法,降低了语音数据存储的成本。

Description

用于语音数据的消息队列管理方法
技术领域
本发明涉及数据处理技术领域,尤其涉及一种用于语音数据的消息队列管理方法。
背景技术
为了实现多个分块数据的存储,通常采用队列方法管理。队列管理通常采用一入一出的方式,数据先进先出。一个模块将产生的数据放入队列,另一个模块从队列中取出数据,同时该数据出队列对应的资源被回收。
现有的队列管理都是基于单输出模型。但是发明人在进行语音对话产品的开发的过程中的数据的存储时发现,对于队列中的同一个数据块往往会有多个业务模块(例如,唤醒业务模块、波束成形模块和角度测算模块等),因此若采用现有的单输出模型进行队列管理的话,一个业务模块对队列中的一个数据块访问之后该数据块就会被删除,相应的队列资源也被释放,从而其它的业务模块就不能够在访问到数据了。
为解决以上问题,现有技术中采用了针对需要进行数据访问的业务模块的数量,设置了相应多数量的队列进行数据块的备份存储,以满足多个业务模块对同一数据块进行访问的需求。
但是,由于队列数量的增加,一方面导致了数据存储管理的复杂性的提升,进而导致语音对话系统无法准确而稳定的运行;另一发明也增大了系统内部资源的开销,增加了成本。
发明内容
本发明实施例提供一种用于语音数据的消息队列管理方法,用于至少解决上述技术问题之一。
第一方面,本发明实施例提供一种用于语音数据的消息队列管理方法,应用于语音对话终端,所述方法包括:
对所接收到的语音数据进行傅里叶变化,并分成多帧语音数据片段;
当确定所述消息队列中存在空闲存储单元时,从所述多帧语音数据片段中获取一帧语音数据片段,并生成对应于所述一帧语音数据片段的数据处理标识信息,所述数据处理标识信息用于标识所述一帧语音数据片段是否已被所述语音对话终端中的多个业务模块访问完毕,若是则更新所述数据处理标识,以表明此时所述一帧语音数据片段已经可以被删除并释放所述消息队列中的相应存储单元;
将所述一帧语音数据片段的数据处理标识信息和存储地址信息存入所述消息队列中。
在一些实施例中,所述数据处理标识信息至少包括多对业务模块标识位和业务模块访问状态位;其中,所述业务模块标识位用于标记需要访问所述一帧语音数据片段的业务模块,所述业务模块访问状态位用于标记所述一帧语音数据片段是否已经被相应的业务模块所访问。
在一些实施例中,所述数据处理标识信息包括一个16比特的数组,其中,每两个比特为一对,分别与成对的业务模块标识位和业务模块访问状态位相对应。
在一些实施例中,所述业务模块至少包括唤醒业务模块和/或波束成形业务模块和/或角度测算业务模块。
第二方面,本发明实施例提供另一种用于语音数据的消息队列管理方法,应用于语音对话终端,所述语音对话终端包括多个业务模块,所述方法包括:
当所述消息队列不为空时,响应于所述多个业务模块中的其中一个业务模块访问所述消息队列的请求,向所述其中一个业务模块返回所述消息队列的队头所存储的存储地址信息,并更新所述消息队列的队头所存储的数据处理标识信息;
当更新后的所述数据标识信息表明,当前所述多个业务模块均已访问过所述消息队列的队头时,释放当前所述消息队列的队头。
在一些实施例中,所述数据处理标识信息至少包括多对业务模块标识位和业务模块访问状态位;其中,所述业务模块标识位用于标记需要访问所述语音数据片段的业务模块,所述业务模块访问状态位用于标记所述语音数据片段是否已经被相应的业务模块所访问。
在一些实施例中,所述数据处理标识信息包括一个16比特的数组,其中,每两个比特为一对,分别与成对的业务模块标识位和业务模块访问状态位相对应。
在一些实施例中,所述业务模块至少包括唤醒业务模块和/或波束成形业务模块和/或角度测算业务模块。
第三方面,本发明实施例提供一种存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项用于语音数据的消息队列管理方法。
第四方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明上述任一项用于语音数据的消息队列管理方法。
第五方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项用于语音数据的消息队列管理方法。
本发明实施例的有益效果在于:在将语音数据片段存入消息队列时,还一并生成并存储了对应于所述一帧语音数据片段的数据处理标识信息,该数据处理标识信息用于标识所述一帧语音数据片段是否已被所述语音对话终端中的多个业务模块访问完毕,并且每次有业务模块访问该语音数据片段,就会对该数据处理标识信息进行一次状态的更新,从而能够使得该数据处理标识信息实时标识语音数据片段的待访问状态,当语音数据片段已被所述语音对话终端中的多个业务模块访问完毕时,更新对应数据处理标识信息状以表明此时所述一帧语音数据片段已经可以被删除并释放所述消息队列中的相应存储单元,从而实现了只有当所有的业务模块访问完毕之后才能够将语音数据片段删除并释放消息队列中的存储单元。无需建立多个消息队列的情况下就能够确保所有的业务模块能够顺利的完成对语音数据片段的访问,简化了数据存储方法,降低了语音数据存储的成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的用于语音数据的消息队列管理方法的一实施例的流程图;
图2为本发明的用于语音数据的消息队列管理方法的另一实施例的流程图;
图3为本发明实施例中的数据处理标识信息结构示意图;
图4为本发明的用于语音数据的消息队列管理方法中的入队列步骤的一实施例的流程图;
图5为本发明的用于语音数据的消息队列管理方法中的获取数据步骤的一实施例的流程图;
图6为为本发明的用于语音数据的消息队列管理方法中的出队列步骤的一实施例的流程图;
图7为本发明的电子设备的一实施例的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
在本发明中,“模块”、“装置”、“系统”等指应用于计算机的相关实体,如硬件、硬件和软件的组合、软件或执行中的软件等。详细地说,例如,元件可以、但不限于是运行于处理器的过程、处理器、对象、可执行元件、执行线程、程序和/或计算机。还有,运行于服务器上的应用程序或脚本程序、服务器都可以是元件。一个或多个元件可在执行的过程和/或线程中,并且元件可以在一台计算机上本地化和/或分布在两台或多台计算机之间,并可以由各种计算机可读介质运行。元件还可以根据具有一个或多个数据包的信号,例如,来自一个与本地系统、分布式系统中另一元件交互的,和/或在因特网的网络通过信号与其它系统交互的数据的信号通过本地和/或远程过程来进行通信。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
如图1所示,本发明的实施例提供一种用于语音数据的消息队列管理方法,应用于语音对话终端,所述方法包括:
S11、对所接收到的语音数据进行傅里叶变化,并分成多帧语音数据片段;
S12、当确定所述消息队列中存在空闲存储单元时,从所述多帧语音数据片段中获取一帧语音数据片段,并生成对应于所述一帧语音数据片段的数据处理标识信息,所述数据处理标识信息用于标识所述一帧语音数据片段是否已被所述语音对话终端中的多个业务模块访问完毕,若是则更新所述数据处理标识,以表明此时所述一帧语音数据片段已经可以被删除并释放所述消息队列中的相应存储单元。
示例性地,所述数据处理标识信息至少包括多对业务模块标识位和业务模块访问状态位;其中,所述业务模块标识位用于标记需要访问所述一帧语音数据片段的业务模块,所述业务模块访问状态位用于标记所述一帧语音数据片段是否已经被相应的业务模块所访问。
示例性地,所述数据处理标识信息包括一个16比特的数组,其中,每两个比特为一对,分别与成对的业务模块标识位和业务模块访问状态位相对应。
示例性地,所述业务模块至少包括唤醒业务模块和/或波束成形业务模块和/或角度测算业务模块。
示例性地,每次所述语音对话终端中的多个业务模块之一访问所述一帧语音数据片段之后,所述一帧语音数据片段的数据处理标识信息便更新一次,当所述语音对话终端中的多个业务模块均已完成对所述一帧语音数据片段的访问之后,所述一帧语音数据片段的数据处理标识信息被更新为:表明此时所述一帧语音数据片段已经可以被删除并释放所述消息队列中的相应存储单元。
S13、将所述一帧语音数据片段的数据处理标识信息和存储地址信息存入所述消息队列中。
本发明实施例在将语音数据片段存入消息队列时,还一并生成并存储了对应于所述一帧语音数据片段的数据处理标识信息,该数据处理标识信息用于标识所述一帧语音数据片段是否已被所述语音对话终端中的多个业务模块访问完毕,并且每次有业务模块访问该语音数据片段,就会对该数据处理标识信息进行一次状态的更新,从而能够使得该数据处理标识信息实时标识语音数据片段的待访问状态,当语音数据片段已被所述语音对话终端中的多个业务模块访问完毕时,更新对应数据处理标识信息状以表明此时所述一帧语音数据片段已经可以被删除并释放所述消息队列中的相应存储单元,从而实现了只有当所有的业务模块访问完毕之后才能够将语音数据片段删除并释放消息队列中的存储单元。无需建立多个消息队列的情况下就能够确保所有的业务模块能够顺利的完成对语音数据片段的访问,简化了数据存储方法,降低了语音数据存储的成本。
如图2所示,本发明的实施例提供另一种用于语音数据的消息队列管理方法,应用于语音对话终端,所述语音对话终端包括多个业务模块,所述方法包括:
S21、当所述消息队列不为空时,响应于所述多个业务模块中的其中一个业务模块访问所述消息队列的请求,向所述其中一个业务模块返回所述消息队列的队头所存储的存储地址信息,并更新所述消息队列的队头所存储的数据处理标识信息。
示例性地,所述数据处理标识信息至少包括多对业务模块标识位和业务模块访问状态位;其中,所述业务模块标识位用于标记需要访问所述语音数据片段的业务模块,所述业务模块访问状态位用于标记所述语音数据片段是否已经被相应的业务模块所访问。
示例性地,所述数据处理标识信息包括一个16比特的数组,其中,每两个比特为一对,分别与成对的业务模块标识位和业务模块访问状态位相对应。
示例性地,所述业务模块至少包括唤醒业务模块和/或波束成形业务模块和/或角度测算业务模块。
S22、当更新后的所述数据标识信息表明,当前所述多个业务模块均已访问过所述消息队列的队头时,释放当前所述消息队列的队头。
本发明实施例中在队列管理模块中增加数据处理标识(包含两部分处理标识和未完成标识)见图3,当业务模块请求数据时,返回数据指针但是数据单元不会从队列中删除,直到数据处理标识所指定的业务模块都处理过该数据,才会将数据单元出队列,删除数据单元信息。
示例性地,本发明中队列管理分为三部,入队列、获取数据、出队列。队列管理采用常规的循环队列,在循环队列的基础上加入数据标识,满足多输出模型的需要。
步骤一:如图4所示,读取队列的首部与尾部相对起始位置的偏移,判断队列是否有空闲空间来存放新的数据。头部位置(Head)表示队列中最久未被处理的数据位置,尾部位置(Tail)表示队列中可以利用资源的位置。当Head(头部位置)=Tail(尾部位置)+1,表示队列已满无空间存储新的数据,系统进入阻塞状态,等待队列中数据被处理后释放资源。当尾部位置不等于头部位置,表示队列有空闲位置,将数据存放在尾部位置处,并根据入队列时提供的信息生成该数据的标识信息,其中,入队列时提供的信息为业务模块信息(例如,波束成形、角度测算等,可以是一个,也可以是多个)。
数据标识信息由一个16比特的数组成,前8比特定义为处理标识,表示需要处理该数据的模块,后8比特定义为未完成标识,表示未处理完成的模块,每个比特位表示一个模块(见图3,例如,第0个比特位对应波束成形模块,第3个比特位对应角度测算模块)。在入队列时,根据需要处理该数据的模块信息,处理标识和未完成标识被设置为一组相同的值。
最后尾部位置加一,完成入队列操作。
步骤二:如图5所示,业务模块获取数据时,首先判断队列是否为空。读取队列的Tail和Head,当Head等于Tail,表示队列已空无可用数据。当Head不等于Tail,表示队列有需要处理的数据,获取Head处数据信息。数据信息包含数据标识和数据在内存的地址。比较业务模块所对应的比特位在该数据的处理标识中是否为1。
若为1表示该数据未被此业务模块处理过,将该数据处理标识对应此业务模块的比特位置为0,并输出数据在内存的地址;
若为0表示此业务模块已处理过该数据,并请求其他数据。可以理解为这个数据已经被处理完成,需要将未完成标识对应比特位置0。在队列中顺序获取下一个数据继续判断处理标识,直到查找到需要的数据或者下个数据不存在为止。
步骤三:如图6所示,当业务模块获取数据成功后,触发数据出队列。首先获取队列头部位置的数据信息,检查未完成标识。若为0则表示该数据已经被对应的模块一一处理完毕,清除数据信息,释放内存资源。若为1则表示该数据还需要等待其他模块处理结束。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在一些实施例中,本发明实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项用于语音数据的消息队列管理方法。
在一些实施例中,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项用于语音数据的消息队列管理方法。
在一些实施例中,本发明实施例还提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行用于语音数据的消息队列管理方法。
在一些实施例中,本发明实施例还提供一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现用于语音数据的消息队列管理方法。
图7是本申请另一实施例提供的执行用于语音数据的消息队列管理方法的电子设备的硬件结构示意图,如图7所示,该设备包括:
一个或多个处理器710以及存储器720,图7中以一个处理器710为例。
执行用于语音数据的消息队列管理方法的设备还可以包括:输入装置730和输出装置740。
处理器710、存储器720、输入装置730和输出装置740可以通过总线或者其他方式连接,图7中以通过总线连接为例。
存储器720作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的用于语音数据的消息队列管理方法对应的程序指令/模块。处理器710通过运行存储在存储器720中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的用于语音数据的消息队列管理方法。
存储器720可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据用于语音数据的消息队列管理装置的使用所创建的数据等。此外,存储器720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器720可选包括相对于处理器710远程设置的存储器,这些远程存储器可以通过网络连接至用于语音数据的消息队列管理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置730可接收输入的数字或字符信息,以及产生与用于语音数据的消息队列管理装置的用户设置以及功能控制有关的信号。输出装置740可包括显示屏等显示设备。
所述一个或者多个模块存储在所述存储器720中,当被所述一个或者多个处理器710执行时,执行上述任意方法实施例中的用于语音数据的消息队列管理方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种用于语音数据的消息队列管理方法,应用于语音对话终端,所述方法包括:
对所接收到的语音数据进行傅里叶变化,并分成多帧语音数据片段;
当确定所述消息队列中存在空闲存储单元时,从所述多帧语音数据片段中获取一帧语音数据片段,并生成对应于所述一帧语音数据片段的数据处理标识信息,所述数据处理标识信息用于标识所述一帧语音数据片段是否已被所述语音对话终端中的多个业务模块访问完毕,若是则更新所述数据处理标识,以表明此时所述一帧语音数据片段已经可以被删除并释放所述消息队列中的相应存储单元;
将所述一帧语音数据片段的数据处理标识信息和存储地址信息存入所述消息队列中。
2.根据权利要求1所述的方法,其中,所述数据处理标识信息至少包括多对业务模块标识位和业务模块访问状态位;其中,所述业务模块标识位用于标记需要访问所述一帧语音数据片段的业务模块,所述业务模块访问状态位用于标记所述一帧语音数据片段是否已经被相应的业务模块所访问。
3.根据权利要求2所述的方法,其中,所述数据处理标识信息包括一个16比特的数组,其中,每两个比特为一对,分别与成对的业务模块标识位和业务模块访问状态位相对应。
4.根据权利要求1-3中任一项所述的方法,其中,所述业务模块至少包括唤醒业务模块和/或波束成形业务模块和/或角度测算业务模块。
5.一种用于语音数据的消息队列管理方法,应用于语音对话终端,所述语音对话终端包括多个业务模块,所述方法包括:
当所述消息队列不为空时,响应于所述多个业务模块中的其中一个业务模块访问所述消息队列的请求,向所述其中一个业务模块返回所述消息队列的队头所存储的存储地址信息,并更新所述消息队列的队头所存储的语音数据片段的数据处理标识信息;
当更新后的所述语音数据片段的数据处理标识信息表明,当前所述多个业务模块均已访问过所述消息队列的队头时,释放当前所述消息队列的队头。
6.根据权利要求5所述的方法,其中,所述数据处理标识信息至少包括多对业务模块标识位和业务模块访问状态位;其中,所述业务模块标识位用于标记需要访问所述语音数据片段的业务模块,所述业务模块访问状态位用于标记所述语音数据片段是否已经被相应的业务模块所访问。
7.根据权利要求6所述的方法,其中,所述数据处理标识信息包括一个16比特的数组,其中,每两个比特为一对,分别与成对的业务模块标识位和业务模块访问状态位相对应。
8.根据权利要求5-7中任一项所述的方法,其中,所述业务模块至少包括唤醒业务模块和/或波束成形业务模块和/或角度测算业务模块。
9.一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任意一项所述方法的步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-8中任意一项所述方法的步骤。
CN201911256611.1A 2019-12-10 2019-12-10 用于语音数据的消息队列管理方法 Active CN111026532B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911256611.1A CN111026532B (zh) 2019-12-10 2019-12-10 用于语音数据的消息队列管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911256611.1A CN111026532B (zh) 2019-12-10 2019-12-10 用于语音数据的消息队列管理方法

Publications (2)

Publication Number Publication Date
CN111026532A CN111026532A (zh) 2020-04-17
CN111026532B true CN111026532B (zh) 2022-07-12

Family

ID=70208254

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911256611.1A Active CN111026532B (zh) 2019-12-10 2019-12-10 用于语音数据的消息队列管理方法

Country Status (1)

Country Link
CN (1) CN111026532B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112199215B (zh) * 2020-10-13 2024-01-19 恒生电子股份有限公司 消息处理方法、装置、设备及存储介质
CN116112126B (zh) * 2023-04-12 2023-06-09 深圳市云天智能通讯有限公司 基于通话场景自适应降噪方法、装置及通信终端

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190108129A1 (en) * 2016-06-06 2019-04-11 Alibaba Group Holding Limited Information processing method and device, and method and device for displaying dynamic information
CN110069353A (zh) * 2019-03-18 2019-07-30 中科恒运股份有限公司 业务异步处理方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190108129A1 (en) * 2016-06-06 2019-04-11 Alibaba Group Holding Limited Information processing method and device, and method and device for displaying dynamic information
CN110069353A (zh) * 2019-03-18 2019-07-30 中科恒运股份有限公司 业务异步处理方法及装置

Also Published As

Publication number Publication date
CN111026532A (zh) 2020-04-17

Similar Documents

Publication Publication Date Title
CN108200134B (zh) 请求消息管理方法及装置、存储介质
CN108369604B (zh) 一种多操作系统共享文件系统的方法、装置和电子设备
US10846124B2 (en) Communication method, apparatus and system for virtual machine and host machine
US20170185454A1 (en) Method and Electronic Device for Determining Resource Consumption of Task
CN111026532B (zh) 用于语音数据的消息队列管理方法
CN110781373B (zh) 榜单更新方法、装置、可读介质和电子设备
US10621124B2 (en) Method, device and computer program product for enabling SR-IOV functions in endpoint device
CN111338797A (zh) 任务处理方法、装置、电子设备及计算机可读存储介质
WO2014146441A1 (en) Method, server and system for processing task data
CN109658934B (zh) 通过语音控制多媒体app的方法及装置
JP2021022379A (ja) ハードウェアアクセラレータの自律ジョブキューイングシステム
US20170188214A1 (en) Method and electronic device for sharing multimedia information
CN112486825B (zh) 多泳道环境架构系统、消息消费方法、装置、设备及介质
CN111179973B (zh) 语音合成质量评价方法及系统
CN113076281A (zh) 一种Ceph内核客户端进行通信的方法、系统、设备及介质
CN115134254B (zh) 一种网络模拟方法、装置、设备及存储介质
CN109981778B (zh) 内容分发网络的服务实现方法、装置、设备及存储介质
CN106933646B (zh) 一种创建虚拟机的方法及装置
US20170171150A1 (en) Method and apparatus for processing public ip
CN114338386B (zh) 一种网络的配置方法、装置、电子设备及存储介质
US10284501B2 (en) Technologies for multi-core wireless network data transmission
CN104539450A (zh) 网站运营活动处理系统、方法和装置
WO2023066258A1 (zh) 隐私数据的数据处理方法、装置、计算机设备及介质
CN109033235A (zh) 一种数据存储双活架构构建方法、系统、介质和电子设备
CN112667949A (zh) 用于前端网关的数据处理方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 215123 building 14, Tengfei Innovation Park, 388 Xinping street, Suzhou Industrial Park, Suzhou City, Jiangsu Province

Applicant after: Sipic Technology Co.,Ltd.

Address before: 215123 building 14, Tengfei Innovation Park, 388 Xinping street, Suzhou Industrial Park, Suzhou City, Jiangsu Province

Applicant before: AI SPEECH Co.,Ltd.

GR01 Patent grant
GR01 Patent grant