Class AccentProcessorConfig

java.lang.Object
org.jjazz.rhythmmusicgeneration.api.AccentProcessorConfig

public class AccentProcessorConfig extends Object
Configuration holder for AccentProcessor tunable parameters.

  • Field Details

    • holdShotPostSilenceMultiplierSlow

      public float holdShotPostSilenceMultiplierSlow
      Multipliers applied to the post-silence nbCells calculation for HOLD/SHOT on drums, when tempo is in TempoRange.SLOW.
    • holdShotPostSilenceMultiplierMediumSlow

      public float holdShotPostSilenceMultiplierMediumSlow
      Same as above for TempoRange.MEDIUM_SLOW.
    • holdShotPostSilenceMultiplierMedium

      public float holdShotPostSilenceMultiplierMedium
      Same as above for TempoRange.MEDIUM.
    • holdShotPostSilenceMultiplierMediumFast

      public float holdShotPostSilenceMultiplierMediumFast
      Same as above for TempoRange.MEDIUM_FAST.
    • holdShotPostSilenceMultiplierFast

      public float holdShotPostSilenceMultiplierFast
      Same as above for TempoRange.FAST.
    • shotDurationMultiplierSlow

      public float shotDurationMultiplierSlow
      Multipliers applied to the base shot note duration depending on tempo. Values correspond to SLOW, MEDIUM_SLOW, MEDIUM, MEDIUM_FAST, FAST respectively.
    • shotDurationMultiplierMediumSlow

      public float shotDurationMultiplierMediumSlow
    • shotDurationMultiplierMedium

      public float shotDurationMultiplierMedium
    • shotDurationMultiplierMediumFast

      public float shotDurationMultiplierMediumFast
    • shotDurationMultiplierFast

      public float shotDurationMultiplierFast
    • accentMinToShotRatio

      public float accentMinToShotRatio
      Ratio used to compute the minimum accent duration from the shot duration: accentMinDuration = shotDuration * accentMinToShotRatio.
    • noteWindowSize

      public int noteWindowSize
      Number of surrounding notes to use when computing velocities / pitches for new/inserted notes (was NOTE_WINDOW_SIZE = 10).
    • crashVelocityWindowSize

      public int crashVelocityWindowSize
      Number of surrounding notes used when estimating crash cymbal velocity (was NOTE_WINDOW_SIZE = 5 inside addCrashCymbal).
    • defaultNoteVelocity

      public int defaultNoteVelocity
      Default baseline velocity used when not enough context for new regular notes (was 60).
    • defaultDrumAccentVelocity

      public int defaultDrumAccentVelocity
      Default baseline velocity used for new drum accent notes when not enough context (was 55).
    • defaultCrashVelocity

      public int defaultCrashVelocity
      Default baseline velocity used when inserting crash cymbals (was 60).
    • drumsAccentMediumOffset

      public int drumsAccentMediumOffset
      Offset added to existing drum accent velocity for a medium accent (was 12).
    • drumsAccentStrongOffset

      public int drumsAccentStrongOffset
      Offset added to existing drum accent velocity for a strong accent (was 25).
    • drumsAccentExtraDownBeat

      public int drumsAccentExtraDownBeat
      Extra velocity offset for accents on downbeats / half-bar beats (was 5).
    • accentVelocityOffsetMedium

      public int accentVelocityOffsetMedium
      Offset added to computed reference velocity for medium-level accent insertions (was 14).
    • accentVelocityOffsetStrong

      public int accentVelocityOffsetStrong
      Offset added to computed reference velocity for stronger accent insertions (was 30).
    • minVelocity

      public int minVelocity
      Minimum allowed velocity (clamp) (was 10).
    • maxVelocity

      public int maxVelocity
      Maximum allowed velocity (clamp) (was 120).
    • crashThresholdMin

      public double crashThresholdMin
      Minimum probability threshold for crash insertion (was 0.2).
    • crashThresholdNormal

      public double crashThresholdNormal
      Normal/default probability threshold for crash insertion (was 0.6).
    • crashThresholdMax

      public double crashThresholdMax
      Maximum probability threshold for crash insertion (was 0.8).
    • slidingWindowCrashCountNormal

      public int slidingWindowCrashCountNormal
      Expected number of crashes in the sliding window. Used to adapt probability when there are more/less crashes than normal (was 1).
    • slidingWindowBeatSize

      public int slidingWindowBeatSize
      Sliding window size in beats used to compute how many previous crashes to consider (was 4 beats). The actual sliding window in cells = slidingWindowBeatSize * nbCellsPerBeat.
    • drumsAccentThresholdVelocity

      public int drumsAccentThresholdVelocity
      Velocity threshold to consider an existing drum hit as an accent when building the initial grid of accents (was 40).
  • Constructor Details

    • AccentProcessorConfig

      public AccentProcessorConfig()