summaryrefslogtreecommitdiff
path: root/libs
AgeCommit message (Collapse)Author
2015-05-07extend save-as API to allow for new empty sessions based on currentPaul Davis
2015-05-07copy contents of analysis, plugins, automation and externals folders during ↵Paul Davis
save-as
2015-05-07fix Session::rename()Paul Davis
2015-05-05debugging rename/save-asPaul Davis
2015-05-04API to reset plugin parameters to defaultRobin Gareus
2015-05-04add signal for automation state changes per pluginRobin Gareus
2015-05-04clear port-list before query.Robin Gareus
fixes crash in PortManager::silence_outputs()
2015-05-04fix thinko in 2e4428bRobin Gareus
perspective of Ardour: signal sinks are outputs
2015-05-03no more noise during startup.Robin Gareus
2015-05-03add an API to silence buffers (without session)Robin Gareus
2015-05-03fix portengin get_ports() flags APIRobin Gareus
require all flags to be present (same as jack)
2015-05-03Fix mixed spaces/tabs in wscriptsChristopher Arndt
2015-05-03don't install static library libsmf.aNils Philippsen
2015-05-02gfx-card & performance testingRobin Gareus
2015-05-02log(0) - who would have guessed.Robin Gareus
marginal improvement on x86_64 for zero, 5-10% for tiny numbers; 100% time improvement (half the time) on i686 with zero. #/bin/sh g++ -x c++ -O3 -ffast-math -o /tmp/a.out - << EOF #include <stdio.h> #include <stdlib.h> #include <cmath> #include <limits> static inline float accurate_coefficient_to_dB (float coeff) { #if 1 // try me if (coeff < 1e-15) return -std::numeric_limits<float>::infinity(); #endif return 20.0f * log10f (coeff); } int main (int argc, char **argv) { long long int i; float f = 0; if (argc < 3) return -1; long long int end = atoll (argv[1]); for (i = 0; i < end; ++i) { f += accurate_coefficient_to_dB (atof (argv[2])); } printf ("%f\n",f); return 0; } EOF time /tmp/a.out 100000000000 0.0 time /tmp/a.out 100000000000 0.0 time /tmp/a.out 100000000000 0.0
2015-05-02professionalize peak-metersRobin Gareus
The peak meter needs to withstand various test-signals without visual jitter (in particular 1kHz sine) regardless of settings (period-size, sample-rate, custom fall-off). This needs to be done in sync (and not by a random non-rt ‘smoothing’ thread). On the downside this voids the ‘visual smoothing’ particularly with large buffersizes - but then again exactly this “always fall-off no matter what [the next real data will be]” is the problem. One the upside, there’s one less high-frequency (100Hz) thread (Yay!) PS. it probably never worked on windows, anyway. Only peak-meters are affected by his change. K-meters, IEC I/II and VU were never visually smoothed.
2015-05-01dummy: ignore first cycle timing.Robin Gareus
2015-05-01constrain initial custom meter positions.Robin Gareus
The processor-box GUI only allows to move the custom meter position between trim and main_out/panner. Previously an initial switch from In -> custom or Out -> Custom left the meter at a position that can otherwise not be reached by manually repositioning the custom meter.
2015-04-30don’t count silent [x]runs if there’s no session.Robin Gareus
2015-04-30add a sanity checkRobin Gareus
2015-04-30Correctly dereference 'fxbuf' when building with MSVCJohn Emmas
2015-04-30When testing for x86 / x64 architecture, don't forget the symbols that MSVC ↵John Emmas
can understand
2015-04-30session: add signal to indicate batch updatesRobin Gareus
…to tell the UI to not redraw.
2015-04-30clamp DSP load displsy 100% & relax LPF.Robin Gareus
2015-04-29DSP load calculation: favor peak over average.Robin Gareus
2015-04-29no need to close a file that will not be removed (and has no name)Paul Davis
2015-04-29fix double precision abs value computationRobin Gareus
2015-04-29enable fade-out display by default in A4.Robin Gareus
..because fade outs are implicit in A4. Eventually the GUI needs to set_show_background_fade() as needed.
2015-04-29remove AU crashlog assert.Robin Gareus
in case $HOME/Library/Caches/Ardour4/au_crashlog.txt is not writeable, just log to stderr.
2015-04-29NOOP: fix indentationPaul Davis
2015-04-29[Summary] Should have been committed with previous: made background fade ↵GZharun
optional and not shown by default
2015-04-29fix issue with manual merge conflictPaul Davis
2015-04-29make computation of OS X pango text width correction less intrusive/more ↵Paul Davis
efficient. Compute the correction only once after each font specification setting. Conflicts: libs/canvas/canvas/text.h
2015-04-29manually apply grygorii's API to manage a correction for pango errors in ↵Paul Davis
text size computation on OS X
2015-04-29manually apply grygorii's waveform amplitude implementationPaul Davis
2015-04-29[Summary] Fixed issue when width request from Cavas text returned old width ↵GZharun
value [Reviewed by] Paul Davis Conflicts: libs/canvas/canvas/text.h
2015-04-29change placement of ruler divider so that the lower line is at the specified ↵Paul Davis
height, rather than the upper
2015-04-29do the right thing when TrackingText::offset is changedPaul Davis
2015-04-29Fix method hiding in Canvas::TextPaul Davis
2015-04-29change ruler rendering to change tick heights and move text downPaul Davis
2015-04-29add missing APIPaul Davis
2015-04-29add API to Ruler to optionally draw a divider (2 single pixel horizontal ↵Paul Davis
lines) at some position within the vertical extent of the ruler
2015-04-29correct implementation for Rectangle::vertical_fraction()Paul Davis
2015-04-29add Rectangle::vertical_fraction() as a convenience methodPaul Davis
Conflicts: libs/canvas/rectangle.cc
2015-04-29add xrun counter API to sessionRobin Gareus
2015-04-29emit an xrun if the process_lock is takenRobin Gareus
2015-04-29delegate signal emission to dedicated thread.Robin Gareus
This works around abysmal performance (~.15ms) of boost::function and boost::bind (in PBD::Signal). The overall load is probably higher but the realtime thread remains unaffected.
2015-04-28tape-track diskstream fixesRobin Gareus
Due to the change to use a 64bit timeline (int64 as opposed to previously [unsigned] pframes_t) many cases special to tape-tracks no longer work. e.g. region->length() can returns -1, rather than INT64_MAX. which breaks ‘overlap’ in Evoral::Coverage. which in turn breaks tape track’s use of ::find_next_region(). This commits begins the slow process to move away from relying on integer overflow to wrap negative numbers for tape tracks and restores basic functionality. Still various edge cases pertaining tape tracks remain. particularly when changing the session start-time and moving destructive regions.
2015-04-28Track mode needs to be set before loading Track stateRobin Gareus
parent Track::set_state() sets the diskstream and ::set_diskstream() depends on the track mode. fixes Tape tracks on session load
2015-04-27case insensitive VST plugin file extension - fixes #6285Robin Gareus
2nd attempt.