Beginner in driver development who needs some help

Hi to all,

I’m a beginner in development of drivers. I have to write an audio driver that
forwards audio contents to be played on client computers in real-time. To be
honest, my background in audio applications is limited but i have made some
research on the internet on that topic.

To reach my goal, my plan is first to study the behavior of a sample that fit
best my needs and then write a filter driver that reformat the audio data
accordingly. Fortunately, I found a WDM driver sample included in DDK that
writes .wav files (played by Windows Media Player) into small .wav files on the
hard disk. (That sample can be found in
\WINDDK\Build_number\src\wdm\audio\msvad.) I studied its behavior by looking
at its code (especially for code that potentially generates the output files on
my hard disk) and tracing it with SoftICE. After spending five days on that
task, I still haven’t found a way to reformat the audio data played. WDM
drivers seem so complicated! Also, because this sample crashes my computer at
boot time, I consider writing a custom driver from scratch.

My questions are:
1)Can you tell me how Windows Media Player interact with an audio driver?
2)Is there better approaches in reverse-engineering such drivers?
3)If I choose to write a new audio driver, what are the concepts I should be
familiar with and understand it before starting its development?

I thank ahead to any answers, comments or links you can provide.

Chi-Truc Dinh

For #3, run (DO NOT WALK) to your nearest bookstore
and buy Walter Oney’s book on WDM! It saved my butt!

Regards, Vasili

— Chi Truc Dinh wrote:

> Hi to all,
>
> I’m a beginner in development of drivers. I have to
> write an audio driver that
> forwards audio contents to be played on client
> computers in real-time. To be
> honest, my background in audio applications is
> limited but i have made some
> research on the internet on that topic.
>
> To reach my goal, my plan is first to study the
> behavior of a sample that fit
> best my needs and then write a filter driver that
> reformat the audio data
> accordingly. Fortunately, I found a WDM driver
> sample included in DDK that
> writes .wav files (played by Windows Media Player)
> into small .wav files on the
> hard disk. (That sample can be found in
> \WINDDK\Build_number\src\wdm\audio\msvad.) I
> studied its behavior by looking
> at its code (especially for code that potentially
> generates the output files on
> my hard disk) and tracing it with SoftICE. After
> spending five days on that
> task, I still haven’t found a way to reformat the
> audio data played. WDM
> drivers seem so complicated! Also, because this
> sample crashes my computer at
> boot time, I consider writing a custom driver from
> scratch.
>
> My questions are:
> 1)Can you tell me how Windows Media Player interact
> with an audio driver?
> 2)Is there better approaches in reverse-engineering
> such drivers?
> 3)If I choose to write a new audio driver, what are
> the concepts I should be
> familiar with and understand it before starting its
> development?
>
> I thank ahead to any answers, comments or links you
> can provide.
>
> Chi-Truc Dinh
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as:
> xxxxx@yahoo.com
> To unsubscribe send a blank email to
> xxxxx@lists.osr.com
>

__________________________________
Do you Yahoo!?
Read only the mail you want - Yahoo! Mail SpamGuard.
http://promotions.yahoo.com/new_mail

The good news is that your task may be much simpler than you expect. I
recommend that you put away the DDK documentation and pickup the DirectShow
documentation. You probably don’t need to or even want to write an ‘audio
driver’ unless you need to talk to some special kind of hardware. If what
you want to do is take audio samples, code them up in some appropriate
format, and transport them over the network, a DirectShow filter is probably
what you need to build. The latest Platform SDK now contains the DirectShow
headers and samples although the DirectX8 and DirectX9 SDKs contain addional
samples you might be interested in. In particular the ‘network filter’
sample might be interesting.

Good Luck,
Dave Cattley
Consulting Engineer
Systems Software Development

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Chi Truc Dinh
Sent: Thursday, June 16, 2005 3:32 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Beginner in driver development who needs some help

Hi to all,

I’m a beginner in development of drivers. I have to write an audio driver
that forwards audio contents to be played on client computers in real-time.
To be honest, my background in audio applications is limited but i have made
some research on the internet on that topic.

To reach my goal, my plan is first to study the behavior of a sample that
fit best my needs and then write a filter driver that reformat the audio
data accordingly. Fortunately, I found a WDM driver sample included in DDK
that writes .wav files (played by Windows Media Player) into small .wav
files on the hard disk. (That sample can be found in
\WINDDK\Build_number\src\wdm\audio\msvad.) I studied its behavior by
looking at its code (especially for code that potentially generates the
output files on my hard disk) and tracing it with SoftICE. After spending
five days on that task, I still haven’t found a way to reformat the audio
data played. WDM drivers seem so complicated! Also, because this sample
crashes my computer at boot time, I consider writing a custom driver from
scratch.

My questions are:
1)Can you tell me how Windows Media Player interact with an audio driver?
2)Is there better approaches in reverse-engineering such drivers?
3)If I choose to write a new audio driver, what are the concepts I should be
familiar with and understand it before starting its development?

I thank ahead to any answers, comments or links you can provide.

Chi-Truc Dinh


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@msn.com To unsubscribe
send a blank email to xxxxx@lists.osr.com

No need in any kernel-mode development for this. Write a DirectShow
component, or an old-style WINMM DLL - then one with “wodMessage” routine.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

----- Original Message -----
From: “Chi Truc Dinh”
To: “Windows System Software Devs Interest List”
Sent: Thursday, June 16, 2005 11:32 PM
Subject: [ntdev] Beginner in driver development who needs some help

> Hi to all,
>
> I’m a beginner in development of drivers. I have to write an audio driver
that
> forwards audio contents to be played on client computers in real-time. To be
> honest, my background in audio applications is limited but i have made some
> research on the internet on that topic.
>
> To reach my goal, my plan is first to study the behavior of a sample that fit
> best my needs and then write a filter driver that reformat the audio data
> accordingly. Fortunately, I found a WDM driver sample included in DDK that
> writes .wav files (played by Windows Media Player) into small .wav files on
the
> hard disk. (That sample can be found in
> \WINDDK\Build_number\src\wdm\audio\msvad.) I studied its behavior by
looking
> at its code (especially for code that potentially generates the output files
on
> my hard disk) and tracing it with SoftICE. After spending five days on that
> task, I still haven’t found a way to reformat the audio data played. WDM
> drivers seem so complicated! Also, because this sample crashes my computer
at
> boot time, I consider writing a custom driver from scratch.
>
> My questions are:
> 1)Can you tell me how Windows Media Player interact with an audio driver?
> 2)Is there better approaches in reverse-engineering such drivers?
> 3)If I choose to write a new audio driver, what are the concepts I should be
> familiar with and understand it before starting its development?
>
> I thank ahead to any answers, comments or links you can provide.
>
> Chi-Truc Dinh
>
> —
> Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com