sample reverse

This commit is contained in:
Vasilii Milovidov
2023-09-20 02:31:04 +04:00
parent c8270a98e9
commit a92834de42
2 changed files with 23 additions and 9 deletions
@@ -70,6 +70,7 @@ export const desktopAudio = async (value, deadline, hapDuration) => {
bpenv = 1,
} = value;
console.log(begin);
value.duration = hapDuration;
if (isNote(note)) {
note = noteToMidi(note);
+22 -9
View File
@@ -109,16 +109,29 @@ pub fn superdough(message: &WebAudioMessage, context: &mut AudioContext) {
}
src.stop_at(now + message.duration + message.adsr.release);
} else {
src.start_at_with_offset_and_duration(
now,
message.begin * audio_buffer_duration,
audio_buffer_duration / message.speed as f64,
);
apply_adsr(&env, message, now);
for f in filters {
apply_filter_adsr(&f, message, &f.type_(), now);
if message.speed < 0.0 {
src.start_at_with_offset_and_duration(
now,
(message.begin + 0.5) * audio_buffer_duration,
audio_buffer_duration,
);
apply_adsr(&env, message, now);
for f in filters {
apply_filter_adsr(&f, message, &f.type_(), now);
}
src.stop_at(now + message.duration + 0.2);
} else {
src.start_at_with_offset_and_duration(
now,
message.begin * audio_buffer_duration ,
audio_buffer_duration,
);
apply_adsr(&env, message, now);
for f in filters {
apply_filter_adsr(&f, message, &f.type_(), now);
}
src.stop_at(now + message.duration + message.adsr.release);
}
src.stop_at(now + message.duration + 0.2);
}
}
Err(e) => eprintln!("Failed to open file: {:?}", e),