Commit graph

6951 commits

Author SHA1 Message Date
Paul Davis
87fa554ac9 initial redesign of canvas scrolling to facilitate independent x- and y-axis scrolling of specific groups within the canvas.
This commit should cause no change in behaviour, but contains all the code and changes necessary
for the next step
2014-08-17 13:37:16 -04:00
Paul Davis
6d3b9fe7e6 overwrite state of libs/canvas with code from corresponding period in ardour-cairocanvas
This makes continued merges with ardour codebase easier, at the
small cost of removing the XML-based constructors. They were not
in use anyway and their use doesn't really fit into the
conception of the canvas as a dynamic UI element. Could reintroduce
them at a later date.
2014-08-17 13:29:01 -04:00
John Emmas
1d945f26be When writing '.jackdrc' make sure we enclose any device names in quotation marks
(in Windows, device names almost always contain whitespace)
2014-08-16 21:48:07 -04:00
John Emmas
68a34d0d6f Keep this #include consistent with similar ones
(evoral/evoral doesn't get used anywhere else)
2014-08-16 21:48:01 -04:00
Robin Gareus
55c4c3d819 ALSA backend: tweak midi parser (fix start mid sequence) 2014-08-16 21:47:48 -04:00
Robin Gareus
151a410a13 ALSA backend: device detection 2014-08-16 21:47:40 -04:00
Robin Gareus
a5e1cbda85 ALSA backend: add raw midi parser 2014-08-16 21:44:58 -04:00
Robin Gareus
78d967d48c ALSA backend: raw midi prototype 2014-08-16 21:44:51 -04:00
Robin Gareus
c90428b5b8 ALSA backend (based on Dummy backend and zita-alsa-pcmi)
Conflicts:
	gtk2_ardour/ardev_common.sh.in
	libs/backends/wscript
2014-08-16 21:44:42 -04:00
Paul Davis
60bb0b5f58 substantive changes to the logic and safety for naming of (audio/MIDI) sources, especially when created via import
Conflicts:
	libs/ardour/import.cc
2014-08-16 18:02:22 -04:00
Robin Gareus
206b9acb5f DummyBackend: fix midi event mux+sorting 2014-08-16 18:00:48 -04:00
Robin Gareus
33b19c61d5 Dummy backend, revise small things 2014-08-16 18:00:01 -04:00
Robin Gareus
3d9498e351 dummy-backend, fix physical ports in/out convention. 2014-08-16 17:59:56 -04:00
Robin Gareus
bafc5b816c test possible 'flickering' with nvidia 2014-08-16 17:59:45 -04:00
Robin Gareus
a37a75a05c do not thin() automation event list on load.
only thin() when writing automation. This fixes issues with
loading short x-fades (which can be stretched later).

TODO: thinning should not just drop, but interpolate and use
more elaborate logic, compared to A2/MB2 Curve::merge_nascent()
2014-08-16 17:59:35 -04:00
Robin Gareus
31c49330f0 don't allow waveform to bleed into TimeAxisViewItem frame border 2014-08-16 17:59:10 -04:00
Robin Gareus
f413ab6ace use CubicSpline interpolation for x-fade preset Shapes 2014-08-16 17:58:29 -04:00
Robin Gareus
de84813c0d update Evoral::Curve to honor ControlList::InterpolationStyle 2014-08-16 17:58:23 -04:00
John Emmas
8dd1ed2b7a Add newly introduced sources to MSVC project
(xfade_curve stuff)

Conflicts:
	libs/canvas/MSVCcanvas/cairocanvas.vcproj
2014-08-16 17:58:17 -04:00
John Emmas
c7dc741bed Rearrange some #includes to keep MSVC happy 2014-08-16 17:58:01 -04:00
Robin Gareus
ece0d75122 Fix code to prepare re-enable cubic spline interpolation of automation data.
see also 24917e4c9e
2014-08-16 17:57:52 -04:00
Robin Gareus
9bbc29c022 panner: backwards compatibility, constrain pan-range in old sessions
fixes http://tracker.ardour.org/view.php?id=5823#c15686

This is only an issue when loading an old session
(pre 3.5.308 - actual change was 21ca6a10) for the first
time with newer ardour.
Saving and re-loading with ardour >= 3.5.308 fixed this as well.
2014-08-16 17:57:47 -04:00
Robin Gareus
81068a7932 smooth visual curve drawing 2014-08-16 17:57:42 -04:00
Robin Gareus
d8bdfa6f17 use fixed number of steps for dB-scale x-fade curves.
32 steps is sufficient for all practical musical purposes.
2014-08-16 17:57:13 -04:00
Robin Gareus
1685c2bff2 fixed number of steps for symmetric fades:
Extra steps are all below -20dB vs inverse signal being over -2dB.
linear interpolation -6dB steps is sufficient for the tail.
2014-08-16 17:57:08 -04:00
Paul Davis
9e82cb582d fix data loss/file deletion caused by mistaken used of Session::source_by_path() to check if an AUDIO filesource with a given path already exists.
::source_by_path() was written for MIDI files only. I fixed the call and renamed the two similar functions (one for audio and one for MIDI) to make it more clear.
2014-08-16 17:56:44 -04:00
Robin Gareus
e545bcb193 fix symmetric fade-shape (still variable number of steps) 2014-08-16 17:56:40 -04:00
Robin Gareus
4ee31432e4 Symmetric x-fade, use equivalent of -6dB per step for 7 steps. 2014-08-16 17:56:34 -04:00
Robin Gareus
ec90b1c774 fix typo in vst doc. 2014-08-16 17:56:14 -04:00
Robin Gareus
08666b2cfd smoothen rendering of x-fades 2014-08-16 17:56:05 -04:00
Robin Gareus
c79776d0e9 increase accuracy of fades. 2014-08-16 17:55:59 -04:00
Robin Gareus
f91194f60f fix prev commit 2014-08-16 17:55:54 -04:00
Robin Gareus
93fea9021e renice x-fade rendering w/cairo-antialiasing 2014-08-16 17:55:47 -04:00
Robin Gareus
e06a7e60f0 revert x-fade curves to Mixbus2. 2014-08-16 17:55:40 -04:00
Paul Davis
050254d521 make building the dummy backend be a configure-time option. defaults to False for the time being
Conflicts:
	libs/backends/wscript
2014-08-16 17:55:18 -04:00
Paul Davis
c934033e23 manually jump forward state of system_exec files to avoid various cherry-picking-related problems during merge with ardour 2014-08-16 17:53:33 -04:00
Colin Fletcher
c2bdb00b0c Use SystemExec for post-export hook
Use the new command-line parsing constructor for SystemExec to construct
the args array for the post-export hook from the entered command string,
with some simple substitutions for filename, directory, &c.

Conflicts:
	gtk2_ardour/export_format_dialog.cc
	libs/ardour/export_handler.cc
2014-08-16 17:43:50 -04:00
Robin Gareus
ec99a4f5c2 Canvas: new x-fade drawing, two curve widget
Conflicts:
	libs/canvas/wscript
2014-08-16 17:23:25 -04:00
Robin Gareus
9ec7b79ac9 Revert "cairo sub-surface prototype & example
This reverts commit c57fcde78c.
and also     commit f1f8f89fcb.
2014-08-16 17:21:08 -04:00
Robin Gareus
17e94e02e8 exercise subsurface rendering for x-fade curves 2014-08-16 17:20:57 -04:00
Robin Gareus
da7cdb9b26 cairo sub-surface prototype - intermediate flattened group renderer. 2014-08-16 17:20:51 -04:00
Robin Gareus
c360c6cca9 VST: fix name detection if effGetEffectName is N/A, remove superfluous \0. 2014-08-16 17:20:43 -04:00
Robin Gareus
026618978f VST: properly query name from plugin 2014-08-16 17:20:37 -04:00
Robin Gareus
87974bf89c Curve: anti-aliasing.
use cairo for anti-aliasing, and ignore explicit Catmull-Rom
points for that fall on the same x-cordinate.
2014-08-16 17:20:27 -04:00
Robin Gareus
3d9b03017c implement Curve in/outside fill 2014-08-16 17:20:09 -04:00
Robin Gareus
264947595a directly apply waveform clip-level changes 2014-08-16 17:19:17 -04:00
John Emmas
3d1ff60c57 (Windows) Add support for finding the bundled version of Jack which comes with Mixbus
A few things need to be tested / completed:-
    1) The code is currently guarded by #ifdef COMPILER_MSVC. This is just precautionary. If it builds okay with MinGW ,the guard can be removed.
    2) Windows Playback and Capture devices almost always have different names. This needs to get accommodated in our Backend dialog (as in Mixbus)
    3) Windows Playback and Capture devices will almost always contain spaces. We need to accommodate this when writing to .jackdrc (surround them in quote marks)
2014-08-16 17:19:11 -04:00
John Emmas
3bcaa37a97 Remove an unnecessary #define 2014-08-16 17:19:04 -04:00
John Emmas
bbb0bf4b33 Use PLATFORM_WINDOWS (in preference to WIN32) for consistency with the other libraries
Conflicts:
	libs/backends/jack/jack_utils.cc
2014-08-16 17:17:03 -04:00
Robin Gareus
b53cb263e5 "We brake for nobody." oh wait. - fixes Rectified Waveform view. 2014-08-16 17:16:41 -04:00