首页
论坛
课程
招聘
雪    币: 236
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝

[系统底层] [求助]驱动加载问题,音频驱动问题,高人们请帮帮忙

2008-10-16 20:19 3946

[系统底层] [求助]驱动加载问题,音频驱动问题,高人们请帮帮忙

2008-10-16 20:19
3946
我现在做了一个声卡过滤驱动实现捕获计算机的所有声音,驱动已经实现了,现在驱动的加载方面有些问题,请各位老大帮帮忙:

我现在使用注册表,加服务,能实现把自己的过滤驱动加载到media类驱动,应该是作为这个类驱动的过滤驱动,最终好多个音频驱动都附加了我的驱动,注册表主要是这块:
#define DRIVER_STACK            "SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E96C-E325-11CE-BFC1-08002BE10318}"

#define DRIVER_STACK_POINT        "UpperFilters"

但是这种方式必须要重启,卸载驱动后,要重启机器,安装,安装完要再重启才能加载驱动,很麻烦

我现在想实现动态加载驱动,nt驱动我用服务+驱动中attach的方法,可以加载到sysaudio音频驱动,
RtlInitUnicodeString(&usDeviceToFilter, L"\\Device\\sysaudio");
        NtStatus = IoAttachDevice(pDeviceObject, &usDeviceToFilter, &pExampleFilterDeviceContext->pNextDeviceInChain);
但是从sysaudio捕获不到音频数据,必须想办法附加到其他音频驱动,其他音频驱动创建的都是未命名设备,没办法使用这种方法,现在的问题就是有没有attach到类驱动的方法,或者根据驱动文件,找到它创建的未命名驱动设备的方法,那样我就能采用attach的方法直接加载能捕获到音频数据的音频驱动了,多谢,期待高人指点

还有就是我目前能捕获到音频数据,在IOCTL_KS_READ/WRITE_STREAM时,但是我找不到音频格式信息,我用自己总结的方法能解析数据,但是有时取样率不对,有时只能一个声道有声音,这个问题也希望牛人帮忙

[公告]看雪论坛2020激励机制上线了!多多参与讨论可以获得积分快速升级?

最新回复 (3)
雪    币: 236
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
adwardwang 活跃值 2008-10-17 08:52
2
0
牛人,期待出现啊
雪    币: 286
活跃值: 活跃值 (23)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
fqjp 活跃值 2008-10-17 13:34
3
0
在DDK目录src\storage\filters\addfilter,你可以试试,也许不需要重启就行
雪    币: 236
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
adwardwang 活跃值 2008-10-18 23:05
4
0
多谢,我试试看看
游客
登录 | 注册 方可回帖
返回