基于LabVIEW和声卡开发的多通道音频存储系统

时间:2022-10-29 06:41:43

基于LabVIEW和声卡开发的多通道音频存储系统

市场上的采样存储系统品牌和类型众多,大部分硬件接口互不兼容,不同品牌之间不能够互相扩容,给系统的使用带来局限,而且系统较专业,需要专业的技术人员进行系统开发和维护,对技术人员的能力要求较高,增加系统运行成本。更为重要的是单购置硬件的预算就得几十万,一般的小单位可能很难有能力购置使用。

为满足音频存储系统的需求,既能符合使用的技术要求,又能降低成本,同时使用和维护都比较方便简单。我们研制开发了这套基于LabVIEW和声卡开发的多通道音频存储系统,这套系统采用了目前市场上较流行的声卡作为音频采集硬件,使用LabVIEW图形化编程软件进行系统的后台和界面开发。

采用声卡作为音频采集设备,既能满足对音频信号指标要求,又经济适用、使用灵活,PC上可以使用多声卡同时工作,达到多通道音频采集的功能。既满足应用需求又节约成本。系统使用LabVIEW开发环境,可以很好地对硬件进行开发,而且开发软件界面友好,系统工作稳定。

LabVIEW和声卡的特点介绍

1声卡特点

随着数字化技术的发展,DSP(数字信号处理)处理能力的提高,使用DSP技术的PC声卡性能不断完善,从最初的单声道、双声道发展到现在的5.1和7.1声道,从ISA总线发展到现在流行的PCI和USB总线,对音频的采集和处理能力已经相当成熟。声卡具有价格低廉、兼容性好、性能稳定、使用灵活等优点。一般声卡的16位A/D转换精度完全可以满足大部分场合的应用需求。

声卡的种类很多,功能也不完全相同,但它们有一些共同的基本功能:能录制话音(声音)和音乐,能选择以单声道或双声道录音,并且能控制采样速率。声卡上有数模转换芯片(DAC),用来把数字化的声音信号转换成模拟信号,同时还有模数转换芯片(ADC),用来把模拟声音信号转换成数字信号。

声卡真正的质量取决于它的采样和回放能力。模拟声音信号是一系列连续的电压值,获取这些值的过程称为采样,这是由模数转换芯片来完成的。影响音质的两个因素是采样精度和采样频率。

采样精度决定了记录声音的动态范围,它以位(Bit)为单位,例如8位、16位。8位可以把声波分成256级,16位可以把同样的波分成65536级的信号。可以想象,位数越高,声音的保真度越高。

采样频率指每秒钟采集信号的次数,声卡一般采用11.025kHz、22.05kHz和44.1kHz的采样频率,频率越高,失真越小。在录音时,文件大小与采样精度、采样频率和单双声道都是成正比的,如双声道是单声道的两倍,16位是8位的两倍,22kHz是11kHz的两倍。

LabVIEW(LaboratoryVirtualInstrumentEngineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语 言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言编写程序,产生的程序是框图的形式。

与C和BASIC一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储,等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等,便于程序的调试。

LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通信的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。

图形化的程序语言,又称为“G”语言。使用这种语言编程时,基本上不写文本程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。

多通道音频存储系统的设计

1系统硬件

系统的硬件主要由工控机、音频采集卡和存储设备组成,音频采集卡完成音频信号的采集及运算,工控机为系统软件运行提供物理支持。工控机内有标准的PCI插槽,可以根据录音系统的要求,安装一定数量的声卡。系统也可以通过工控机的USB接口,安装USB接口的声卡。USB声卡在系统中更具有优势,体积小,安装方便,成本低等特点。

系统硬件工作原理,工控机的PCI和USB总线接口连接的音频采集卡,将音频信号进行A/D转换,通过工控机上运行的多通道音频存储软件进行处理,并将模拟音频信号转换成WAV格式的数据音频文件,然后工控机外挂的磁盘存储设备进行存储。工控机还可以随时从存储设备调用存储文件,通过PCI和USB总线连接口连接的音频采集卡进行播放。

2系统软件

软件主要有四部分组成,其中包括音频存储任务管理、音频通道自动识别、音频任务自动执行等组成。软件具有音频任务生成、取消和管理功能,可以完成多通道音频24小时内任意时间生成、下发、执行和取消任务。自动识别音频采集卡得数量显示录音通道,音频文件可以选择保存路径。音频文件名采用手动输入名字、任务开始时间和录音通道自动生成子文件夹和文件名。该软件具有界面友好、操作简单、功能强大等特点。

(1)音频存储任务管理

任务管理主要功能语音任务的生成、删除等功能。用户可以根据录音任务的需要,将录音任务的文件名、 使用硬件的录音通道、录音开始时间和结束时间等信息生成录音任务,可以同时下发多个任务,多音频采集卡通道并行同步工作。软件内设计了防止误输入错误检查,当用户结束时间大于开始时间时,录音任务将不能够生成。因为在音频采集卡上不能够有时间上重叠的任务,这样很好的解决了任务下发造成错误。而且生成任务时,可以选择任务是否重复执行,这样就可使实现24小时周期任务自动循环执行。在软件初始化时,软件会自动扫描计算机硬件声卡的配置,对应激活软件的录音通道,实现录音任务通道选择。

(2)音频存储任务启动

录音任务执行主要是判断录音任务是否开始执行,读取录音任务的开始时间与当前系统的时间进行比较,小于当前系统时间录音任务启动,开始录音任务,录音任务结束时间小于当前系统时间,则录音任务结束。在判断录音任务是否启动时,需要进行逻辑判断,只有当录音通道的状态显示为无任务时,才可以启动当前的录音任务,防止后录音任务覆盖正在录音的任务(时间的准确度在1s)。

(3)音频存储通道工作原理

音频存储通道主要是完成各通道音频采集卡的采样初始化,协调各通道有序同步工作,将采样后的音频数字信号进行管理、分类存储。

音频存储通道初始化主要完成各录音通道的任务初始参数设置,包括音频存储文件的文件名命名,录音文件存放的路径,以及给音频文件存储的格式和采样率。文件的命名采用了任务名称、开始时间、录音通道组成文件名,避免文件名字重复。软件自动生成一个当前日期的文件夹,用来保任务录音文件。录音格式可以根据采样率分别设置44.1kHz、22.05kHz、11.025kHz,并根据音频质量的要求设置通道采样点数。

多通道音频存储系统的关键技术

基于LabVIEW和声卡开发的多通道音频存储系统,开发中关键技术为如何实现多通道音频存储,所以必须考虑系统音频采集卡采用的工作方式,一般可以采用并行和串行两种运行方式。并行运行方式特点是根据需要理论上可以无限通道同时工作,而串行运行要考虑各通道占用时间问题,通道达到一定数量会造成采集数据丢失。本系统在开发中,使用的是多音频采集卡并行工作方式,在系统开发中遇到多音频采集卡同步工作时出现运行错误,这主要是因为音频采集卡在软件中申请内存空间不够造成数据溢出,所以在进行开发时要特别注意这点。

上一篇:用FPGA同步下一代网络 下一篇:消费类电子用LED灯的应用设计