- 博客(4)
- 资源 (6)
- 收藏
- 关注
原创 Asio驱动开发学习笔记(3)
Init之后就需要createBuffers。下面是createBuffers代码。 AsioError CUsbAsio::createBuffers(ASIOBufferInfo *bufferInfos, long numChannels, long bufferSize, ASIOCallbacks *callbacks) { //bufferInfos, 需要分配内存,即将
2015-12-22 10:05:58 1219
原创 Asio驱动开发学习笔记(2)
假设有一USB声卡,支持Asio,如何实现Asio驱动呢? 1 实现Register注册代码。此处省略,可参考Asio官方Sample。 2 实现Class USBAsio: public IASIO, public CUnknown的 Init(); CreateBuffers(); Start(); Stop(); DisposeBuffers(); Exit(); 下面参照AsioS
2015-12-14 16:30:54 1714
原创 Asio驱动开发学习笔记(1)
Asio驱动的最大特点是高速,它绕开了WDM框架,直接向硬件发送数据,最重要的是省略了KMixer步骤,这一步最费时间。此驱动开发很小众,一般只有高端声卡厂商才会支持Asio驱动。 Asio驱动用户层接口是COM接口,所以驱动开发人员也必须提供标准的COM接口。那么,就无法绕开以下几个函数: DllRegisterServer DllUnregisterServer DllCanUn
2015-12-14 15:39:24 2580 2
原创 动态链接库dll注册函数DllRegisterServer的调试
DllRegisterServer需要用Regsvr32.exe调用,调试时不能象普通dll那样调试,可以使用Windbg来进行调试。假设dll文件已编译好,调试DllRegisterServer步骤如下: 1 打开Windbg,设置”Symbol File Path”和”Source File Path”, Symbol File Path是DLL文件的地址。注意:一定要包含调试信息文件pd
2015-12-11 09:21:24 1863
声音控制器
2015-10-16
WaveIn Record
2015-10-09
WaveOut Play
2015-10-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人