Commit graph

12388 commits

Author SHA1 Message Date
Robin Gareus
1ef1734e76 Allow sparse CC lists. 2016-12-06 22:56:04 +01:00
Robin Gareus
2d37392f1a a-fluid synth: label Reverb & Chorus sends.
Also globally enable Reverb + Chorus FX (so that sends work by default)
2016-12-06 22:56:04 +01:00
Robin Gareus
f26ed23fd9 a-fluid synth: list all bank/programs 2016-12-06 17:00:12 +01:00
Robin Gareus
9c20892c27 Turn a-fluidsynth into C++ 2016-12-06 17:00:12 +01:00
Robin Gareus
8d8132aa3c rough-in a-fluid synth midnam support 2016-12-06 17:00:12 +01:00
Julien ROGER
0356d64195 Fix #6753
Fix "Illegal instruction" due to recursive acquisition/multi release on a RWLock

See #6753 notes
2016-12-06 22:41:25 +10:00
Tim Mayberry
4985f0d7ae Include last sample in reverse test for nonsilence in end trim during export 2016-12-06 20:55:17 +10:00
Tim Mayberry
b7bee5c903 Fix Multi Duplicate for a Range Selections
As mentioned in the previous commit
2016-12-06 14:06:18 +10:00
Tim Mayberry
bd52d4e328 Fix issues in export with trim enabled
A complete reimplementation of AudioGrapher::SilentTrimmer::process to support
trimming the beginning and end in the same processing block

Fix export with trim end enabled to actually trim silent frames

Only add silence to beginning or end of export data if data was written

Should resolve: #6412
2016-12-06 13:44:19 +10:00
Tim Mayberry
568cf861f9 Rename AudioGrapher::SilentTrimmer method to reflect behaviour
Unlike many of the other uses of the term "frame" this is actually returning
the index to the first sample in the interleaved frame that contains
non-silence.
2016-12-06 13:43:10 +10:00
Tim Mayberry
2c67e71e98 Always signal writing to file is complete at end of the export process
With end trim enabled, the only case that would successfully export was if
there was at least some samples above the silence threshold in the last export
processing block.

The issue was that the EndOfInput flag was not being passed to
AudioGrapher::SndFileWriter::process which would then call sf_write_sync and
emit the FileWritten signal to start post processing. Fix that by always
passing the EndOfInput flag in the last export process cycle.

Related: #6412
2016-12-06 13:43:09 +10:00
Tim Mayberry
6784923a05 Fix export silence threshold by using a constant value for now
All float values defined in the CONFIG_VARIABLE macro seem like they are cast
to at some stage before writing (another issue that needs addressing). The
default value for export-silence-threshold (-INFINITY) is converted to a value
of 0 and as a result nothing is exported with trim enabled.

Use the same fixed silence threshold as Mixbus until proper bounds checking and
GUI is in place.

Related: #6412
2016-12-06 13:41:17 +10:00
Tim Mayberry
9e794af3ea Add script to run audiographer tests 2016-12-06 13:20:54 +10:00
Robin Gareus
62672fa259 add another useful PluginInsert binding 2016-12-06 00:22:24 +01:00
Robin Gareus
ed5a46d214 Fixup 08fffef (consistent class name) 2016-12-05 23:49:19 +01:00
Robin Gareus
7f9befae2d Add Lua bindings to manage Groups 2016-12-05 23:49:19 +01:00
Robin Gareus
3cc644b467 set AtomObject body ID to zero (as per spec when unused) 2016-12-05 15:43:54 +01:00
David Robillard
388765e8ce Remove boost_system test kludge 2016-12-04 19:15:29 -05:00
David Robillard
5ab2e34b2c Update evoral test suite 2016-12-04 18:49:56 -05:00
David Robillard
9a848d5ba6 Fix configuration 2016-12-04 18:26:30 -05:00
David Robillard
1438191938 Improve coverage of evoral tests 2016-12-04 15:40:21 -05:00
David Robillard
9dbc524060 Improve coverage of evoral tests 2016-12-04 15:17:08 -05:00
David Robillard
9aac954744 Add missing include 2016-12-04 15:16:08 -05:00
David Robillard
b51321bd7d Make libpbd and evoral capable of standalone build
Just an update to slightly rotten wscripts, shouldn't be any changes during an
ardour build.  Motivation being a short development cycle for working on evoral
and/or its test suite.
2016-12-04 15:15:11 -05:00
David Robillard
7d2ed46b63 Remove dead/annoying/unsafe code
Note the old Note::operator= was unsafe, since it made shallow copies of the on
and off events, which results in a double delete of events when the notes are
destructed.
2016-12-04 15:10:05 -05:00
Robin Gareus
11464bfb18 Skip testing example lua scripts which are not bundled 2016-12-04 17:50:34 +01:00
David Robillard
454df30ae5 Fix Sequence test 2016-12-03 15:49:13 -05:00
David Robillard
d17f58e531 Remove dead code 2016-12-03 15:28:23 -05:00
David Robillard
398a318934 Fix event type and parameter type confusion
I'm not sure if this is really the best way to do event types (should it
just be a completely static enum in evoral, or completely dynamic and
provided by the type map, or a mix like currently?), but previously the
event type was frequently set to either total garbage, or parameter
types, which are a different thing.

This fixes all those cases, and makes Evoral::EventType an enum so the
compiler will warn about implicit conversions from int.
2016-12-03 15:28:19 -05:00
David Robillard
bfbc4566ad Fix warnings 2016-12-03 15:27:38 -05:00
David Robillard
08fffeffec Remove Evoral::MIDIEvent
It is slightly questionable whether type specific methods like
velocity() belong on Event at all, these may be better off as free
functions.  However the code currently uses them as methods in many
places, and it seems like a step in the right direction, since, for
example, we might some day have events that have a velocity but aren't
stored as MIDI messages (e.g. if Ardour uses an internal musical model
that is more expressive).

In any case, the former inheritance and plethora of sloppy casts is
definitely not the right thing.
2016-12-03 15:18:21 -05:00
David Robillard
875b1367b2 Factor out and extend MIDIXML implementation 2016-12-03 15:18:20 -05:00
David Robillard
0f5a73a7fd Fix Sequence/Event const-correctness issues 2016-12-03 15:18:20 -05:00
Robin Gareus
b433874019 update summary & connection-matrix colors when route-color changes 2016-12-01 15:51:25 +01:00
Olivier Humbert
e44e1f6227 One fix. 2016-11-30 22:25:46 +01:00
Olivier Humbert
059bbbf23f French translation update 2016-11-30 20:31:32 +01:00
Olivier Humbert
193a0c7671 French translation update
more translation + fixes
2016-11-30 20:24:52 +01:00
Robin Gareus
f1f47664ff fix compilation with newer version of *mm and gcc-6.2 (RefPtr<> cast) 2016-11-30 16:00:05 +01:00
Robin Gareus
24c799cde3 prefer bool operator 2016-11-30 12:15:35 +01:00
David Carlier
be7c6225c8 moving POSIX_VISIBLE to the waf script part 2016-11-29 13:18:46 +00:00
David Carlier
28435d1a30 Making buildable under OpenBSD. 2016-11-29 13:18:46 +00:00
Robin Gareus
5f1d94a7b2 Protect a-comp's display/state against NaN/Inf. 2016-11-29 09:04:13 +01:00
Robin Gareus
0fe62a34da protect a-delay again Inf, NaN, HUGE and stuff. 2016-11-29 08:41:10 +01:00
Robin Gareus
7b687d08a1 properly handle FS pitch-bend - closes #7140 2016-11-28 12:53:20 +01:00
Len Ovens
2614b0df43 OSC: Solo toggle should maintain state when locked, rec and rec_safe should show true state. 2016-11-27 20:52:14 -08:00
Tim Mayberry
e9eea8de9d Fix Duplicate Track with Copy Playlist option selected
Previously two new empty playlists were created.

Related to and mentioned in issue #7141
2016-11-28 12:38:58 +10:00
Len Ovens
8ddeca133b OSC: Squelch select feedback when no feedback is configured. 2016-11-27 18:32:50 -08:00
Tim Mayberry
f50ab8ccec Fix duplicate track with new playlist so only one playlist is created
Instead of 2 empty playlists, thanks to elgoun for the patch

Resolves: #7141
2016-11-28 10:57:06 +10:00
Robin Gareus
1de584961a NO-OP; Backport changes from Mixbus branch 2016-11-27 22:54:23 +01:00
Robin Gareus
2f30d763ed Fix loading, recording & saving MIDI with PolyKeyPressure events.
GUI still does not handle this (neither automation lane, nor List Editor),
but the file loads, plays and exports correctly.
2016-11-27 17:25:42 +01:00