• Home
  • Reviews
  • Articles
  • News
  • Tools
  • GamingHeaven
  • Forums
  • Network
 

Go Back   DriverHeaven.net > Forums > Hardware and Related Topics > kX Project Audio Driver Support Forum > Effects and the DSP

Notices

Reply
 
LinkBack Thread Tools
Old Sep 16, 2005, 04:22 PM   #1
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

Guitar AMP tone controls plugin?

I think a plugin to emulate the tone controls (BASS/MID/TREBLE) on a guitar amplier would be a good thing. In general, guitar pickups produce a muddy mid-range tone, and the tone controls on guitar amps are designed to compensate for this.

i.e.
Setting the tone controls on the amp similair to the following (where 10 is the max):
BASS: 0, MID: 10, TREBLE: 0
...generally allows you to hear what the pickups actually sound like.
i.e. the MID's are never boosted, and are often reduced (i.e. at 10, MID's are unfiltered, anything lower than 10 reduces the MID range) whereas the BASS and TREBLE work the other way around.

With some kX users (who play guitar) using kX instead of an amplifier, I thought it might be good to have a simple plugin to do this. Granted, this can be done using a 10 Band EQ, or a combination of other EQ type plugins, but I am thinking that a simple plugin, designed specifically for this, would be good as well (i.e. hopefully will use less resources, and would work just like the knobs on an amp, so it is simple to use as well). i.e. Just 3 sliders or knobs, similair to the timbre plugin, but with the MID frequencies.

I could probably throw something together myself, but I think someone who is better with the digital filter theory side of things could probably do a better job designing the filters (and could probably throw something together a lot faster/better/easier than I could), etc.

BTW: Here is an article with some info that explains what the tone controls on guitar ampliers do, along with a basic circuit diagram of a typical tone control circuit, and some frequency response plots that show the range and effect of the controls:
http://users.chariot.net.au/~gmarts/ampbasic.htm

In any case, I just thought I would throw this idea out there for any other plugin programmers, that might be interested in creating such a plugin.
Russ is offline   Reply With Quote
Old Sep 16, 2005, 04:53 PM   #2
DriverHeaven Junior Member
 
Join Date: Nov 2003
Posts: 92
ReWired is on a distinguished road

hm, hm...
probably Tiger M could be interested in integrating such controls in his TubeDrive....
ReWired is offline   Reply With Quote
Old Sep 16, 2005, 04:56 PM   #3
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

Russ why don't you throw something together and try it out..then keep adjusting it until it fits your idea. I would suggest something like -12 to +12 For Bass, Mid, treble. If you want to throm something together I will help you test it if you like. I play guitar all the time through KX...Let me know if I can help..ok
ROBSCIX is offline   Reply With Quote
Old Sep 16, 2005, 04:59 PM   #4
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

That's good info, Maybe I will try this for my first project, I have been wanting to start with filters anyway...maybe we can compare notes..thats a great site though, I will have to read through, thanks for the link Russ.
ROBSCIX is offline   Reply With Quote
Old Sep 16, 2005, 04:59 PM   #5
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

Well the TubeDrive allready has a couple of filters in it. I was thinking that a standalone plugin would be better, as you can put it wherever you need to within the effects chain, so that it could be used in conjuction with plugins like the TubeDrive and others, etc.
Russ is offline   Reply With Quote
Old Sep 16, 2005, 05:49 PM   #6
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

I don't use Tube Drive myself, I spoke of such a filter to you before. a plugin that would help with wave shaping well not exactly the same but along those lines. I understand what your talking about though..what range do you think? I think to use with a guitar you might want about -12 to +12? for all three ranges, that way a person can do mid scooping if they want. Couldn't such a filter be written in dane? I would like to try out whatever you come up with, I am reading the Dane guide, so maybe a revision to the basic timbre plugin, that info you pointed to show the frequncy response of fender and marshall amps, so maybe a checkbox to switch between different ranges?
ROBSCIX is offline   Reply With Quote
Old Sep 16, 2005, 05:52 PM   #7
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

or possibly a parametric on each range for Bass, Treble, High, so the user can select which frequncy ranges they want to boost or cut, something simlar to a Metal Zone, But on the Bass and Treble as well..that sound very useful from a guitar or musical point of view. Just some ideas.
ROBSCIX is offline   Reply With Quote
Old Sep 16, 2005, 06:56 PM   #8
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

I was thinking of (at least for starting purposes), just something very simple. i.e. A setup identical to the knobs on an amp (0 to 10 or whatever). Many guitar players are not sound engineers, and may not know what some of the parameters presented in the various filters actually do. Additionally, they may not know (or even care to know) how the tone controls on an amp work. Lets say that someone sets thier AMP controls like the following:
BASS: 5, MID: 5, TREBLE: 8
If they use those same settings on a typical EQ, it is not going to sound the same (because the MID is actually -5), and then they wonder why it sounds so muddy (and they probably will think it is the distortion or some other plugin causing it). I was thinking it would be better to have the controls work identical to that of an amp, so people do not have to think about such things, and can just use the settings similair to the one's they would use on an amp itself. If they would like addtional control of those paramters, then there is always the 10 Band EQ, and other EQ filters, etc. Maybe, a seperate plugin could be created if you want a little more control (i.e. -12 to 12 or some dB scale), but do not necessarily need a 10 Band EQ, etc (i.e. a 3 band paramteric EQ or something), but for starters, I think the simple one would be good.

As for the different ranges (Fender -vs- Marshall), I think that would be a good option.

As far as Dane goes:
C++ would be easier for calculating some of the filter coeficients based on the slider/knob settings and Dane controls are limited to the range of 0 to 1, so you would need to use C++ to be able to use different ranges, etc.
Russ is offline   Reply With Quote
Old Sep 16, 2005, 07:15 PM   #9
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

well arent the default timbre controls written in dane? or is it C++ again. I understand what you mean. I personally never heard that info you presented but I guess it makes sense. I just always liked amps that gave tone controls that went into the negative's similar to the Peavey's..I will look at the circuits later Russ maybe I can figure out the points of the tone controls, like the Bass affects 50-150hz..etc, then maybe that way me can produce a tone control that would be similar to a tone control from a fender amp or a Marshall, Alot of guys like that sound when you drop the mids down to like -12 provides the famous scoop..but I see your point though, about simplicity. Hey, I think you can never have too many filters..especially when we are putting them inline with other DSP effects like a distortion or a Overdriver..BTW isn't the stock timbre effect written in Dane?
ROBSCIX is offline   Reply With Quote
Old Sep 16, 2005, 07:38 PM   #10
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

Timbre uses C++ as well as Dane. Look at timbre.cpp/timbre.h in the kX SDK (in the kxfxlib directory).

As for MID scooping. I think you mis-understood. A setting of "10" has MID unfiltered. Anything lower reduces the MID's (thus a setting of 0 is like a setting of -12 in your above scenario (which BTW: is what I like)).

Another option might be to have a simple mode and an advanced mode so the user can use whatever settings they are more comfortable with.

Last edited by Russ; Sep 16, 2005 at 07:44 PM.
Russ is offline   Reply With Quote
Old Sep 16, 2005, 07:56 PM   #11
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

see Russ, I get stuck again when I want to write an effect!!! I was mentioning it because I used to have a peavey that has a tone control from -12 to 12 when you set Bass: 12, Mid -12, Highs 12..it produced that metal THUD with the scooped mids that everybody is so fond of. That info you read are you sure it isn't for one type of amp tone control design? I can see circuits compensating for it but each company would do it differently and thier tone control would sound different based on how they approach that mid "offset". Doesn't seem like DANE is good for anything..can't even produce a simple filter? without using C++..now you see why I want my questions answered...I think I am just gonna buy VC++..but anyway back on topic. I think what your proposing would be very good for guitarist BUT, maybe if you had some sort of loading scheme where info could be loading into the effect, as to model diiferent types! does that makes sense? A person could load in 3 parameter in text boxes that would provide maybe Q info to the filter..or other info, I hope you know what I mean. I have to tell you my ideas instead of just programming them myself...this is so frusrating.
ROBSCIX is offline   Reply With Quote
Old Sep 16, 2005, 08:17 PM   #12
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

I understand what you mean. All the amps I have owned, used a range starting at 0 (or maybe 1, I do not have one nearby to look at). Of course other amps may do it differently, and that might be something to consider.

As for Dane, I think you are getting ahead of yourself. You should really start out with some very simple basic plugins. Once you start using it, you will understand for yourself what can and cannot be done using Dane. Look at some of the plugins other people have come up with using only Dane (any plugin that you download, that is *.da, is made using only Dane (*.kxl are .dll plugins made with C++ and microcode)).
Russ is offline   Reply With Quote
Old Sep 17, 2005, 06:00 AM   #13
DriverHeaven Senior Member
 
Join Date: Jan 2003
Location: The Netherlands
Posts: 1,778
Lex Nahumury is on a distinguished road

Quote:
Originally Posted by ROBSCIX
see Russ, I get stuck again when I want to write an effect!!!
......Doesn't seem like DANE is good for anything..can't even produce a simple filter? without using C++..now you see why I want my questions answered...
Quote:
Originally Posted by ROBSCIX
well arent the default timbre controls written in dane? or is it C++ again...BTW isn't the stock timbre effect written in Dane?
ROBSCIX, it seems that you still don't understand the nature of things.

With the exeption of 'special' cases, *Every* kX DSP plugin contains a microcode part
which was at some point written in (most likely) DANE.
So DANE, or better,..MICROCODE is the heart of any kX DSP plugin!

Basicly, what the C++ part of a plugin does is;
-- writing parameter changes to it's Microcode DSP Program which runs in emu10kx chip --

So the main purpose of an C++/kxl extension is;
- provide some gui controls like faders and switches,
- calculate effect parameters and write them to Microcode DSP Program.

I told you before; There is actualy very little going on in C++ part of plugin since
the actual DSP process always runs in DSP Microcode.
That is why in general, microcode algorithme is much more important and often far more difficult then it's C++ part.

HTH,
/LeMury
Lex Nahumury is offline   Reply With Quote
Old Sep 17, 2005, 12:42 PM   #14
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

yes, seems I just got confused. OK, what I was getting confused about is how can Dane be used to write any type of effect that needs a wide variance in it's control?..is it accomplised with math? Forgive me I have been going over alot of info the past week, some of it's getting mixed up...thx

Last edited by ROBSCIX; Sep 17, 2005 at 01:28 PM.
ROBSCIX is offline   Reply With Quote
Old Sep 17, 2005, 01:43 PM   #15
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

I think as a starting point, it would be best to just choose one of the circuits from the article, as it contains some good info about those circuits (I would go with the Marshall, but if someone else wants to create the plugin, then they can choose which one to use). If someone else is going to build this plugin, then I do not want to put to many demands on it's design, etc, as that may prevent other people from wanting to do it, etc.
Russ is offline   Reply With Quote
Old Sep 17, 2005, 01:56 PM   #16
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

Quote:
Originally Posted by ROBSCIX
what I was getting confused about is how can Dane be used to write any type of effect that needs a wide variance in it's control?..is it accomplised with math?
You can do quite a bit in Dane. Those percentage sliders can be more useful then you may think (they just may not be as intuitive to use as a more custom GUI, but they work none the less). Granted, some calculations can be done more efficiently in C++, but that does not mean that they cannot be done in Dane/microcode. It may not seem as exciting creating basic plugins, but it really will help you to better understand how to create more complex ones. Start out with basic stuff that doesn't need any controls at all (like a simple x4 plugin), etc. Then think of ways that you can add a control to the plugin to be able to change its parameters on the fly (i.e. convert an x4 to a basic volume control), and move on from there. Look at the stuff radiocolonel.it has been doing, and the metronome code eyagos just posted, as that is all done in Dane.
Russ is offline   Reply With Quote
Old Sep 17, 2005, 02:19 PM   #17
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

I think you are really on to something though. Just start out with the basic design Russ, then you can try it out and see if it performs the way you want. What are you using for frequencies? I hope you don't think I was demanding thigs I was just throwing ideas out there..that's all. I just love any development that has anything to do with guitar..Thx..but as I said I really think your on to something with this idea..
ROBSCIX is offline   Reply With Quote
Old Sep 17, 2005, 02:23 PM   #18
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

Aside from the above, look at the INTERP and SKIP instructions in the guide.
SKIP can be used similair to IF statements in higher level languages, and INTERP can be used to do scaling (or translating one range to another... i.e. 0 to 100% (sliders) to another range).

It may not be immediatley obvious, but those instructions, along with some math, can be used to (among other things) allow you to have more control over the parameters represented by the slider values, etc.
Russ is offline   Reply With Quote
Old Sep 17, 2005, 02:35 PM   #19
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

That is pretty wild info though about the mid's I never heard that before. I have been reading through all the info on that site and the ones it's links to, alot of good information for guitarists. SO have you slowed development of the FXRouter? Just came to mind becuase I am putting together a new default DSP setup for the guitar..Lemury's new ProFx Plugins that he remade like the reverb and chorus are stereo now so they work great with your FxRouter..I thought I would mention it...oh you don't use that version though...
ROBSCIX is offline   Reply With Quote
Old Sep 17, 2005, 02:40 PM   #20
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

Yeah, I think your right I am gonna go back to basics so to speak..I want to be fully versed on DANE..the whole reason I was sterring away from it was because of the info I got..that you couldn't do anything useful, or anything that needed complex control..obviously I was misinformed...I am starting my Dane education today, as you said I will work with basic ones..but is it possible to do filters and such?..I don't want to start another big debat just question...OK, take your idea now is it possible to create the whole thing using Dane only?..Like now I know that you need to know both..
ROBSCIX is offline   Reply With Quote
Old Sep 17, 2005, 02:42 PM   #21
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

Quote:
Originally Posted by ROBSCIX
I hope you don't think I was demanding thigs I was just throwing ideas out there..that's all.
No, I did not think that at all. I just wanted to be clear that I am flexable here.

There is some artistry involved here as well as programming skills and math knowledge when designing plugins i.e. There are lots of filters that can be used, and aside from which filter to use, you need to determine what filter order to use, and you have to consider what can be done efficiently within the DSP, while still maintaining quality, etc. That is why I think someone else might be better suited for this than me. i.e. Someone who has more knowledge on the filter design side of things, but someone who also understands the DSP, and has the experiance of implementing such filters within the DSP, so as to know which filter design would work best for this situation, etc.
Russ is offline   Reply With Quote
Old Sep 17, 2005, 02:53 PM   #22
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

DO you have the EQ cookbook? it explains alot of the Math involved with such things. It's your idea, I think you should be the one to do it. I am doing some research also, when I find th proper Equation I will send them to you..I just think this filter section would be cool if it wasn't fixed...like a user could enter info to change it's sound..that would be the ultimate..add number and it sounds like a marshall tone control, or enter number and it sound like a mesa..what do you think about that?..Like I know what you mean about just doing a basic one to try out but Ithink thats a definate cool idea...
ROBSCIX is offline   Reply With Quote
Old Sep 17, 2005, 02:57 PM   #23
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

As far as creating filters in Dane goes, that is not a simple question to answer. Everything is a filter of one kind or another. It all depends on the complexity of the filter itself. You can do a lot using only Dane, but I do not want to give a mid-leading answer, and any answer I give could be mis-leading as I cannot be certain what you have in mind (and I am still learning things myself). There are also other restrictions to consider that having nothing to do with Dane or C++ (i.e. your are limited on resources, which also affects what filters you can use, etc). Again, this is something you will learn as you go.

As far as the router goes. It is pretty much finished. Currently I am considering some skinning ideas, but unless someone discovers a bug, or thinks of some feature to add to it (that can be added to it without a major re-design), than it is pretty much completed. Aside from that, I have just been really busy latetly with other (life) things.
Russ is offline   Reply With Quote
Old Sep 17, 2005, 03:02 PM   #24
DriverHeaven Extreme Member
 
Join Date: Jan 2005
Posts: 4,104
Russ has a spectacular aura aboutRuss has a spectacular aura aboutRuss has a spectacular aura about

Quote:
Originally Posted by ROBSCIX
DO you have the EQ cookbook? it explains alot of the Math involved with such things. It's your idea, I think you should be the one to do it. I am doing some research also, when I find th proper Equation I will send them to you..I just think this filter section would be cool if it wasn't fixed...like a user could enter info to change it's sound..that would be the ultimate..add number and it sounds like a marshall tone control, or enter number and it sound like a mesa..what do you think about that?..Like I know what you mean about just doing a basic one to try out but Ithink thats a definate cool idea...
No, I do not have the EQ Cookbook.

I agree that a multi-functional plugin like that would be good (and could be the start off an amp modelling plugin), I just think we should start with one design, and at some point (currently we only have the info for those 2 models), as we compile more info, a multi-functional version could be implemented.
Russ is offline   Reply With Quote
Old Sep 17, 2005, 03:10 PM   #25
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

Well basically you just need the equations correct? the you turn them into code for the plugin. I am trying to figure it out as I go...
ROBSCIX is offline   Reply With Quote
Old Sep 17, 2005, 03:27 PM   #26
DriverHeaven Senior Member
 
ROBSCIX's Avatar
 
Join Date: Mar 2004
Posts: 1,713
ROBSCIX is on a distinguished road

Ok I understand what you mean, Ok I guess I will get to work then with Dane..and thats that. I have been looking for designs for filters..I cannot remeber the equations...I will find them though. Let you know what I find..
ROBSCIX is offline   Reply With Quote