summaryrefslogtreecommitdiff
path: root/libs/ardour/audioregion.cc
AgeCommit message (Collapse)Author
2016-05-07fix LocaleGuard contstructor (3dc77280)Robin Gareus
2016-05-05we always only use the "C" locale when saving.Robin Gareus
2016-05-04OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)Paul Davis
2016-05-01various transient-detection fixes (split region, trim, move, undo,..)Robin Gareus
* all API calls use session-time (allow region-lists) * per-region transients are separated in - Onset (Rhythm Rodent, Aubio) - User-added - internal/source (QM), used as fallback for next/prev (read-only)
2016-03-05Fix issue #0006806feandin
2015-11-18reduce math weirdness (thanks to Steven Yi)Robin Gareus
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2015-09-20silence detection: include fades.Robin Gareus
Fades must be outside of regions above threshold in order to properly split drum-hits or fast transients in general.
2015-09-20add silence-stripping fade constraintsRobin Gareus
Ensure that non-silent regions are at least as long as the selected fade-duration.
2015-06-29[Summary] Fixed windows buildGreg Zharun
2015-06-29add channel_count() to audio source APIPaul Davis
2015-06-02AudioRegion::read_peaks() should return 0 or the number of peaks read, not ↵Paul Davis
the number of samples
2015-05-19try to improve the ill-conceived fade_range actionBen Loftis
2015-04-22Initial Gain Coefficient tweaksBen Loftis
1) Disambiguate 1.0 to GAIN_COEFF_UNITY, and 0.0 to GAIN_COEFF_ZERO 2) Add GAIN_COEFF_SMALL which replaces SMALL_SIGNAL (-140dB) 3) GAIN_COEFF_SMALL can used to avoid interpolating towards -inf on a db scale 4) GAIN_COEFF_SMALL is used to detect very small (denormal?) gains and memset to zero
2015-03-30fix crash #6161 - another throw w/o catchRobin Gareus
The real problem is: libardourvampplugins:* cannot be instantiated this remains to be fixed.
2015-02-27likely fix for broken fades (imported from v2 sessions)Ben Loftis
2015-01-19use C locale, because POSIX locale is not supported on windows, and ↵Ben Loftis
operation is undefined. C works on all platforms
2014-12-01Replace half-baked param metadata with descriptor.David Robillard
Among other things, this means that automation controls/lists have the actual min/max/normal/toggled of parameters, and not those inferred from the Parameter ID, which is not correct for things like plugin parameters. Pushing things down to the Evoral::ParmeterDescriptor may be useful in the future to have lists do smarter things based on parameter range, but currently I have just pushed down the above-mentioned currently used attributes.
2014-10-02Text tweaks and typo fixesColin Fletcher
2014-07-10add libardour infrastructure for "fade range" edit operationPaul Davis
2014-05-30use CubicSpline interpolation for x-fade preset ShapesRobin Gareus
2014-05-29use fixed number of steps for dB-scale x-fade curves.Robin Gareus
32 steps is sufficient for all practical musical purposes.
2014-05-29fixed number of steps for symmetric fades:Robin Gareus
Extra steps are all below -20dB vs inverse signal being over -2dB. linear interpolation -6dB steps is sufficient for the tail.
2014-05-29fix symmetric fade-shape (still variable number of steps)Robin Gareus
2014-05-29Symmetric x-fade, use equivalent of -6dB per step for 7 steps.Robin Gareus
2014-05-29increase accuracy of fades.Robin Gareus
2014-05-29revert x-fade curves to Mixbus2.Robin Gareus
2014-05-26NOOP, just re-indent diagramRobin Gareus
2014-05-01Introduce global default-fade-shape configuration variableAdrian Knoth
Some users always want the same fade in/out style, e.g., constant power, symmetric, fast etc. To avoid having them change the fade style manually for each fade, use a global configuration variable instead.
2014-03-04reduce number of points used to define x-fade curvesPaul Davis
2014-02-26increase number of steps in xfade curves (where applicable) from about 9 to 32Paul Davis
2014-01-02Merge branch 'master' into cairocanvasPaul Davis
2013-12-28fix replicate_missing_region_channels optionRobin Gareus
2013-04-04initial commit of hand merging, plus getting "ancient" waf script to work ↵Paul Davis
correctly
2013-03-03skip fade&envelope info in region XMLRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@14118 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-03fix region fade/env XML save - fixes #5353Robin Gareus
In rev 12740 FadeIn/Out became stateful properties which are automatically saved when Region:state() calls Stateful::add_properties(). AudioRegion::state() called Region:state() AND Stateful::add_properties() which added a 2nd redundant copy to the XML. Finally AudioRegion::state() adds custom serialization for Fades. Furthermore this custom serialization also used names which did not match the Property name. git-svn-id: svn://localhost/ardour2/branches/3.0@14117 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-13crossfade hack and slash. removed overlap checks, overlap mode, default ↵Ben Loftis
length, fade_is_xfade, fade_is_short, and other leftovers from previous crossfade models. Draw crossfade drags in realtime so fade_line is no longer needed. remove code for hiding crossfades during a drag. moved crossfade rect to top layer so crossfade lines dont grab mouse focus. drag-trim-with-fixed-fade-anchor is partially implemented and needs discussion git-svn-id: svn://localhost/ardour2/branches/3.0@13659 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-30fix x-fades (part one)Robin Gareus
The data from the lower layer(s) was not faded out because the reversed gain curve was incorrect because ControlList:add() inserts anchor points. a call to reverse_curve() for a linear fade produced: INPUT: [when,val] {[0.0, 0.0], [300.0, 1.0]} OUTPUT: (reversed) {[0.0, 0.0], [0.0, 1.0], [1.0, 0,0], [300.0, 0.0]} solution: use fast_simple_add() instead. git-svn-id: svn://localhost/ardour2/branches/3.0@13572 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25convert from Glib:: to Glib::Threads for all thread-related APIPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-24a bit more output from -D audioplayback, to help thorsten track down a ↵Paul Davis
crash/valgrind bug git-svn-id: svn://localhost/ardour2/branches/3.0@13074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-16Return silence from read_from_sources() if we try to read a channel that our ↵Carl Hetherington
source does not have (if replicate-missing-region-channels is turned off); should fix #4934. git-svn-id: svn://localhost/ardour2/branches/3.0@12741 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-16Add new SharedStatefulProperty which manages a shared_ptr toCarl Hetherington
some Stateful object, and a subclass to use this for AutomationList. SharedStatefulProperty will manage undo / redo using full copies of the XML state, like MementoCommand, but does it within the Property undo system. git-svn-id: svn://localhost/ardour2/branches/3.0@12740 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-09Fix off-by-one in body_range().Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@12635 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-01fix construction of new xfades from legacy xfades, and add a few comments ↵Paul Davis
here and there git-svn-id: svn://localhost/ardour2/branches/3.0@12519 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-30rethink how to load legacy crossfades as new-style xfadesPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12496 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-26convert audioregion xfade stuff to properties, add "is-short" property for ↵Paul Davis
fade in and out so that we can keep track of whether an (x)fade is supposed to remain "short", and don't do "mess-with-region-below" stuff when trimming a short xfade. should be back-compatible with 3beta4a git-svn-id: svn://localhost/ardour2/branches/3.0@12452 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Tweak comment.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@12432 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Remove over 500 unnecessary includes (including 54 of session.h).David Robillard
It's slightly possible that this causes trivial build failures on different configurations, but otherwise shouldn't cause any problems (i.e. no actual changes other than include/naming/namespace stuff). I deliberately avoided removing libardour-config.h since this can mysteriously break things, though a few of those do seem to be unnecessary. This commit only targets includes of ardour/*.h. There is also a very large number of unnecessary includes of stuff in gtk2_ardour; tackling that should also give a big improvement in build time when things are modified. git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Opaque region bodies should overwrite whatever is already inCarl Hetherington
the buffer; fix crash when the sum of the fade in and out is longer than the region. git-svn-id: svn://localhost/ardour2/branches/3.0@12410 d708f5d6-7413-0410-9779-e7cbd77b26cf