Paul Davis [Tue, 23 Jun 2015 12:18:11 +0000 (08:18 -0400)]
provide control over waveform image cache size from GUI
Paul Davis [Tue, 23 Jun 2015 12:17:48 +0000 (08:17 -0400)]
change location for initialization of static WaveView image cache, and provide a visible method to set the cache flush threshold
Paul Davis [Tue, 23 Jun 2015 02:00:45 +0000 (22:00 -0400)]
stop endless loop in WaveViewCache::cache_flush()
Still need to figure out how this could ever happen. It requires an image (shared pointer) to
be in the linear cache image list but not in the map
John Emmas [Mon, 22 Jun 2015 15:08:46 +0000 (16:08 +0100)]
When using the Editor's Shuttle control, stop any shuttling by calling Session::request_stop()
Previously we were using a convoluted scheme of firstly setting the transport speed to 1.0, then later re-setting it to 0.0. On Windows this was having some strange side-effects (such as leaving the transport in Play mode and/or resetting the timeline to zero timecode). Hopefully this change will also work for the other platforms.
Len Ovens [Sat, 20 Jun 2015 16:32:46 +0000 (09:32 -0700)]
Add option to mackie control profile editor to remove binding (fixes #6301)
Colin Fletcher [Fri, 19 Jun 2015 15:12:07 +0000 (16:12 +0100)]
Remove "" around CATALOG number in .cue file
cue2ddp definitely wants the bar code number *not* enclosed in quotes in
.cue files. Leave the quotes in .toc files: cdrdao definitely does need
these.
Colin Fletcher [Fri, 19 Jun 2015 11:16:48 +0000 (12:16 +0100)]
Amend button caption in 'Remove time' dialogue
I missed that it still said 'Cut'.
Robin Gareus [Fri, 19 Jun 2015 20:54:22 +0000 (22:54 +0200)]
also log session-load error to stderr.
If the session fails to load, the editor and error-log window will
never be visible.
Paul Davis [Fri, 19 Jun 2015 12:32:05 +0000 (08:32 -0400)]
two more corrections to waveform zooming changes
Paul Davis [Fri, 19 Jun 2015 12:29:05 +0000 (08:29 -0400)]
fix call to consolidate image cache to use the information held in the request
Paul Davis [Fri, 19 Jun 2015 12:15:25 +0000 (08:15 -0400)]
various tweaks to the height/sizing of audioregion views and their waveforms
Paul Davis [Fri, 19 Jun 2015 12:14:02 +0000 (08:14 -0400)]
stop pixel jitter when changing waveview height.
To avoid pixel jitter, the top and bottom of each line in the waveview must be computed together in a single computation,
rather than independently.
Also, remove various height corrections and cairo translations that are not necessary or relevant anymore. A subsequent
commit for the GUI will pick up on this work to get the appearance completely correct
Paul Davis [Fri, 19 Jun 2015 12:10:45 +0000 (08:10 -0400)]
attempt to correctly respond to changes in _amplitude_above_axis in ArdourCanvas::WaveView
Paul Davis [Fri, 19 Jun 2015 12:10:35 +0000 (08:10 -0400)]
fix compiler const-cast warning
John Emmas [Fri, 19 Jun 2015 11:55:38 +0000 (12:55 +0100)]
Correctly re-start an iteration (if we delete one of the items being iterated)
John Emmas [Thu, 18 Jun 2015 08:22:34 +0000 (09:22 +0100)]
Rename 'insert_time_dialog.cc/.h' (in our MSVC project)
Robin Gareus [Wed, 17 Jun 2015 19:08:01 +0000 (21:08 +0200)]
update system-wide config
Robin Gareus [Wed, 17 Jun 2015 19:07:40 +0000 (21:07 +0200)]
skip username metadata when dumping default cfg
Colin Fletcher [Tue, 16 Jun 2015 15:20:26 +0000 (16:20 +0100)]
Accept changes to Insert/Remove time clocks without <Enter>
Pass 'true' to accept_on_focus_out of AudioClock, so that editing the
insert/remove time clock and then clicking elsewhere without hitting
<Enter> first doesn't mysteriously set the time back to 00:00:00.000.
Colin Fletcher [Tue, 16 Jun 2015 15:18:23 +0000 (16:18 +0100)]
Add 'accept on focus out' parameter (default false) to AudioClock
If this parameter is passed as 'true', then edits to the clock will be
accepted when the user clicks away from the clock, rather than
unconditionally discarded as hitherto.
Colin Fletcher [Tue, 16 Jun 2015 10:23:50 +0000 (11:23 +0100)]
Rename 'Cut time' to 'Remove time'
'Cut time' implies that the cut timeline items might end up on the
clipboard to be pasted somewhere: this isn't the case at present, so rename
the functions, class, &c. to say 'remove' rather than 'cut'.
Rename insert_time_dialog.{cc|h} to insert_remove_time_dialog while we're
at it.
Colin Fletcher [Mon, 15 Jun 2015 15:07:30 +0000 (16:07 +0100)]
Update 'Cut time' to match 'Insert time', and fix cut-time moving range markers
Add options to move glued & locked markers to Editor::cut_time(), in line
with the insert_time() implementation.
Fix up the order in which operations apply to range marker start & end
points, to avoid problems when a range which lies after the cut point is
shorter than the length of the cut.
Colin Fletcher [Sun, 14 Jun 2015 16:53:25 +0000 (17:53 +0100)]
Use 'Insert time' dialogue for 'Cut time' too.
Colin Fletcher [Tue, 16 Jun 2015 10:28:43 +0000 (11:28 +0100)]
Make 'Insert time' dialogue do for 'Cut time' too
Add a bool cut parameter to InsertTimeDialog's constructor, so it can
do double duty as 'Cut time'. The class probably ought to be renamed too.
Colin Fletcher [Sun, 14 Jun 2015 17:09:30 +0000 (18:09 +0100)]
Insert time: don't unlock markers we're not going to move anyway
Move checking for locked markers in Editor::insert_time() so it doesn't
happen if we're going to skip the marker because it's glued to musical
time.
Colin Fletcher [Sun, 14 Jun 2015 17:07:27 +0000 (18:07 +0100)]
Insert time: fix moving of range markers
When inserting time and moving a range marker, move its end first, before
moving its start, so that if the time being inserted is greater than the
length of the range, we don't try to set its start to after its end.
Robin Gareus [Wed, 17 Jun 2015 00:20:02 +0000 (02:20 +0200)]
fix 1024px width layout (remove nudge clock special case)
Due to some change somewhere along the road the nudge clock does
no longer fit in the transport-bar on 1024px screen with 100% font-scale,
even if the 2nd clock is hidden.
However, these days it does fit nicely on its default position even
with wide-editor-mixer on a 1024px screen.
Robin Gareus [Tue, 16 Jun 2015 17:27:22 +0000 (19:27 +0200)]
-Wsign-compare
Paul Davis [Tue, 16 Jun 2015 12:44:03 +0000 (08:44 -0400)]
add Record-Safe feature to libardour (from Nikolay Polyanovskii)
Paul Davis [Tue, 16 Jun 2015 11:51:50 +0000 (07:51 -0400)]
fixes for canvas text display on Retina (from Valeriy)
Robin Gareus [Mon, 15 Jun 2015 22:47:53 +0000 (00:47 +0200)]
use mpeg4 for internal video format (not mjpeg)
reduces file size.
xjadeo > 0.8 and harvid >= 0.8 handle this fine.
Robin Gareus [Sun, 14 Jun 2015 20:24:53 +0000 (22:24 +0200)]
ALSA backend: add support for half-duplex devices
Robin Gareus [Sun, 14 Jun 2015 20:16:31 +0000 (22:16 +0200)]
allow to scan for half-duplex ALSA devices
Robin Gareus [Sun, 14 Jun 2015 18:43:29 +0000 (20:43 +0200)]
prepare ALSA backend for half-duplex
Robin Gareus [Sun, 14 Jun 2015 16:10:31 +0000 (18:10 +0200)]
probe buffersize if jackd is already running.
Robin Gareus [Sat, 13 Jun 2015 20:05:29 +0000 (22:05 +0200)]
NOOP, reindent code.
Robin Gareus [Sat, 13 Jun 2015 20:04:31 +0000 (22:04 +0200)]
fix crash on OSX displaying MIDI sysex, or similar text.
Paul Davis [Fri, 12 Jun 2015 22:14:09 +0000 (18:14 -0400)]
We were 2 more debug "bits" away from overflow, so recast PBD::DEBUG mechanism away from a 64bit integer and toward std::bitset.
Clean up a few minor related PBD::DEBUG issues along the way
Paul Davis [Thu, 11 Jun 2015 21:04:08 +0000 (17:04 -0400)]
more refactoring of WaveView threaded code to try to get to heart of crash bug
Paul Davis [Thu, 11 Jun 2015 17:34:46 +0000 (13:34 -0400)]
don't queue a callback with the idle event for waveview image generation if one is already queued.
Also, hold relevant lock when waking image rendering thread.
Paul Davis [Thu, 11 Jun 2015 17:33:45 +0000 (13:33 -0400)]
comment tweak
Robin Gareus [Thu, 11 Jun 2015 13:05:46 +0000 (15:05 +0200)]
fix transport loop sub-state events
Loading a session with a loop-range, or setting
a loop-range adds LoopDeclick events.
Normal play back (no loop) never processes/clears the events.
Ardour was constantly doing split cycles for nothing.
This lead to stuck midi-notes: Split cycle calls
increment_global_port_buffer_offset() but the midi_diskstream
itself was not aware of any loop positions or offsets.
Entering loop playback adds those events explicitly
in Session::set_play_loop(). auto_loop_changed() only
needs to add/replace session-events when actively looping.
Paul Davis [Thu, 11 Jun 2015 02:26:58 +0000 (22:26 -0400)]
possible fix for crashes related to vanishing waveviews (and if it doesn't fix anything, it is still more correct than it was)
Paul Davis [Thu, 11 Jun 2015 02:04:20 +0000 (22:04 -0400)]
remove left-over debugging code
Paul Davis [Wed, 10 Jun 2015 22:48:01 +0000 (18:48 -0400)]
fix basic error with computation of partial image width; add use of DEBUG_TRACE (DEBUG::WaveView,...)
Paul Davis [Wed, 10 Jun 2015 22:47:10 +0000 (18:47 -0400)]
add PBD::DEBUG::WaveView
Paul Davis [Wed, 10 Jun 2015 22:46:43 +0000 (18:46 -0400)]
no Save-As progress dialog if we're not copying media
nick_m [Wed, 10 Jun 2015 16:20:37 +0000 (02:20 +1000)]
Magnetic snap now works on note moves / resizes.
nick_m [Wed, 10 Jun 2015 15:36:34 +0000 (01:36 +1000)]
Make absolute snap the default snap.
- also fixes a couple of absolute snap bugs wrt midi notes.
Robin Gareus [Wed, 10 Jun 2015 01:00:00 +0000 (03:00 +0200)]
hide the aggregate device, again
further amends to
17453ec debugging.
Robin Gareus [Wed, 10 Jun 2015 00:46:10 +0000 (02:46 +0200)]
undo debug (
17453ec) info.
The problem was: OSX i386 builds used --dist-target=leopard
which forced the deprecated 10.5 CoreAudio API.
(build-host config has been changed now).
There is currently insufficient support in ardour’s
CoreAudioPCM::create_aggregate_device() for the old API,
COREAUDIO_108 needs to be defined or aggregate devices stop
working on OSX 10.8 or later.
Robin Gareus [Tue, 9 Jun 2015 21:26:43 +0000 (23:26 +0200)]
fix video-image request, zoom before video start.
Robin Gareus [Tue, 9 Jun 2015 20:24:46 +0000 (22:24 +0200)]
fix OSX optimized builds (NDEBUG)
Robin Gareus [Tue, 9 Jun 2015 19:34:16 +0000 (21:34 +0200)]
debug aggregate device issue - i386/10.8 only
Robin Gareus [Tue, 9 Jun 2015 17:18:31 +0000 (19:18 +0200)]
coreaudio: initialize [output] variable.
possible fix for 32bit/10.8,
AudioObjectGetPropertyDataSize error
John Emmas [Tue, 9 Jun 2015 15:25:20 +0000 (16:25 +0100)]
Don't close OSC server sockets explicitly (the subsequent call to 'lo_server_free()' will close the socket anyway)
John Emmas [Tue, 9 Jun 2015 12:18:42 +0000 (13:18 +0100)]
Add the new (UINTSDEFINED) preprocessor directive to all out MSVC projects (just to be on the safe side)
John Emmas [Tue, 9 Jun 2015 11:09:21 +0000 (12:09 +0100)]
Add a new preprocessor directive (UINTSDEFINED) which is rather annoyingly needed if liblo gets built with MSVC
John Emmas [Tue, 9 Jun 2015 11:06:49 +0000 (12:06 +0100)]
Add a new link library that's needed when building against the newer version of liblo (0.28)
(probably only needed when building with MSVC)
Paul Davis [Mon, 8 Jun 2015 21:22:48 +0000 (17:22 -0400)]
Merge branch 'ovenwerks-master'
Len Ovens [Fri, 5 Jun 2015 23:32:19 +0000 (16:32 -0700)]
Don't allow user to change function of modifier buttons.
Colin Fletcher [Mon, 8 Jun 2015 19:07:52 +0000 (20:07 +0100)]
Update export config on stem export select tracks/busses/none
Call update_config() after selecting/deselecting all tracks/busses so that
the warning about 'No channels have been selected' is shown/hidden
appropriately.
Colin Fletcher [Sun, 7 Jun 2015 21:51:00 +0000 (22:51 +0100)]
Enclose bar code number in ""s in TOC & CUE export
cdrdao seems to want the CATALOG field to be enclosed in double-quotes.
Colin Fletcher [Sun, 7 Jun 2015 21:48:01 +0000 (22:48 +0100)]
Remove doubled quotes in TOC export PERFORMER field
toc_escape_text() already encloses its result in ""s, and if album_artist
is empty, the resulting PERFORMER """" line makes cdrdao upset. Just remove
the extra quotes.
Colin Fletcher [Sat, 6 Jun 2015 14:14:20 +0000 (15:14 +0100)]
Fix tiny typo in PortExportChannelSelector error text
Colin Fletcher [Mon, 8 Jun 2015 13:41:29 +0000 (14:41 +0100)]
Don't select any routes for stem export by default
Now that there are 'select all tracks/busses' buttons, it makes sense to me
that stem export should start off with no routes selected, rather than all.
Maybe stem export should by default select routes that are selected in the
editor, but that's a task for another time.
Colin Fletcher [Sat, 6 Jun 2015 14:13:39 +0000 (15:13 +0100)]
Exclude inactive tracks & busses from stem export list
The exported file is silent, when choosing to export either region contents or
track outputs, so there seems no point in making such routes available for stem
export at all.
Perhaps there's an arguable use case for enabling stem export of inactive
tracks, but I can't see that it's worth worrying about for now.
Colin Fletcher [Fri, 5 Jun 2015 22:08:38 +0000 (23:08 +0100)]
Add 'Select tracks/busses' & 'Deselect all' buttons to stem export
Add buttons to to select all tracks, select all busses and deselect all to
the stem export channel selector.
Robin Gareus [Sun, 7 Jun 2015 00:32:39 +0000 (02:32 +0200)]
Coreaudio: ignore [expected] SR changes.
Don’t disconnect from engine if sample-rate change
happens during initialization.
Paul Davis [Thu, 4 Jun 2015 22:23:08 +0000 (18:23 -0400)]
Merge branch 'ovenwerks-master'
Paul Davis [Thu, 4 Jun 2015 21:45:58 +0000 (17:45 -0400)]
use existing partial existing waveview images (if they exist) while waiting for the full ones
Len Ovens [Thu, 4 Jun 2015 22:07:43 +0000 (15:07 -0700)]
Add an option in the MCP .device file to set master position (fixes #6357)
Len Ovens [Thu, 4 Jun 2015 22:02:51 +0000 (15:02 -0700)]
Clean up mackie surface profile editor from things that don't work or match the mackie hardware (fixes #6342)
Paul Davis [Thu, 4 Jun 2015 21:58:24 +0000 (17:58 -0400)]
MackieControl: Make ctl put v-pot in fine mode.
Paul Davis [Thu, 4 Jun 2015 21:45:58 +0000 (17:45 -0400)]
use existing partial existing waveview images (if they exist) while waiting for the full ones
Len Ovens [Thu, 4 Jun 2015 21:04:46 +0000 (14:04 -0700)]
Make ctl put v-pot in fine mode.
Ben Loftis [Thu, 4 Jun 2015 20:49:56 +0000 (15:49 -0500)]
Enable stationary playhead mode.
stationary playhead needs to follow same rules as regular moving playhead.
Robin Gareus [Thu, 4 Jun 2015 00:44:58 +0000 (02:44 +0200)]
half-duplex Coreaudio support.
Paul Davis [Wed, 3 Jun 2015 17:48:43 +0000 (13:48 -0400)]
Change message about JACK already running to be less scary
Paul Davis [Wed, 3 Jun 2015 17:47:58 +0000 (13:47 -0400)]
check size of peak file before attempting to use it. Rebuild from scratch if necessary.
Paul Davis [Wed, 3 Jun 2015 17:46:59 +0000 (13:46 -0400)]
when AudioSource::read_peaks() provides start+cnt too close to the end, be sure to reset expected_peaks and scale to match the corrected values
Paul Davis [Tue, 2 Jun 2015 16:53:04 +0000 (12:53 -0400)]
break apart style errors from style warnings in pre-commit hook
Paul Davis [Tue, 2 Jun 2015 16:27:39 +0000 (12:27 -0400)]
expand comment
Paul Davis [Tue, 2 Jun 2015 16:17:50 +0000 (12:17 -0400)]
don't use the return value from AudioRegion::read_peaks() because it is either zero or n_peaks
Paul Davis [Tue, 2 Jun 2015 16:08:59 +0000 (12:08 -0400)]
close all source files before renaming interchange tree in Session::rename()
Paul Davis [Tue, 2 Jun 2015 16:08:02 +0000 (12:08 -0400)]
AudioRegion::read_peaks() should return 0 or the number of peaks read, not the number of samples
John Emmas [Tue, 2 Jun 2015 10:17:31 +0000 (11:17 +0100)]
Amend WaveView::send_request() such that it'll compile with MSVC
Hopefully, this was the original intention (I've simply amended a function call to match similar usages elsewhere in the code).
Paul Davis [Tue, 2 Jun 2015 01:08:42 +0000 (21:08 -0400)]
reinstate absent image.
Then go back to bed and be ill some more.
Robin Gareus [Mon, 1 Jun 2015 22:57:58 +0000 (00:57 +0200)]
fix duplicate inc/decrement in AutoSpin?
Robin Gareus [Mon, 1 Jun 2015 21:58:23 +0000 (23:58 +0200)]
NOOP, fix whitespace
Robin Gareus [Mon, 1 Jun 2015 19:47:08 +0000 (21:47 +0200)]
always round integer steps (regardless of enum)
Robin Gareus [Mon, 1 Jun 2015 19:27:14 +0000 (21:27 +0200)]
properly handle integer steps in plugin controls
The integer steps min/max are inclusive.
e.g the integer range -1 to +1 has three possible values (not two).
Ben Loftis [Mon, 1 Jun 2015 21:18:10 +0000 (16:18 -0500)]
fix cursor in smart mode, when moving up and down the frame handles
Paul Davis [Mon, 1 Jun 2015 18:55:17 +0000 (14:55 -0400)]
remove debug output and get logic correct to cause first render to always use the render thread
Paul Davis [Mon, 1 Jun 2015 18:45:32 +0000 (14:45 -0400)]
drop in threaded waveview changes via the two affected files.
Rebasing the feature branch against master was too messy, and only these two files were
changed. The development history of this branch could easily have been --squash'ed anyway,
so not much of a loss
Ben Loftis [Mon, 1 Jun 2015 18:12:39 +0000 (13:12 -0500)]
Fix some visual loopholes when switching tools inside a region:
switching to Grab should show the fade handles...
...switching away from grab should hide them.
Also, change "always show gain" preference to show lines, but not control points.
Robin Gareus [Mon, 1 Jun 2015 16:17:34 +0000 (18:17 +0200)]
fix importing A2 automation data - fixes #6359
Robin Gareus [Tue, 5 May 2015 15:28:31 +0000 (17:28 +0200)]
coreaudio support for multiple devices
Robin Gareus [Sun, 31 May 2015 20:14:44 +0000 (22:14 +0200)]
engine dialog fixes for multiple devices
Tim Mayberry [Tue, 5 May 2015 02:59:26 +0000 (12:59 +1000)]
Allow selection of input and output devices in EngineDialog for backends that support it
Some refactoring was necessary to avoid code duplication
Restoring of device state for input and output devices still doesn't work
correctly. I'm not quite sure what the issue is at this stage.