// static EffectManifest EchoEffect::getManifest() { EffectManifest manifest; manifest.setId(getId()); manifest.setName(QObject::tr("Echo")); manifest.setAuthor("The Mixxx Team"); manifest.setVersion("1.0"); manifest.setDescription(QObject::tr("Simple Echo. Applies " "feedback and runs a simple low-pass filter to reduce high " "frequencies")); EffectManifestParameter* time = manifest.addParameter(); time->setId("delay_time"); time->setName(QObject::tr("Delay")); time->setDescription(QObject::tr("Delay time (seconds)")); time->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); time->setValueHint(EffectManifestParameter::VALUE_FLOAT); time->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); time->setUnitsHint(EffectManifestParameter::UNITS_TIME); time->setLinkHint(EffectManifestParameter::LINK_LINKED); time->setMinimum(0.1); time->setDefault(0.25); time->setMaximum(2.0); time = manifest.addParameter(); time->setId("feedback_amount"); time->setName(QObject::tr("Feedback")); time->setDescription( QObject::tr("Amount the echo fades each time it loops")); time->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); time->setValueHint(EffectManifestParameter::VALUE_FLOAT); time->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); time->setUnitsHint(EffectManifestParameter::UNITS_UNKNOWN); time->setMinimum(0.00); time->setDefault(0.40); // Allow > 1.0 feedback for DANGEROUS TESTING-ONLY feedback! time->setMaximum(1.1); time = manifest.addParameter(); time->setId("pingpong_amount"); time->setName(QObject::tr("PingPong")); time->setDescription( QObject::tr("As the ping-pong amount increases, increasing amounts " "of the echoed signal is bounced between the left and " "right speakers.")); time->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); time->setValueHint(EffectManifestParameter::VALUE_FLOAT); time->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); time->setUnitsHint(EffectManifestParameter::UNITS_UNKNOWN); time->setMinimum(0.0); time->setDefault(0.0); time->setMaximum(1.0); return manifest; }
// static EffectManifest BitCrusherEffect::getManifest() { EffectManifest manifest; manifest.setId(getId()); manifest.setName(QObject::tr("BitCrusher")); manifest.setAuthor("The Mixxx Team"); manifest.setVersion("1.0"); manifest.setDescription("TODO"); EffectManifestParameter* depth = manifest.addParameter(); depth->setId("bit_depth"); depth->setName(QObject::tr("Bit Depth")); depth->setDescription("TODO"); depth->setControlHint(EffectManifestParameter::CONTROL_KNOB_LOGARITHMIC); depth->setValueHint(EffectManifestParameter::VALUE_FLOAT); depth->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); depth->setUnitsHint(EffectManifestParameter::UNITS_UNKNOWN); depth->setLinkHint(EffectManifestParameter::LINK_INVERSE); depth->setDefault(16); // for values -1 0 +1 // we do not allow a 1 bit version because this causes a distortion because of the missing sign bit depth->setMinimum(2); depth->setMaximum(16); EffectManifestParameter* frequency = manifest.addParameter(); frequency->setId("downsample"); frequency->setName(QObject::tr("Downsampling")); frequency->setDescription("TODO"); frequency->setControlHint(EffectManifestParameter::CONTROL_KNOB_LOGARITHMIC); frequency->setValueHint(EffectManifestParameter::VALUE_FLOAT); frequency->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); frequency->setUnitsHint(EffectManifestParameter::UNITS_SAMPLERATE); frequency->setLinkHint(EffectManifestParameter::LINK_INVERSE); frequency->setDefault(1.0); frequency->setMinimum(0.02); frequency->setMaximum(1.0); return manifest; }
// static EffectManifest FilterEffect::getManifest() { EffectManifest manifest; manifest.setId(getId()); manifest.setName(QObject::tr("Filter")); manifest.setAuthor("The Mixxx Team"); manifest.setVersion("1.0"); manifest.setDescription("TODO"); EffectManifestParameter* depth = manifest.addParameter(); depth->setId("depth"); depth->setName(QObject::tr("Depth")); depth->setDescription("TODO"); depth->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); depth->setValueHint(EffectManifestParameter::VALUE_FLOAT); depth->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); depth->setUnitsHint(EffectManifestParameter::UNITS_UNKNOWN); depth->setLinkHint(EffectManifestParameter::LINK_LINKED); depth->setDefault(0.0); depth->setMinimum(-1.0); depth->setMaximum(1.0); EffectManifestParameter* bandpass_width = manifest.addParameter(); bandpass_width->setId("bandpass_width"); bandpass_width->setName(QObject::tr("Bandpass Width")); bandpass_width->setDescription("TODO"); bandpass_width->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); bandpass_width->setValueHint(EffectManifestParameter::VALUE_FLOAT); bandpass_width->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); bandpass_width->setUnitsHint(EffectManifestParameter::UNITS_SAMPLERATE); bandpass_width->setDefault(0.01); bandpass_width->setMinimum(0.001); bandpass_width->setMaximum(0.01); EffectManifestParameter* bandpass_gain = manifest.addParameter(); bandpass_gain->setId("bandpass_gain"); bandpass_gain->setName(QObject::tr("Bandpass Gain")); bandpass_gain->setDescription("TODO"); bandpass_gain->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); bandpass_gain->setValueHint(EffectManifestParameter::VALUE_FLOAT); bandpass_gain->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); bandpass_gain->setUnitsHint(EffectManifestParameter::UNITS_SAMPLERATE); bandpass_gain->setDefault(0.3); bandpass_gain->setMinimum(0.0); bandpass_gain->setMaximum(1.0); return manifest; }
// static EffectManifest EchoEffect::getManifest() { EffectManifest manifest; manifest.setId(getId()); manifest.setName(QObject::tr("Echo")); manifest.setAuthor("The Mixxx Team"); manifest.setVersion("1.0"); manifest.setDescription(QObject::tr("Simple Echo with pingpong")); EffectManifestParameter* time = manifest.addParameter(); time->setId("send_amount"); time->setName(QObject::tr("Send")); time->setDescription( QObject::tr("How much of the signal to send into the delay buffer")); time->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); time->setValueHint(EffectManifestParameter::VALUE_FLOAT); time->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); time->setUnitsHint(EffectManifestParameter::UNITS_UNKNOWN); time->setMinimum(0.0); time->setDefault(1.0); time->setMaximum(1.0); time = manifest.addParameter(); time->setId("delay_time"); time->setName(QObject::tr("Delay")); time->setDescription(QObject::tr("Delay time (seconds)")); time->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); time->setValueHint(EffectManifestParameter::VALUE_FLOAT); time->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); time->setUnitsHint(EffectManifestParameter::UNITS_TIME); time->setLinkHint(EffectManifestParameter::LINK_LINKED); time->setMinimum(0.1); time->setDefault(0.25); time->setMaximum(2.0); time = manifest.addParameter(); time->setId("feedback_amount"); time->setName(QObject::tr("Feedback")); time->setDescription( QObject::tr("Amount the echo fades each time it loops")); time->setControlHint(EffectManifestParameter::CONTROL_KNOB_LOGARITHMIC); time->setValueHint(EffectManifestParameter::VALUE_FLOAT); time->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); time->setUnitsHint(EffectManifestParameter::UNITS_UNKNOWN); time->setMinimum(0.00); time->setDefault(0.40); time->setMaximum(1.0); time = manifest.addParameter(); time->setId("pingpong_amount"); time->setName(QObject::tr("PingPong")); time->setDescription( QObject::tr("As the ping-pong amount increases, increasing amounts " "of the echoed signal is bounced between the left and " "right speakers.")); time->setControlHint(EffectManifestParameter::CONTROL_KNOB_LINEAR); time->setValueHint(EffectManifestParameter::VALUE_FLOAT); time->setSemanticHint(EffectManifestParameter::SEMANTIC_UNKNOWN); time->setUnitsHint(EffectManifestParameter::UNITS_UNKNOWN); time->setMinimum(0.0); time->setDefault(0.0); time->setMaximum(1.0); return manifest; }