CN109101213B - 控制声卡传输音频的方法、装置及存储介质 - Google Patents

控制声卡传输音频的方法、装置及存储介质 Download PDF

Info

Publication number
CN109101213B
CN109101213B CN201810967798.5A CN201810967798A CN109101213B CN 109101213 B CN109101213 B CN 109101213B CN 201810967798 A CN201810967798 A CN 201810967798A CN 109101213 B CN109101213 B CN 109101213B
Authority
CN
China
Prior art keywords
target
audio
sound card
interface
data format
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
CN201810967798.5A
Other languages
English (en)
Other versions
CN109101213A (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.)
Guangzhou Kugou Computer Technology Co Ltd
Original Assignee
Guangzhou Kugou Computer 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 Guangzhou Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN201810967798.5A priority Critical patent/CN109101213B/zh
Publication of CN109101213A publication Critical patent/CN109101213A/zh
Application granted granted Critical
Publication of CN109101213B publication Critical patent/CN109101213B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明公开了一种控制声卡传输音频的方法、装置及存储介质,属于音频传输技术领域。包括:识别并获取目标声卡的配置信息;若该配置信息与待传输的目标音频的数据格式不匹配,则查找支持目标音频的数据格式的目标接口号和可更换设置号;若查找到支持目标音频的数据格式的目标接口号和目标可更换设置号,根据查找到的支持目标音频的数据格式的目标接口号、目标可更换设置号及目标音频的数据格式设置配置信息中的音频传输参数;根据设置后的音频传输参数控制目标声卡传输目标音频。本发明实施例提供的方法,可使目标声卡按照目标音频的数据格式传输目标音频,从而扩展目标声卡所支持传输的音频的数据格式,提高音频传输的灵活性。

Description

控制声卡传输音频的方法、装置及存储介质
技术领域
本发明涉及音频传输技术领域,特别涉及一种控制声卡传输音频的方法、装置及存储介质。
背景技术
随着音频传输技术的不断发展以及终端的普及,终端上大多安装有传输音频流的声卡,且声卡的种类也越来越多,USB(Universal Serial BUS,通用串行总线)声卡便是其中的一种。如支持UAC(USB AUDIO CLASS,USB音频类)1.0协议的声卡、支持UAC2.0协议的声卡以及支持UAC3.0协议的声卡等。通过将安装有声卡的终端可以实现音频播放。为了满足用户对追求高品质音频的需求,一方面要求音源的高质量;另一方面,在硬件上,也要求支持更高的音频流传输方式的声卡。因此,如何控制声卡传输音频成为音频传输技术领域人们十分关注的问题。
相关技术在控制声卡传输音频时,检测到声卡后,获取该声卡的配置信息,从而获取该声卡的配置信息中的音频传输参数。之后,按照该音频传输参数来传输目标音频。
由于声卡的配置信息相对固定,其所支持的音频的数据格式也相对固定,因而相关技术在控制声卡传输音频时,按照声卡的配置信息中的音频传输参数来传输目标音频,将导致可传输的音频的数据格式受限,灵活性不高。
发明内容
本发明实施例提供了一种控制声卡传输音频的方法、装置及存储介质,以解决相关技术中的问题。所述技术方案如下:
一方面,提供了一种控制声卡传输音频的方法,所述方法包括:
识别目标声卡;
获取所述目标声卡的配置信息;
若所述目标声卡的配置信息与待传输的目标音频的数据格式不匹配,则查找支持所述目标音频的数据格式的目标接口号和目标可更换设置号;
若查找到支持所述目标音频的数据格式的目标接口号和目标可更换设置号,根据所述目标接口号、所述目标可更换设置号以及所述目标音频的数据格式设置所述配置信息中的音频传输参数,所述音频传输参数至少包括采样率、接口号和可更换设置号;
根据设置后的所述音频传输参数控制所述目标声卡传输所述目标音频。
可选的,所述根据所述目标接口号、所述目标可更换设置号以及所述目标音频的数据格式设置所述配置信息中的音频传输参数,包括:
设置所述配置信息中的接口号为所述目标接口号,设置所述配置信息中的可更换设置号为所述目标可更换设置号,设置所述配置信息中的采样率为与所述目标音频的数据格式匹配的目标采样率。
可选的,所述识别目标声卡,包括:
检测USB设备插入事件;
根据所述USB设备插入事件获取所述USB设备的设备描述符和接口描述符;
根据所述设备描述符识别所述USB设备的版本;
若所述USB设备的版本为目标版本,则根据所述接口描述符识别所述USB设备是否为目标声卡。
可选的,所述根据所述设备描述符识别所述USB设备的版本,包括:根据所述设备描述符中的USB版本号、设备类码、设备子类码及协议码识别所述USB设备的版本;
根据所述接口描述符识别所述USB设备是否为目标声卡,包括:根据所述接口描述符中的类型代码识别所述USB设备是否为目标声卡。
可选的,所述方法还包括:
识别目标声卡后,获取所述目标声卡的权限;
基于获取到的权限执行获取所述目标声卡的配置信息的操作。
一方面,提供了一种控制声卡传输音频的装置,所述装置包括:
识别模块,用于识别目标声卡;
获取模块,用于获取所述目标声卡的配置信息;
查找模块,用于若所述目标声卡的配置信息与待传输的目标音频的数据格式不匹配,则查找支持所述目标音频的数据格式的目标接口号和目标可更换设置号;
设置模块,用于若查找到支持所述目标音频的数据格式的目标接口号和目标可更换设置号,根据所述目标接口号、所述目标可更换设置号以及所述目标音频的数据格式设置所述配置信息中的音频传输参数,所述音频传输参数至少包括采样率、接口号和可更换设置号;
控制模块,用于根据设置后的所述音频传输参数控制所述目标声卡传输所述目标音频。
可选的,所述设置模块,用于设置所述配置信息中的接口号为所述目标接口号,设置所述配置信息中的可更换设置号为所述目标可更换设置号,设置所述配置信息中的采样率为与所述目标音频的数据格式匹配的目标采样率。
可选的,所述识别模块,包括:
检测单元,用于检测USB设备插入事件;
获取单元,用于根据所述USB设备插入事件获取所述USB设备的设备描述符和接口描述符;
第一识别单元,用于根据所述设备描述符识别所述USB设备的版本;
第二识别单元,用于若所述USB设备的版本为目标版本,则根据所述接口描述符识别所述USB设备是否为目标声卡。
可选的,所述第一识别单元,用于根据所述设备描述符中的USB版本号、设备类码、设备子类码及协议码识别所述USB设备的版本;
所述第二识别单元,用于根据所述接口描述符中的类型代码识别所述USB设备是否为目标声卡。
可选的,所述装置还包括:
授权模块,用于识别目标声卡后,获取所述目标声卡的权限;
所述获取模块,用于基于获取到的权限执行获取所述目标声卡的配置信息的操作。
一方面,提供了一种控制声卡传输音频的装置,所述装置包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上任一所述的控制声卡传输音频的方法。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上任一所述的控制声卡传输音频的方法。
本发明实施例提供的技术方案带来的有益效果至少包括:
识别目标声卡后,若目标声卡的配置信息与待传输的目标音频的数据格式不匹配,通过根据查找到的支持目标音频的数据格式的目标接口号、目标可更换设置号以及目标音频的数据格式设置目标声卡的配置信息中的音频传输参数,使得目标声卡可按照目标音频的数据格式来传输目标音频,从而可以扩展目标声卡所支持传输的音频的数据格式,进而提高了音频传输的灵活性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的实施环境示意图;
图2是本发明实施例提供的一种控制声卡传输音频的方法的流程图;
图3是本发明实施例提供的一种识别目标声卡的方法流程图;
图4是本发明实施例提供的一种控制声卡传输音频的装置的结构示意图;
图5是本发明实施例提供的一种识别模块的结构示意图;
图6是本发明实施例提供的一种控制声卡传输音频的装置的结构示意图;
图7是本发明实施例提供的一种终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
随着音频传输技术的不断发展以及终端的普及,终端上大多安装有传输音频流的声卡,且声卡的种类也越来越多,USB声卡便是其中的一种。如支持UAC1.0协议的声卡以及支持UAC2.0协议的声卡以及支持UAC3.0协议的声卡等。其中,UAC1.0协议为USB1.1音频类协议,传输速度为全速(FULL SPEED),UAC2.0协议为USB2.0音频类协议,传输速度为高速(HIGH SPEED)。全速的传输速度为12Mbps,高速的传输速度为480Mbps。
无论终端上安装的是哪类声卡,通过安装有声卡的终端可以实现音频播放。为了满足用户对追求高品质音频的需求,一方面要求音源的高质量;另一方面,在硬件上,也要求支持更高的音频流传输方式的声卡。因此,如何控制声卡传输音频成为音频传输技术领域人们十分关注的问题。
为此,本发明实施例提供了一种控制声卡传输音频的方法,该方法中,传输的音频可以是终端本地的音频,也可以是从网络中下载的音频,或者直接在线播放的音频。针对需要从网络中下载音频的情况,本发明实施例提供的方法可应用于图1所示的实施环境中。如图1所示,包括至少一个终端11和服务器12,终端11可与服务器12进行通信连接,以从服务器12上下载音频。
其中,终端11可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如PC(Personal Computer,个人计算机)、手机、智能手机、PDA(Personal Digital Assistant,个人数字助手)、可穿戴设备、掌上电脑PPC(Pocket PC)、平板电脑、智能车机、智能电视、智能音箱等。
服务器12可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。
本领域技术人员应能理解上述终端11和服务器12仅为举例,其他现有的或今后可能出现的终端或服务器如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。
为了便于理解,本发明实施例以支持UAC1.0协议的声卡,以下简称UAC1.0声卡为例,对本发明实施例提供的方法进行解释说明。其中,UAC1.0声卡因受限于UAC1.0协议和声卡硬件成本等的影响,UAC1.0声卡最高支持采样率96KHz、16bit、2通道的音频流传输,无法传输更高品质的音频流,如192KHz/16bit/2channels(通道)的音频流、64DSD(Direct-Stream Digital,直接流数据)音频流。
为了实现该声卡能够扩展支持更多数据格式的音频,本发明实施例提供的方法对该UAC1.0声卡扩展接口。例如,如果待传输的目标音频的数据格式为192KHz/16bit/2channels的音频流,则扩展可传输192KHz/16bit/2channels的音频流的接口。又例如,如果待传输的目标音频的数据格式为64DSD的音频流,则扩展可传输64DSD的音频流的接口。
需要说明的是,UAC1.0声卡之所以能够扩展接口,是因为如上所述的支持192KHz/16bit/2channels和64DSD,是由USB1.1总线带宽决定的,而USB1.1总线带宽为全速,即12Mbps,在USB ISOC传输中,所占带宽最大为67%,即:12Mbps×67%=8.04Mbps,而192KHz/16bit/2channels所占带宽为:192K×16×2=6.144Mbps<8.04Mbps,所以UAC1.0声卡可以支持192KHz/16bit/2channels传输。而64DSD所占带宽为:2822400Hz×1bit×2=5.6448<8.04Mbps,所以UAC1.0声卡可以支持64DSD传输。
在扩展接口之后,由于数据传输时,需要明确使用哪个接口号,并且需要明确接口号的可更换设置号,因而为了保证后续能够正常传输音频,可记录数据格式所属的接口号(bInterfaceNumber)、可更换设置号(bAlternateSetting),从而便于后续的查找和参数设置。
基于扩展的接口,参见图2,本发明实施例提供的控制声卡传输音频的方法包括如下步骤:
在步骤201中,识别目标声卡;
当需要传输音频时,本发明实施例提供的方法首先识别目标声卡,如图3所示,该识别步骤包括但不限于如下子步骤:
步骤301、检测USB设备插入事件;
当任何一种USB设备或OTG设备(如:U盘、USB鼠标、USB声卡等)插入安卓移动设备时,系统均会发出一个USB插入事件并通知安卓应用层,安卓应用软件据此检测获得该事件。
步骤302、根据USB设备插入事件获取USB设备的设备描述符和接口描述符;
由于USB设备的设备描述符和接口描述符能够对该设备及其接口进行描述,因而在识别目标声卡时,当检测到USB设备插入事件后,可触发获取USB设备的设备描述符合接口描述符,并据此进行声卡识别。其中,USB设备的设备描述符如下面的表1.1所示:
表1.1
Figure BDA0001775408150000071
USB设备的接口描述符如表1.2所示:
表1.2
Figure BDA0001775408150000072
Figure BDA0001775408150000081
步骤303、根据设备描述符识别USB设备的版本;
其中,根据设备描述符识别USB设备的版本,包括:根据设备描述符中的USB版本号识别USB设备的版本。
例如,获取USB设备描述符中的USB版本号的值,当值是0X110时,即USB设备为USB1.1版本。
步骤304、若USB设备的版本为目标版本,则根据设备描述符和接口描述符识别USB设备是否为目标声卡。
其中,根据设备描述符和接口描述符识别USB设备是否为目标声卡,包括:根据设备描述符中的设备类码、设备子类码和协议码以及接口描述符中的类型代码识别USB设备是否为目标声卡。
例如,获取USB设备描述符中的设备类码、设备子类码和协议码的值,当设备类码、设备子类码和协议码的值均为0X00,并且获取USB接口描述符中的类型代码的值,当类型代码的值为0X01,该USB设备为UAC1.0协议的声卡。
进一步地,上述过程可通过如下伪代码表示:
开始
获得USB设备插入事件
若bcdUSB为0x110
有USB1.1设备插入
若bDeviceClass、bDeviceSubClass、bDeviceProtocol都为0x00并且bInterfaceClass为0x01
判断该设备为UAC1.0设备
授权给应用软件
否则
无UAC1.0设备
否则
无UAC1.0设备
结束
在步骤202中,获取目标声卡的配置信息;
在通过上述步骤201识别目标声卡后,可获取该目标声卡的配置信息,该配置信息包括但不限于设备描述符、配置描述符和接口描述符。其中,接口描述符包括AudioControl(音频控制)描述符和Audio Stream(音频流)描述符。Audio Stream(音频流)描述符包括但不限于:采样通道数、采样位深,采样频率,以及数据格式。
其中,参见表3.1,数据格式由Class-Specific AS Interface Descriptor(类特定接口描述符)指定。
表3.1
Figure BDA0001775408150000091
其中,域wFormatTag指定了数据传输的格式,通用串行总线音频类1.0协议的声卡所支持的格式如表3.2所示。
表3.2
Figure BDA0001775408150000092
Figure BDA0001775408150000101
由上述表3.2可以看出,PCM数据格式的值为0x0001,若传输的数据为PCM数据,则可将上述wFormatTag的值设置为0x0001;由于上述格式中不包括64DSD数据格式,为了传输64DSD数据格式的音频流,本发明实施例提供的方法采用上述TYPE_I_UNDEFINED来作为64DSD的数据格式。例如,若传输的数据为64DSD格式的数据,则将上述wFormatTag的值设置为0x0000。
进一步地,UAC1.0协议中,描述采样通道数、采样位深,采样频率等信息的描述为Format Type Descriptor,如表3.3所示。
表3.3
Figure BDA0001775408150000102
在步骤203中,若目标声卡的配置信息与待传输的目标音频的数据格式不匹配,则查找支持目标音频的数据格式的目标接口号和目标可更换设置号;
获取到目标声卡的配置信息后,由于配置信息包括设备描述符、配置描述符和接口描述符,接口描述符包括音频控制描述符和音频流描述符,而音频流描述符包括采样通道数、采样位深,采样频率,以及数据格式等,因此,可将配置信息中的数据格式与目标音频的数据格式进行比对,如果不一致,则认为不匹配。例如,如果配置信息中的数据格式的值为0x0001,而目标音频的数据格式为64DSD,那么二者不匹配。为了能够按照目标音频的数据格式来传输目标音频数据,本发明实施例提供的方法在确定目标声卡的配置信息与目标音频的数据格式不匹配时,查找支持目标音频的数据格式的目标接口号和目标可更换设置号。
需要说明的是,每个声卡的接口号及可更换设置号可预先设置并记录,因此,可提供后续查找。例如,对于UAC1.0声卡,由于其原本并不支持64DSD数据格式,而通过扩展接口,使其具备传输64DSD数据格式的音频数据的接口,且在扩展接口之后,记录了接口号及可更换设置号。因此,当目标音频的数据格式为64DSD,且目标声卡为UAC1.0时,可从记录中查找到支持该数据格式的接口号及可更换设置号。
此外,如果目标声卡的配置信息与目标音频的数据格式匹配,则无需再执行该步骤中的查找操作,可以直接按照目标声卡的配置信息中的音频传输参数来控制目标声卡传输音频即可。
在步骤204中,若查找到支持目标音频的数据格式的目标接口号和目标可更换设置号,根据目标接口号、目标可更换设置号以及目标音频的数据格式设置配置信息中的音频传输参数。
其中,音频传输参数至少包括采样率、接口号和可更换设置号。
基于上述获取到的信息,为了实现传输目标音频,可对目标声卡的配置信息进行设置,该步骤包括但不限于设置配置信息中的接口号为目标接口号,设置配置信息中的可更换设置号为目标可更换设置号,设置配置信息中的采样率为与目标音频的数据格式匹配的目标采样率。
由于扩展了接口,因而通过设置对应的音频传输参数即可实现支持目标音频的数据格式的传输。例如,如果目标音频的格式为192KHz/16bit/2channels,则设置采样率为192KHz,将接口号和可更换设置号设置为支持格式为192KHz/16bit/2channels的接口的接口号及可更换设置号。例如,如果目标音频的格式为64DSD,则设置采样率为88.2KHz,将接口号和可更换设置号设置为支持格式为64DSD的接口的接口号及可更换设置号。
在步骤205中,根据设置后的音频传输参数控制目标声卡传输目标音频。
由于参数已经进行了设置,因而根据设置后的音频传输参数可控制目标声卡传输目标音频。例如,如果扩展了支持数据格式为192KHz/16bit/2channels的接口,则可以支持数据格式为192KHz/16bit/2channels的PCM格式的音频的传输。又例如,如果扩展了支持数据格式为64DSD的接口,则可实现支持数据格式为64DSD的音频的传输。
例如,以待传输的音频为192KHz/16bit/2channels的PCM格式的音频流为例,上述步骤203-步骤205可通过如下伪代码表示:
开始
查找支持192KHz/16bit格式的接口号和可更换设置号
若找到
设置192KHz采样率
设置正确的接口号和可更换设置号
传输数据
否则
无法播放
从上述过程可以看出,由于已经扩展了接口,且参数已经进行了设置,因而支持192KHz/16bit格式的音频的传输,控制声卡按照设置后的接口号和可更换设置号传输音频。
例如,以待传输的音频为64DSD格式的音频流为例,上述步骤203至步骤205可通过如下伪代码表示:
开始
查找支持88.2KHz/32bit格式的接口号和可更换设置号
若找到
设置88.2KHz采样率
设置正确的接口号和可更换设置号
传输数据
否则
无法播放
从上述过程可以看出,由于已经扩展了接口,且参数已经进行了设置,因而支持64DSD格式的音频的传输,控制声卡按照设置后的接口号和可更换设置号传输音频。
基于上述各个步骤,即使针对UAC1.0声卡,采用本发明实施例提供的方法也可以使其传输192KHz/16bit/2channels格式和64DSD格式的音频流,从而使其传输的音频流的品质更高,进而满足用户对音质的要求。
需要说明的是,由于目标声卡支持目标音频的数据格式,因而采用支持目标音频的数据格式的目标接口号和目标可更换设置号等音频传输参数,从而保证了音频流的品质。但对于目标声卡的配置信息与目标音频的数据格式不匹配,且也未查找到支持目标音频的数据格式的目标接口号和目标可更换设置号的情况,虽然音频流的品质有些影响,但为了保证目标音频能够正常传输及播放,可按照目标声卡当前的配置信息中的音频传输参数来控制目标声卡传输目标音频。
本发明实施例提供的方法,识别目标声卡后,若目标声卡的配置信息与待传输的目标音频的数据格式不匹配,通过根据查找到的支持目标音频的数据格式的目标接口号、目标可更换设置号以及目标音频的数据格式设置目标声卡的配置信息中的音频传输参数,使得目标声卡可按照目标音频的数据格式来传输目标音频,从而可以扩展目标声卡所支持传输的音频的数据格式,进而提高了音频传输的灵活性。
基于与上述方法的相同构思,参见图4,本发明实施例提供了一种控制声卡传输音频的装置,该装置包括:
识别模块401,用于识别目标声卡;
获取模块402,用于获取目标声卡的配置信息;
查找模块403,用于若目标声卡的配置信息与待传输的目标音频的数据格式不匹配,则查找支持目标音频的数据格式的目标接口号和目标可更换设置号;
设置模块404,用于若查找到支持目标音频的数据格式的目标接口号和目标可更换设置号,根据目标接口号、目标可更换设置号以及目标音频的数据格式设置配置信息中的音频传输参数,音频传输参数至少包括采样率、接口号和可更换设置号;
控制模块405,用于根据设置后的音频传输参数控制目标声卡传输目标音频。
在一种可选的实施方式中,设置模块404,用于设置配置信息中的接口号为目标接口号,设置配置信息中的可更换设置号为目标可更换设置号,设置配置信息中的采样率为与目标音频的数据格式匹配的目标采样率。
在一种可选的实施方式中,参见图5,识别模块401,包括:
检测单元4011,用于检测USB设备插入事件;
获取单元4012,用于根据USB设备插入事件获取USB设备的设备描述符和接口描述符;
第一识别单元4013,用于根据设备描述符识别USB设备的版本;
第二识别单元4014,用于若USB设备的版本为目标版本,则根据接口描述符识别USB设备是否为目标声卡。
在一种可选的实施方式中,第一识别单元4013,用于根据设备描述符中的USB版本号、设备类码、设备子类码及协议码识别USB设备的版本;
第二识别单元4014,用于根据接口描述符中的类型代码识别USB设备是否为目标声卡。
在一种可选的实施方式中,参见图6,该装置还包括:
授权模块406,用于识别目标声卡后,获取目标声卡的权限;
获取模块402,用于基于获取到的权限执行获取目标声卡的配置信息的操作。
本发明实施例提供的装置,识别目标声卡后,若目标声卡的配置信息与待传输的目标音频的数据格式不匹配,通过根据查找到的支持目标音频的数据格式的目标接口号、目标可更换设置号以及目标音频的数据格式设置目标声卡的配置信息中的音频传输参数,使得目标声卡可按照目标音频的数据格式来传输目标音频,从而可以扩展目标声卡所支持传输的音频的数据格式,进而提高了音频传输的灵活性。
需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
参见图7,其示出了本公开实施例提供的一种控制声卡传输音频的终端700的结构示意图。该终端700可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(MovingPicture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端700包括有:处理器701和存储器702。
处理器701可以包括一个或多个处理核心,比如4核心处理器、7核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器701所执行以实现本申请中方法实施例提供的控制声卡传输音频的方法。
在一些实施例中,终端700还可选包括有:外围设备接口703和至少一个外围设备。处理器701、存储器702和外围设备接口703之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口703相连。具体地,外围设备包括:射频电路704、显示屏705、摄像头706、音频电路707、定位组件708和电源709中的至少一种。
外围设备接口703可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置终端700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在终端700的不同表面或呈折叠设计;在再一些实施例中,显示屏705可以是柔性显示屏,设置在终端700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。
定位组件708用于定位终端700的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件708可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源709用于为终端700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、指纹传感器714、光学传感器715以及接近传感器716。
加速度传感器711可以检测以终端700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器712可以检测终端700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对终端700的3D动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器713可以设置在终端700的侧边框和/或显示屏705的下层。当压力传感器713设置在终端700的侧边框时,可以检测用户对终端700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在显示屏705的下层时,由处理器701根据用户对显示屏705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器714用于采集用户的指纹,由处理器701根据指纹传感器714采集到的指纹识别用户的身份,或者,由指纹传感器714根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器701授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器714可以被设置终端700的正面、背面或侧面。当终端700上设置有物理按键或厂商Logo时,指纹传感器714可以与物理按键或厂商Logo集成在一起。
光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制显示屏705的显示亮度。具体地,当环境光强度较高时,调高显示屏705的显示亮度;当环境光强度较低时,调低显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。
接近传感器716,也称距离传感器,通常设置在终端700的前面板。接近传感器716用于采集用户与终端700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与终端700的正面之间的距离逐渐变小时,由处理器701控制显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与终端700的正面之间的距离逐渐变大时,由处理器701控制显示屏705从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图7中示出的结构并不构成对终端700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例中实施例中,还提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令。所述至少一条指令经配置以由一个或者一个以上处理器执行,以实现上述控制声卡传输音频的方法。
在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令在被计算机设备的处理器执行时实现上述控制声卡传输音频的方法。
可选地,上述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种控制声卡传输音频的方法,其特征在于,所述方法包括:
检测USB设备插入事件;
根据所述USB设备插入事件获取所述USB设备的设备描述符和接口描述符;
根据所述设备描述符识别所述USB设备的版本;
若所述USB设备的版本为目标版本,则根据所述接口描述符识别所述USB设备是否为目标声卡;
获取所述目标声卡的配置信息;
若所述目标声卡的配置信息与待传输的目标音频的数据格式不匹配,则查找支持所述目标音频的数据格式的目标接口号和目标可更换设置号,所述目标接口号来自扩展接口后记录的接口号,且所述目标接口号支持所述目标音频的数据格式,所述目标可更换设置号来自扩展接口后记录的可更换设置号,所述目标可更换设置号支持所述目标音频的数据格式;
若查找到支持所述目标音频的数据格式的目标接口号和目标可更换设置号,根据所述目标接口号、所述目标可更换设置号以及所述目标音频的数据格式设置所述配置信息中的音频传输参数,所述音频传输参数至少包括采样率、接口号和可更换设置号;
根据设置后的所述音频传输参数控制所述目标声卡传输所述目标音频。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标接口号、所述目标可更换设置号以及所述目标音频的数据格式设置所述配置信息中的音频传输参数,包括:
设置所述配置信息中的接口号为所述目标接口号,设置所述配置信息中的可更换设置号为所述目标可更换设置号,设置所述配置信息中的采样率为与所述目标音频的数据格式匹配的目标采样率。
3.根据权利要求1所述的方法,其特征在于,所述根据所述设备描述符识别所述USB设备的版本,包括:根据所述设备描述符中的USB版本号、设备类码、设备子类码及协议码识别所述USB设备的版本;
根据所述接口描述符识别所述USB设备是否为目标声卡,包括:根据所述接口描述符中的类型代码识别所述USB设备是否为目标声卡。
4.根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
识别目标声卡后,获取所述目标声卡的权限;
基于获取到的权限执行获取所述目标声卡的配置信息的操作。
5.一种控制声卡传输音频的装置,其特征在于,所述装置包括:
识别模块,用于识别目标声卡;
获取模块,用于获取所述目标声卡的配置信息;
查找模块,用于若所述目标声卡的配置信息与待传输的目标音频的数据格式不匹配,则查找支持所述目标音频的数据格式的目标接口号和目标可更换设置号,所述目标接口号来自扩展接口后记录的接口号,且所述目标接口号支持所述目标音频的数据格式,所述目标可更换设置号来自扩展接口后记录的可更换设置号,所述目标可更换设置号支持所述目标音频的数据格式;
设置模块,用于若查找到支持所述目标音频的数据格式的目标接口号和目标可更换设置号,根据所述目标接口号、所述目标可更换设置号以及所述目标音频的数据格式设置所述配置信息中的音频传输参数,所述音频传输参数至少包括采样率、接口号和可更换设置号;
控制模块,用于根据设置后的所述音频传输参数控制所述目标声卡传输所述目标音频;
所述识别模块,包括:
检测单元,用于检测USB设备插入事件;
获取单元,用于根据所述USB设备插入事件获取所述USB设备的设备描述符和接口描述符;
第一识别单元,用于根据所述设备描述符识别所述USB设备的版本;
第二识别单元,用于若所述USB设备的版本为目标版本,则根据所述接口描述符识别所述USB设备是否为目标声卡。
6.根据权利要求5所述的装置,其特征在于,所述设置模块,用于设置所述配置信息中的接口号为所述目标接口号,设置所述配置信息中的可更换设置号为所述目标可更换设置号,设置所述配置信息中的采样率为与所述目标音频的数据格式匹配的目标采样率。
7.根据权利要求5所述的装置,其特征在于,所述第一识别单元,用于根据所述设备描述符中的USB版本号、设备类码、设备子类码及协议码识别所述USB设备的版本;
所述第二识别单元,用于根据所述接口描述符中的类型代码识别所述USB设备是否为目标声卡。
8.根据权利要求5-7任一所述的装置,其特征在于,所述装置还包括:
授权模块,用于识别目标声卡后,获取所述目标声卡的权限;
所述获取模块,用于基于获取到的权限执行获取所述目标声卡的配置信息的操作。
9.一种控制声卡传输音频的装置,其特征在于,所述装置包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1-4中任一所述的控制声卡传输音频的方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1-4中任一所述的控制声卡传输音频的方法。
CN201810967798.5A 2018-08-23 2018-08-23 控制声卡传输音频的方法、装置及存储介质 Active CN109101213B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810967798.5A CN109101213B (zh) 2018-08-23 2018-08-23 控制声卡传输音频的方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810967798.5A CN109101213B (zh) 2018-08-23 2018-08-23 控制声卡传输音频的方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN109101213A CN109101213A (zh) 2018-12-28
CN109101213B true CN109101213B (zh) 2021-07-06

Family

ID=64851000

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810967798.5A Active CN109101213B (zh) 2018-08-23 2018-08-23 控制声卡传输音频的方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN109101213B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109819108B (zh) * 2019-01-04 2021-03-02 Oppo广东移动通信有限公司 调整驱动参数的方法、装置、电子设备及存储介质
CN112130928A (zh) * 2020-09-22 2020-12-25 上海茂声智能科技有限公司 Linux系统声卡的自动查找方法、装置、设备和存储介质
CN112509608B (zh) * 2020-11-25 2022-03-08 广州朗国电子科技股份有限公司 一种usb设备随通道录音的方法、装置及存储介质
CN113971969B (zh) * 2021-08-12 2023-03-24 荣耀终端有限公司 一种录音方法、装置、终端、介质及产品
CN113763970B (zh) * 2021-09-07 2023-09-22 广州飞傲电子科技有限公司 一种音频传输方法、装置及音频传输设备
CN114338622A (zh) * 2021-12-28 2022-04-12 歌尔光学科技有限公司 一种音频传输方法、音频播放方法、存储介质及相关设备
CN115033201A (zh) * 2022-05-23 2022-09-09 北京字节跳动网络技术有限公司 一种音频录制方法、装置、系统、设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1858693A (zh) * 2005-04-30 2006-11-08 艾威梯软件技术(北京)有限公司 一种同时支持多路蓝牙音频应用的方法
CN205068364U (zh) * 2015-10-28 2016-03-02 徐文波 声卡
CN106095652A (zh) * 2016-06-16 2016-11-09 徐文波 对外置声卡的外接设备状态参数进行显示的方法和装置
CN106293659A (zh) * 2015-05-21 2017-01-04 阿里巴巴集团控股有限公司 一种音频实时处理方法、装置及智能终端
CN107591167A (zh) * 2017-08-14 2018-01-16 惠州市德赛西威汽车电子股份有限公司 一种实现车载多媒体音频兼容性自动检测的方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020147591A1 (en) * 2001-04-06 2002-10-10 Michael Beyo System and method for remotely producing a response in a computer using acoustic signaling

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1858693A (zh) * 2005-04-30 2006-11-08 艾威梯软件技术(北京)有限公司 一种同时支持多路蓝牙音频应用的方法
CN106293659A (zh) * 2015-05-21 2017-01-04 阿里巴巴集团控股有限公司 一种音频实时处理方法、装置及智能终端
CN205068364U (zh) * 2015-10-28 2016-03-02 徐文波 声卡
CN106095652A (zh) * 2016-06-16 2016-11-09 徐文波 对外置声卡的外接设备状态参数进行显示的方法和装置
CN107591167A (zh) * 2017-08-14 2018-01-16 惠州市德赛西威汽车电子股份有限公司 一种实现车载多媒体音频兼容性自动检测的方法及系统

Also Published As

Publication number Publication date
CN109101213A (zh) 2018-12-28

Similar Documents

Publication Publication Date Title
CN109101213B (zh) 控制声卡传输音频的方法、装置及存储介质
CN108401124B (zh) 视频录制的方法和装置
CN109874312B (zh) 播放音频数据的方法和装置
CN111147878B (zh) 直播中的推流方法、装置及计算机存储介质
CN109348247B (zh) 确定音视频播放时间戳的方法、装置及存储介质
CN110971930A (zh) 虚拟形象直播的方法、装置、终端及存储介质
CN108965922B (zh) 视频封面生成方法、装置和存储介质
CN109862412B (zh) 合拍视频的方法、装置及存储介质
CN109922356B (zh) 视频推荐方法、装置和计算机可读存储介质
CN111127509B (zh) 目标跟踪方法、装置和计算机可读存储介质
CN110769313B (zh) 视频处理方法及装置、存储介质
CN112256320B (zh) 版本号生成方法、装置、终端及存储介质
CN108717365B (zh) 在应用程序中执行功能的方法和装置
CN112084811A (zh) 身份信息的确定方法、装置及存储介质
CN110705614A (zh) 模型训练方法、装置、电子设备及存储介质
CN110677713B (zh) 视频图像处理方法及装置、存储介质
CN111092991B (zh) 歌词显示方法及装置、计算机存储介质
CN109783176B (zh) 切换页面的方法和装置
CN111192072A (zh) 用户分群方法及装置、存储介质
CN111586279A (zh) 确定拍摄状态的方法、装置、设备及存储介质
CN111986700A (zh) 无接触式操作触发的方法、装置、设备及存储介质
CN111881423A (zh) 限制功能使用授权方法、装置、系统
CN111428080A (zh) 录像文件的存储方法、搜索方法及装置
CN111464829B (zh) 切换媒体数据的方法、装置、设备及存储介质
CN114595019A (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
GR01 Patent grant
GR01 Patent grant