Commit graph

5234 commits

Author SHA1 Message Date
Michael Fisher
71c26e2820 Resolve duplicate symbol 'cocoa_open_uri' on OSX builds.
cocoa_open_uri.mm was being added to the source list
twice and also compiling twice. This patch enusres it is
only added once.
2013-08-02 12:01:47 -04:00
Michael Fisher
5143a42b31 Midi clock housekeeping 2013-08-02 08:59:32 -05:00
Michael Fisher
7ad81b7b4f Make Session::send_song_position_pointer a no-op 2013-08-02 08:59:32 -05:00
Michael Fisher
5555f5ccf7 Revamp clock processing so it uses an internal frame reference.
MidiClockTicker::Position managed by boost::scoped_ptr
2013-08-02 08:59:32 -05:00
Michael Fisher
18490878b4 WIP - Experimenting with an alternative clock generating algo
- Transport debug output (tracing where transport_frame
      is updated
2013-08-02 08:59:32 -05:00
Michael Fisher
6ffdeaa9f8 - Send position data from internal position class
- Proper midi beat conversions for all time signatures
- Disable responding to Session::PositionChanged in place
  of Session::Located.
2013-08-02 08:59:32 -05:00
Michael Fisher
6088446d8f Test code removal... 2013-08-02 08:59:32 -05:00
Michael Fisher
b8964f7b1b MIDI Clock - Shuffling locate code (not actually used yet)
- Subscribe to Session::Locate to detect seeks
- Shuffle Mclk locating computations into a separate private class
2013-08-02 08:59:32 -05:00
Michael Fisher
d882b03f7d Stop compiler warning about NSURL 2013-08-02 08:59:32 -05:00
Robin Gareus
bfd50cdeb0 rework MIDI [processor|plugin] chain
* forward midi-data around plugins that have no MIDI-out
* allow to insert plugins with no MIDI-input at a point with one MIDI-channel

This works because excess ports (both plugin and route) remain
unconnected and use scratch-buffers.

Tested with LV2, LXVST and LADSPA.
(AU plugins with variable in/out retain the old behavior, no bypass)

fixes http://tracker.ardour.org/view.php?id=5630
2013-08-02 03:39:00 +02:00
Paul Davis
28f3d76e7c remove an identical odd namespacing typo 2013-08-01 10:46:22 -04:00
Paul Davis
6a18103800 remove odd namespacing typo 2013-08-01 10:44:34 -04:00
Robin Gareus
4dc74ae2ea use zeroed scratch buffers for "silent" plugin runs
Plugins rewrite the buffer data in-place and some plugins
can produce output even when fed with silence.

Hence, during a PluginInsert::silence() run a plugin can
inject data into the "silent" buffers which causes side-effects.

Kudos to Chris 'oofus' Goddard for finding this issue.
2013-08-01 00:35:24 +02:00
Robin Gareus
7a02d9e08d clean up some valgrid "Uninitialised value was created by a heap allocation" wanings 2013-07-31 19:29:20 +02:00
Robin Gareus
ef0c4ed0e6 fix typo in c212c16eb 2013-07-31 15:24:46 +02:00
Robin Gareus
b5a2b4e84e initialize some uninitialized values 2013-07-31 15:22:51 +02:00
Robin Gareus
c212c16eb8 catch assert() 2013-07-31 15:17:22 +02:00
Robin Gareus
097d851730 LV2 - use scratch buffers to scratch :) 2013-07-31 14:45:02 +02:00
Robin Gareus
1c08b910f0 another amend to 00f26394a9 2013-07-31 14:21:40 +02:00
Robin Gareus
e8dc221191 fix stupid copy/paste error in 00f26394a9 2013-07-31 02:00:31 +02:00
Robin Gareus
476da4f3df minimize meter-peak re-draw area 2013-07-31 01:59:50 +02:00
Robin Gareus
ab7842edfd RMS meter: remove unused peak-detection 2013-07-30 20:22:31 +02:00
Robin Gareus
00f26394a9 use dedicated buffers for route (and track)
"scratch buffers are by definition scratch and their contents are undefined at all times"
"silent buffers are by definition all-zero and should not be used for real data"

But track & route were using those for actual data; plugins (which may run
in the same thread and may get the same buffers) use them for scratch thereby
overwriting real data.

In particular get_silent_buffers() (used by LadspaPlugin::connect_and_run)
clears the buffer which can holds real data:
e.g. via  Route::passthru_silence() -> plugin1 -> plugin2 (clears output of plugin1)
2013-07-30 16:55:33 +02:00
Robin Gareus
4af022c7f6 Revert "fix issue with generator plugins and no-roll disk monitoring"
This reverts commit bd34ab04cd.
2013-07-30 03:02:45 +02:00
Robin Gareus
bd34ab04cd fix issue with generator plugins and no-roll disk monitoring 2013-07-30 02:27:06 +02:00
Paul Davis
47ec32fa15 Merge branch 'clang-rebased' of https://github.com/axetota/ardour 2013-07-29 16:03:50 -04:00
Michael Fisher
6fd7ec3fc9 Return an empty string instead of a bool 2013-07-29 14:43:12 -05:00
Michael Fisher
cdc9d95e92 Cast param for std::time to a pointer of time_t
- bleeding clang (trunk 186535 v3.4) fails here
2013-07-29 14:43:12 -05:00
Michael Fisher
a8456b3766 Proper OSX/CLANG/CXX11 support in stl_delete.h
- replaces fix in 066df0d218
- Check if _LIBCPP_VECTOR is defined for vector_delete.
  This is defined in libc++'s headers which Apple is using
  instead of libstdc++
2013-07-29 14:43:11 -05:00
Michael Fisher
c442fea139 Housekeeping, code style 2013-07-29 20:05:11 +02:00
Michael Fisher
d391989444 Moving Mclk locating code to ticker.cc. Housekeeping 2013-07-29 20:05:11 +02:00
Michael Fisher
3538fa8442 Add method to send a song position pointer message 2013-07-29 20:05:11 +02:00
Robin Gareus
7f4e13a2a5 use K-20 meter as default master bus 2013-07-29 19:43:05 +02:00
Robin Gareus
58f4d66899 add option to resize meterbridge track-labels 2013-07-29 19:42:41 +02:00
Robin Gareus
a2ceba6fbe change default meter-fall-off to 13.3 dB/sec 2013-07-28 21:34:01 +02:00
Robin Gareus
893e26cc68 use 3px for peak-hold in LED mode -> display 2 bright lines 2013-07-28 21:24:27 +02:00
Robin Gareus
cd28d62b26 fix compiler warnings. 2013-07-28 20:32:52 +02:00
Robin Gareus
d1c2d53afe tweak meter-LED style 2013-07-28 18:29:39 +02:00
Edgar Aichinger
4c1b0fcb2b update german translation for libardour
fixes x42's screwup with prev commit.
2013-07-28 16:50:26 +02:00
Edgar Aichinger
ec9d27f48c update german translation 2013-07-28 16:45:42 +02:00
Robin Gareus
16339aa446 add dedicated line-up level for IEC1/DIN meter (15dbFS) 2013-07-28 03:31:44 +02:00
Robin Gareus
92d2075d83 make LED meter style optional 2013-07-28 03:31:39 +02:00
Robin Gareus
069fd15c79 cache shaded meter-background regardless of color
previously, shaded patterns were assumed to have different colors as well.
2013-07-26 17:17:05 +02:00
Robin Gareus
cd35040535 fix meter background redraw issue #5601 2013-07-26 17:10:05 +02:00
Robin Gareus
43bd836778 [re]implement horizontal meter 2013-07-25 19:04:52 +02:00
Robin Gareus
5fca8c9854 Don't allow to deactivate meter.
before this change:

1) switch to 'custom' meter point,
2) deactivate meter processor.

-> meters does not run regardless of meter-point
-> meter can only be re-nabled in 'custom' mode
2013-07-25 10:59:24 +02:00
Robin Gareus
132549c48a reset meters only when *really* necessary
..and continue to calculate fall-off in
audio-cycle (rather than UI thread)

TODO: check if this works properly when switching
between audio/midi meter modes on a midi-track.

One of the motivations to always reset meters when the
meter-point changes was to resolve peak-hold & fall-off
issues when a midi-meter replaces an audio-meter and vice
versa.
2013-07-25 10:53:11 +02:00
Robin Gareus
380e2ca6ce fix compiler warning 2013-07-25 02:05:10 +02:00
Robin Gareus
2ec45cfd1b align gradient with meter-metrics 2013-07-24 22:57:25 +02:00
Robin Gareus
33b067c12c increase saturation of meter-shader 2013-07-24 16:15:12 +02:00