ardour.git
7 years agore-add TLSF
Robin Gareus [Tue, 19 Jul 2016 13:03:51 +0000 (15:03 +0200)]
re-add TLSF

7 years agoa-Delay: Add feedback control 0 to 90 percent
Damien Zammit [Tue, 19 Jul 2016 04:42:53 +0000 (14:42 +1000)]
a-Delay: Add feedback control 0 to 90 percent

7 years agoDon't add Bundles to PortMatrix if they only have mistyped ports
Julien "_FrnchFrgg_" RIVAUD [Tue, 19 Jul 2016 00:03:44 +0000 (02:03 +0200)]
Don't add Bundles to PortMatrix if they only have mistyped ports

PortMatrix is able to filter out ports that have an unwanted datatype, but
if a Bundle is added that has no port at all with a wanted datatype then
it is not weeded out correctly (and even if it were, there's no chance
that it will legitimately appear in the UI). Don't add that kind of
Bundle in the first place.

7 years agoRemove bus ignore from MIDI tracks
Julien "_FrnchFrgg_" RIVAUD [Mon, 18 Jul 2016 22:01:12 +0000 (00:01 +0200)]
Remove bus ignore from MIDI tracks

Now that busses can contain MIDI, this special casing doesn't make sense
anymore.

7 years agoOSC: check if pan exists, fixes MB crash.
Len Ovens [Mon, 18 Jul 2016 22:57:27 +0000 (15:57 -0700)]
OSC: check if pan exists, fixes MB crash.

7 years agoadd a const - just because.
Robin Gareus [Mon, 18 Jul 2016 21:51:42 +0000 (23:51 +0200)]
add a const - just because.

7 years agoadd a plugin-death connection
Robin Gareus [Mon, 18 Jul 2016 21:51:10 +0000 (23:51 +0200)]
add a plugin-death connection

at application exit, there may otherwise be a race condition,
queue draw could be scheduled for a widget that's no longer present.

7 years agoadd some strategic lua gc steps.
Robin Gareus [Mon, 18 Jul 2016 21:34:12 +0000 (23:34 +0200)]
add some strategic lua gc steps.

7 years agorework lua-bridge C++ variable references
Robin Gareus [Mon, 18 Jul 2016 21:30:20 +0000 (23:30 +0200)]
rework lua-bridge C++ variable references

Since lua functions are closures, C++ methods that pass arguments by
reference cannot be used directly. The previous approach (boost::ref)
failed with clang. Assume the following:

  void foo (float&) { }
  static inline float& bar () {
    boost::reference_wrapper<float> r (42);
    return r.get ();
  }

  foo ( bar () );

With gcc, "r" goes out of scope after foo's arguments are processed
and all is well.
But with clang,  "r" already leave scope when *inlined* bar() returns.

Solution: allocate some user-data on the lua-stack to hold the reference.
There is no reference to this user-data so lua will eventually
garbage collect it.

(theoretically, creating the table which holds the return-values
could trigger an emergency garbage collection when memory is low and
free the reference just while they're being pushed to the table, then
gain FuncArgs<Params> already dereferenced them all as variable on the
C stack -- probably again compiler specific)

7 years agostop using Gestalt() on OS X (deprecated and no longer operating correctly)
Paul Davis [Mon, 18 Jul 2016 19:56:03 +0000 (15:56 -0400)]
stop using Gestalt() on OS X (deprecated and no longer operating correctly)

The incorrect behaviour was documented and did not cause issues in Ardour, but we should
still stop using this ancient call.

7 years agofix a compile of annoying compiler warnings with elcap clang
Paul Davis [Mon, 18 Jul 2016 18:42:34 +0000 (14:42 -0400)]
fix a compile of annoying compiler warnings with elcap clang

7 years agobefore pushing keybindings to GTK for menu display, make sure that we add back the...
Paul Davis [Mon, 18 Jul 2016 18:42:13 +0000 (14:42 -0400)]
before pushing keybindings to GTK for menu display, make sure that we add back the META modifer that GTK expects

7 years agomove show_gdk_event_state() utility function from gtk2_ardour to libs/gtkmm2ext
Paul Davis [Mon, 18 Jul 2016 18:41:25 +0000 (14:41 -0400)]
move show_gdk_event_state() utility function from gtk2_ardour to libs/gtkmm2ext

7 years agofix unused variable warnings and code tidy
Paul Davis [Mon, 18 Jul 2016 18:39:32 +0000 (14:39 -0400)]
fix unused variable warnings and code tidy

7 years agofix Pingback
Robin Gareus [Mon, 18 Jul 2016 17:19:57 +0000 (19:19 +0200)]
fix Pingback

7 years agoclean up HttpGet
Robin Gareus [Mon, 18 Jul 2016 17:19:35 +0000 (19:19 +0200)]
clean up HttpGet

7 years agofix incorrect restoration of pane positions on Apple.
Paul Davis [Mon, 18 Jul 2016 16:49:26 +0000 (12:49 -0400)]
fix incorrect restoration of pane positions on Apple.

Code to check if we were to close to an edge (for window resizing) blocked all divider setting,
because it would be called with a current widget allocation of 1x1

7 years agoOSC: Get rid of meter noise in MB.
Len Ovens [Mon, 18 Jul 2016 16:47:33 +0000 (09:47 -0700)]
OSC: Get rid of meter noise in MB.

7 years agoadd 2 missing colors for clear gray theme
Paul Davis [Mon, 18 Jul 2016 16:06:31 +0000 (12:06 -0400)]
add 2 missing colors for clear gray theme

7 years agoadd new clear-gray color theme
Paul Davis [Mon, 18 Jul 2016 16:03:37 +0000 (12:03 -0400)]
add new clear-gray color theme

7 years agocorrectly package color theme files for both linux and OS X
Paul Davis [Mon, 18 Jul 2016 15:50:34 +0000 (11:50 -0400)]
correctly package color theme files for both linux and OS X

7 years agoturn back towards color theme files ALWAYS including the program name. also load...
Paul Davis [Mon, 18 Jul 2016 15:50:21 +0000 (11:50 -0400)]
turn back towards color theme files ALWAYS including the program name. also load both default and user colors (if present)

7 years agoNormalize API rename part 2
Robin Gareus [Mon, 18 Jul 2016 15:31:50 +0000 (17:31 +0200)]
Normalize API rename part 2

7 years agoNo-Op: rename Normalizer to Intermediate
Robin Gareus [Mon, 18 Jul 2016 15:36:29 +0000 (17:36 +0200)]
No-Op: rename Normalizer to Intermediate

post-processing is no longer just Normalization. RealtimeExport
does Encoding - faster than realtime - using the same infrastructure.

7 years agoadd exception handling in LocaleGuard, to try to cover more OS X wierd/corner cases
Paul Davis [Mon, 18 Jul 2016 14:56:19 +0000 (10:56 -0400)]
add exception handling in LocaleGuard, to try to cover more OS X wierd/corner cases

7 years agoUpdate pingback to use ArdourCurl
Robin Gareus [Mon, 18 Jul 2016 14:46:17 +0000 (16:46 +0200)]
Update pingback to use ArdourCurl

7 years agoremove old a3_curl API and switch some curl calls
Robin Gareus [Mon, 18 Jul 2016 14:10:35 +0000 (16:10 +0200)]
remove old a3_curl API and switch some curl calls

Keep freesound-moocher as is until freesound-apiv2 branch is merged
or rebased.

7 years agoArdourCurl: prepare to unify various curl calls
Robin Gareus [Mon, 18 Jul 2016 14:45:45 +0000 (16:45 +0200)]
ArdourCurl: prepare to unify various curl calls

mainly motivated by a central location to setup SSL.

7 years agoOptimize a-HiAndLowPass
Julien "_FrnchFrgg_" RIVAUD [Mon, 18 Jul 2016 11:37:36 +0000 (13:37 +0200)]
Optimize a-HiAndLowPass

- Better formula for the lpf smoothness parameter. It is computed only
  on init and rate change anyway...
- Only run as many Biquads as needed to save computing power, esp. when
  using low steepness and parameters are not changing.

7 years agoamend previous commit (forgotten checkin)
Robin Gareus [Mon, 18 Jul 2016 11:11:18 +0000 (13:11 +0200)]
amend previous commit (forgotten checkin)

7 years agoupdate to lua-5.3.3
Robin Gareus [Mon, 18 Jul 2016 10:28:36 +0000 (12:28 +0200)]
update to lua-5.3.3

7 years agoSimplify the logic in HiAndLowPass filter
Julien _FrnchFrgg_ RIVAUD [Mon, 18 Jul 2016 09:09:01 +0000 (11:09 +0200)]
Simplify the logic in HiAndLowPass filter

And beef up comments for readers using the filter as an example.

7 years agoclean up Hp/Lp code
Robin Gareus [Mon, 18 Jul 2016 08:53:40 +0000 (10:53 +0200)]
clean up Hp/Lp code

7 years agopingback:: use curl_free() for pointers returned by curl_easy_escape()
Colin Fletcher [Wed, 17 Feb 2016 17:21:33 +0000 (17:21 +0000)]
pingback:: use curl_free() for pointers returned by curl_easy_escape()

As per the curl documentation, use curl_free() for pointers returned by
curl_easy_escape() rather than plain free().

7 years agoRemove 'i18n.h' from some VC projects where it's no longer needed
John Emmas [Mon, 18 Jul 2016 08:41:46 +0000 (09:41 +0100)]
Remove 'i18n.h' from some VC projects where it's no longer needed

7 years agoAdd a newly introduced source file to our MSVC project (libpbd)
John Emmas [Mon, 18 Jul 2016 08:39:36 +0000 (09:39 +0100)]
Add a newly introduced source file to our MSVC project (libpbd)

7 years agobundle dynamically loaded NSS libs
Robin Gareus [Sun, 17 Jul 2016 21:36:25 +0000 (23:36 +0200)]
bundle dynamically loaded NSS libs

7 years agofix cURL/SSL
Robin Gareus [Sun, 17 Jul 2016 17:16:22 +0000 (19:16 +0200)]
fix cURL/SSL

pingback comes first. We need defaults (with SSL). Later explicit
(Freesound Moocher) and implicit (curl_easy_init) calls to curl_global_init
are idempotent and won't get the flags back.

7 years agoFix stored type confusion in Meter/TempoSection::get_state().
nick_m [Sun, 17 Jul 2016 16:58:59 +0000 (02:58 +1000)]
Fix stored type confusion in Meter/TempoSection::get_state().

7 years agofix build of test suite
Colin Fletcher [Sun, 17 Jul 2016 16:04:35 +0000 (17:04 +0100)]
fix build of test suite

Fix build of audiographer tests after changes to TmpFile in 77687519.

7 years agoexpose PBD::open_uri bindings to lua
Robin Gareus [Sun, 17 Jul 2016 15:04:02 +0000 (17:04 +0200)]
expose PBD::open_uri bindings to lua

7 years agoquick hack to test SSL in bundles
Robin Gareus [Sun, 17 Jul 2016 15:03:48 +0000 (17:03 +0200)]
quick hack to test SSL in bundles

this needs to be reverted, and we need a proper curl wrapper,
shared by video-timeline AND freesound moocher

7 years agocleanup High/Low Pass
Robin Gareus [Sun, 17 Jul 2016 12:10:13 +0000 (14:10 +0200)]
cleanup High/Low Pass

* shorten Name
* fix typo in Time Constant
* remove some local variables

7 years agoAnother translation pass
Julien "_FrnchFrgg_" RIVAUD [Sat, 16 Jul 2016 16:50:51 +0000 (18:50 +0200)]
Another translation pass

7 years agoremove old a-Hi/Low pass
Robin Gareus [Sat, 16 Jul 2016 23:20:45 +0000 (01:20 +0200)]
remove old a-Hi/Low pass

7 years agoclean up a-HP/LP
Robin Gareus [Sat, 16 Jul 2016 23:20:23 +0000 (01:20 +0200)]
clean up a-HP/LP

7 years agoHi AND low pass filter -- fresh from the oven werks.
Robin Gareus [Sat, 16 Jul 2016 21:05:30 +0000 (23:05 +0200)]
Hi AND low pass filter -- fresh from the oven werks.

7 years agofix double quote in fr.po
Robin Gareus [Sat, 16 Jul 2016 17:09:15 +0000 (19:09 +0200)]
fix double quote in fr.po

7 years agorepeat "Scan" button in plugin sub-menus
Robin Gareus [Sat, 16 Jul 2016 14:37:11 +0000 (16:37 +0200)]
repeat "Scan" button in plugin sub-menus

7 years agohandle no audio-output AUs
Robin Gareus [Sat, 16 Jul 2016 16:44:05 +0000 (18:44 +0200)]
handle no audio-output AUs

7 years agoimprove AU Latency PropertyChange Events
Robin Gareus [Sat, 16 Jul 2016 16:43:10 +0000 (18:43 +0200)]
improve AU Latency PropertyChange Events

7 years agoadd a note to self
Robin Gareus [Sat, 16 Jul 2016 12:48:49 +0000 (14:48 +0200)]
add a note to self

7 years agoAU: install latency listener
Robin Gareus [Sat, 16 Jul 2016 03:05:52 +0000 (05:05 +0200)]
AU: install latency listener

Don't query after every cycle, some plugins inject license checks
when a host queries latency (!)

7 years agoAU: remove cruft, fix parameter initialization
Robin Gareus [Sat, 16 Jul 2016 03:01:26 +0000 (05:01 +0200)]
AU: remove cruft, fix parameter initialization

7 years agoallow inserts to connect it itself - #6924
Robin Gareus [Sat, 16 Jul 2016 02:14:27 +0000 (04:14 +0200)]
allow inserts to connect it itself - #6924

7 years agoBetter choice for ports on external send creation
Julien "_FrnchFrgg_" RIVAUD [Fri, 15 Jul 2016 21:12:52 +0000 (23:12 +0200)]
Better choice for ports on external send creation

Ardour tried to make an educated guess at the initial number of outputs
for a new send. It used the channel configuration of the master bus, if
it existed, else the channel configuration of the route itself.

That guess is good in most cases, but in the case of a track/bus without
audio channels, creating a send with audio doesn't make sense. In that
case, also use the route outputs as a base for the send configuration.

7 years agoReview, import and augment translations from edwsaintesprit@hotmail.com
Julien "_FrnchFrgg_" RIVAUD [Fri, 15 Jul 2016 23:33:12 +0000 (01:33 +0200)]
Review, import and augment translations from edwsaintesprit@hotmail.com

7 years agoexport RT support as Timespan option
Robin Gareus [Sat, 16 Jul 2016 00:15:56 +0000 (02:15 +0200)]
export RT support as Timespan option

7 years agoadd a realtime-export session property
Robin Gareus [Fri, 15 Jul 2016 23:36:11 +0000 (01:36 +0200)]
add a realtime-export session property

7 years agoallow to query export profile type
Robin Gareus [Fri, 15 Jul 2016 23:35:43 +0000 (01:35 +0200)]
allow to query export profile type

7 years agolibardour support for timespan realtime export
Robin Gareus [Fri, 15 Jul 2016 15:04:34 +0000 (17:04 +0200)]
libardour support for timespan realtime export

7 years agoRefactor TmpFile into an abstract base class
Robin Gareus [Fri, 15 Jul 2016 15:03:07 +0000 (17:03 +0200)]
Refactor TmpFile into an abstract base class

This allows a TmpFile pointer to be either a Sync or Async (Threaded)
writer. As result we must be able to handle both RT and non RT processing.

Still, post-processing (normalization and encoding) should always
happen faster than realtime (freewheeling).

Since jack does not allow a client to change to freewheeling from within
the process-callback, the async-writer disk-thread FileFlushed is used
to initiate post-processing.

7 years agoNO-OP session-property comments
Robin Gareus [Fri, 15 Jul 2016 23:53:54 +0000 (01:53 +0200)]
NO-OP session-property comments

7 years agoadjust plugin-UI height when toggling expanders
Robin Gareus [Fri, 15 Jul 2016 22:12:19 +0000 (00:12 +0200)]
adjust plugin-UI height when toggling expanders

7 years agoOSC: LFE is a control not a position.
Len Ovens [Fri, 15 Jul 2016 18:44:49 +0000 (11:44 -0700)]
OSC: LFE is a control not a position.

7 years agofix file-name reported to analyzer when stem-exporting
Robin Gareus [Fri, 15 Jul 2016 14:54:07 +0000 (16:54 +0200)]
fix file-name reported to analyzer when stem-exporting

7 years agohotfix C++ locale (OSX, windows)
Robin Gareus [Fri, 15 Jul 2016 14:10:42 +0000 (16:10 +0200)]
hotfix C++ locale (OSX, windows)

7 years agoMake Route and Track ::silent_roll() also flush out ports buffers
Julien "_FrnchFrgg_" RIVAUD [Fri, 15 Jul 2016 00:02:21 +0000 (02:02 +0200)]
Make Route and Track ::silent_roll() also flush out ports buffers

So that MIDI in the ports is really made silent.

7 years agoAlso flush buffers of the inner delivery of inserts
Julien "_FrnchFrgg_" RIVAUD [Thu, 14 Jul 2016 23:51:55 +0000 (01:51 +0200)]
Also flush buffers of the inner delivery of inserts

When flushing the buffers of Delivery processors owned by a Route/Track,
inner deliveries of PortInsert processors were missed since PortInsert
is not a Delivery subclass, but rather owns a Delivery as a private
member. Expose a flush_buffers() for PortInsert and call it too.

This is correct since (external) Send is a Delivery subclass, so that
just makes the send part of inserts behave as external sends do.

7 years agoConsolidate delivery buffer flushing of all route types
Julien "_FrnchFrgg_" RIVAUD [Thu, 14 Jul 2016 23:43:14 +0000 (01:43 +0200)]
Consolidate delivery buffer flushing of all route types

Route::no_roll(), Route::roll(), Track::no_roll(), AudioTrack::roll()
and MidiTrack::roll() all had the exact same loop for flushing buffers
of their Delivery processors. That was a lot of replicated code that had
to be kept synchronised by hand. Put that code into a protected method
Route::flush_processor_buffers_locked() which is called instead.

7 years agoUpdate french translation
Julien "_FrnchFrgg_" RIVAUD [Thu, 14 Jul 2016 21:23:59 +0000 (23:23 +0200)]
Update french translation

7 years agoMake french translation up-to-date with Ardour's current code
Julien "_FrnchFrgg_" RIVAUD [Thu, 14 Jul 2016 21:16:26 +0000 (23:16 +0200)]
Make french translation up-to-date with Ardour's current code

7 years agoprevent duplicate symbols (fix OSX compilation)
Robin Gareus [Thu, 14 Jul 2016 21:11:11 +0000 (23:11 +0200)]
prevent duplicate symbols (fix OSX compilation)

7 years agofix OSX compilation
Robin Gareus [Thu, 14 Jul 2016 21:08:23 +0000 (23:08 +0200)]
fix OSX compilation

7 years agofix file permissions - themes are not executable
Robin Gareus [Thu, 14 Jul 2016 19:40:43 +0000 (21:40 +0200)]
fix file permissions - themes are not executable

7 years agoclean up a-comp, remove old prototype UI
Robin Gareus [Thu, 14 Jul 2016 19:26:31 +0000 (21:26 +0200)]
clean up a-comp, remove old prototype UI

7 years agofix a -Wsign-compare
Robin Gareus [Thu, 14 Jul 2016 19:21:52 +0000 (21:21 +0200)]
fix a -Wsign-compare

7 years agoOSC: Fix Soloing to disable all solos in SIP mode as well
Len Ovens [Thu, 14 Jul 2016 19:06:37 +0000 (12:06 -0700)]
OSC: Fix Soloing to disable all solos in SIP mode as well

7 years agoenough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
Paul Davis [Thu, 14 Jul 2016 18:44:52 +0000 (14:44 -0400)]
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h

7 years agofix a-eq interpolation
Robin Gareus [Thu, 14 Jul 2016 18:42:07 +0000 (20:42 +0200)]
fix a-eq interpolation

7 years agoOSC: Add surface save and restore
Len Ovens [Thu, 14 Jul 2016 18:41:53 +0000 (11:41 -0700)]
OSC: Add surface save and restore

7 years agorefine a-eq inline display size + grid
Robin Gareus [Thu, 14 Jul 2016 17:44:03 +0000 (19:44 +0200)]
refine a-eq inline display size + grid

7 years agoNO-OP whitespace
Robin Gareus [Thu, 14 Jul 2016 16:48:31 +0000 (18:48 +0200)]
NO-OP  whitespace

7 years agofix plugin-analysis for VST (no in-place processing)
Robin Gareus [Thu, 14 Jul 2016 16:43:19 +0000 (18:43 +0200)]
fix plugin-analysis for VST (no in-place processing)

7 years agoa-EQ: Remove LPF/HPF completely from this plugin
Damien Zammit [Thu, 14 Jul 2016 15:53:32 +0000 (01:53 +1000)]
a-EQ: Remove LPF/HPF completely from this plugin

7 years agofix plugin analysis for variable i/o plugins
Robin Gareus [Thu, 14 Jul 2016 15:46:34 +0000 (17:46 +0200)]
fix plugin analysis for variable i/o plugins

7 years agocanvas HSV color serialization needs LocaleGuard
Paul Davis [Thu, 14 Jul 2016 15:46:02 +0000 (11:46 -0400)]
canvas HSV color serialization needs LocaleGuard

7 years agoUIConfig needs C numeric locale while setting GTK color theme
Paul Davis [Thu, 14 Jul 2016 15:37:37 +0000 (11:37 -0400)]
UIConfig needs C numeric locale while setting GTK color theme

7 years agocorrectly initialize C++ locale as well as C locale
Paul Davis [Thu, 14 Jul 2016 15:36:40 +0000 (11:36 -0400)]
correctly initialize C++ locale as well as C locale

7 years agoredesign PBD::LocaleGuard to work correctly (i.e. not break translations)
Paul Davis [Thu, 14 Jul 2016 15:35:55 +0000 (11:35 -0400)]
redesign PBD::LocaleGuard to work correctly (i.e. not break translations)

7 years agoconsistent height of a-eq a-hp/lp
Robin Gareus [Thu, 14 Jul 2016 14:48:28 +0000 (16:48 +0200)]
consistent height of a-eq a-hp/lp

7 years agoproperly sort port-names
Robin Gareus [Thu, 14 Jul 2016 14:47:27 +0000 (16:47 +0200)]
properly sort port-names

7 years agoadd a natural sort algorithm
Robin Gareus [Thu, 14 Jul 2016 14:52:19 +0000 (16:52 +0200)]
add a natural sort algorithm

7 years agoOSC: Fix off by one error
Len Ovens [Thu, 14 Jul 2016 13:52:09 +0000 (06:52 -0700)]
OSC: Fix off by one error

7 years agoanother i18n/.po update
Paul Davis [Thu, 14 Jul 2016 10:21:03 +0000 (06:21 -0400)]
another i18n/.po update

7 years agofix plural form snafu in translation macro
Paul Davis [Wed, 13 Jul 2016 22:27:14 +0000 (18:27 -0400)]
fix plural form snafu in translation macro

7 years agoanother i18n/.po update
Paul Davis [Thu, 14 Jul 2016 10:19:10 +0000 (06:19 -0400)]
another i18n/.po update

7 years agoregenerate and manually fix all PO files so that ./waf i18n doesn't generate unnecess...
Paul Davis [Wed, 13 Jul 2016 22:27:53 +0000 (18:27 -0400)]
regenerate and manually fix all PO files so that ./waf i18n doesn't generate unnecessary errors

7 years agoRemove a (no longer needed) source file from our MSVC project (evoral)
John Emmas [Thu, 14 Jul 2016 08:42:55 +0000 (09:42 +0100)]
Remove a (no longer needed) source file from our MSVC project (evoral)

7 years agoa-EQ, a-Reverb: Tweaks to parameter smoothing
Damien Zammit [Thu, 14 Jul 2016 06:38:40 +0000 (16:38 +1000)]
a-EQ, a-Reverb: Tweaks to parameter smoothing