信号采集与分析系统广泛地用于工业控制、测试计量、仪器仪表行业.随着“虚拟仪器”概念的提出,以计算机为基础,配以高性能的数据采集卡和相关软件组成的信号采集与分析系统由于较高的性价比而日益为用户青睐.数据采集卡的性能一般取决于其采样频率和位数,高速高位数的数据采集卡往往意味着高价格.而很多场合,信号频率在音频范围内,并不要求很高的采样频率.计算机声卡,虽然平时只是用来录音、放音,但它其实是一块性能不错的A/D、D/A转换卡.即使是最普通的声卡,一般都能实现16位、双通道、最高44.1kHz的采样频率,足以应付大多数信号采集任务,而其价格却只有专用数据采集卡的几分之一,甚至几十分之一[1].将声卡作为数据采集卡,最简单的方式是用录音程序录下声卡的输入信号,然后离线处理,但若要实时地处理输入信号,就必须对声卡进行底层编程.由于声卡是Windows操作系统的一个标准多媒体设备,制造商已经为声卡开发了适用于Windows的底层硬件驱动程序,而Windows对声卡的操作是通过多媒体API(应用程序接口)函数,这就实现了设备无关性.编程人员只需熟悉API函数,而不需知道具体什么声卡,极大地方便了声卡应用程序的开发.在众多开发工具中,选择C++Builder的原因是:它是基于C/C++语言的可视化快速应用程序开发工具,其丰富的VCL组件涵盖Windows界面、数据库开发、系统编程以及网络元素等各个方面,同时支持WindowsAPI函数的调用和内嵌汇编语言,方便对硬件的编程操作,使编程人员可以轻而易举地开发出界面美观、功能强大的应用程序.1声卡实现数据采集的基本操作在C++Builder中对声卡编程,首先要在源文件中包含“mmsystem.h”头文件,该文件定义了所有有关声卡操作的API函数,这些函数均带有wave*的前缀.1.1打开波形输入设备函数waveInOpen用于打开波形输入设备,其原型如下:MMRESULTwaveInOpen{LPHWAVEINphwi,//输入设备句柄UINTuDeviceID,//输入设备的标记号LPWAVEFORMATEXpwfx,//录音格式指针DWORDdwCallback,//处理MM_WIM_*消息的回调函数或窗口句柄,线程IDDWORDdwCallbackInstance,DWORDfdwOpen//处理消息方式的符号位);其中pwfx指定了声卡做数据采集时的几个关键参数,如采样频率、位数等,它是一个结构WAVE-FORMATEX:typedefstruct{WORDwFormatTag;//采样数据格式,目前只能用PCM格式WORDnChannels;//通道数目(1或2)DWORDnSamplesPerSec;//采样频率,44100,22050,或11025DWORDnAvgBytesPerSec;//每秒采样得到的数据//等于nSamplesPerSec*nChannels*wBit-PerSample/8WORDnBlockAlign;//记录区块对齐的单位,等于nChannels*wBitsPerSample/8WORDwBitsPerSample;//量化位数,8或16WORDcbSize;//非PCM格式额外信息}WAVEFORMATEX;定义上述函数所需的各参数并赋值,就可以打开声卡的输入通道.1.2给数据分配缓冲区因为声卡是以DMA(直接内存访问)方式工作的,所以必须为采样数据准备缓冲区.如果是非实时采集,那么只要按采样时间采样频率量化位数的大小在内存里开辟一块空间就可以了,但若是实时采集,
Android 声卡采集 基于声卡的数据采集
转载-
谷歌地图数据采集软件使用方法
专为做外贸的朋友开发的一款基于谷歌地图数据采集的软件,可以采集任意国家、任意地区的公司地址、电话号码、邮件地址等数据。
谷歌地图 谷歌地图数据采集软件 谷歌地图数据采集 谷歌地图数据采集器 -
Android平台实现屏幕录制(屏幕投影)|音频播放采集|麦克风采集并推送RTMP或轻量级RTSP服务
技术背景好多开发者,希望我们能系统的介绍下无纸化同屏的原理和集成步骤,以Android平台为例,无纸化同屏将Android设备上的屏幕内容实时投射到另一个显示设备(如Windows终端、国产化操作系统或另一台Android设备)上,从而实现多屏互动和内容的无缝共享。技术考量指标本文以大牛直播SDK Android同屏采集推送为例,介绍下我们前些年做Android同屏采集推送的时候,一些注意点:声明
Android屏幕录制 Android屏幕投影 Android同屏 Android采集屏幕 大牛直播SDK -
android音频采集指定声卡 利用声卡采集音频信号
现在的所谓多媒体电脑一般都会有声卡(软声卡或硬声卡),有声卡就能进行音频的捕捉。大家一定熟悉Windows自带的附件“录音机”程序,可以通过麦克风进行录音,最终生成一个Wave文件。大家知道,DirectShow对硬件的支持是通过特定的包装Filter来实现的。声卡使用的是Audio Capture Filter,Filter内部使用以waveIn开头的一
android音频采集指定声卡 directshow Directshow DirectShow 音频采集 -
java整合backtrader
先看一张描述java.util.concurrent包下集合组成结构的类图下列介绍的集合统一特性:线程安全,支持并发操作非阻塞队列(队列无数据,操作队列产生异常或返回null,不具备等待/阻塞的特色)ConcurrentHashMap:相对于线程安全的HashTable,优势在于HashTable不支持在循环(iterator)中对结构调整(增、删),否则会有ConcurrentModificat
java整合backtrader concurrent ConcurrentHashMap CopyOnWriteArrayList CopyOnWriteArraySet