CN107957908A - 一种麦克风共享方法、装置、计算机设备及存储介质 - Google Patents

一种麦克风共享方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN107957908A
CN107957908A CN201711156817.8A CN201711156817A CN107957908A CN 107957908 A CN107957908 A CN 107957908A CN 201711156817 A CN201711156817 A CN 201711156817A CN 107957908 A CN107957908 A CN 107957908A
Authority
CN
China
Prior art keywords
microphone
buffer queue
track
current application
current
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.)
Pending
Application number
CN201711156817.8A
Other languages
English (en)
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.)
Shenzhen Skyworth Digital Technology Co Ltd
Original Assignee
Shenzhen Skyworth Digital 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 Shenzhen Skyworth Digital Technology Co Ltd filed Critical Shenzhen Skyworth Digital Technology Co Ltd
Priority to CN201711156817.8A priority Critical patent/CN107957908A/zh
Publication of CN107957908A publication Critical patent/CN107957908A/zh
Pending legal-status Critical Current

Links

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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/162Interface to dedicated audio devices, e.g. audio drivers, interface to CODECs
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

本发明实施例公开了一种麦克风共享方法、装置、计算机设备及存储介质。所述方法包括:通过接收当前应用发送的共享请求,然后响应于共享请求通过麦克风获取用户输入的语音数据流,并将语音数据流存储到缓存队列中,最后按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据流分段发送至当前应用中。本发明实施例解决了现有技术中多个应用无法共享使用麦克风资源的问题,实现了多个应用可以同时访问并使用麦克风获取语音数据的效果。

Description

一种麦克风共享方法、装置、计算机设备及存储介质
技术领域
本发明实施例涉及麦克风技术领域,尤其涉及一种麦克风共享方法、装置、计算机设备及存储介质。
背景技术
随着手机、电脑等移动设备的普遍应用,尤其是Android系统设备的广泛应用,麦克风的使用也越来越多,如常见的K歌应用、蓝牙音乐推送应用、语音助手和录音应用等均需要使用到麦克风。
但是现有Android系统设备上的麦克风默认是独占设备。也就是说,现有的Android系统设备使用麦克风时,在同一时间仅能让一个应用访问使用麦克风,这就导致在很多场景下,多个应用不能同时正确的工作。例如,当前设备正在使用K歌应用K歌时,用户想通过语音助手搜索某首歌曲再K歌,由于K歌需要占用麦克风,而用户采用语音助手在任何时刻都能进行语音输入和语音识别,语音助手也需要占用麦克风。此时,用户会发现语音助手无法工作,必须先退出K歌应用,释放了麦克风资源后语音助手才能使用麦克风正常工作,影响了用户的体验。
发明内容
本发明实施例提供一种麦克风共享方法、装置、计算机设备及存储介质,可以共享麦克风资源,以实现多个应用同时访问使用麦克风获取语音数据。
第一方面,本发明实施例提供了一种麦克风共享方法,该方法包括:
接收当前应用发送的共享请求;其中,所述共享请求中携带所述当前应用的应用标识;
响应于所述共享请求通过麦克风获取用户输入的语音数据流,并将所述语音数据流存储到缓存队列中;
按照预先设置的时间周期通过当前应用对应的录制轨道将所述缓存队列中的语音数据流分段发送至所述当前应用中。
第二方面,本发明实施例还提供了一种麦克风共享装置,该装置包括:
共享请求接收模块,用于接收当前应用发送的共享请求;其中,所述共享请求中携带所述当前应用的应用标识;
语音数据获取模块,响应于所述共享请求通过麦克风获取用户输入的语音数据流,并将所述语音数据流存储到缓存队列中;
语音数据分配模块,用于按照预先设置的时间周期通过当前应用对应的录制轨道将所述缓存队列中的语音数据流分段发送至所述当前应用中。
第三方面,本发明实施例还提供了一种计算机设备,该计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一所述的麦克风共享方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一所述的麦克风共享方法。
本发明实施例提供了一种麦克风共享方法、装置、计算机设备及存储介质,通过接收当前应用发送的共享请求,其中,所述共享请求中携带所述当前应用的应用标识,然后响应于所述共享请求通过麦克风获取用户输入的语音数据流,并将所述语音数据流存储到缓存队列中,最后按照预先设置的时间周期通过当前应用对应的录制轨道将所述缓存队列中的语音数据流分段发送至所述当前应用中。本发明实施例解决了现有技术中多个应用无法共享使用麦克风资源的问题,实现了多个应用可以同时访问并使用麦克风获取语音数据的效果。
附图说明
图1是本发明实施例一提供的麦克风共享方法的流程示意图;
图2是本发明实施例二提供的麦克风共享方法的流程示意图;
图3是本发明实施例三提供的麦克风共享方法的流程示意图;
图4是本发明实施例四提供的麦克风共享装置的结构示意图;
图5是本发明实施例五提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
实施例一
图1是本发明实施例一提供的麦克风共享方法的流程示意图,本实施例可适用于麦克风资源共享的情况,该方法可由麦克风共享装置来执行,该装置可以采用软件和/或硬件的方式实现,该装置可以集成在任何具有网络通信功能的智能设备中。如图1所示,该麦克风共享方法可以包括:
步骤110、接收当前应用发送的共享请求;其中,共享请求中携带当前应用的应用标识。
在本实施例中,麦克风共享装置可以接收当前应用发送的麦克风共享请求。该麦克风共享装置可以集成在手机、电脑等终端的麦克风中,也可以作为一个单独的设备与麦克风并列设置。其中,当前应用可以是一个或多个使用麦克风的应用。也就是说,麦克风共享装置可以同时接收一个或多个应用发送的麦克风资源请求,请求麦克风将获取的语音数据分别发送给该发送共享请求的一个或多个应用。其中,共享请求中可以携带当前应用的应用标识,用以区分不同的应用程序。示例性的,当前应用为K歌应用和语音助手应用,当前正在使用的应用为K歌应用,此时K歌应用需要占用麦克风资源。如果用户想通过语音助手搜索某一首歌曲,而又不造成K歌中断影响继续K歌,那么语音助手应用可以发出麦克风共享请求,麦克风共享装置可以接收该麦克风共享请求。其中,共享请求中可以携带K歌和语音助手应用的应用标识,通过应用标识可以判断当前应用中的哪些应用需要麦克风资源的共享。
在本实施例中,该共享请求可以是当前应用中需要使用麦克风的应用分别发出的各自对应的麦克风使用请求。该共享请求也可以是当前应用中某一个应用发出一个共享请求,且在该一个共享请求中包含了当前应用中多个应用请求使用麦克风的信息。例如,当前应用为K歌应用和语音助手应用,共享请求可以由后续加入的语音助手发出一个使用麦克风的请求,且该请求中包含K歌请求使用麦克风资源的信息和语音助手请求使用麦克风资源的信息。共享请求还可以是语音助手和K歌分别发出的使用麦克风资源的请求。
步骤120、响应于共享请求通过麦克风获取用户输入的语音数据流,并将语音数据流存储到缓存队列中。
在本实施例中,麦克风共享装置接收到当前应用发送的共享请求之后,可以对当前应用发送的共享请求进行响应,通过麦克风获取用户输入的语音数据流,并将语音数据流存储至缓存队列中进行缓存。其中,该语音数据流可以采用脉冲编码调制PCM格式的语音数据。PCM中的数据没有被压缩,如果采用单声道文件,那么PCM语音数据可以按照时间的先后依次存入;如果是双声道文件,那么PCM语音数据按照时间先后顺序交叉地存入。示例性的,当语音数据采用单声道时,麦克风共享装置可以响应麦克风共享请求通过麦克风的输入端获取用户输入的PCM语音数据,并按照获取PCM语音数据的时间先后顺序依次将该PCM数据存入语音数据的缓存队列中。
步骤130、按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据流分段发送至当前应用中。
通过麦克风可以不间断地获取用户输入的语音数据,并将该语音数据流不间断地存储至缓存队列中进行缓存。由于缓存队列的内存空间是有限的而不是无限的,如果不能及时将缓存队列中存储的语音数据发送出去,那么后续通过麦克风获取的语音数据就会将前面的语音数据覆盖,这样就会造成语音数据的部分丢失。在本实施例中,麦克风装置可以按照预先设定的时间周期通过当前应用的录制轨道将缓存队列中存储的语音数据流分段发送至当前应用中。其中,当前应用的录制轨道可以是正在使用麦克风的各个应用与麦克风之间的各个通道,通过各个录制轨道可以将缓存队列中的语音数据分段发送到各个应用中,从而实现通过一个麦克风获取语音数据,并将该语音数据共享给当前正在使用麦克风的多个应用,此时当前的多个应用可以分别获取各自应用对应的录制轨道的缓存队列中的语音数据流。示例性的,假定当前应用为K歌应用和语音助手,麦克风获取语音数据后可以先存储在缓存队列中,然后通过K歌应用和语音助手的录制轨道分别将麦克风获取的语音数据发送至K歌应用和语音助手中。另外,在将缓存队列中的语音数据流分段发送至当前应用时,需要按照获取语音数据的先后顺序发送,先发送时间顺序在前的语音段,再发送时间顺序在后的语音段。
本发明实施例提供了的麦克风共享方法,通过接收当前应用发送的共享请求,然后响应于共享请求通过麦克风获取用户输入的语音数据流,并将语音数据流存储到缓存队列中,最后按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据流分段发送至当前应用中。本发明实施例解决了现有技术中多个应用无法共享使用麦克风资源的问题,实现了多个应用可以同时访问并使用麦克风获取语音数据的效果。
实施例二
图2是本发明实施例二提供的麦克风共享方法的流程示意图,本发明实施例在上述实施例一的基础上进行优化。如图2所示,该麦克风共享方法可以包括:
步骤210、接收当前应用发送的共享请求;其中,共享请求中携带当前应用的应用标识。
在本实施例中,当前应用打开麦克风使用时,可以发送一个需要使用麦克风的请求信息。如果仅有一个应用打开麦克风进行使用那么发送一个简单的使用请求就可以正常使用麦克风。如果存在多个应用同时需要使用麦克风时,则需要当前的多个应用发送一个共享麦克风资源的使用请求,同时该共享麦克风资源的使用请求中可以携带各个应用的应用标识。其中,应用标识可以包括应用的ID和应用请求使用麦克风资源等信息。
步骤220、根据当前应用对应的应用标识建立当前应用与麦克风之间的当前录制轨道;其中,当前录制轨道中包括缓存队列。
在本实施例中,当前应用可以是一个或多个正在或准备使用麦克风的应用。麦克风共享装置可以根据当前的一个应用对应的应用标识建立该一个应用与麦克风之间的一个录制轨道;或者麦克风共享装置可以根据当前的多个应用各自对应的应用标识建立该多个应用与麦克风之间当前的多个录制轨道。同时,冰一个录制轨道中都包括对应的缓存队列。由于当前应用的应用标识可以包括应用的ID和应用请求使用麦克风资源等信息,因此每一个应用和每一个应用与麦克风之间的录制轨道存在一一对应的关系。其中,该一一对应的关系可以采用应用标识中的ID进行建立。例如,当设置K歌应用的ID为A时,K歌应用与麦克风之间建立的录制轨道的ID也为A;同样的当设置语音助手应用的ID为B时,语音助手应用与麦克风之间建立的录制轨道的ID也为B。
在上述实施例的基础上,可选的,在根据当前应用对应的应用标识建立当前应用与麦克风之间的当前录制轨道之前,还包括:判断麦克风是否是首次被打开使用,并根据判断结果执行后续操作。
若该麦克风是首次被打开使用,则按照麦克风固定的参数对麦克风进行初始化,并创建麦克风的语音录制任务;然后执行步骤220:根据当前应用对应的应用标识建立当前应用与麦克风之间的当前录制轨道。
若该麦克风不是首次被打开使用,则直接执行步骤220:根据当前应用对应的应用标识建立当前应用与麦克风之间的当前录制轨道。
在上述实施例的基础上,可选的,在根据当前应用对应的应用标识建立当前应用与麦克风之间的当前录制轨道之后,还包括:将当前录制轨道的轨道信息添加到录制轨道列表中。
在本实施例中,在将当前录制轨道的轨道信息添加到录制轨道列表中之后,不仅可以通过对录制轨道列表进行管理,以实现将各个录制轨道中的数据准确地发送至各个应用中。
进一步的,通过录制轨道列表中的录制轨道信息还可以对各个录制轨道进行实时监控。具体可以包括:按照预先设置的时间间隔判断当前录制轨道的缓存队列是否为空;当录制轨道的缓存队列为空时,断开当前录制轨道并将当前录制轨道的轨道信息从录制轨道列表中移除。
在本实施例中,麦克风共享装置可以按照预先设置的时间间隔判断录制轨道列表中对应的各个录制轨道的缓存队列是否存在语音数据。如果录制轨道列表中某个录制轨道的缓存队列中不存在语音数据或一定时间内也不再有新的语音数据,则认为该录制轨道对应的应用不再使用麦克风进行共享语音数据,可以将该录制轨道断开并将该录制轨道的轨道信息从录制轨道列表中移除。其中,轨道信息可以是录制轨道对应的应用所属的应用标识中的相关信息,比如应用的ID和应用请求使用麦克风资源等信息。
步骤230、响应于共享请求通过麦克风获取用户输入的语音数据流,并将语音数据流存储到缓存队列中。
在本实施例中,通过步骤220建立一个应用与麦克风之间的一个录制轨道或者多个应用与麦克风之间的多个录制轨道后,麦克风共享装置可以响应一个或多个应用发送的麦克风资源共享请求。然后通过麦克风获取用户输入的语音数据,并将麦克风获取的语音数据流分别存储到相应的一个或多个录制轨道的缓存队列中进行缓存。也就是说,麦克风共享装置可以通过各个录制轨道接收麦克风获取的语音数据,并按照语音数据获取的先后顺序在各个录制轨道的缓存队列中对获取的语音数据进行缓存。
步骤240、按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据流分段发送至当前应用中。
在本实施例中,各个录制轨道的缓存队列的内存是有限的,可能无法将麦克风获取的全部语音数据进行存储,因此可以按照预先设置的时间周期实时地将缓存队列中的语音数据通过各个应用与麦克风之间的各个录制轨道分段发送至各个应用中,为后续麦克风获取的语音数据的在缓存队列中进行缓存提供存储空间。由于缓存队列中需要缓存的语音数据量较大,可能无法将缓存队列中的语音数据一次性的发送到各个应用,因此可以采用语音数据分段发送的形式将缓存队列中的语音数据发送到各个应用。另外,该预先设置的时间周期可以是与麦克风获取语音数据的时间进行同步。也就是说,当按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据分段发送至当前应用时,麦克风获取的语音数据同时也按照获取的先后顺序进入缓存队列进行缓存,从而占据了缓存队列中由于将语音数据分段发送至各个应用而再次腾出的内存空间。
本发明实施例提供了的麦克风共享方法,通过接收当前应用发送的共享请求,建立当前应用与麦克风至今的录制轨道,然后响应于共享请求通过麦克风获取用户输入的语音数据流,并将语音数据流存储到缓存队列中,最后按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据流分段发送至当前应用中。本发明实施例解决了现有技术中多个应用无法共享使用麦克风资源的问题,使语音数据可以通过一个麦克风传输到多个应用中,实现了多个应用可以同时访问并使用麦克风获取语音数据的效果。
实施例三
图3是本发明实施例三提供的麦克风共享方法的流程示意图,本发明实施例在上述实施例一和实施例二的基础上进行优化。如图3所示,该麦克风共享方法可以包括:
步骤310接收当前应用发送的共享请求;其中,共享请求中携带当前应用的应用标识。
步骤320、根据当前应用对应的应用标识建立当前应用与麦克风之间的当前录制轨道;其中,当前录制轨道中包括缓存队列。
步骤330、响应于共享请求通过麦克风获取用户输入的语音数据流,并将语音数据流存储到缓存队列中。
步骤340、判断缓存队列中的语音数据流是否满足当前应用对应的参数条件。
在本实施例中,由于各个录制轨道是根据各个应用对应的应用标识建立各个应用与麦克风之间的录制轨道,各个录制轨道的轨道参数与各个应用有关,因此各个录制轨道之间的轨道参数可能并不相同,从而造成通过麦克风获取的语音数据可能无法与各个录制轨道均匹配。其中,轨道参数可以包括录制轨道的语音数据采样参数和语音数据的声道参数,比如采样参数可以是语音数据的采样频率,声道参数可以是录制轨道是采用单声道还是采用的双声道。
为了更好地使麦克风获取的语音数据匹配各个录制轨道,可以实时地检测判断录制轨道的缓存队列中的语音数据流是否满足当前应用对应的参数条件。其中,该当前应用对应的参数条件与录制轨道的轨道参数相同。
步骤350、当缓存队列中的语音数据流不满足当前应用对应的参数条件时,对缓存队列中的语音数据流进行校正处理。
在本实施例中,当缓存队列中的语音数据流不满足当前应用对应的参数条件时,对缓存队列中的语音数据流进行校正处理,并将缓存队列中的语音数据流更新为校正处理后的语音数据流。当缓存队列中的语音数据流满足当前应用对应的参数条件时,对缓存队列中的语音数据不进行校正处理。
在上述实施例的基础上,可选的,对缓存队列中的语音数据流进行校正处理,具体可以包括:
根据当前应用对应的应用标识中的采样参数对缓存队列中的语音数据流进行重采样;和/或
根据当前应用对应的应用标识中的声道参数对缓存队列中的语音数据流进行混音处理。
在本实施例中,对缓存队列中的语音数据流进行重采样可以是对麦克风获取的数据按照需要的采样位数和采样频率进行处理。对缓存队列中的语音数据流进行混音处理可以是对麦克风获取的数据按照需要调整为单声道还是双声道。
步骤360、按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据流分段发送至当前应用中。
本发明实施例提供了的麦克风共享方法,通过接收当前应用发送的共享请求,建立当前应用与麦克风至今的录制轨道,然后响应于共享请求通过麦克风获取用户输入的语音数据流,并将语音数据流存储到缓存队列中,对缓存队列中的语音数据进行校正处理,最后按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据流分段发送至当前应用中。本发明实施例解决了现有技术中多个应用无法共享使用麦克风资源的问题,使语音数据可以通过一个麦克风准确传输到多个应用中,实现了多个应用可以同时访问并使用麦克风获取语音数据的效果。
在本发明上述实施例的基础上,该麦克风共享方法还包括:按照预设的时间间隔判断录制轨道列表中是否存在录制轨道的轨道信息;若存在录制轨道的轨道信息,则继续通过麦克风获取语音数据进行处理和发送至各个应用中;若不存在录制轨道的轨道信息,则直接关闭麦克风,停止语音数据的录制。
实施例四
图4是本发明实施例四提供的麦克风共享装置的结构示意图,该装置执行上述实施例所述的麦克风共享方法。如图4所示,该麦克风共享装置包括:共享请求接收模块410、语音数据获取模块420和语音数据分配模块430,其中:
共享请求接收模块410,用于接收当前应用发送的共享请求;其中,共享请求中携带当前应用的应用标识;
语音数据获取模块420,响应于共享请求通过麦克风获取用户输入的语音数据流,并将语音数据流存储到缓存队列中;
语音数据分配模块430,用于按照预先设置的时间周期通过当前应用对应的录制轨道将缓存队列中的语音数据流分段发送至当前应用中。
可选的,在上述实施例的基础上,该麦克风共享装置还包括:
录制轨道建立模块440,用于根据当前应用对应的应用标识建立当前应用与麦克风之间的当前录制轨道;其中,录制轨道中包括缓存队列;
录制轨道管理模块450,用于将当前录制轨道的轨道信息添加到录制轨道列表中。
在本实施例中,录制轨道管理模块450在将当前录制轨道的轨道信息添加到录制轨道列表中之后,不仅可以通过对录制轨道列表进行管理,以实现将各个录制轨道中的数据准确地发送至各个应用中。
可选的,录制轨道管理模块450还包括:录制轨道状态判断单元,用于按照预先设置的时间间隔判断当前录制轨道的缓存队列是否为空;录制轨道移除单元,用于当录制轨道的缓存队列为空时,断开当前录制轨道并将当前录制轨道的轨道信息从录制轨道列表中移除。
进一步的,在上述实施例的基础上,该麦克风共享装置还包括:
录制轨道判断模块460,用于按照预先设置的时间间隔判断当前录制轨道的缓存队列是否为空;
录制轨道处理模块470,用于当录制轨道的缓存队列为空时,断开当前录制轨道并将当前录制轨道的轨道信息从录制轨道列表中移除。
可选的,在上述实施例的基础上,该麦克风共享装置还包括:
语音数据判断模块480,用于判断缓存队列中的语音数据流是否满足当前应用对应的参数条件;
语音数据处理模块490,用于当缓存队列中的语音数据流不满足当前应用对应的参数条件时,对缓存队列中的语音数据流进行校正处理。
在本实施例中,语音数据处理模块490具体可以包括:语音数据重采样单元,用于根据当前应用对应的应用标识中的采样参数对缓存队列中的语音数据流进行重采样;和/或,语音数据混音处理单元,用于根据当前应用对应的应用标识中的声道参数对缓存队列中的语音数据流进行混音处理。
可选的,在上述实施例的基础上,该麦克风共享装置还包括:录制轨道检测模块,用于按照预设的时间间隔判断录制轨道列表中是否存在录制轨道的轨道信息;录制轨道循环模块,用于若存在录制轨道的轨道信息,则继续通过麦克风获取语音数据进行处理和发送至各个应用中,若不存在录制轨道的轨道信息,则直接关闭麦克风,停止语音数据的录制。
本发明实施例所提供的麦克风共享装置可执行上述本发明任意实施例所提供的麦克风共享方法,具备执行该麦克风共享方法相应的功能模块和有益效果。
实施例五
图5是本发明实施例五提供的一种计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备512的框图。图5显示的计算机设备512仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机设备512以通用计算设备的形式表现。计算机设备512的组件可以包括但不限于:一个或者多个处理器516,系统存储器528,连接不同系统组件(包括系统存储器528和处理器516)的总线518。
总线518表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备512典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备512访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器528可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)530和/或高速缓存存储器532。计算机设备512可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统534可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线518相连。存储器528可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块542的程序/实用工具540,可以存储在例如存储器528中,这样的程序模块542包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块542通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备512也可以与一个或多个外部设备514(例如键盘、指向设备、显示器524等)通信,还可与一个或者多个使得用户能与计算机设备512交互的设备通信,和/或与使得该计算机设备512能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口522进行。并且,计算机设备512还可以通过网络适配器520与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器520通过总线518与计算机设备512的其它模块通信。应当明白,尽管图5中未示出,可以结合计算机设备512使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器516通过运行存储在系统存储器528中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的网麦克风共享方法,包括:
接收当前应用发送的共享请求;其中,所述共享请求中携带所述当前应用的应用标识;
响应于所述共享请求通过麦克风获取用户输入的语音数据流,并将所述语音数据流存储到缓存队列中;
按照预先设置的时间周期通过当前应用对应的录制轨道将所述缓存队列中的语音数据流分段发送至所述当前应用中。
实施例六
本发明实施例六还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所提供的麦克风共享方法,包括:
接收当前应用发送的共享请求;其中,所述共享请求中携带所述当前应用的应用标识;
响应于所述共享请求通过麦克风获取用户输入的语音数据流,并将所述语音数据流存储到缓存队列中;
按照预先设置的时间周期通过当前应用对应的录制轨道将所述缓存队列中的语音数据流分段发送至所述当前应用中。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种麦克风共享方法,其特征在于,所述方法包括:
接收当前应用发送的共享请求;其中,所述共享请求中携带所述当前应用的应用标识;
响应于所述共享请求通过麦克风获取用户输入的语音数据流,并将所述语音数据流存储到缓存队列中;
按照预先设置的时间周期通过当前应用对应的录制轨道将所述缓存队列中的语音数据流分段发送至所述当前应用中。
2.根据权利要求1所述的方法,其特征在于,在响应于所述共享请求通过麦克风获取用户输入的语音数据流之前,还包括:
根据所述当前应用对应的应用标识建立所述当前应用与所述麦克风之间的当前录制轨道;其中,所述当前录制轨道中包括所述缓存队列;
将所述当前录制轨道的轨道信息添加到录制轨道列表中。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
按照预先设置的时间间隔判断所述当前录制轨道的缓存队列是否为空;
当所述录制轨道的缓存队列为空时,断开所述当前录制轨道并将所述当前录制轨道的轨道信息从所述录制轨道列表中移除。
4.根据权利要求1所述的方法,其特征在于,在将所述语音数据流存储到缓存队列中之后,还包括:
判断所述缓存队列中的语音数据流是否满足所述当前应用对应的参数条件;
当所述缓存队列中的语音数据流不满足所述当前应用对应的参数条件时,对所述缓存队列中的语音数据流进行校正处理。
5.一种麦克风共享装置,其特征在于,所述装置包括:
共享请求接收模块,用于接收当前应用发送的共享请求;其中,所述共享请求中携带所述当前应用的应用标识;
语音数据获取模块,响应于所述共享请求通过麦克风获取用户输入的语音数据流,并将所述语音数据流存储到缓存队列中;
语音数据分配模块,用于按照预先设置的时间周期通过当前应用对应的录制轨道将所述缓存队列中的语音数据流分段发送至所述当前应用中。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
录制轨道建立模块,用于根据所述当前应用对应的应用标识建立所述当前应用与所述麦克风之间的当前录制轨道;其中,所述录制轨道中包括所述缓存队列;
录制轨道管理模块,用于将所述当前录制轨道的轨道信息添加到录制轨道列表中。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
录制轨道判断模块,用于按照预先设置的时间间隔判断所述当前录制轨道的缓存队列是否为空;
录制轨道处理模块,用于当所述录制轨道的缓存队列为空时,断开所述当前录制轨道并将所述当前录制轨道的轨道信息从所述录制轨道列表中移除。
8.根据权利要求5所述的装置,其特征在于,所述装置还包括:
语音数据判断模块,用于判断所述缓存队列中的语音数据流是否满足所述当前应用对应的参数条件;
语音数据处理模块,用于当所述缓存队列中的语音数据流不满足所述当前应用对应的参数条件时,对所述缓存队列中的语音数据流进行校正处理。
9.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的麦克风共享方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的麦克风共享方法。
CN201711156817.8A 2017-11-20 2017-11-20 一种麦克风共享方法、装置、计算机设备及存储介质 Pending CN107957908A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711156817.8A CN107957908A (zh) 2017-11-20 2017-11-20 一种麦克风共享方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711156817.8A CN107957908A (zh) 2017-11-20 2017-11-20 一种麦克风共享方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN107957908A true CN107957908A (zh) 2018-04-24

Family

ID=61964900

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711156817.8A Pending CN107957908A (zh) 2017-11-20 2017-11-20 一种麦克风共享方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN107957908A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109471680A (zh) * 2018-11-29 2019-03-15 深圳市车联天下信息科技有限公司 多模块录音方法、装置和车载辅助设备
CN109903763A (zh) * 2019-01-11 2019-06-18 百度在线网络技术(北京)有限公司 服务控制方法、装置及设备
CN111292735A (zh) * 2018-12-06 2020-06-16 北京嘀嘀无限科技发展有限公司 信号处理装置、方法、电子设备及计算机存储介质
CN111341344A (zh) * 2020-02-25 2020-06-26 烽火通信科技股份有限公司 一种实现麦克风共享的方法及系统
WO2024087727A1 (zh) * 2022-10-28 2024-05-02 岚图汽车科技有限公司 基于车载语音ai的语音数据处理方法及相关设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008047560A1 (fr) * 2006-09-28 2008-04-24 Kyocera Corporation Appareil de transmission vocale
CN102004624A (zh) * 2010-11-11 2011-04-06 中国联合网络通信集团有限公司 语音识别控制系统和方法
US20120020250A1 (en) * 2010-05-18 2012-01-26 Lsi Corporation Shared task parameters in a scheduler of a network processor
CN102882976A (zh) * 2012-10-15 2013-01-16 公安部第三研究所 一种带语音视频功能的移动警务平台及其实现方法
CN104754112A (zh) * 2013-12-31 2015-07-01 中兴通讯股份有限公司 用户信息获取方法及移动终端
CN105578224A (zh) * 2014-11-10 2016-05-11 阿里巴巴集团控股有限公司 一种多媒体数据的获取方法、装置、智能电视及机顶盒
CN106708612A (zh) * 2015-11-18 2017-05-24 中兴通讯股份有限公司 一种实现音频录制的方法及终端
CN106897146A (zh) * 2017-02-09 2017-06-27 青岛海信移动通信技术股份有限公司 一种终端的麦克风的数据处理方法和具有麦克风的终端
CN107040832A (zh) * 2017-04-22 2017-08-11 广州市比丽普电子有限公司 一种基于蓝牙技术的手持终端式麦克风系统
CN107277012A (zh) * 2017-06-19 2017-10-20 深圳天珑无线科技有限公司 一种信息共享方法与装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008047560A1 (fr) * 2006-09-28 2008-04-24 Kyocera Corporation Appareil de transmission vocale
US20120020250A1 (en) * 2010-05-18 2012-01-26 Lsi Corporation Shared task parameters in a scheduler of a network processor
CN102004624A (zh) * 2010-11-11 2011-04-06 中国联合网络通信集团有限公司 语音识别控制系统和方法
CN102882976A (zh) * 2012-10-15 2013-01-16 公安部第三研究所 一种带语音视频功能的移动警务平台及其实现方法
CN104754112A (zh) * 2013-12-31 2015-07-01 中兴通讯股份有限公司 用户信息获取方法及移动终端
CN105578224A (zh) * 2014-11-10 2016-05-11 阿里巴巴集团控股有限公司 一种多媒体数据的获取方法、装置、智能电视及机顶盒
CN106708612A (zh) * 2015-11-18 2017-05-24 中兴通讯股份有限公司 一种实现音频录制的方法及终端
CN106897146A (zh) * 2017-02-09 2017-06-27 青岛海信移动通信技术股份有限公司 一种终端的麦克风的数据处理方法和具有麦克风的终端
CN107040832A (zh) * 2017-04-22 2017-08-11 广州市比丽普电子有限公司 一种基于蓝牙技术的手持终端式麦克风系统
CN107277012A (zh) * 2017-06-19 2017-10-20 深圳天珑无线科技有限公司 一种信息共享方法与装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109471680A (zh) * 2018-11-29 2019-03-15 深圳市车联天下信息科技有限公司 多模块录音方法、装置和车载辅助设备
CN111292735A (zh) * 2018-12-06 2020-06-16 北京嘀嘀无限科技发展有限公司 信号处理装置、方法、电子设备及计算机存储介质
CN109903763A (zh) * 2019-01-11 2019-06-18 百度在线网络技术(北京)有限公司 服务控制方法、装置及设备
US11211075B2 (en) 2019-01-11 2021-12-28 Baidu Online Network Technology (Beijing) Co., Ltd. Service control method, service control apparatus and device
CN111341344A (zh) * 2020-02-25 2020-06-26 烽火通信科技股份有限公司 一种实现麦克风共享的方法及系统
CN111341344B (zh) * 2020-02-25 2024-02-13 烽火通信科技股份有限公司 一种实现麦克风共享的方法及系统
WO2024087727A1 (zh) * 2022-10-28 2024-05-02 岚图汽车科技有限公司 基于车载语音ai的语音数据处理方法及相关设备

Similar Documents

Publication Publication Date Title
CN107957908A (zh) 一种麦克风共享方法、装置、计算机设备及存储介质
US10097902B2 (en) System and method for using multiple audio input devices for synchronized and position-based audio
CN107112012A (zh) 利用数字麦克风用于低功率关键词检测和噪声抑制
CN108962240A (zh) 一种基于耳机的语音控制方法及系统
CN108470034A (zh) 一种智能设备服务提供方法及系统
JP2019159307A (ja) 端末ブラケット及びファーフィールド音声対話システム
CN108062212A (zh) 一种基于场景的语音操作方法及装置
CN110234032A (zh) 一种语音技能创建方法及系统
CN112272170B (zh) 语音通信方法及装置、电子设备、存储介质
CN109166570B (zh) 一种语音切分的方法、装置、设备和计算机存储介质
CN109817238A (zh) 音频信号采集装置、音频信号处理方法和装置
CN107273227A (zh) 应用间的通信方法、装置、设备及存储介质
CN107864358A (zh) 一种视频通话中的共享对象操作方法
CN109543198A (zh) 翻译方法、装置、系统及存储介质
CN109947387A (zh) 音频采集方法、音频播放方法、系统、设备及存储介质
CN107240396A (zh) 说话人自适应方法、装置、设备及存储介质
CN108259653B (zh) 一种语音测试方法及装置、系统
CN115993948A (zh) 音频处理方法、相关设备及存储介质
JP2022088528A (ja) 車載通話方法、装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラム
CN106949902B (zh) 导航语音故障解决方法、装置、设备及存储介质
CN108829370A (zh) 有声资源播放方法、装置、计算机设备及存储介质
US20200320979A1 (en) Synthetic Narrowband Data Generation for Narrowband Automatic Speech Recognition Systems
CN112243182A (zh) 拾音电路、方法及装置
CN108831449A (zh) 一种基于智能音箱的数据交互系统方法和系统
US20180152739A1 (en) Device-Based Audio-Format Selection

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180424

RJ01 Rejection of invention patent application after publication