Robin Gareus [Mon, 13 Jan 2014 11:02:00 +0000 (12:02 +0100)]
delete 'big' 2d panner window, if panner changes to mono|stereo
Robin Gareus [Mon, 13 Jan 2014 10:49:09 +0000 (11:49 +0100)]
fix delivery: check if panshell exists on session-load
Robin Gareus [Mon, 13 Jan 2014 10:08:51 +0000 (11:08 +0100)]
ProcessorWindowProxy::processor_going_away takes care of deletion
Robin Gareus [Mon, 13 Jan 2014 10:08:37 +0000 (11:08 +0100)]
misc panning related UI tweaks:
* connect 2D panner "edit" to big window
* disconnect 2D-panner GUI when it's visible but panner-type changes
* ignore mixer-strip level-meter context-menu for Aux-sends
Robin Gareus [Mon, 13 Jan 2014 09:50:49 +0000 (10:50 +0100)]
independent panning for external sends
Robin Gareus [Mon, 13 Jan 2014 09:50:22 +0000 (10:50 +0100)]
fix output metering for Sends (Aux and External)
Robin Gareus [Mon, 13 Jan 2014 09:48:37 +0000 (10:48 +0100)]
add independent panner for internal (Aux) sends
Robin Gareus [Mon, 13 Jan 2014 09:48:23 +0000 (10:48 +0100)]
update internal-send port-count when target port-count changes
Robin Gareus [Mon, 13 Jan 2014 09:47:17 +0000 (10:47 +0100)]
ignore additional channels for AFL, PFL:
If the monitor-section has fewer-channels than the solo-listen point:
ignore additional channels.
Robin Gareus [Mon, 13 Jan 2014 09:46:11 +0000 (10:46 +0100)]
fix deadlock when removing monitoring-section
Robin Gareus [Sun, 12 Jan 2014 22:13:35 +0000 (23:13 +0100)]
fix processor -> reconfigure I/O || process concurrency
Add a ReaderLock to Route::process_output_buffers().
But process_output_buffers() is always called with processor-lock
held. To avoid deadlocks, a processor WriterLock must always imply
a process-lock (IFF reconfigure-I/O is called with _processor_lock).
Otherwise: e.g.
* add_processor() -> takes processor-lock. set up and activate processor.
* simult. audio-engine process, process-lock -> call process_output_buffers() -> wait for processor-lock
* add_processor() continues -> calls reconfigure-io -> take process-lock -> deadlock.
Robin Gareus [Sun, 12 Jan 2014 20:47:15 +0000 (21:47 +0100)]
take process lock when adding processors:
fixes possible crash if a processor modifies port-count
1. a processor is inserted and activated with processor-lock held
2. only after that the process_lock() is taken, configure_processors() is called which reconfigures-IO
BUT if the processor that is inserted changes the channel count AND audio is processed before IOs are reconfigured
-> possible crash (invalid port-buffers)
To reproduce: Bus1 (2in, 3out), Bus2 (2in, 3out)
- add a send from Bus1 to Bus2,
- then add a processor to Bus1, just before the send which
increases the channel-count to 4 -> occasional crash or assert.
Robin Gareus [Sun, 12 Jan 2014 20:41:02 +0000 (21:41 +0100)]
VBAP panner UI tweaks:
* fix mouse-grab of sentinel
* make GUI more hemisphere like (circles at latitude)
* change alpha slightly to show signal overlap
Robin Gareus [Sun, 12 Jan 2014 17:11:14 +0000 (18:11 +0100)]
aubio 3+4 compat
Robin Gareus [Sun, 12 Jan 2014 16:14:14 +0000 (17:14 +0100)]
cosmetic change - properly use lilv API
Robin Gareus [Sun, 12 Jan 2014 02:56:35 +0000 (03:56 +0100)]
don't display elevation if panner does not support it.
Robin Gareus [Sun, 12 Jan 2014 02:36:20 +0000 (03:36 +0100)]
swap channel VBAP channel
Robin Gareus [Sun, 12 Jan 2014 01:05:01 +0000 (02:05 +0100)]
credit where credit is due for speaker-config and VBAP fixes inspiration
Robin Gareus [Sat, 11 Jan 2014 23:57:27 +0000 (00:57 +0100)]
VBAP GUI object-grab & position
Robin Gareus [Sat, 11 Jan 2014 22:34:19 +0000 (23:34 +0100)]
hide speaker-config in menu (it's not implemented yet)
Robin Gareus [Sat, 11 Jan 2014 22:30:13 +0000 (23:30 +0100)]
add spinbox to control width in VBAP GUI,..
Robin Gareus [Sat, 11 Jan 2014 22:30:01 +0000 (23:30 +0100)]
VBAP rework (part III): fix position computation backend & GUI
Robin Gareus [Sat, 11 Jan 2014 22:29:46 +0000 (23:29 +0100)]
update default speaker position list
Robin Gareus [Sat, 11 Jan 2014 22:29:36 +0000 (23:29 +0100)]
VBAP GUI depends on signal-position (not parameter changes)
Robin Gareus [Sat, 11 Jan 2014 22:29:23 +0000 (23:29 +0100)]
VBAP backend re-work (part two): speaker positioning
* clean up source (whitespace)
* fix speaker 3x3 matrix iteration
* update math to go along with Ardour Cartesian -- fixes rounding errors
* fix division by zero in cross_prod()
* disable old debug output
(NB PBD::spherical_to_cartesian() returns
3.7494e-33, 6.12323e-17, 1 for azimuth 90 elevation 90 distance 1
while it should return
0.000000, 0.000000, 1 for azimuth 90 elevation 90 distance 1
IOW cos(90.0 * 2.0 * M_PI / 360.0) != 0
Cause unknown. This is currently worked around check in vec_length()
)
Robin Gareus [Sat, 11 Jan 2014 21:59:25 +0000 (22:59 +0100)]
VBAP backend re-work (part one):
* fix azimuth, don't clamp but map to [0,1]
* prepare elevation (10+ speakers)
John Emmas [Mon, 13 Jan 2014 14:27:56 +0000 (14:27 +0000)]
Add provision for building 'libtimecode' as a DLL (MSVC build)
John Emmas [Mon, 13 Jan 2014 14:26:19 +0000 (14:26 +0000)]
'libs/timecode' - Change some instances of 'rint' to be 'lrint' (better compatibility with MSVC)
John Emmas [Mon, 13 Jan 2014 12:47:21 +0000 (12:47 +0000)]
'libs/evoral' - and add 'Note.impl' to the project
John Emmas [Mon, 13 Jan 2014 12:16:02 +0000 (12:16 +0000)]
'libs/evoral' - #include 'Note.impl' when building with MSVC (this is necessary to ensure that Evoral::Note gets exported from the evoral DLL)
John Emmas [Mon, 13 Jan 2014 10:49:18 +0000 (10:49 +0000)]
Merge branch 'windows+cc' into cairocanvas
John Emmas [Mon, 13 Jan 2014 10:22:31 +0000 (10:22 +0000)]
Check in some minor modifications (to MSVC specific headers)
Paul Davis [Mon, 13 Jan 2014 01:23:45 +0000 (20:23 -0500)]
use LIBEVORAL_TEMPLATE_API with Evoral::Note
Paul Davis [Mon, 13 Jan 2014 01:01:12 +0000 (20:01 -0500)]
fix 64 bit template types
Paul Davis [Mon, 13 Jan 2014 01:00:55 +0000 (20:00 -0500)]
add new file (required by MSVC) to sources list
Paul Davis [Mon, 13 Jan 2014 01:00:26 +0000 (20:00 -0500)]
use LIBEVORAL_TEMPLATE_API
Also clean up unnecessary comments - git blame provides complete per-line history, no need to leave comments behind
Paul Davis [Mon, 13 Jan 2014 00:59:40 +0000 (19:59 -0500)]
add LIBEVORAL_TEMPLATE_API to deal with gcc/msvc difference of opinion
Paul Davis [Sun, 12 Jan 2014 20:39:58 +0000 (15:39 -0500)]
remove VAMP and Rubberband from source tree
Paul Davis [Sun, 12 Jan 2014 20:39:34 +0000 (15:39 -0500)]
add -fvisibility=default back to cxx/cflags when building QM DSP and VAMP plugins libs, because ... ugh
Paul Davis [Sun, 12 Jan 2014 20:38:49 +0000 (15:38 -0500)]
add export visibility macro
Paul Davis [Sun, 12 Jan 2014 20:38:29 +0000 (15:38 -0500)]
add new file
Paul Davis [Sun, 12 Jan 2014 19:50:23 +0000 (14:50 -0500)]
add missing export/visibility macro
Paul Davis [Sun, 12 Jan 2014 17:47:02 +0000 (12:47 -0500)]
remove taglib from source tree (require external provision)
Paul Davis [Sun, 12 Jan 2014 16:34:37 +0000 (11:34 -0500)]
move -fvisibility=hidden to the top of the source tree, and remove its internal use; use libtimecode as a shared lib again
Paul Davis [Sun, 12 Jan 2014 16:33:58 +0000 (11:33 -0500)]
add export/visibility macros to libtimecode and build as a shared library again
Paul Davis [Sun, 12 Jan 2014 16:33:16 +0000 (11:33 -0500)]
build libsmf as a static library, since it is private to evoral and would otherwise require export visibility control
This also removes -fvisibility=hidden, a change that is taking place across the source tree and will show up in a later commit elsewhere
John Emmas [Sun, 12 Jan 2014 17:45:28 +0000 (17:45 +0000)]
Merge branch 'windows+cc' into cairocanvas
John Emmas [Sun, 12 Jan 2014 17:40:25 +0000 (17:40 +0000)]
'libs/evoral' - Move a couple of 'IdentityConverter' functions into their own dedicated C++ source file. This allows them to be used correctly with __dllimport and __dllexport. Hopefully, this technique will also work for gcc / mingw
John Emmas [Sun, 12 Jan 2014 17:36:17 +0000 (17:36 +0000)]
'libs/evoral' - DLL visibility stuff and associated changes needed for building with MSVC. Currently includes debugging information and things that are just commented out until we have known compatibility with the other platforms (i.e. contains stuff to be removed at a later date)
Paul Davis [Sat, 11 Jan 2014 20:19:18 +0000 (15:19 -0500)]
fix merge with master
Paul Davis [Sat, 11 Jan 2014 20:02:10 +0000 (15:02 -0500)]
fix issues with isnan/isinf on OS X where <cmath> hides isnan/isinf and forces std::isnan/std::isinf
Paul Davis [Sat, 11 Jan 2014 20:01:29 +0000 (15:01 -0500)]
avoid apple gcc warning
David Robillard [Mon, 6 Jan 2014 22:02:55 +0000 (17:02 -0500)]
Support midnam controller value labels.
David Robillard [Mon, 6 Jan 2014 20:32:37 +0000 (15:32 -0500)]
Fix whitespace (no functional changes).
Paul Davis [Fri, 10 Jan 2014 22:11:10 +0000 (17:11 -0500)]
finished merge of cairocanvas with windows and windows+cc branches
Paul Davis [Fri, 10 Jan 2014 21:07:57 +0000 (16:07 -0500)]
Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there
Paul Davis [Fri, 10 Jan 2014 19:53:03 +0000 (14:53 -0500)]
fix merge errors with master
Paul Davis [Fri, 10 Jan 2014 19:36:05 +0000 (14:36 -0500)]
final (?) tweaks to rectangle rendering
Paul Davis [Fri, 10 Jan 2014 19:35:36 +0000 (14:35 -0500)]
clamp expose (queue_redraw()) requests to visible window area, some extra debugging details
Robin Gareus [Fri, 10 Jan 2014 19:35:32 +0000 (20:35 +0100)]
fix panner search path
Paul Davis [Fri, 10 Jan 2014 19:33:50 +0000 (14:33 -0500)]
remove unnecessary pixel placement stuff from editor cursor
Paul Davis [Fri, 10 Jan 2014 17:08:58 +0000 (12:08 -0500)]
make no-zero-line be the default for wave views (still shown for normal audio region views
Paul Davis [Fri, 10 Jan 2014 17:08:17 +0000 (12:08 -0500)]
fix thinko related to streamview construction that caused bad placement/display of MIDI automation/CC tracks
Paul Davis [Fri, 10 Jan 2014 17:06:07 +0000 (12:06 -0500)]
fix up construction and outlining for automation time axis (track) base rect
Paul Davis [Fri, 10 Jan 2014 16:56:55 +0000 (11:56 -0500)]
tweak pixel-level dimensions and positioning
Paul Davis [Fri, 10 Jan 2014 16:56:15 +0000 (11:56 -0500)]
indentation
Paul Davis [Fri, 10 Jan 2014 16:55:19 +0000 (11:55 -0500)]
regionviews used for (MIDI) automation (CC) should not show a name highlight
Paul Davis [Fri, 10 Jan 2014 16:54:32 +0000 (11:54 -0500)]
tweak up pixel-level positioning
Paul Davis [Fri, 10 Jan 2014 16:54:05 +0000 (11:54 -0500)]
fix up thinko in recent raise_to_top/lower_to_bottom optimization
Paul Davis [Fri, 10 Jan 2014 16:02:34 +0000 (11:02 -0500)]
slightly expand CanvasRender debug output
Paul Davis [Fri, 10 Jan 2014 16:02:05 +0000 (11:02 -0500)]
don't go through ::deliver_enter_leave() unnecessarily
Paul Davis [Fri, 10 Jan 2014 15:57:33 +0000 (10:57 -0500)]
fix height issue with canvas-based rulers/bars, and use enums for outline specs
Paul Davis [Fri, 10 Jan 2014 15:55:43 +0000 (10:55 -0500)]
coding style
Robin Gareus [Fri, 10 Jan 2014 11:36:20 +0000 (12:36 +0100)]
re-configure _all_ panners on a route, when panner type changes
Robin Gareus [Fri, 10 Jan 2014 11:13:22 +0000 (12:13 +0100)]
add a fixed priority to panner modules
Robin Gareus [Fri, 10 Jan 2014 11:12:06 +0000 (12:12 +0100)]
display info about replicated processors
Robin Gareus [Fri, 10 Jan 2014 00:02:45 +0000 (01:02 +0100)]
updated balance GUI
Robin Gareus [Thu, 9 Jan 2014 20:57:18 +0000 (21:57 +0100)]
update mono & balance panner GUI
Robin Gareus [Thu, 9 Jan 2014 19:48:04 +0000 (20:48 +0100)]
add [missing] left_half_rectangle util
Robin Gareus [Thu, 9 Jan 2014 19:03:06 +0000 (20:03 +0100)]
remove inadvertently commited debug printf()
Robin Gareus [Thu, 9 Jan 2014 18:22:18 +0000 (19:22 +0100)]
NOOP - re-indent src (no more mixed tab+space style)
Robin Gareus [Thu, 9 Jan 2014 18:20:41 +0000 (19:20 +0100)]
prepare mono panner rework move to pango
Robin Gareus [Thu, 9 Jan 2014 18:18:19 +0000 (19:18 +0100)]
processor routing: use small boxes (instead of circles) for ports
Robin Gareus [Thu, 9 Jan 2014 17:19:57 +0000 (18:19 +0100)]
refine stereo-panner GUI:
* cairo pixel alignment
* use pango for text
Paul Davis [Thu, 9 Jan 2014 16:54:01 +0000 (11:54 -0500)]
a few coding style cleanups
Paul Davis [Thu, 9 Jan 2014 16:53:03 +0000 (11:53 -0500)]
reorder members to allow different initialization order
We want to be able to use _name when initializing _view.
Robin Gareus [Thu, 9 Jan 2014 13:32:13 +0000 (14:32 +0100)]
draw settings of bypassed panners
Paul Davis [Wed, 8 Jan 2014 23:20:19 +0000 (18:20 -0500)]
prevent Rect::expand() from generating negative coordinates where there were none before
Robin Gareus [Wed, 8 Jan 2014 23:18:29 +0000 (00:18 +0100)]
rework panning -- Squashed commit of the following:
commit
6f4f4f161b00cb36252727f67ecc4913eb944fd7
Author: Robin Gareus <robin@gareus.org>
Date: Wed Jan 8 22:13:09 2014 +0100
fix panner plugin discovery (prev commit)
commit
26e514f4a80af9192cae3cbd62fde0ae95474dfc
Author: Robin Gareus <robin@gareus.org>
Date: Wed Jan 8 18:56:59 2014 +0100
update panner plugin discovery
* recurse dirs in 'PANNER_PATH' and 'panner_dir_name' up to 1 level.
* don't look in ardour_dll_directory() -- no panners are supposed to be in there
* use .dylib on OSX exclusively.
commit
a514c3f1c425dccf3d42eee9d2b183b44fd26a03
Author: Robin Gareus <robin@gareus.org>
Date: Wed Jan 8 16:48:34 2014 +0100
remove debug/devel printf()s
commit
d863742ddc69af493ee6a8817bc778968d9b0800
Author: Robin Gareus <robin@gareus.org>
Date: Wed Jan 8 16:17:13 2014 +0100
panner-type: session backward/forward compatibility
commit
25d5e4c663ada34129451b0f9045ab047d6cc2f0
Author: Robin Gareus <robin@gareus.org>
Date: Wed Jan 8 16:09:07 2014 +0100
update URIs -> URLs
commit
00a606a43d9456cfbaf43cae4fb598549326ba71
Merge:
0f1cec1 382eb0f
Author: Robin Gareus <robin@gareus.org>
Date: Wed Jan 8 03:29:45 2014 +0100
Merge branch 'master' into panning
commit
0f1cec19babae538c9697eed4be5d6ddc851b013
Author: Robin Gareus <robin@gareus.org>
Date: Wed Jan 8 02:41:15 2014 +0100
switch panner ID to URI
commit
575282b412c3ae1cd8219cf75f00a1a4239e2813
Author: Robin Gareus <robin@gareus.org>
Date: Wed Jan 8 00:50:15 2014 +0100
prepare API for panner URI
commit
ea62cd049308859782a7bb16e4f18169d8638b46
Author: Robin Gareus <robin@gareus.org>
Date: Tue Jan 7 19:57:06 2014 +0100
update development doc relating to panner selection
commit
586d7de2392e26b9d7f597b1a00b98dfaa42ecdc
Author: Robin Gareus <robin@gareus.org>
Date: Tue Jan 7 19:56:24 2014 +0100
clean up PanShell::set_user_selected_panner_type() API
commit
99077886a5a1cacece908d87c29c3be12903027e
Author: Robin Gareus <robin@gareus.org>
Date: Tue Jan 7 04:46:22 2014 +0100
panner bypass: visualize & [in]sensitivity
commit
46d688d216f0e67d672376a607157af02b359fb2
Merge:
4e67573 c4cdf61
Author: Robin Gareus <robin@gareus.org>
Date: Tue Jan 7 02:18:54 2014 +0100
Merge branch 'master' into panning
commit
4e67573517b3d60ddf65729783687b16cfb2adb7
Author: Robin Gareus <robin@gareus.org>
Date: Tue Jan 7 01:05:17 2014 +0100
don't call configure_io() for merely swapping panners
commit
d32a4c51f6967f48f7680554866f1f7b311ccde1
Merge:
a3226d4 cec3116
Author: Robin Gareus <robin@gareus.org>
Date: Mon Jan 6 23:49:55 2014 +0100
Merge branch 'master' into panning
commit
a3226d46b598afae54a65ac69320eca84669f347
Author: Robin Gareus <robin@gareus.org>
Date: Mon Jan 6 17:52:38 2014 +0100
add notes about panner re-design
commit
d1ae2366024605f22b05572a81ee249e6fdbcd2f
Author: Robin Gareus <robin@gareus.org>
Date: Mon Jan 6 15:06:40 2014 +0100
add simple stereo-balance panner for testing
commit
e0ddd256ff2288b8d8cfad3ad485a916964ce5b5
Author: Robin Gareus <robin@gareus.org>
Date: Mon Jan 6 17:02:52 2014 +0100
add frontend/GUI for panner selection
commit
2cb8f846755eb5aea8a2620d31ea981c446c4041
Author: Robin Gareus <robin@gareus.org>
Date: Mon Jan 6 17:02:20 2014 +0100
prepare backend for panner selection
Sakari Bergen [Wed, 8 Jan 2014 20:00:34 +0000 (22:00 +0200)]
Add unit test runner (artest) and a config option to run tests after builds
Sakari Bergen [Wed, 8 Jan 2014 18:35:46 +0000 (20:35 +0200)]
Add -fno-omit-frame-pointer to AddressSanitizer options
Sakari Bergen [Wed, 8 Jan 2014 18:33:17 +0000 (20:33 +0200)]
Fix dither data width assertions and related tests
Fixes 32-bit export
This was broken from the start, and was broken in a new way in
52309c0c4fc107cdde9a99f2340fe4d8cf4ff382
Paul Davis [Wed, 8 Jan 2014 15:42:14 +0000 (10:42 -0500)]
tweak rectangle bounding box computation
Paul Davis [Wed, 8 Jan 2014 15:31:39 +0000 (10:31 -0500)]
remove unused code
Paul Davis [Wed, 8 Jan 2014 15:31:14 +0000 (10:31 -0500)]
change rounding used for convert Rect from canvas to window coordinates
Paul Davis [Wed, 8 Jan 2014 15:29:03 +0000 (10:29 -0500)]
Revert "remove unused code"
This reverts commit
2d283c17e17940c356af0cc1366b714e0d7b76be.
Paul Davis [Wed, 8 Jan 2014 15:28:46 +0000 (10:28 -0500)]
remove unused code
Paul Davis [Wed, 8 Jan 2014 03:51:41 +0000 (22:51 -0500)]
avoid 1 pixel overlap of end xfade
Paul Davis [Wed, 8 Jan 2014 03:51:18 +0000 (22:51 -0500)]
shrink waveview zero line to single pixel
Paul Davis [Wed, 8 Jan 2014 02:37:48 +0000 (21:37 -0500)]
Merge branch 'master' into cairocanvas