[vorbis-dev] Multichannel Encoding

Borgerding, Mark A. MarkAB at xetron.com
Fri Jan 26 10:36:29 PST 2001

> -----Original Message-----
> From: owner-vorbis-dev at xiph.org [mailto:owner-vorbis-dev at xiph.org]On
> Behalf Of Marshall Eubanks
> Sent: Friday, January 26, 2001 12:53 PM
> To: vorbis-dev at xiph.org
> Subject: Re: [vorbis-dev] Multichannel Encoding
> For earphones, I have heard of VR work where the attitude of 
> the 'phones is measured and the
> signal to each ear is changed in real time to replicate what 
> you would have heard in open air
> if you turned your head the same way. My guess is you could 
> do a pretty good surround sound this way, but
> it would take a fair amount of CPU on the client side.

Depends on how many distinct directions you want to represent.

The computational requirements would be proportional to the number of
distinct directions you wish to implement.

Excuse me while I think at the low level for a moment: 

I think it would work best if each direction had its own filter, which
accounted for frequency response and delay.

An efficient implementation would be to maintain a bank of FIR filters
(length is TBD) that simulate the ears' perception of sounds from various
directions.  If a direction was not exactly at a point for a filter bank
entyr, then the filter could be the interpolation of the filters whose
directions are closest to the desired direction.  This should give smooth
transitions while turning one's head.  It would also be pretty efficient.

For example, if a sound is supposed to come from (83 degrees right, -4
degrees up).  A linear 2-D interpolation might use the filters for (75,0),
(90,0), (75,-15) (90,-15)

The filter bank implementation would be pretty fast, but could be a space
hog.  It would probably end up needing hundreds of reference filters.  You
could space them in various manners, but that would trade space for
computational speed.

By the way. Is all this stuff off-topic?  Or is it possible that
multi-channel encoding might use this sort of thing?

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.

More information about the Vorbis-dev mailing list