AcrusherEffect class final

Configuration for the acrusher audio effect.

Reduce audio bit resolution.

This filter is bit crusher with enhanced functionality. A bit crusher is used to audibly reduce number of bits an audio signal is sampled with. This doesn't change the bit depth at all, it just produces the effect. Material reduced in bit depth sounds more harsh and "digital". This filter is able to even round to continuous values instead of discrete bit depths. Additionally it has a D/C offset which results in different crushing of the lower and the upper half of the signal. An Anti-Aliasing setting is able to produce "softer" crushing sounds.

Another feature of this filter is the logarithmic mode. This setting switches from linear distances between bits to logarithmic ones. The result is a much more "natural" sounding crusher which doesn't gate low signals for example. The human ear has a logarithmic perception, so this kind of crushing is much more pleasant. Logarithmic crushing is also able to get anti-aliased.

The filter accepts the following options:

Parameters:

  • aa: Set anti-aliasing. (range 0..1, default .5, runtime-tunable)
  • bits: Set bit reduction. (range 1..64, default 8, runtime-tunable)
  • dc: Set DC. (range .25..4, default 1, runtime-tunable)
  • levelIn: Set level in. (range 0.015625..64, default 1, runtime-tunable)
  • levelOut: Set level out. (range 0.015625..64, default 1, runtime-tunable)
  • lfo: Enable LFO. By default disabled. (range 0..1, default 0, runtime-tunable)
  • lforange: Set LFO range. (range 1..250, default 20, runtime-tunable)
  • lforate: Set LFO rate. (range .01..200, default .3, runtime-tunable)
  • mix: Set mixing amount. (range 0..1, default .5, runtime-tunable)
  • mode: Can be linear: lin or logarithmic: log. (range 0..1, default 0, runtime-tunable)
  • samples: Set sample reduction. (range 1..250, default 1, runtime-tunable)
Inheritance

Constructors

AcrusherEffect({bool enabled = true, double aa = .5, double bits = 8.0, double dc = 1.0, double levelIn = 1.0, double levelOut = 1.0, bool lfo = false, double lforange = 20.0, double lforate = .3, double mix = .5, AcrusherMode mode = AcrusherMode.lin, double samples = 1.0})
Creates an AcrusherEffect with the given parameter values.
const

Properties

aa → double
set anti-aliasing
final
bits → double
set bit reduction
final
dc → double
set DC
final
enabled → bool
Whether this effect is applied. false keeps it in the list, with its settings, without inserting it in the chain.
final
filter → AudioFilter
The filter this stage runs, as a typed identifier (null for a RawAudioEffect).
no setteroverride
filterName → String
The lavfi filter this stage runs, e.g. equalizer.
no setteroverride
hashCode → int
The hash code for this object.
no setteroverride
levelIn → double
set level in
final
levelOut → double
set level out
final
lfo → bool
enable LFO
final
lforange → double
set LFO depth
final
lforate → double
set LFO rate
final
mix → double
set mix
final
mode → AcrusherMode
set mode
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
samples → double
set sample reduction
final

Methods

copyWith({bool? enabled, double? aa, double? bits, double? dc, double? levelIn, double? levelOut, bool? lfo, double? lforange, double? lforate, double? mix, AcrusherMode? mode, double? samples}) → AcrusherEffect
Returns a copy of this AcrusherEffect with the given fields replaced.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toFilterString() → String
Returns the audio chain entry for this effect. Only non-default parameters are emitted.
override
toString() → String
A string representation of this object.
override

Operators

operator ==(Object other) → bool
The equality operator.
override

Constants

aaDefault → const double
Default value for aa.
aaMax → const double
Maximum value for aa.
aaMin → const double
Minimum value for aa.
bitsDefault → const double
Default value for bits.
bitsMax → const double
Maximum value for bits.
bitsMin → const double
Minimum value for bits.
dcDefault → const double
Default value for dc.
dcMax → const double
Maximum value for dc.
dcMin → const double
Minimum value for dc.
levelInDefault → const double
Default value for levelIn.
levelInMax → const double
Maximum value for levelIn.
levelInMin → const double
Minimum value for levelIn.
levelOutDefault → const double
Default value for levelOut.
levelOutMax → const double
Maximum value for levelOut.
levelOutMin → const double
Minimum value for levelOut.
lforangeDefault → const double
Default value for lforange.
lforangeMax → const double
Maximum value for lforange.
lforangeMin → const double
Minimum value for lforange.
lforateDefault → const double
Default value for lforate.
lforateMax → const double
Maximum value for lforate.
lforateMin → const double
Minimum value for lforate.
mixDefault → const double
Default value for mix.
mixMax → const double
Maximum value for mix.
mixMin → const double
Minimum value for mix.
samplesDefault → const double
Default value for samples.
samplesMax → const double
Maximum value for samples.
samplesMin → const double
Minimum value for samples.