>Hello, World!
>I am currently trying to find a way of playing audio and recording in
>simultaneously. A possible application could be a real time effect
>processor, or a direct to disk multi track recorder.
operating system constructions. The real time effect processing requires
that the recorded sample is played back almost immediately after being
recorded (otherwise there is some disturbing delay).
The problem with D2D is the disk I/O. Recording CD quality sound requires
that the file system+disk I/O code is able to store continuously 176k of
data to a file without pauses longer than 0.3 sec. On my system this is
not possible (DX4/100+IDE disks+ext2fs). It may work with SCSI disks
and/or using raw disk partitions (no fs on them). Doing recording and
playback at the same time makes things still worse.
This limitation is there since at the time I started writing the soundQuote:>I looked the sound driver sources, and noticed that it is only designed
>to do one of these jobs at a time. I think that the major reason for this
>is that most of the cards have only 1 DMA channel.
driver there was just the SB which was not able to work in duplex mode.
However since full duplex is the most requested feature, it's propably
the time to start implementing it.
It's likely that it leaves about 5% of CPU free. Interrupt processing is justQuote:>> Do you think that an interrupt driven driver is a possible solution?
>> Would it be slow? (for a 44khz stereo and bidirectionnal transfert,
>would it take less than 5% cpu time on a pentium 60)
too time consuming to be done 44100 at times/sec.
The standard WSS interface doesn't support two DMA channels but someQuote:>I currently own a Sound Galaxy nx pro 16 sound card, which is a
>8 bits sound blaster compatible plus a Windows Sound System 16 bits
>device (ad1848). In the driver source (ad1848.c), I noticed that there
>is a mode with two DMA channels. Is it hardware compatible? Can it work?
cards may have a proprietary extension (SG NX Pro 16 is not one of them
AFAK). The ad1848.c is a generic driver that is intended to support all
AD1848/CS4248/CS4231 based cards such as WSS and GUS MAX. For this reason
there is preliminary support for dual DMA channel mode.
Hannu
--
-----------------------------
Hannu Savolainen
"Hackers don't use factory prebooted DOS."