public static DiscreteSignal GetAdsrEnvelope(AdsrParameters adsrParameters, int sampleCount) { DiscreteSignal signal = new AdsrBuilder( adsrParameters.AttackDuration, adsrParameters.DecayDuration, adsrParameters.GetSustainDurationSeconds(Conversions.ConvertSamplesToSeconds(sampleCount)), adsrParameters.ReleaseDuration ) .SetParameter("attackAmp", adsrParameters.AttackAmplitude) .OfLength(sampleCount) .SampledAt(Constants.SAMPLE_RATE) .Build(); return(signal); }
public DefaultAdsrEnvelopeProvider(AdsrParameters melodicAdsrParameters = null) { MelodicAdsrParameters = melodicAdsrParameters ?? AdsrParameters.Short; }