[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
Karthik Kumar V wrote:
Hi,
There is one interesting thing with DX mixer. There are some of the
possibilites that open up:
1. Use our own mixer to handle 3D mixing code. This will take care of
demultiplexing more than 2 channels as well.
This would be the best option, IMO.
2. Use DirectSound3D to handle the 3D code in windows. This supports full
fledged HW/accel.
If we're going to do hw accelerated mixing we might as well do it right
the first time, instead of just doing it to get it working in Windows
and worry about other platforms later (another reason I don't like the
DX mixer). This is exactly the problem Allegro has had as a whole,
except it was to get things working in DOS first, and worry about other
targets later. AFAIK, there's nothing like DirectSound in other OS's
(even on an API level).
Other platforms can do multiple hardware voices (for hardware
accelerated mixing), but depending on DX to do it for you will cause you
to depend on other platforms to do it for you as well. ALSA and OSS do
not do this. They give you hardware voices only, they don't abstract
hardware voices from software like DX can. And the DX mixer can't
currently rely on only hardware voices because there are still cards in
use that only provide a handful (or even as few as 1 or 2) hardware
voices. The mixer needs to be redesigned to be able to sit on top of
multiple hardware voices for this to even begin to work. And the changes
to the mixer would more than likely require changes to the audio drivers
as well. Doable, but someone needs to take the time to do it.
3. Include code to implement EAX4.0
I don't know much about EAX, but wouldn't this be best suited as an
audio driver?
Option 1 is best for all platforms - think 3D sound for DOS!!!!! :) So
we need to do everything
Of course, the DOS drivers/cards would have to be able to handle
3D/multi-channel sound. AFAIK, the available drivers can't do much more
than what SB16's are capable of (a nice card, mind you, but rather
limited by today's standards).
Pseudo-3d however, entirely possible once I know how to do it. :)
- Kitty Cat