HardwareHeaven.com

HardwareHeaven.com

Looking for the skin chooser?
 
 
  • Home

  • Hardware reviews

  • Articles

  • News

  • Tools

  • Gaming at HardwareHeaven

  • Forums

 

Go Back   HardwareHeaven.com > Forums > Hardware and Related Topics > kX Project Audio Driver Support Forum > 3-D Audio


3-D Audio kX 3-D Audio, DirectSound 3D, OpenAL and EAX discussion

Reply
 
Thread Tools
Old Dec 15, 2004, 10:26 AM   #1
DriverHeaven Lover
 
Join Date: May 2003
Location: Vienna, Austria
Posts: 146
Rep Power: 0
JohnMcClane is on a distinguished road

EAX (Eugene please read)

Like I already mentioned in another thread, I contacted Creative's support forum concerning the EAX data sheets. They told me to get in contact with Creative's Developer Relations USA - well I did that and they replied pretty fast here is what they wrote:
JohnMcClane is offline   Reply With Quote


Old Dec 15, 2004, 10:27 AM Threadstarter Thread Starter   #2
DriverHeaven Lover
 
Join Date: May 2003
Location: Vienna, Austria
Posts: 146
Rep Power: 0
JohnMcClane is on a distinguished road

Regarding EAX environment presets data
I guess what they need to is to get the EAX SDK so they can get the Preset
info.

In the EAX SDK, there exist a EAX.H file that contains the Preset
data.

What publically available...

The EAX 2.0 Specifications are available at:
http://developer.creative.com/landin...bcat=31&top=71

Attached is EAX10.ZIP , and this contains the EAX.H file with the
preset values.
attached is the EAX.H file from the EAX1.0 API


Looking at EAX20, I see that the defined presets were moved to a .LIB
file. and are not shown in the EAX.H, but
in EAX 3 and 4, they were moved back. weird

EAX 2.0 SDK:
The complete EAX 2.0 SDK, including documentation, header files, and
example source code.
http://developer.creative.com/articl...top=71&aid=138


EAX 2.0 API Guide:
Main EAX 2.0 documentation.
Includes explanations of EAX terminology, and detailed listing of all
EAX 2.0 parameters.


http://developer.creative.com/articl...top=71&aid=139

As far as I know, Each company can develop their own EAX, audio mixing
and HRTF (Head Related Transfer Function) algorithms.

Searching for environmental+audio
http://www.google.com/search?hl=en&q...dio+algorithms

3D Audio - The Sonic Spot
http://www.sonicspot.com/guide/3daudio.html

There are a lot of research for HRTF...

A quick search... HRTF
http://www.google.com/search?q=+head...+function+hrtf

2 Speakers, Head Phone, 4 speakers, 5.1, 6.1, 7.1 ...
Each speaker configuration requires different HRTF algorithm's and
filters.


Regards,
Phillip Williams
Creative Labs
Developer Support
DevRelSupport@CreativeLabs.com
http://developer.creative.com/
http://opensource.creative.com/
http://preview.creativelabs.com/
-------- Notice --------
The information in this message is confidential and may be legally
privileged. It is intended solely for the addressee. Access to this
message by anyone else is unauthorized. If you are not the intended
recipient, any disclosure, copying or distribution of the message, or any
action taken by you in reliance on it, is prohibited and may be unlawful.
If you have received this message in error, please delete it and contact
the sender immediately. Thank you.





Guest User <m.lodin@inode.at>
12/13/04 01:33 PM


To: devrelsupport@creativelabs.com
cc:
Subject: EAX for kX audio driver


Message Sent: 12/13/2004

Dear Sirs,

I'm a 20 year old student from the technical university of Vienna
(Austria), where I'm studying software engineering. A few months ago I
came across an alternative audio driver for all soundcards with Emu10k1
and Emu10k2 Chips - kX Audio Driver (www.kxproject.com). I was really
impressed, how a driver that is only 5MB at size could be that much better
than the original Creative drivers. The project is OpenSource and allowed
me to write my own plugIns for it's fully customizable DSP. I was able to
achieve ASIO latency down to 2ms and a superior audio quality when
listening to music or watching movies. The only thing I was missing was
the lack of EAX support in this drivers. The kX project Lead Programmer,
Eugene Gavrilov, told me, that he would have worked on EAX support, but
Creative did not publish the EAX enviroment presets data & specifications
to him. I don't think that there would be any reason for creative to hold
back that specs, so is there a chance to get them?
JohnMcClane is offline   Reply With Quote
Old Dec 15, 2004, 10:33 AM Threadstarter Thread Starter   #3
DriverHeaven Lover
 
Join Date: May 2003
Location: Vienna, Austria
Posts: 146
Rep Power: 0
JohnMcClane is on a distinguished road

There were two attachements to this mail - you can download them here

http://members.inode.at/m.lodin/EAX.H

http://members.inode.at/m.lodin/EAX10.ZIP

Hope this brings us one step closer to EAX.

Last edited by JohnMcClane; Dec 15, 2004 at 11:46 AM.
JohnMcClane is offline   Reply With Quote
Old Dec 15, 2004, 02:09 PM   #4
kX Lover
 
Samir's Avatar
 
Join Date: Jan 2003
Posts: 520
Rep Power: 0
Samir is on a distinguished road

hej, John, are you regitrated user @ developer.creative.com? EAX3 & EAX4 SDKs might come in handy...

I think that Eugene is aware of EAX API'sif i remember right he found no real use out of it...

Keep up the good work!
__________________
MU3NKA 3A HAPO6!
Samir is offline   Reply With Quote
Old Dec 15, 2004, 03:36 PM Threadstarter Thread Starter   #5
DriverHeaven Lover
 
Join Date: May 2003
Location: Vienna, Austria
Posts: 146
Rep Power: 0
JohnMcClane is on a distinguished road

No, In fact I'm pretty new to kx and digital sound processing. I have however a long-term programming experience and now I'm trying to write a few good plugIns for kx.

If you wanna take a look to some other proggs I've written:

Alarm: http://members.inode.at/m.lodin/other/Alarm10b.exe it's a fully skinable clock with alarm function. just try it, it's pretty cool

HTML³D: http://members.inode.at/m.lodin/other/HTML³D.exe I wrote this HTML Editor in a time when I was the webadmin of a tactical ops clan - It made programming a lot easier for me, but I didn't work on it anymore, since I left the clan

imgFX: http://members.inode.at/m.lodin/other/imgfx - 0.7.exe was just experimenting with Images (needs .jpg) - should be some test for an image editor I never wrote

Snake.net: http://members.inode.at/m.lodin/other/snake - needs .net!!!!.rar That's a snake game I wrote for WIN2K/XP .net, it has a built in level editor - however I had more fun with programming, than playing it

I also made a simple disk hockey game (OpenGL), which I lost due to a disk fragmentation. The last six months I was developing a component package for delphi 7 - you can try it there (might have a few bugs) http://members.inode.at/m.lodin/othe...icControls.pas

I stopped it, cause I own now Delphi8.Net and Visual Studio 2003.Net and the package doesn't work there anymore. And well, looks like my new hobbie will become kx

PS: Sorry for going sooo OFFTopic

Last edited by JohnMcClane; Dec 15, 2004 at 03:43 PM.
JohnMcClane is offline   Reply With Quote
Old Dec 15, 2004, 05:09 PM   #6
kX Project Lead Programmer and Coordinator
 
Join Date: Dec 2002
Posts: 3,119
Rep Power: 75
Eugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud of

the problem is not with 'presets', actually
of course, everyone can get EAX2 SDK (or even sign an NDA and get EAX3/EAX4 SDKs), but you won't get the source code for reverb engine.

that is, it is possible to get the 'parameters' used in, say, 'Cavern' preset, but you will need to write a complete reverb engine (with reverb effect) in order to convert them into particular Reverb settings.

since the present reverb implementations bundled with kX are not truely EAX-capable, and since I don't have enough time / intention / knowledge to design a brand-new reverb algorithm, the EAX cannot be supported.

E.
Eugene Gavrilov is offline   Reply With Quote
Old Dec 15, 2004, 06:04 PM Threadstarter Thread Starter   #7
DriverHeaven Lover
 
Join Date: May 2003
Location: Vienna, Austria
Posts: 146
Rep Power: 0
JohnMcClane is on a distinguished road

Sorry, i think I misunderstood that first . Thx for clearing things up.
JohnMcClane is offline   Reply With Quote
Old Dec 15, 2004, 07:22 PM   #8
DriverHeaven Junior Member
 
Join Date: Sep 2004
Posts: 40
Rep Power: 0
pzad is on a distinguished road

For EAX 3, EAX 4, .. you need to sign NDA.
pzad is offline   Reply With Quote
Old Dec 15, 2004, 07:29 PM   #9
HardwareHeaven Lover
 
Join Date: Mar 2003
Posts: 127
Rep Power: 0
JoshuaChang is on a distinguished road

hi Eugene, i think the eax's advantage is the change of env in different game scenes, the implement of the eax in kx could be like this:
use the exist reverb engine and write some code to read the eax instruction in game(is it possible???),then change the env sound by switch the different preset in reverb engine, between the switch, just some fade needed

that's all, no extra new engine needed
__________________
JoshuaChang is offline   Reply With Quote
Old Dec 15, 2004, 08:05 PM   #10
kX user
 
Join Date: Apr 2004
Posts: 851
Rep Power: 0
Tiger M is on a distinguished road

Quote:
Originally Posted by Eugene Gavrilov
the problem is not with 'presets', actually
of course, everyone can get EAX2 SDK (or even sign an NDA and get EAX3/EAX4 SDKs), but you won't get the source code for reverb engine.

that is, it is possible to get the 'parameters' used in, say, 'Cavern' preset, but you will need to write a complete reverb engine (with reverb effect) in order to convert them into particular Reverb settings.

since the present reverb implementations bundled with kX are not truely EAX-capable, and since I don't have enough time / intention / knowledge to design a brand-new reverb algorithm, the EAX cannot be supported.

E.
Eugene, do you mean that the dsp implementation is not correct or the actual parameters to control the reverb are not known?

Since the dsp part is extracted from the original creative dlls, I guess you mean the latter.

I recently made a small investigation of my own to discover the parameters of EAX3 reverb (since its topology is most familiar to me) and I found the basic parameters. But I guess to truly achieve EAX there must be a whole bunch of other parameters, which control several or more physical registers.

Would it be illegal to make a dialog with a few controls for these reverbs?
Or to alter the dsp part for other uses (beside EAX)?

I don't believe that these reverbs are much better than the ReverbStation actually (keeping in mind their different FDN structure) , the only improvement they seem to have (although I'm not shure) is modulation of some of the delay lenghts, which in theory would increase density and they are optimized (what I will make with ReverbSt. for its next release).
__________________
Miss you, Steve...

Last edited by Tiger M; Dec 15, 2004 at 08:14 PM.
Tiger M is offline   Reply With Quote
Old Dec 15, 2004, 11:03 PM   #11
kX Project Lead Programmer and Coordinator
 
Join Date: Dec 2002
Posts: 3,119
Rep Power: 75
Eugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud of

>> do you mean that the dsp implementation is not correct or the actual
>> parameters to control the reverb are not known?

I mean that 'binary-only' reverbs (CLReverbXXX) cannot be used since we don't know how to change all the parameters, while the newer reverbs, such as ReverbStation, would require translation layer for changing EAX parameters into ReverbStation parameters (and none of the reverb authors has ever tried to write one).

>> Would it be illegal to make a dialog with a few controls for these reverbs?

if you don't use Creative Labs code for that, then, probably, that should be o.k. btw, have a look at the EAX4 reverb with presets

we have a special tool for 'retrieving' DSP effects from the DSP (which works under any driver, CL or kX). it also tries to update the parameters in the .da code.

also, our present plug-in architecture assumes the effects are executed in user-level mode, while EAX will need to access them in kernel-level mode. thus, if any such reverb is released, it should be available in source code in order to be ported to kernel-level (for instance, source code for Max's kXU library is not available).

if you wish to participate in EAX development, let me know. you will probably need to sign an NDA with Creative Labs in order to access EAX3/4 SDK.

E.
Eugene Gavrilov is offline   Reply With Quote
Old Dec 16, 2004, 02:28 PM   #12
kX user
 
Join Date: Apr 2004
Posts: 851
Rep Power: 0
Tiger M is on a distinguished road

Quote:
we have a special tool for 'retrieving' DSP effects from the DSP (which works under any driver, CL or kX). it also tries to update the parameters in the .da code.
you mean from the creative effects DLLs (which I know has been implemented as a kX console function) or something else?

Quote:
if you wish to participate in EAX development, let me know. you will probably need to sign an NDA with Creative Labs in order to access EAX3/4 SDK.
I'm not interested in EAX, rather in using these nice optimized reverbs for musical purposes
__________________
Miss you, Steve...
Tiger M is offline   Reply With Quote
Old Dec 16, 2004, 11:33 PM   #13
kX Project Lead Programmer and Coordinator
 
Join Date: Dec 2002
Posts: 3,119
Rep Power: 75
Eugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud of

>> which I know has been implemented as a kX console function

there's a different tool that extracts the effects directly from the DSP
[with all DSP register values]
the dump can be then used for 'restoring' the effect into .DA form using DSP dump file and Creative labs .DLL

>> I'm not interested in EAX, rather in using these nice optimized reverbs for musical purposes

practically all reverb authors have the same opinion. that's why there's no eax still

E.
Eugene Gavrilov is offline   Reply With Quote
Old May 16, 2005, 12:16 PM   #14
DriverHeaven Newbie
 
Join Date: May 2005
Posts: 1
Rep Power: 0
Verbo is on a distinguished road

Somebody know, where i can download the Eax4 SDK, but not include the Creative's web-site!?
Verbo is offline   Reply With Quote
Old May 16, 2005, 03:39 PM   #15
DriverHeaven Junior Member
 
Join Date: Sep 2004
Posts: 40
Rep Power: 0
pzad is on a distinguished road

AFAIK you need sign NDA to get EAX3 SDK ok EAX4 SDK. Only way is through creative web-site.
pzad is offline   Reply With Quote
Old May 18, 2005, 11:37 AM   #16
kX Project Lead Programmer and Coordinator
 
Join Date: Dec 2002
Posts: 3,119
Rep Power: 75
Eugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud of

the SDK itself doesn't contain enough information in order to re-implement EAX1,2,3,4
Eugene Gavrilov is offline   Reply With Quote
Reply

Thread Tools