private void StopRecordingSampleTrigger() { if (CurrentTrack == null || LastSampleTrigger == null || LastSampleTriggerTrack == null) { return; } var position = AudioStreamHelper.GetPosition(LastSampleTriggerTrack); var positionSeconds = LastSampleTriggerTrack.SamplesToSeconds(position); var length = positionSeconds - LastSampleTrigger.Start; if (length <= 0 || position >= LastSampleTriggerTrack.FadeOutStart) { length = LastSampleTriggerTrack.SamplesToSeconds(LastSampleTriggerTrack.FadeOutStart) - LastSampleTrigger.Start; } LastSampleTrigger.Length = length; }
private void StartRecordingSampleTrigger(Sample sample) { if (CurrentTrack == null) { return; } if (sample == null) { return; } LastSampleTriggerTrack = CurrentTrack; LastSampleTriggerNextTrackDescription = NextTrack == null ? "" : NextTrack.Description; LastSampleTriggerPrevTrackDescription = PreviousTrack == null ? "" : PreviousTrack.Description; var position = AudioStreamHelper.GetPosition(LastSampleTriggerTrack); LastSampleTrigger = new SampleTrigger { Start = LastSampleTriggerTrack.SamplesToSeconds(position), DelayNotes = SamplerDelayNotes, SampleId = sample.SampleId }; }