Julien "_FrnchFrgg_" RIVAUD
a9d2955f83
a-Inline Spectrogram used a ringbuffer to send mixed down audio data from the DSP thread to the inline display thread. The problem is that several inline display threads can coexist (one for the channel strip in the editor, one for the channel strip in the mixer, and soon one for an inline display in the generic plugin UI). A ringbuffer is single-writer single-reader so each display only got part of the data, and all were competing for it. Replace it with a circular table, where the DSP sets a write pointer, and every (inline display) user keeps its own read pointer and checks it is not so far in the past as to be overtaken by the DSP write pointer. |
||
---|---|---|
.. | ||
_amp1.lua | ||
_amp2.lua | ||
_amp3.lua | ||
_biquad_filter.lua | ||
_dialog_test.lua | ||
_dsp_plugin_communication.lua | ||
_dump_midiregion.lua | ||
_export_tracks.lua | ||
_fan_out_instrument.lua | ||
_fluidsynth1.lua | ||
_hook_test.lua | ||
_midi_lfo.lua | ||
_midi_rec_start.lua | ||
_midi_rewrite.lua | ||
_midifilter.lua | ||
_midigenerator.lua | ||
_notch_bank.lua | ||
_osc_hook_example.lua | ||
_plugin_modulation.lua | ||
_pong.lua | ||
_rawmidi.lua | ||
_region_transients.lua | ||
_rewind.lua | ||
_session_test.lua | ||
_smash.lua | ||
_vamp_example.lua | ||
_vamp_note_example.lua | ||
_vamp_onset_example.lua | ||
_varispeed_callback.lua | ||
add_filters.lua | ||
addscopes.lua | ||
amp4.lua | ||
bounce_replace.lua | ||
bypass_all_plugins.lua | ||
create_drum_tracks.lua | ||
delete_xrun_markers.lua | ||
export_mp4chaps.lua | ||
faders_to_trims.lua | ||
HiAndLowPass.lua | ||
midi_cc_to_automation.lua | ||
midimon.lua | ||
mute_all_tracks.lua | ||
post_export_save_hook.lua | ||
preare_record_example.lua | ||
remove_unknown_procs.lua | ||
s_chanmap.lua | ||
s_fader_automation.lua | ||
s_foreach_track.lua | ||
s_group_color.lua | ||
s_import_files.lua | ||
s_plugin_automation.lua | ||
s_plugin_reorder.lua | ||
s_pluginutils.lua | ||
s_portengine.lua | ||
s_region_gain2.lua | ||
s_region_gain.lua | ||
s_replaceplugin.lua | ||
s_selection.lua | ||
s_showhide_track.lua | ||
s_timecode.lua | ||
s_track_props.lua | ||
s_vamp_plugin_index.lua | ||
scope.lua | ||
select_every_2nd_region.lua | ||
send_to_bus.lua | ||
spectrogram.lua | ||
split_all_markers.lua | ||
stop_at_marker.lua | ||
synth1.lua | ||
tomsloop.lua | ||
vamp_audio_to_midi.lua | ||
voice_activate.lua | ||
wscript |