summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-04-24only update port lists when a TransportMastersWidget is actually mappedPaul Davis
The overhead of rebuilding for every port registration and unregistration was absurd
2020-04-24fix parentheses around expression that prevented port flags from being set ↵Paul Davis
for ltc slave
2020-04-24ensure that when a Session emits Port::PortDrop, transport master ports are ↵Paul Davis
left in place
2020-04-24fix copy-paste error that prevent transport master request mask from being ↵Paul Davis
set correctly
2020-04-24remove tools superceded by list_scripts.luaPaul Davis
2020-04-24fix search for include scripts in grep expressionPaul Davis
2020-04-24WebSockets: correct comment in mixer-demo/main.jsLuciano Iam
2020-04-24WebSockets: workaround for index page on WindowsLuciano Iam
Avoid 404s when following surface links while the issue in https://github.com/Ardour/ardour/pull/491 is better investigated
2020-04-24Fix MacOS builds (API change in 705ac7bfc5cc3)Robin Gareus
2020-04-24Add a Lua script to map MIDI events for the AVL DrumkitsRobin Gareus
2020-04-24Lua script-list: consolidate whitespace in descriptionRobin Gareus
2020-04-24Update Lua script descriptions, rename some scriptsRobin Gareus
2020-04-24Add script to list Lua scripts for a html news page.Robin Gareus
2020-04-24Revise French translation, part 5 -- #8035Fred Rech
2020-04-24Update key-bindings for all Lua action scripts #8034Robin Gareus
2020-04-24Fix builds, missing includeRobin Gareus
2020-04-24Update Russian translationAlexandre Prokoudine
2020-04-24Indicate unlinked send-panners in pan-widget #8024Robin Gareus
2020-04-24Define color for send pannerRobin Gareus
2020-04-24Use send-API for pan-link, indicate status in tooltip and nameRobin Gareus
2020-04-24Expose pan-link via Send API, emit signal on changeRobin Gareus
2020-04-23two small scripts to facilitate generating an annotated list of Lua scriptsPaul Davis
2020-04-23Clean up Audition realtime_overwriteRobin Gareus
Auditioner seek calls are explicitly handled by the butler, and DR:overwrite_existing_buffers() is called explicitly to read MIDI data for audition. Session::non_realtime_overwrite is no longer required. This reverts commit 6fbcf837793ec9a8347fd2d12823b9e56587ffc0 and parts of 2d11667ce3d2ada93c0fb90978bdcc054413c2bb.
2020-04-23minor code reworking for 46fca9062d28682 (no semantic changes)Paul Davis
2020-04-23Honour forward/rewind option when already rolling #8031Mister Benjamin
The options ForwardSlow, Forward and ForwardFast and their respective Rewind options were not honoured in the execution of forward/rewind operations when the transport was already rolling at a slower speed than the forward or rewind option's speed with same direction as the requested direction.
2020-04-23Fix MIDI auditioningRobin Gareus
The Auditioner is not part of the session route-list and the auditioner route's I/O latency is never updated. Session::process_audition() does not handle pre-roll either, so it need to be zeroed, otherwise Route::roll skips samples. This has lead to initial samples being skipped, IFF the auditioner's output-port had non-zero latency. Since private port-latencies are usually only set for routes in the route-list, and _remaining_latency_preroll is reset at transport-stop, this *usually* worked... Last but not least, MIDI notes need to be resolved when seeking.
2020-04-23Don't add the Auditioner to the route-listRobin Gareus
This fixes a bug introduce in 2d11667ce3. The Auditoner was accidentally added to the shared_ptr<> referenced RouteList.
2020-04-23Micro optimization: cache output IO latencyRobin Gareus
IO::latency iterates over the port-set retrieving the private_latency_range of each port. Since it can only change when connections and latency changes, we can instead cache the value. This is also in preparation to allow the auditioner to override it.
2020-04-23Fix Auditioner edge-case when synth cannot be loadedRobin Gareus
2020-04-23Remove debug outputRobin Gareus
2020-04-23Fix parsing XML with blanks from memoryRobin Gareus
This is needed when the butler thread loads a plugin with MIDNAM. xmlKeepBlanksDefault() setting is per thread. see also df3a4ed9c61d
2020-04-23GUI use updated XML::read_buffer APIRobin Gareus
2020-04-23Prevent huge stack allocations for MIDNAM filesRobin Gareus
xmlParseMemory() uses a c-pointer char*. Previously MIDNAM data on the heap were wrapped inside a std::string only to be later accessed via c_str().
2020-04-23Consolidate stack-size and priority of rt-threadsRobin Gareus
2020-04-22Fix region boundary cache lookup segfaultRobin Gareus
When the cursor position is after the last item in the vector, upper_bound returns the last given iterator, here: `region_boundary_cache.end()`, which is invalid to dereference. Furthermore prevent possible duplicate prev/next pair at zero, when using the video-timelime.
2020-04-22WebSockets: fix guard header in json.hLuciano Iam
2020-04-22WebSockets: also json-escape strings in state messagesLuciano Iam
2020-04-22WebSockets: also json-escape paths in manifestsLuciano Iam
Extends 3c423d9
2020-04-22WebSockets: extend 57fdce8Luciano Iam
2020-04-22WebSockets: add some TO DO commentsLuciano Iam
2020-04-22WebSockets: disable http caching if NDEBUG is setLuciano Iam
This is useful while developing web surface javascript code
2020-04-22WebSockets: fix JS client get* methodsLuciano Iam
2020-04-22WebSockets: remove unnecessary import from mixer-demo/widget.jsLuciano Iam
2020-04-22WebSockets: fix a comment in server.ccLuciano Iam
2020-04-22Example Lua script to add plugins and sendsRobin Gareus
2020-04-22Fix a potential endless recursion from c2b25b453eaRobin Gareus
ArdourDropdown::set_active() -> StateChanged -> .. -> set_active()
2020-04-21fully initialize SMF tempo information to default (4/4, 120bpm)Paul Davis
Leaving CPC and 32nd-per-quarter at -1 causes arithmetic errors later if the SMF file doesn't contain an explicit time signature meta-event
2020-04-22Fix MIDI audition and audition seekingRobin Gareus
DiskReader::seek() no longer fills MIDI buffers. MIDI is now read into memory via DR:overwrite_existing_buffers() There is still some edge-case remaining to be fixed. For some reasons the synth does not receive initial patch/program changes when starting auditioning.
2020-04-22Take lock to add/remove custom MIDNAMsRobin Gareus
update_custom_midnam() is usually called from the GUI or butler thread when a LV2 plugin is instantiated, or the plugin changes its MIDNAM. It must be exclusive with load_midnams_in_thread() and calls from MTAV to ::maybe_use().
2020-04-21Really bundle web-surface data with Linux and Mac buildsRobin Gareus
This fix copy/paste/edit bug in 5d3554408