基于音频技术的乐曲节拍识别系统
2022-04-20任瑞
任瑞
(宝鸡职业技术学院,凤翔师范学院,陕西,宝鸡 721000)
0 引言
乐曲节拍识别是近年来乐音识别领域的研究热点,它是应用音频技术,根据旋律可识别乐谱、五线谱以及音频文件的一种新技术[1-2]。目前,编辑曲谱过程中,音频文件可转换成简谱但无法转换成钢琴等民族乐器产生的音频文件,由于乐曲声音、曲谱、声线标准构成了乐曲节拍体系,利用此能够自动识别完整的音频,并且自动生成乐谱。在此基础上结合音频技术与语音信号的瞬时功能来确定乐曲的端点以及音节分布,在研究乐曲节拍识别技术与其应用时,五线谱当中包含小节线以及终止符号,可满足略懂简谱的大量用户的需求,但在处理乐音方面的数字采样、数据信号传输、音频处理、编辑等问题时存在一定的局限性[3-4]。
在乐曲演奏中,音符、频率、节拍、音频与编码的相互关系,通常采用MIOV语言以一种模块化的形式表示,因此本文以音符编码的标准为基础,设计基于音频技术的乐曲节拍识别系统,使乐曲在演奏当中得到优化,尤其是在系统设计中采用输入乐曲频谱编码的方式来记录乐曲,并通过下载或之前录制好的乐曲来转换成相应的谱表,从而支持层次化的设计,以此提升乐曲节拍识别效果。
1 基于音频技术的乐曲节拍识别系统硬件设计
本文设计的基于音频技术的乐曲节拍识别系统硬件结构由乐音识别器、节拍控制器和动态显示器等3部分组成。系统硬件结构如图1所示。
1.1 乐音识别器设计
利用音频技术进行乐曲节拍识别过程中,根据乐器的演奏自动输入音频从而产生相对应的谱表。乐音识别器结构如图2所示。
图2 乐音识别器结构
在乐曲演奏过程中,获取以及处理音频信息的方法有多种,可以在线进行乐曲录制,也可以线下录制。在音乐旋律中找出可以表达特征信号的音频文件是处理乐曲信息的主要目的。提取音符信息常用的方法有时域法、频域法或者时域频域相结合的方法[5]。乐曲旋律加入特殊的数据信息,再将其以特定的嵌入方式输入到相对应的谱表当中作为旋律的特征序列,并在乐曲的频谱数据库与音符数据进行旋律匹配,以此产生对应的五线谱,乐音识别器负责处理演奏乐曲中的音频信号以此获得重要信息,并将此重要信息转换为其中的中间格式,完成对乐曲音符的编码[6]。
1.2 节拍控制器
在乐器演奏中,音符持续的时间使乐曲能连续演奏,其中最小节拍为1/5拍,将2拍的时间长度定为2秒,其中一个5 Hz的时钟频率可产生1/5拍的时长。演奏乐曲需要控制节拍从而使音符编码输出,编码输出一次所需的时间是1/5拍,乐曲中的节拍通常大于1/5,如1/3拍、1/2拍等,1/3拍则需要将音符的编码输出3次。在设计乐曲节拍识别系统中设置了标准计数器,其计数频率为5 Hz,音符占据的时间为0.15 s,是音频停留时间的2倍。节拍控制器示意图如图3所示。
图3 节拍控制器示意图
通过连续输出音符的编码,并随着计数器上出现的速率进行计数,各个音符的编码可控制乐曲中节拍的输出,这时乐曲就会自动识别并且演奏,当计数器上的音符编码变为1时,乐曲演奏立即停止[7-8]。节拍控制器结构如图4所示。
图4 节拍控制器结构
根据图4可知,在基于音频技术的识别系统中,各个缓冲识别器存有不同频率的音符信号,通过对基准频率分段从而获得这些音频信号的具体信息,为了减少工作量,需要在合适的音频段截取适合的基准频率,在对频率进行分频过程中,数控分频器输出演奏乐曲所需的脉冲波,以此减小偶次分量生成音符对应编码的脉冲输出,在完成演奏前进行二次分频,以此控制乐曲节拍[9-10]。
1.3 动态显示器设计
在进行乐曲节拍识别系统硬件设计过程中,动态显示器设计方法采用的是MDYV语言编程,乐曲演奏模块当中的分频模块将30 MHz的频谱时钟结合成5 MHz和5 Hz的时钟频谱。
动态显示器结构拓扑网如图5所示。
图5 动态显示器结构拓扑网
声音调试程序与简谱生成程序在设计上较简单,乐曲的演奏源程序分布较分散,音符频谱生成模块对应的编码将音符频率由5 MHz时钟转换为4 Hz,以此完成音符频率的正常输出,在输出之后利用偶次脉冲进行二次分频,优化音符驱动器。因此在乐曲音频输出编码过程中需要获取演奏乐曲所需的乐曲节拍和对应的频谱编码,通常一段五线谱中含有140个1/5节拍,用声线计数器进行循环计数,统计输出乐曲的节拍编码,音符脉冲频率达到6 Hz时能够使乐曲自动播放演奏,动态输出的曲谱音符通过动态显示器循环显示,根据显示的动态编码调节高、中、低音调以及音符[11-12]。采用基于音频技术的分析、处理、识别技术,将处理的结果转换成音频文件,在应用程序上,将录制好的音频文件打开,形成一个采样率高、单声道正常的波形文件,扩展其原有系统的音频编辑功能,转换成相应的乐谱。显示器的时钟结构如图6所示。
图6 显示器时钟结构
2 基于音频技术的乐曲节拍识别系统软件设计
音频是多媒体中的重要媒体,音频信号的频率范围大概在30 Hz~30 kHz,自然界中广泛分布着音乐和自然响声,经过模拟设备记录声音,结果称之为模拟音频。音频分析的原理涉及数字信号处理的基本理论、音频分析的基本方法以及音频参数测量和分析内容,数字信号处理是音频技术分析的基础,信号的采样和变换是进行音频分析时所采用的一般方式,信号的频谱按照信号的频率结构进行频谱幅值分析,按照频率的分布规律对相位进行分类,建立幅度谱、相位谱等。在信号变换过程中,对应的离散频谱并非周期信号,当周期信号接近无穷大时,离散频谱变换为连续频谱,模拟信号经过A/D变换器变为离散时间信号,数字采样经过幅值量化频谱会发生改变,在采样过程中会涉及采样定理、频率混叠、加窗、截断和泄漏。对音频设备进行测量分析时,将脉冲模拟信号输入黑箱系统,从输出端对信号进行重叠分析,分析过程中产生激励信号,随白噪声、双音、多音等进行脉冲信号检测[13-14]。
展示界面如图7所示。
图7 展示界面
乐曲节拍识别方法通常采用音频信号处理,音频信号处理的重点以及采用的具体方法不同,通常乐曲节拍识别流程分为以下几个部分。
初始化处理。初始化处理包括音符处理、频谱整流、声线滤波、编码操作等步骤。通常使用录音采样来获得乐曲节拍音频数据,乐曲音符基频范围依据不同的节拍而不同,确定所需数据的精度以及计算的复杂程度、编码的采集格式以及信号的分流。
第一步:音符处理
可用自动识别节拍软件或者专门的音符处理软件RTEIB对演奏乐曲进行音符处理
第二步:频谱整流
在乐曲演奏过程中,演奏人员通常利用录制声线卡或者线下录音作为音频数据源,频谱在音频传输当中会通过脉冲信号进行整流,避免环境对数据传输的干扰,对输入信号做整流处理,音频处理软件对音频信号能够有效地进行转换,且可靠性高,扩展性强。
第三步:声线滤波
在对简谱进行二次处理时,软件会对乐曲中的声线进行滤波,再对音频信号进行低通滤,从而得到短时帧频谱计算结果。
第四步:编码操作
编码操作的取值在节拍识别中相当关键,取值过大或过小都会出现许多同音,这样产生的乐曲简谱就不理想,对应的音符编码会出现重叠,因此在这一操作中需要取音长的最小值就可以使音符编码成功[15]。
3 实验研究
为了研究本文提出的基于音频技术的乐曲节拍识别系统的有效性,与传统的文献[1]基于音乐特征识别的乐曲节拍识别系统以及文献[2]基于人工智能识别的乐曲节拍识别系统进行实验对比。
设定实验参数如表1所示。
表1 实验参数
本文所使用的实验数据均来自于RILM音乐数据库,随机选择10首曲目作为实验曲目。
利用本文系统对随机一首曲目进行音符处理、频谱整流、声线滤波、编码操作,具体的系统软件处理结果如图8所示。
(a)音符处理
选用本文提出的系统和传统系统进行对比实验,先比较了不同系统的乐曲节拍识别间隔时间,该指标是指在以识别开始时间作为初始识别时刻,将没有乐曲声音输入就立即停止识别的时刻作为终止识别时刻,将从初始识别时刻到终止识别时刻所用时间作为识别间隔时间。
不同系统的识别间隔时间如表2所示。
表2 识别间隔时间
由表2可知,本文所示设计系统的识别间隔时间远远低于传统系统的识别间隔时间,原因在于基于音频技术的乐曲节拍识别系统乐谱中的拍子具体指每一小节的总长度,常见的有2/4、3/4、4/4、6/8拍子。每小节的长度是固定的,例如3/4拍子就是4分音为1分音,3分音为3分音,6分音为6分音。音乐的节奏在作曲时是固定不变的,而且不会改变,所以该系统的识别间隔时间更短。
识别准确率是正确识别出的乐曲节拍数量与乐曲节拍总量之间的比率。不同系统的识别准确率实验结果如图9所示。
图9 识别准确率实验结果
根据上述实验结果可知,本文所设计的识别系统的识别准确率更高,具有更好的识别能力,更适合于实际应用。
4 总结
本文主要设计了一种基于音频技术的乐曲节拍识别系统。通过对音频、简谱、声线、乐音的处理、分析、识别使录制的音频文件更加直观、简单、可靠性高。在应用界面上,采样率单声道的波形文件会通过本系统得到扩展,单击程序上的“转换简谱”可以转换成相应的谱表,能够适合多功能的各种乐器,乐曲节拍识别得更加完善且健全,以此可以进一步提高音乐人创作乐曲的效率,节省创作的成本、时间、精力,在搜索海量乐曲文件过程中使用的识谱功能。在乐曲节拍识别的基础上,能识别五线谱中存在小节线、终止符号,改善原有的乐曲节拍识别系统,能够有效、准确地对音频定位以及对音符分割,使每个独立音符的起始和结束时间都可由帧来表示,优化原有的乐曲节拍识别系统。