Age | Commit message (Collapse) | Author |
|
|
|
|
|
this simplifies lua-bindings and also let's the compiler worry about
constant primitive types.
|
|
- for those not in the know, this series provides a way to
remove the temporal distortion introduced when using an
audio frame-based gui for music-locked objects.
In short, the gui uses an audio frame representation to move
objects. It displays the object using frame_at_beat(), quantizing
the time value to audio frames. This is fine until the user selects
that frame but expects it to be interpreted as a beat.
Thus beat_at_frame() would not produce the user-expected beat
(temporal quantization error of up to 0.5 audio samples).
This is one method of mapping audio time to music time accurately.
|
|
|
|
|
|
|
|
* 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)
|
|
|
|
|
|
|
|
Paul Davis was responsible for introducing almost all of this.
|
|
Fades must be outside of regions above threshold in order
to properly split drum-hits or fast transients in general.
|
|
Ensure that non-silent regions are at least
as long as the selected fade-duration.
|
|
|
|
|
|
the number of samples
|
|
|
|
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
|
|
The real problem is: libardourvampplugins:* cannot
be instantiated this remains to be fixed.
|
|
|
|
operation is undefined. C works on all platforms
|
|
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.
|
|
|
|
|
|
|
|
32 steps is sufficient for all practical musical purposes.
|
|
Extra steps are all below -20dB vs inverse signal being over -2dB.
linear interpolation -6dB steps is sufficient for the tail.
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
correctly
|
|
git-svn-id: svn://localhost/ardour2/branches/3.0@14118 d708f5d6-7413-0410-9779-e7cbd77b26cf
|
|
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
|
|
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
|
|
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
|
|
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
|
|
crash/valgrind bug
git-svn-id: svn://localhost/ardour2/branches/3.0@13074 d708f5d6-7413-0410-9779-e7cbd77b26cf
|
|
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
|
|
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
|
|
git-svn-id: svn://localhost/ardour2/branches/3.0@12635 d708f5d6-7413-0410-9779-e7cbd77b26cf
|
|
here and there
git-svn-id: svn://localhost/ardour2/branches/3.0@12519 d708f5d6-7413-0410-9779-e7cbd77b26cf
|
|
git-svn-id: svn://localhost/ardour2/branches/3.0@12496 d708f5d6-7413-0410-9779-e7cbd77b26cf
|