User Tools

Site Tools


extending_the_effects_engine_report_w3

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
extending_the_effects_engine_report_w3 [2014/06/08 19:18]
badescunicu
extending_the_effects_engine_report_w3 [2014/06/08 19:21] (current)
badescunicu
Line 34: Line 34:
 Another pull request[[https://​github.com/​mixxxdj/​mixxx/​pull/​268|[3]]] I have opened this week is about porting the static Equalizer as a separate effect. This EQ is useful for computers with poor hardware since it is not so CPU demanding. Therefore, LightweightEQ seemed a good name for such an Equalizer. While I was working at this effect, Daniel pointed out that I can use //fidlib// for computing the coefficients needed for this EQ. This is something I hope to do in the following week. Another pull request[[https://​github.com/​mixxxdj/​mixxx/​pull/​268|[3]]] I have opened this week is about porting the static Equalizer as a separate effect. This EQ is useful for computers with poor hardware since it is not so CPU demanding. Therefore, LightweightEQ seemed a good name for such an Equalizer. While I was working at this effect, Daniel pointed out that I can use //fidlib// for computing the coefficients needed for this EQ. This is something I hope to do in the following week.
  
-A topic which is harder than I thought and which has been taking me quite some time is implementing switch type parameters for the effects framework. As a reminder, I need them for EQ's kill buttons. I noticed every effect has an //​EffectParameter//​ list which stores information about each parameter. //​EffectParameterSlot//​ is responsible for instantiating a //​ControlEffectKnob//​ for an //​EffectParameter//​. The problem with //​ControlEffectKnob//​ is that it behaves only as a //​ControlPotmeter//​ and we need it to behave like a //​ControlPushButton//​ too. I tried to create a different list of "​button parameters"​ for each effect and create a new class (//​EffectButtonParameterSlot//​) which instead of //​ControlEffectKnob//​ features a //​ControlPushButton//​. The problem with this approach is that a lot of code is duplicated and currently I haven'​t managed to make it work properly, because the buttons are not updating as they should. I suspect it is a problem with the "​request-response"​ update mechanism. I hope that by the end of the next week, with the community'​s help, I'll come to a resolution regarding this topic.+**A topic which is harder than I thought** and which has been taking me quite some time is implementing switch type parameters for the effects framework. As a reminder, I need them for EQ's kill buttons. I noticed every effect has an //​EffectParameter//​ list which stores information about each parameter. //​EffectParameterSlot//​ is responsible for instantiating a //​ControlEffectKnob//​ for an //​EffectParameter//​. The problem with //​ControlEffectKnob//​ is that it behaves only as a //​ControlPotmeter//​ and we need it to behave like a //​ControlPushButton//​ too. I tried to create a different list of "​button parameters"​ for each effect and create a new class (//​EffectButtonParameterSlot//​) which instead of //​ControlEffectKnob//​ features a //​ControlPushButton//​. The problem with this approach is that a lot of code is duplicated and currently I haven'​t managed to make it work properly, because the buttons are not updating as they should. I suspect it is a problem with the "​request-response"​ update mechanism. I hope that by the end of the next week, with the community'​s help, I'll come to a resolution regarding this topic.
  
 Here is the basic flow when creating an effect parameter slot: Here is the basic flow when creating an effect parameter slot:
extending_the_effects_engine_report_w3.txt ยท Last modified: 2014/06/08 19:21 by badescunicu