【发明内容】
本发明所要解决的技术问题在于提供一种与传统的输入控制方法和装置完全不同的用声音作为计算机***输入控制的方法和装置。
本发明是通过以下技术方案解决上述技术问题的:一种用声音作为计算机***输入控制的方法,包括以下步骤:
发出的声音进行声电转换,将声音转化为模拟的音频电信号;
音频信号处理,将通过上一步骤得到的模拟音频电信号转换成计算机***可以处理的频域数字音频信号;
计算机***接收到上述频域数字音频信号,根据用户的预先设置,然后通过软件将其转化成相应的计算机指令,从而控制计算机***。
所述音频信号处理步骤还包括下述步骤:
模拟音频电信号首先转换成数字音频信号;
经过上一步骤转换得到的数字音频信号从时域转换到频域,得到频域数字音频信号。
本发明还提供了一种用声音作为计算机***输入控制的装置,包括:
发声源,用于发出声音;
话筒,将发声源发出的声音转换为模拟的音频电信号;
音频信号处理***,用于音频信号处理,将通过话筒转换后得到的模拟音频电信号转换成计算机***可以处理的频域数字音频信号;
计算机***,用于接收上述频域数字音频信号,并根据用户的预先设置,通过软件将其转化成相应的计算机指令,从而控制计算机***。
所述音频信号处理***还包括:
模数转换***,用于将通过话筒转换得到的模拟音频电信号转换成数字音频信号;
数字信号处理***,用于将通过模数转换***转换得到的数字音频信号从时域转换到频域,得到频域数字音频信号。
本发明用声音作为计算机***输入控制的方法的优点在于:与计算机***的传统输入控制方法相比,本方法实现的是用声音来控制某些参量,其难点就在于对于声音的捕捉和处理,并将其转化为计算机***的控制参量。对于使用娱乐性计算机***的用户而言,习惯了传统的看得见摸得着的输入控制方法,当使用一种能够用自己的声音控制的输入控制方法,一种既看不见又摸不着但是却能控制计算机***的方法,那么整个娱乐***对用户的吸引力便大为增加。本发明提供的方法就是要将用户看不见摸不着的声音转化成计算机***可以识别并执行的指令,是对既有的传统的输入控制方法的一种有力的补充。将声音信号应用到输入控制过程中,在某些特定的计算机***中会起到传统的输入控制装置所不能达到的效果。比如在某些游戏***中,采用了这种输入控制方法后,游戏的可玩性和趣味性会大大加强。
【具体实施方式】
请参阅图1,本发明用声音作为计算机***输入控制的方法的流程图,该流程开始于步骤11,在步骤12,用户发声,可以由其它的可发声的设备或是任何可发声的物体发出声音,如由扬声器发出声音。
步骤13,将步骤11中发出的声音进行声电转换,将声音转化为模拟的音频电信号。
步骤14,音频信号处理,将通过步骤13得到的模拟音频电信号转换成计算机***可以处理的频域数字音频信号。经过音频信号处理得到的信号,可能是纯粹的频谱数据,也可能是仅局限于某个频率范围的比较纯粹的信号或频谱数据。
步骤15,计算机***接收到上述频域数字音频信号,根据用户的预先设置,比如只对某频率或某强度的信号做出反应,然后通过软件将其转化成相应的计算机指令,从而控制计算机***。
流程结束于步骤16。
请参阅图2,为图1中音频信号处理子程序的流程图,步骤14还包括步骤142和步骤144。
步骤142,从步骤13中得到的模拟音频电信号首先转换成数字音频信号,由于步骤13中输出的仅仅是连续的模拟的电信号,这种信号不能直接交给计算机处理,计算机能够处理的信号必须是离散的数字信号,因此需要将模拟信号转换成数字信号。
步骤144,将经过步骤142转换的数字音频信号从时域转换到频域,得到频域数字音频信号,接着进入步骤15,一般的说,模拟音频信号转换成数字音频信号后,就可以直接由计算机进行处理,虽然数字信号可以直接由计算机进行处理,但是时域的离散的数字音频信号是不能直接用来做计算机输入控制的,因为不管是连续的模拟音频信号还是离散的数字音频信号,在时域内看起来都是杂乱无章的,要想从这些看似杂乱无章的信号内提取有用的信息,进而用来作为计算机***的输入控制,则必须从频率域来分析这些信号,因此需要将数字音频信号从时域转换到频域。该步骤中数字信号处理方法中用到的数学变换,可以是信号处理领域内的任何一种变换方法,比如离散傅立叶变换(DFT),快速傅立叶变换(FFT),Z变换,离散余弦变换(DCT),离散正弦变换(DST),离散哈特利变换(DHT)等等。
请参阅图3,是本发明用声音作为计算机***输入控制装置的示意结构图,包括发声源100、话筒200、音频信号处理***300,以及计算机***400。
发声源100,用于发出声音,其可以是用户,也可以是扬声器,还可以是计算机,或者是任意可以发声的设备或物体。
话筒200,是一种电声器材,是声电转换的换能器,将发声源100发出的声音转换为模拟的音频电信号,声波在空气中传播时,引起空气振动,振动的空气作用到电声元件上,引起电声元件的振动而产生电流,从而实现了从声音到电信号的转换。话筒又称传声器,麦克风,或微音器。
音频信号处理***300,用于音频信号处理,将通过话筒200转换后得到的模拟音频电信号转换成计算机***可以处理的频域数字音频信号。经过音频信号处理***300得到的信号,可能是纯粹的频谱数据,也可能是仅局限于某个频率范围的比较纯粹的信号或频谱数据。
计算机***400,用于接收上述频域数字音频信号,并根据用户的预先设置,比如只对某频率或某强度的信号做出反应,然后通过软件将其转化成相应的计算机指令,从而控制计算机***400。这里的计算机***400既可以是通用计算机***,如人们日常使用的计算机等,也可以是有特定用途的嵌入式计算机***,如用于视频点播的嵌入式机顶盒***,用于某个游戏的游戏机***等。
请参阅图4,为图3中音频信号处理***300的内部结构,该音频信号处理***300包括模数转换***310以及数字信号处理***320。
模数转换***310,用于将通过话筒2转换得到的模拟音频电信号转换成数字音频信号,因为模拟音频电信号不能直接交给计算机处理,计算机能够处理的信号必须是离散的数字信号,这就需要一个能将模拟信号转换成数字信号的装置或设备,也就是模数转换***310。
数字信号处理***320,用于将通过模数转换***310转换得到的数字音频信号从时域转换到频域,得到频域数字音频信号,一般的说,模数转换***310将模拟音频信号转换成数字音频信号后得到的数字音频信号就可以直接由计算机进行处理。虽然数字信号可以直接由计算机进行处理,但是时域的离散的数字音频信号是不能直接用来做计算机输入控制的,因为不管是连续的模拟音频信号还是离散的数字音频信号,在时域内看起来都是杂乱无章的。要想从这些看似杂乱无章的信号内提取有用的信息,进而用来作为计算机***的输入控制,则必须从频率域来分析这些信号,这就必须借助于数字信号处理***320。数字信号处理***320是这样的一种***,它能将输入的数字信号经过一定的数学变换,将信号从时间域变换到频率域,进而进行分析处理得到想要的信号或其成分,从频域内对信号进行分析处理则比从时域内分析处理方便的多。
数字信号处理***320中用到的数学变换,可以是信号处理领域内的任何一种变换方法,比如离散傅立叶变换(DFT),快速傅立叶变换(FFT),Z变换,离散余弦变换(DCT),离散正弦变换(DST),离散哈特利变换(DHT)等等。
这里提到的模数转换***310和数字信号处理***320既可以是独立的***,如嵌入式的用模数转换(A/D)芯片实现的模数转换电路***和用数字信号处理(DSP)芯片实现的数字信号处理***(包括运行在这些嵌入式***上的程序指令),也可以是通用计算机上的模数转换电路和数字信号处理***(包括程序指令)。数字信号处理***320可以是信号处理领域内的任意一种或几种的组合,比如高通滤波器,低通滤波器,带通滤波器,或者是任意的能将纯粹的时域信号分析成频域数据的***等等。
下面仅对如何将纯粹的频谱数据作为输入控制参量作示例性的说明。
以常见的沙壶球游戏为例。人们在每扔一次沙壶球时,所产生的力度大小,方向等都是不太一致的,这与人们说话的声音很类似。利用了这一点,就可以使用声音代替鼠标点击实现游戏。在计算机模拟的沙壶球游戏中,玩家通过移动鼠标和点击鼠标来控制扔球的方向和力度。如果使用声音进行控制,当玩家对着话筒大吼一声时,他的声音便经过音频信号处理***分析成频谱数据,分析的过程为:首先对频域内的数据进行分析综合,去掉不属于人声的频率分量,然后将在人声频率范围(大约为80Hz-1.1KHz)内的各频率幅度对比,找出最大的频率分量,再通过一个对数函数公式将其量化成合适的值,如果这个值作为沙壶球能够前进的距离,那这就代替了鼠标点击动作产生的力度。至于扔球的方向,可以有多种办法,一种简单的算法就是计算取值处的频率值在整个人声频率内的比例,进而换算成扔球的角度。这种用声音控制的沙壶球游戏的可玩性和趣味性明显的比用传统的鼠标控制的方法强的多。
这里以沙壶球游戏为例,但该方法绝不局限于某款游戏或某种游戏***,该方法也是可以适用于其它的类似的游戏***或计算机***。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。