Currently kXd is distributed with zoneskin3
kXd is PervTalk device which allows setting of register values in kX drivers DSP plugins. kX driver is freeware driver for Creative Labs' Live and Audigy soundcard suite. U can download newest release of kX driver from driverheaven.net forum. kXd also allows u perform "fades" on those registers, changing their values over time.
kX drivers and kXd open many new possibilities for XLobbyist armed with those particular cards. Most know of these must be controlling volume levels of different zones. However this tutorial present use of kXd for other purpose: mixing 5.1 channel analog audio, where first source is HTPC and the other source is external equibment. This can be accomplished with Live Drive and audigy cards equibbed with corresponding unit.
this is what we set to accomplish:
but before we can start to go trough skin... we need to install PervHub, and xPerT if u havent done that yet. Check out the thread dedicated to PervTalk to accomplish this.
Next copy kXd to your PervWare folder. U need to also setup file called xxx.ini to your PervWare folder, where xxx is name choosed by u, "default.ini" is the default. Before going details of this file, u better take a look to your DSP though... mine looks like this:
See those 3 stereo mixers on right hand side... registers inside those are the ones we plan to control. Take a note how every plugin has number in brackets, that is important when we fill our .ini file. This is not a tutorial how to build your own DSP so we rush on... Now its time to familiarize your self with kxctrl.exe commandline application which comes included with your kX driver bundle, that is father of kXd. look its help and find away to list information about DSP plugins, and there u will notice other piece of crucial information, address of registers (or sliders on plugins) in our stereo mixers case, these are 0x8002 and 0x8003. armed with this information we set to make our .ini file.
Theres two kind of beasts in .ini file aliases and fades. Aliases are human rememberable names for registers, and fades are collection of registers and their target positions:
Alias:DC:ID:RA
where Alias is name u wanna call this register, DC is dont care integer value reserved for later use, ID is number we saw in brackets on DSP plugins, and RA is the register adress we inspected with help of kxctrl. So .ini file should contain one of these lines per each sliders u intend to control.
Fade{
Alias1:target1
Alias2:target2
.
.
.
Aliasn:targetn
}
Also your .ini file can contain of any number of fades, these are like snapshots of DSP at some moment, containing any number of registers and their target positions, when fade is initialized, registers start to approaching their target positions. Above Fade is name u choose to address it, AliasX is certain register defined by u as alias (just use the name u gave) and target is integer in range [0-1000], that is to make giving value for register intuitive.
Im too sleepy now... have to continue from this after few hours of sleep... i also send software out for alpha testers after finishing these instructions...