13
0
livetrax/libs/ardour
Paul Davis 9f91747ac5 triggerbox: improve speed of TriggerBox::fast_forward() and handle a couple of logic errors
Having identified the trigger that will be running at a given transport position, we determine its effective
length (not necessarily its own length) and last start, then "jump" forward to the next-earliest start
point prior to the transport position. This greatly reduces the amount of actual audio processing we
need to do to prepare the trigger to run in sync at the transport position.

This commit also adjusts the targetted transport position by the processor's playback offset, so that
it is correctly prepared to run() once the transport starts again.

Logic errors when using cue-isolated or empty triggers were also fixed.
2022-03-19 15:25:14 -06:00
..
ardour
msvc
MSVClibardour
po
test
amp.cc
analyser.cc
analysis_graph.cc
arm_neon_functions.cc
async_midi_port.cc
audio_backend.cc
audio_buffer.cc
audio_library.cc
audio_playlist_importer.cc
audio_playlist_source.cc
audio_playlist.cc
audio_port.cc
audio_region_importer.cc
audio_track_importer.cc
audio_track.cc
audio_unit.cc
audioanalyser.cc
audioengine.cc
audiofile_tagger.cc
audiofilesource.cc
audioregion.cc
audiorom.cc
audiosource.cc
auditioner.cc
automatable.cc
automation_control.cc
automation_list.cc
automation_watch.cc
automation.cc
auv2_scan.cc
beatbox.cc
broadcast_info.cc
buffer_manager.cc
buffer_set.cc
buffer.cc
bundle.cc
butler.cc
caimportable.cc
capturing_processor.cc
chan_count.cc
chan_mapping.cc
ChangeLog
circular_buffer.cc
clip_library.cc
control_group.cc
control_protocol_manager.cc
convolver.cc
coreaudiosource.cc
cycle_timer.cc
data_type.cc
debug.cc
default_click.cc
delayline.cc
delivery.cc
directory_names.cc
disk_io.cc
disk_reader.cc
disk_writer.cc
dsp_filter.cc
ebur128_analysis.cc
element_import_handler.cc
element_importer.cc
engine_slave.cc
enums.cc
event_type_map.cc
export_channel_configuration.cc
export_channel.cc
export_failed.cc
export_filename.cc
export_format_base.cc
export_format_manager.cc
export_format_specification.cc
export_formats.cc
export_graph_builder.cc
export_handler.cc
export_preset.cc
export_profile_manager.cc
export_status.cc
export_timespan.cc
ffmpegfileimportable.cc
ffmpegfilesource.cc
file_source.cc
filename_extensions.cc
filesystem_paths.cc
filter.cc
find_session.cc
fixed_delay.cc
fluid_synth.cc
gain_control.cc
gettext.h
globals.cc
graph.cc
graphnode.cc
iec1ppmdsp.cc
iec2ppmdsp.cc
import_pt.cc
import.cc
instrument_info.cc
internal_return.cc
internal_send.cc
interpolation.cc
io_processor.cc
io.cc
kmeterdsp.cc
ladspa_plugin.cc
latent.cc
legatize.cc
linux_vst_support.cc
load-save-session-collection.sh
load-save-session.sh
location_importer.cc
location.cc
ltc_file_reader.cc
ltc_slave.cc
lua_api.cc
luabindings.cc
luaproc.cc
luascripting.cc
lv2_evbuf.c
lv2_evbuf.h
lv2_plugin.cc
lxvst_plugin.cc
mac_vst_plugin.cc
mac_vst_support.cc
meter.cc
midi_automation_list_binder.cc
midi_buffer.cc
midi_channel_filter.cc
midi_clock_slave.cc
midi_model.cc
midi_patch_manager.cc
midi_playlist.cc
midi_port.cc
midi_region.cc
midi_ring_buffer.cc
midi_scene_change.cc
midi_scene_changer.cc
midi_source.cc
midi_state_tracker.cc
midi_stretch.cc
midi_track.cc
midi_ui.cc
mididm.cc
midiport_manager.cc
minibpm.cc
mix.cc
mode.cc
monitor_control.cc
monitor_port.cc
monitor_processor.cc
monitor_return.cc
mp3fileimportable.cc
mp3filesource.cc
mtc_slave.cc
mtdm.cc
mute_control.cc
mute_master.cc
muteable.cc
onset_detector.cc
operations.cc
pan_controllable.cc
pannable.cc
panner_manager.cc
panner_shell.cc
panner.cc
parameter_descriptor.cc
phase_control.cc
playlist_factory.cc
playlist_source.cc
playlist.cc
plugin_insert.cc
plugin_manager.cc
plugin_scan_result.cc
plugin.cc
polarity_processor.cc
port_engine_shared.cc
port_insert.cc
port_manager.cc
port_set.cc
port.cc
presentation_info.cc
process_thread.cc
processor.cc
progress.cc
quantize.cc
raw_midi_parser.cc
rb_effect.cc
rc_configuration.cc
readable.cc
readonly_control.cc
recent_sessions.cc
record_enable_control.cc
record_safe_control.cc
region_factory.cc
region.cc
resampled_source.cc
return.cc
reverse.cc
route_graph.cc
route_group_member.cc
route_group.cc
route.cc
rt_midibuffer.cc
rt_tasklist.cc
run-profiling.sh
run-tests.sh
scene_change.cc
search_paths.cc
segment_descriptor.cc
selection.cc
send.cc
session_bundles.cc
session_butler.cc
session_click.cc
session_command.cc
session_configuration.cc
session_directory.cc
session_events.cc
session_export.cc
session_handle.cc
session_ltc.cc
session_metadata.cc
session_midi.cc
session_object.cc
session_playlists.cc
session_process.cc
session_rtevents.cc
session_state_utils.cc
session_state.cc
session_time.cc
session_transport.cc
session_vst.cc
session.cc
sha1.c
sidechain.cc
slavable_automation_control.cc
slavable.cc
smf_source.cc
sndfile_helpers.cc
sndfileimportable.cc
sndfilesource.cc
solo_control.cc
solo_isolate_control.cc
solo_mute_release.cc
solo_safe_control.cc
soundcloud_upload.cc
source_factory.cc
source.cc
speakers.cc
srcfilesource.cc
sse_avx_functions_64bit_win.s
sse_functions_64bit_win.s
sse_functions_64bit.s
sse_functions_avx_linux.cc
sse_functions_avx.cc
sse_functions_xmm.cc
sse_functions.s
st_pitch.cc
st_stretch.cc
step_sequencer.cc
strip_silence.cc
stripable.cc
system_exec.cc
template_utils.cc
tempo_map_importer.cc
thawlist.cc
thread_buffers.cc
ticker.cc
track.cc
transform.cc
transient_detector.cc
transport_fsm.cc
transport_master_manager.cc
transport_master.cc
transpose.cc
triggerbox.cc
unknown_processor.cc
uri_map.cc
user_bundle.cc
utils.cc
vca_manager.cc
vca.cc
video_tools_paths.cc
vst2_scan.cc
vst3_host.cc
vst3_module.cc
vst3_plugin.cc
vst3_scan.cc
vst_plugin.cc
vst_state.cc
vumeterdsp.cc
windows_vst_plugin.cc
worker.cc
wscript
x86_functions_fma.cc