openvortex-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Openvortex-dev] Quad surround?


From: Ryan Underwood
Subject: Re: [Openvortex-dev] Quad surround?
Date: Sat, 14 Jun 2003 06:10:51 -0500
User-agent: Mutt/1.5.4i

Hi,

On Sat, Jun 14, 2003 at 03:10:53AM -0500, Callum Lerwick wrote:
> So can we start making wishlists now? :) I'd really like to be able to 
> use four speakers, for starters just mirroring the front output on the 
> rear speakers would be useful. I remember someone mentioning in an old 
> post you just had to tweak an AC97 register, but never gave any details. 

See the manual for the Sigmatel 9708 codec:
http://people.freenet.de/kxdev/docs/codecs/stac9708-ds.pdf

on pg.33 under 4.14 you will see the "4-speaker playback of 2-channel
content"

basically 0x6e |= 4 needs to be done to enable it.  I will install the
alsa driver soon to see if this can work.  I got it to work by writing
to /dev/mem with the OSS driver but I never could get it working inside
the driver code itself.

> I've played with ac97mixer in Windows, apparently the ac97codec has a 
> cheezy 3D effect unused in the windows drivers, there's some sliders in 
> ALSA that appear to be for tweaking it, one of them barely percepibly 
> changes the sound a little but the effect doesn't seem to get fully 
> enabled like can be done in windows, unmuting doesn't seem to do it. 
> Would be fun to play with this, with the lack of A3D...

check pg.30, 0x20 bit D13 controls it.
 
> Next step is of course full 4 speaker output. Do we know enough to do 
> this any time soon? Some surround sound in Xine would be sweet.

The problem here is the routing of DMA streams to go to the correct
destinations.  It is a complicated subject, and the more people that
study the code and understand it, the closer we will be. :)

> And beyond this I had a lengthy rant about 3D Wavetracing/HRTF sound 
> typed up but a power failure ate it. So here's a different one. I've 
> been reading up on 3D sound and playing with Aureal's A3D SDK and think 
> I have a pretty good handle on how it all works, just search Google for 
> 'HRTF' and you'll get a ton of documentation and freely licenced HRTF 
> measurements, which is the hardest part to get right. A DSP wizard could 
> easily write up a GPL HRTF system with the info thats freely available. 
> (there's even some example highly SGI specific source code)

HRTF would be an interesting feature to implement in ALSA, with software
algorithms to be used if the hardware doesn't support it.

> Where the Aureal hardware fits in to it all I don't know, my guess from 
> looking at the process involved at the very least its a mean lean 
> multi-channel EQ-ing machine, perhaps it can also run a delay line and 
> pitch shift per channel for doppler effects. Probably has crosstalk 
> cancelation in hardware.

Check the CEqlzr.s from teh disassembly to see how the equalizer in
windows worked.

> I think reverb was hacked on in software after 
> EAX became popular,

I believe you are correct -

> Is the Aureal hardware 
> programmable in anything resembling a general DSPish way at all or is it 
> all hard wired?

If you mean similar to how a CS46xx is for instance, the answer is no.

It is programmable in the sense of the driver saying, "here are locations of
DMA streams, do your thing and don't bother me anymore until you are
done"

The microcode (if it runs one) is internal to the chip.  The Monster
Sound MX200 was interesting in that Diamond had a generic DSP chip that
uploaded an Aureal program to the chip when the system booted.  I think
Aureal found that an ASIC was cheaper to produce and had few drawbacks.

> IMHO PC sound is trailing behind in the stone age and always has been. 

What else is new :)  PC was behind Amiga until 1998 or so when the first
hardware mixing PCI soundcards came out.  Some people said it was even
behind C=64 -- as opposed to a programmable multi voice synth SID inside
your box, SB gives you a FM chip and a single PCM stream (and a lot of
configuration headaches)?  Give me a break.

> marketing terms based on current trends...) integrated INTO the video 
> card, feeding off the video card's geometry information and geometry 
> processing ability (why duplicate the effort?). OpenGL/Direct3D would 
> have to be extended to integrate closely with what A3D/EAX/DirectSound3D 
> currently does...

Nah, not necessarily.  Having the video and sound processor as separate
logical units is a good design, since they work concurrently.  More
information passing is an interesting proposition.  Very difficult to do
in hardware though -- the 3D graphics only knows about triangles and
textures, the software engine knows about the scene it is rendering and
thus can choose 3D sound algorithms appropriately.

> I need to pull a copy of OpenAL and see what Creative is doing to it.

They are doing a really good job moving it forward, IMHO.  All we need
is a card besides SBLive that implements OpenAL against its hardware
API.  A3D would be an excellent choice if we had a shred of
documentation about the A3D core :P

See ya,

-- 
Ryan Underwood, <nemesis at icequake.net>, icq=10317253




reply via email to

[Prev in Thread] Current Thread [Next in Thread]