13
0
Commit Graph

4261 Commits

Author SHA1 Message Date
086a6c56f3 MCP: avoid debug flood from meters
git-svn-id: svn://localhost/ardour2/branches/3.0@11854 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 16:55:24 +00:00
62afe207d2 MCP: register thread with GUI and create session event pool
git-svn-id: svn://localhost/ardour2/branches/3.0@11853 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 16:26:44 +00:00
57a046804c MCP: different meter debug trace; initial support for track selection
git-svn-id: svn://localhost/ardour2/branches/3.0@11852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 16:15:55 +00:00
e2d62d9af4 allow ControlProtocols to call for undo/redo in GUI; make MCP use this
git-svn-id: svn://localhost/ardour2/branches/3.0@11851 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 15:50:38 +00:00
5d0858940b MCP: zoom button toggles led
git-svn-id: svn://localhost/ardour2/branches/3.0@11850 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 15:41:37 +00:00
9f5a9a2447 MCP: zoom in on cursor right press
git-svn-id: svn://localhost/ardour2/branches/3.0@11849 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 15:40:21 +00:00
e3448f267e MCP: some debug tracing for meters
git-svn-id: svn://localhost/ardour2/branches/3.0@11848 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 15:35:20 +00:00
2b659deaef remove redundant MackieButtonHandler class, implement initial zoom support for cursor left + right buttons
git-svn-id: svn://localhost/ardour2/branches/3.0@11847 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 15:32:25 +00:00
f02edae438 start breaking apart the various controls into their own headers and source code, and making each control know how to generate MIDI; throttle delivery of meter data and get meter ID right
git-svn-id: svn://localhost/ardour2/branches/3.0@11846 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 13:59:35 +00:00
63e15e1737 MCP: change refresh interval for meters + automation + timecode to 100msec
git-svn-id: svn://localhost/ardour2/branches/3.0@11845 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 00:45:22 +00:00
522c2dd4cf MCP: add some locking to the RouteSignals object
git-svn-id: svn://localhost/ardour2/branches/3.0@11844 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 00:32:13 +00:00
7ab25511b5 MCP: possible support for metering (really)
git-svn-id: svn://localhost/ardour2/branches/3.0@11843 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-09 00:03:58 +00:00
ad06e7cb8d MCP: make Strip aware of Meter
git-svn-id: svn://localhost/ardour2/branches/3.0@11841 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 23:20:14 +00:00
0e0c4277cf MCP: start up event loop (thread) so that we can do timeouts and metering; start of Meter control support
git-svn-id: svn://localhost/ardour2/branches/3.0@11840 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 23:14:36 +00:00
2cf34cdebd MCP: look for jog wheel as a special case
git-svn-id: svn://localhost/ardour2/branches/3.0@11839 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 21:22:21 +00:00
79799023f5 MCP: move init functions back into Surface since there is no difference between the BCF and MCU versions of the code at this point
git-svn-id: svn://localhost/ardour2/branches/3.0@11838 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 21:17:11 +00:00
715bdc3829 MCP: remove no-longer-used files
git-svn-id: svn://localhost/ardour2/branches/3.0@11837 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 21:16:16 +00:00
696f3bdda5 MCP: connect to correct signal for buttons; more code tidy; extra debugging if we can't find a control
git-svn-id: svn://localhost/ardour2/branches/3.0@11836 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 20:52:45 +00:00
6315a979a1 MCP: remove files no longer used (copies are always available in 2.0-ongoing for historical purposes)
git-svn-id: svn://localhost/ardour2/branches/3.0@11835 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 20:44:36 +00:00
c6c98b6453 MCP: add handler for forgotten noteOn (button) messages, and more code tidying
git-svn-id: svn://localhost/ardour2/branches/3.0@11834 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 20:34:21 +00:00
7296ef87a1 MCP: more debugging for fader messages
git-svn-id: svn://localhost/ardour2/branches/3.0@11833 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 17:39:45 +00:00
8a1e6363da MCP: fix fader mapping from extenders
git-svn-id: svn://localhost/ardour2/branches/3.0@11832 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 16:05:26 +00:00
5d29d591b8 debug ardour->MCP fader mapping
git-svn-id: svn://localhost/ardour2/branches/3.0@11831 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 15:51:30 +00:00
66c83f2765 MCP: fix (?) interpretation of fader/pitchbend messages
git-svn-id: svn://localhost/ardour2/branches/3.0@11830 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 15:45:52 +00:00
fcada6e737 MCP: add debug tracing for fader (pitchbend) messages
git-svn-id: svn://localhost/ardour2/branches/3.0@11829 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 15:16:34 +00:00
0e72a29bcc MCP: add debug tracing for timeouts
git-svn-id: svn://localhost/ardour2/branches/3.0@11828 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 15:13:12 +00:00
733a2b1820 MCP: correctly link routes and strips; correctly set up timeouts using event loop of MCP, not GUI
git-svn-id: svn://localhost/ardour2/branches/3.0@11827 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 15:10:46 +00:00
6e13711361 MCP: stop using signals to handle parsed control events; add debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@11826 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 14:51:14 +00:00
ef484a8a33 MCP: drop need for ScopedConnectionList::empty()
git-svn-id: svn://localhost/ardour2/branches/3.0@11825 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 14:22:34 +00:00
c72287e67d MCP: major redesign of control instantiation; continuing code reformatting
git-svn-id: svn://localhost/ardour2/branches/3.0@11824 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-08 14:11:00 +00:00
05b36d0092 MCP: fix bad use of strips container
git-svn-id: svn://localhost/ardour2/branches/3.0@11823 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 19:30:00 +00:00
f703a3cfd1 MCP: alternative method for clearing route table when switching banks
git-svn-id: svn://localhost/ardour2/branches/3.0@11822 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 19:08:57 +00:00
d1d164092b MCP: build fix
git-svn-id: svn://localhost/ardour2/branches/3.0@11821 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 18:54:31 +00:00
a202b08f65 MCP: drastically alter setup of Mackie surface to not use the CSV files in anyway, reformat chunks to match coding style standards, don't throw() if part of a sysex message is message
git-svn-id: svn://localhost/ardour2/branches/3.0@11820 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 18:43:06 +00:00
9cdeaa30b9 MCP: try to fix madness with extender strip indices
git-svn-id: svn://localhost/ardour2/branches/3.0@11819 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 16:04:13 +00:00
1e1ceaba7e MCP: try to actually use extenders
git-svn-id: svn://localhost/ardour2/branches/3.0@11818 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 15:22:22 +00:00
785082b2da debugging mcu via ssl nucleus 2
git-svn-id: svn://localhost/ardour2/branches/3.0@11817 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 14:48:44 +00:00
1f26ba1688 debugging mcu via ssl nucleus
git-svn-id: svn://localhost/ardour2/branches/3.0@11816 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 14:16:08 +00:00
Carl Hetherington
ef91c96883 Fix possible null pointer dereference (#4813).
git-svn-id: svn://localhost/ardour2/branches/3.0@11814 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 10:05:17 +00:00
Carl Hetherington
bf2281d366 Fix operator typo (#4824).
git-svn-id: svn://localhost/ardour2/branches/3.0@11812 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 02:03:17 +00:00
Carl Hetherington
83b7463b40 Fix comment.
git-svn-id: svn://localhost/ardour2/branches/3.0@11806 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 01:37:21 +00:00
9e2dc2e50c Execute plugin worker tasks immediately in the audio thread if freewheeling.
git-svn-id: svn://localhost/ardour2/branches/3.0@11803 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-06 02:42:19 +00:00
184c7cedf9 provide an RC configuration variable to "shadow" Evoral::ControlList::thinning_factor
git-svn-id: svn://localhost/ardour2/branches/3.0@11796 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-05 12:08:59 +00:00
bdde5da89b make automation thinning factor controllable at run time
git-svn-id: svn://localhost/ardour2/branches/3.0@11795 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-05 11:16:04 +00:00
Carl Hetherington
9036a12ffc assert() on id property not being present (#4814).
git-svn-id: svn://localhost/ardour2/branches/3.0@11794 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-05 01:23:07 +00:00
Carl Hetherington
f7497258ea Fix double-delete (#4809).
git-svn-id: svn://localhost/ardour2/branches/3.0@11792 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-05 01:22:19 +00:00
Carl Hetherington
bf96210e34 Fix operator precedance inaccuracy (#4825).
git-svn-id: svn://localhost/ardour2/branches/3.0@11791 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-05 01:21:44 +00:00
338e83d9dc Implement LV2 worker extension.
This is done by way of a generic Worker object/thread, which currently just
applies to one LV2 plugin, but the idea is to share one thread and set of
buffers among many plugins.  The same pattern may also be useful elsewhere in
Ardour.  The responding part gets a bit tricker when sharing a worker between
plugins, it's not a blocker, and I'm lazy, sooo here's this.

This commit also adds a new portable in-process semaphore to PBD.  The existing
one is pretty weird and uses a named semaphore on OSX for reasons unknown to
me.  Perhaps as a quick fix to avoid POSIX semaphores being utterly broken on
OSX?  It would probably be a good idea to replace that with this new one, which
uses Mach kernel semaphores on OSX which work well, though I am not sure how
pedantically real-time safe they are to signal.


git-svn-id: svn://localhost/ardour2/branches/3.0@11790 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-05 00:15:54 +00:00
Carl Hetherington
daad719546 Remove ControlList::_max_xval which is set up and stored in
state but never actually read.


git-svn-id: svn://localhost/ardour2/branches/3.0@11787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-04 00:15:41 +00:00
Carl Hetherington
81372b6ebe Remove some unused stuff.
git-svn-id: svn://localhost/ardour2/branches/3.0@11782 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-02 23:31:17 +00:00
Carl Hetherington
47faebb367 Missing file.
git-svn-id: svn://localhost/ardour2/branches/3.0@11779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-02 13:52:36 +00:00
Carl Hetherington
e960ebeebb Add comment.
git-svn-id: svn://localhost/ardour2/branches/3.0@11778 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 23:47:37 +00:00
Carl Hetherington
4cd2e73732 Add comment and fix type.
git-svn-id: svn://localhost/ardour2/branches/3.0@11777 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 23:47:31 +00:00
Carl Hetherington
d34d7b8ce1 Remove unused declaration.
git-svn-id: svn://localhost/ardour2/branches/3.0@11776 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 23:47:23 +00:00
Carl Hetherington
5de4de613b Fix memory leak on error condition (#4798).
git-svn-id: svn://localhost/ardour2/branches/3.0@11775 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 15:06:24 +00:00
Carl Hetherington
c38cbac7e7 Fix possible out-of-bounds array access (#4796).
git-svn-id: svn://localhost/ardour2/branches/3.0@11774 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 15:06:15 +00:00
Carl Hetherington
d7deaa21bb Fix reference of track after free() (#4795).
git-svn-id: svn://localhost/ardour2/branches/3.0@11773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 14:58:09 +00:00
Carl Hetherington
cc23c36961 Tidy up slightly; fix reads off the end of the data
array (#4797).


git-svn-id: svn://localhost/ardour2/branches/3.0@11772 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 14:57:57 +00:00
Carl Hetherington
7f417fb44f Remove unused ustring version of url_decode(). Rework
the other version to be a bit simpler, avoiding #4800.


git-svn-id: svn://localhost/ardour2/branches/3.0@11771 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 14:30:06 +00:00
Carl Hetherington
3240a93aad Fix libpbd tests and add test for url_decode().
git-svn-id: svn://localhost/ardour2/branches/3.0@11770 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-01 14:29:26 +00:00
c886f761eb Update to latest LV2 state extension.
git-svn-id: svn://localhost/ardour2/branches/3.0@11769 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-30 23:32:48 +00:00
Carl Hetherington
7c2b3171c2 Further GCC 4.7.0 fixes.
git-svn-id: svn://localhost/ardour2/branches/3.0@11768 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-30 01:21:08 +00:00
Carl Hetherington
8ae1880e33 Some fixes for GCC 4.7.0
git-svn-id: svn://localhost/ardour2/branches/3.0@11767 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-30 00:03:53 +00:00
Carl Hetherington
1fc8dfa0fc Put copy-constructed crossfades at the position of their
source crossfade; fixes #4793.


git-svn-id: svn://localhost/ardour2/branches/3.0@11763 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-27 21:04:47 +00:00
Carl Hetherington
ca1de50004 Give the _sends member of InternalReturn its own mutex,
rather than using the process lock to protect it.  Prevents
a deadlock when removing an aux send causes it to remove
itself from its return (#4712).


git-svn-id: svn://localhost/ardour2/branches/3.0@11760 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-25 20:30:26 +00:00
Carl Hetherington
b25c60356c Typo in comment.
git-svn-id: svn://localhost/ardour2/branches/3.0@11758 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-25 19:38:17 +00:00
1716dc0ce6 Update to latest LV2 atom extension.
Implement proper support for fixed size LV2 plugin UIs.


git-svn-id: svn://localhost/ardour2/branches/3.0@11757 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-25 17:17:40 +00:00
Carl Hetherington
3120bae8b4 Don't leave internal edit mode when clicking on an automation region view (#4747).
git-svn-id: svn://localhost/ardour2/branches/3.0@11749 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-22 16:41:23 +00:00
Carl Hetherington
21a0b7ace0 Use combo box for plugin controls for ports marked as
lv2:enumeration.


git-svn-id: svn://localhost/ardour2/branches/3.0@11745 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-21 16:43:01 +00:00
Carl Hetherington
05fcf75eaf Use sigc::slot for ClickBox printing function rather
than a function pointer.


git-svn-id: svn://localhost/ardour2/branches/3.0@11743 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-21 16:38:59 +00:00
Carl Hetherington
a4c27ff16e Update motorised button when a motorised surface's bindings are loaded.
git-svn-id: svn://localhost/ardour2/branches/3.0@11740 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-21 02:19:59 +00:00
Carl Hetherington
189257dd32 Make toggle MIDIControllables with program changes only respond to the appropriate program change (part of #4780).
git-svn-id: svn://localhost/ardour2/branches/3.0@11739 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-21 02:15:55 +00:00
Carl Hetherington
4c0b104db5 Fix test build.
git-svn-id: svn://localhost/ardour2/branches/3.0@11738 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-21 01:07:05 +00:00
135c72b085 use the right include name
git-svn-id: svn://localhost/ardour2/branches/3.0@11737 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-20 19:38:49 +00:00
494635b99b make MIDI Patch Manager search in $user_config_dir/patchfiles for midnam files as well as the per-session equivalent. need to stop it from doing at session shutdown time too.
git-svn-id: svn://localhost/ardour2/branches/3.0@11736 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-20 18:03:46 +00:00
1c399d5ebc tweak audio track importer to use the modified xml++ API for XPATH searching
git-svn-id: svn://localhost/ardour2/branches/3.0@11735 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-20 18:02:36 +00:00
8f4e126c72 a lot of tweaking and fixing for the MIDNAM parsing code so that it correctly handles all 44 sample files from digicake.com/midnams.
git-svn-id: svn://localhost/ardour2/branches/3.0@11734 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-20 18:01:59 +00:00
71b3c8cfe1 some deep changes to xml++ in which we retain a C-level xmlDocPtr as a member of an XMLTree objects. this allows us to do repeated XPATH searches (as in the midnam parser of libmidi++) without constantly rewriting an entire tree into memory to recreate a new xmlDocPtr with which we can search. Since XMLTree objects don't typically stay around for very long, just when serializing to/from disk, this is not anticipated to have much (if any) impact on memory consumption
git-svn-id: svn://localhost/ardour2/branches/3.0@11733 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-20 18:01:07 +00:00
Carl Hetherington
c5dac2a724 Add GPL boilerplate; use x->foo for (*x).foo; tidy some indentation; use a table to place widgets; add motorised option.
git-svn-id: svn://localhost/ardour2/branches/3.0@11729 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-19 01:34:40 +00:00
Carl Hetherington
8063027507 Add set_motorised().
git-svn-id: svn://localhost/ardour2/branches/3.0@11728 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-19 01:34:35 +00:00
Carl Hetherington
df3eaf9188 Remove erroneous non-run of plugins when the transport is stopped
and plugins-stop-with-transport is true; this option is supposed
to mean the flush() is called on processors on transport stop, in
order to silence reverb tails etc.  Comment this and try to make
the GUI option name more helpful.  Should fix #4748.


git-svn-id: svn://localhost/ardour2/branches/3.0@11725 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-17 23:41:51 +00:00
5aec73971a fix crash when setting an LV2 preset that refers to ports via incorrect names (from bazz)
git-svn-id: svn://localhost/ardour2/branches/3.0@11719 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-17 12:28:37 +00:00
377f407a2f remove debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@11718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-17 12:26:42 +00:00
1b830d5942 continue the saga of Rewrite The XML Node So That It Can Be Used To Set Another Object's State by descending into an IO node to fix the names of its ports as used in connection info. allows copies of sends etc. to retain the same connections as the original (with new names, obviously)
git-svn-id: svn://localhost/ardour2/branches/3.0@11717 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-16 22:36:06 +00:00
f1638d365e use MOD2 for command key on OS X, just like in 2.X
git-svn-id: svn://localhost/ardour2/branches/3.0@11716 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-16 21:53:06 +00:00
416e3c701e put back revised version of Route::has_external_redirects() and use it to give a warning when attempting to freeze a track with sends/inserts/returns
git-svn-id: svn://localhost/ardour2/branches/3.0@11707 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-16 16:51:54 +00:00
8e1488c76e remove now-unused Route::has_external_redirects()
git-svn-id: svn://localhost/ardour2/branches/3.0@11704 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-16 15:05:00 +00:00
e945505731 add new files
git-svn-id: svn://localhost/ardour2/branches/3.0@11702 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-15 21:42:11 +00:00
f07ca6397f radically rethink export/bounce/freeze code design. probably not 100% done by freeze+unfreeze now work and behave sensibly w.r.t. processors that do routing
git-svn-id: svn://localhost/ardour2/branches/3.0@11701 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-15 21:40:17 +00:00
cfaf6ff7e3 remove unused Glib::Thread* from ProcessThread
git-svn-id: svn://localhost/ardour2/branches/3.0@11696 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-15 13:39:06 +00:00
730937dc37 better, cleaner fix for copying sends/returns/port inserts via XML state
git-svn-id: svn://localhost/ardour2/branches/3.0@11691 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-15 02:31:09 +00:00
Carl Hetherington
86a0fe1b43 Fix comment and one return value.
git-svn-id: svn://localhost/ardour2/branches/3.0@11690 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-14 22:53:41 +00:00
d46acb86ea redesign how XML state, bitslots and names get propagated during copying a send/port insert/return
git-svn-id: svn://localhost/ardour2/branches/3.0@11669 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-13 20:14:55 +00:00
b557061ec4 use g_fopen()
git-svn-id: svn://localhost/ardour2/branches/3.0@11668 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-13 20:14:22 +00:00
d0b90d2961 use g_fopen()
git-svn-id: svn://localhost/ardour2/branches/3.0@11667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-13 20:14:01 +00:00
Carl Hetherington
184c4e28c0 No-op; coding style.
git-svn-id: svn://localhost/ardour2/branches/3.0@11660 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-13 01:24:08 +00:00
Carl Hetherington
398e3abefc Centralise and fix up path creation for Linux VST info files; prevents creation of files called .foo.so rather than .foo.so.fsi.
git-svn-id: svn://localhost/ardour2/branches/3.0@11659 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-13 01:23:58 +00:00
Carl Hetherington
ca19d2af16 Use fgets and sscanf to read numbers rather than fscanf, avoiding strange occurrence of fscanf (..., %dn, ...) eating a blank line immediately after the number that it reads; fix erroneous warning about failure to get VST information.
git-svn-id: svn://localhost/ardour2/branches/3.0@11658 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-13 01:23:44 +00:00
Carl Hetherington
f6ee63591d Patch from colinf to allow the number of recent sessions to
be configured (#2207).


git-svn-id: svn://localhost/ardour2/branches/3.0@11641 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-10 11:37:01 +00:00
Carl Hetherington
0d820089de Fix test build.
git-svn-id: svn://localhost/ardour2/branches/3.0@11633 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-09 21:23:11 +00:00
7219d0d651 Fix atom sequence ports.
git-svn-id: svn://localhost/ardour2/branches/3.0@11623 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-08 19:40:41 +00:00
Carl Hetherington
09814ab840 Patch from colinf to fix auto-connect of bus outputs (#4758).
git-svn-id: svn://localhost/ardour2/branches/3.0@11615 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-07 13:24:20 +00:00
3c7f9586ae implement XMLNode::operator=() as a deep operation with the same semantics as the XMLNode copy constructor. attempt to share as much code as possible between them and the destructor
git-svn-id: svn://localhost/ardour2/branches/3.0@11612 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-07 02:07:35 +00:00
Carl Hetherington
fb6895ba86 Add motorised attribute to DeviceInfo for generic MIDI maps so that
we can specify if a surface is motorised, and as such will keep its
phyiscal controls in sync with Ardour's controllables at all times.
If this is not the case, we enable the code to avoid jumps when controls and
controllables are out of sync.  Mark the BCF2000 as motorised.



git-svn-id: svn://localhost/ardour2/branches/3.0@11611 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-07 01:11:22 +00:00
03ba84da7e fix misspelt #ifdef
git-svn-id: svn://localhost/ardour2/branches/3.0@11603 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-06 15:17:10 +00:00
Carl Hetherington
fe86f97563 Work around problems with some JACK<->ALSA midi bridges which don't
transfer multiple MIDI messages when they are written in one
jack_midi_event_write.  Support pitch bend messages in the
generic midi control surface code.


git-svn-id: svn://localhost/ardour2/branches/3.0@11601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-06 15:08:17 +00:00
Carl Hetherington
c6396ca7ce Mark rec enable controllables as toggling.
git-svn-id: svn://localhost/ardour2/branches/3.0@11600 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-06 15:08:08 +00:00
Carl Hetherington
9a74312f9f Make route group dialog resizable; make ArdourPrompter entries
resize when the window is resized, rather than the label (#4756).


git-svn-id: svn://localhost/ardour2/branches/3.0@11599 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-05 22:34:49 +00:00
Carl Hetherington
4fb5d4596b Prevent duplication of search path elements when symlinks are involved (#4568).
git-svn-id: svn://localhost/ardour2/branches/3.0@11592 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-05 00:34:45 +00:00
Carl Hetherington
7a79db9117 Use inodes_same() function.
git-svn-id: svn://localhost/ardour2/branches/3.0@11591 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-05 00:34:29 +00:00
Carl Hetherington
a7f31b56af Add new inodes_same() method.
git-svn-id: svn://localhost/ardour2/branches/3.0@11590 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-05 00:34:21 +00:00
22b583a8e7 Update for latest Lilv SVN.
git-svn-id: svn://localhost/ardour2/branches/3.0@11587 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-03 21:46:25 +00:00
da13032eda fixes for 64 bit OS X build (c/o david robillard); tested on Lion & Tiger
git-svn-id: svn://localhost/ardour2/branches/3.0@11585 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-02 22:53:00 +00:00
3d8aacf4e3 follow glib include rules, sigh
git-svn-id: svn://localhost/ardour2/branches/3.0@11578 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-01 21:08:58 +00:00
2ec580414b follow glib include rules, sigh
git-svn-id: svn://localhost/ardour2/branches/3.0@11577 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-01 20:52:52 +00:00
f72ecaf54a use #include <typeinfo> before using typeid
git-svn-id: svn://localhost/ardour2/branches/3.0@11576 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-01 20:25:31 +00:00
d7cc7e7d9c follow glib include rules, sigh
git-svn-id: svn://localhost/ardour2/branches/3.0@11575 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-01 20:20:43 +00:00
1464bbfaa3 Hopefully fix compilation without Suil.
git-svn-id: svn://localhost/ardour2/branches/3.0@11574 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-01 19:24:13 +00:00
Carl Hetherington
683455c02e Patch from colinf to fix crash on stem export of 4-channel tracks (#4750).
git-svn-id: svn://localhost/ardour2/branches/3.0@11571 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-01 15:42:23 +00:00
bb98baf413 fix a few dangling uses of Ardour as program name, in favor of PROGRAM_NAME
git-svn-id: svn://localhost/ardour2/branches/3.0@11563 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-29 20:18:18 +00:00
8de887f378 Update to latest LV2 atom extension.
git-svn-id: svn://localhost/ardour2/branches/3.0@11548 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-29 03:21:37 +00:00
Carl Hetherington
19667afd7f More verbosity for Linux VST loading.
git-svn-id: svn://localhost/ardour2/branches/3.0@11542 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-28 13:53:23 +00:00
Carl Hetherington
204baa31d8 Move a few declarations to first use.
git-svn-id: svn://localhost/ardour2/branches/3.0@11541 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-28 13:40:43 +00:00
Carl Hetherington
bda741fbcd We already checked for vstfx being NULL, so the second
check can reasonably be an assert.


git-svn-id: svn://localhost/ardour2/branches/3.0@11540 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-28 13:40:37 +00:00
Carl Hetherington
cecf343109 Use dBs for send gain automation controls too.
git-svn-id: svn://localhost/ardour2/branches/3.0@11539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-28 13:40:30 +00:00
Carl Hetherington
3a4650cba7 Display amp automation in dB using a logarithmic fader.
git-svn-id: svn://localhost/ardour2/branches/3.0@11535 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-27 17:17:19 +00:00
aef76e95d6 fix typo in jack-out-of-ports message
git-svn-id: svn://localhost/ardour2/branches/3.0@11533 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-27 16:29:05 +00:00
Carl Hetherington
ecae912da9 Fix previous commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@11532 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-27 16:05:15 +00:00
Carl Hetherington
568f96d1ee Be slightly more verbose about vstfx_get_info errors.
git-svn-id: svn://localhost/ardour2/branches/3.0@11531 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-27 16:03:37 +00:00
Carl Hetherington
af7494ceb2 Slightly tweaked patch from colinf to avoid crashes on
out-of-range LADSPA port indices (#4700).


git-svn-id: svn://localhost/ardour2/branches/3.0@11528 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-27 15:21:29 +00:00
Carl Hetherington
bd2e28aaac Fix crash on opening the export dialogue when there are no
formats (#4742).


git-svn-id: svn://localhost/ardour2/branches/3.0@11524 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-26 20:48:51 +00:00
66f9f3061f Fix real-time violation, only send UI updates if explicitly requested by UI.
git-svn-id: svn://localhost/ardour2/branches/3.0@11522 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-25 20:54:38 +00:00
1e6694f41a Use FastScreenUpdate for UI message updating, and only if plugin has message output ports.
git-svn-id: svn://localhost/ardour2/branches/3.0@11521 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-25 20:43:14 +00:00
4d7810dee8 Full round-trip message communication between LV2 UIs and plugins.
Still a little bit rough around the edges, but it works.  This can be tested
with the eg-sampler plugin from LV2 svn (whose UI can load different samples).


git-svn-id: svn://localhost/ardour2/branches/3.0@11519 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-25 08:43:23 +00:00
1cf6e280b8 Use more straightforward 1:1 names for URI nodes.
git-svn-id: svn://localhost/ardour2/branches/3.0@11518 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-25 05:01:24 +00:00
f122504784 Support LV2 atom sequence ports alongside old event ports.
git-svn-id: svn://localhost/ardour2/branches/3.0@11517 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-25 04:16:42 +00:00
4f96a1006b Clean up LV2 code in preparation for atom support.
Merge all parameter_is_* boolvectors into a single vector of flags (smaller/faster).


git-svn-id: svn://localhost/ardour2/branches/3.0@11515 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-24 22:09:30 +00:00
16f91163e5 part two of: make region gain line visibility global, not per-region
git-svn-id: svn://localhost/ardour2/branches/3.0@11493 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-15 14:03:30 +00:00
efb1e10ff7 fix coloring of global rec-enable button when actively recording; fix related issue when loading a session with an already rec-enabled track
git-svn-id: svn://localhost/ardour2/branches/3.0@11468 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-07 18:28:09 +00:00
b08d13706f remove additional "mid" color from ArdourButton; replace Active/Mid widget state with ExplicitActive/ImplicitActive; represent implicit-active state with colored border around ArdourButton; tune button colors; new rounded_foo() functions, some in use, some not in use right now
git-svn-id: svn://localhost/ardour2/branches/3.0@11466 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-07 17:43:55 +00:00
009c7a9e44 attempt to stop sending MMC/MTC while exporting or freewheeling for any reason
git-svn-id: svn://localhost/ardour2/branches/3.0@11457 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 17:09:53 +00:00
f4f2a9a111 fix bug in MidiClock that sent MIDI Clock messages with negative offsets after a loop point
git-svn-id: svn://localhost/ardour2/branches/3.0@11456 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 15:05:18 +00:00
d0b94ebc1e likely fix for crash-by-assert just after a MIDI diskstream overwrite (e.g. just after an edit, while playback is active)
git-svn-id: svn://localhost/ardour2/branches/3.0@11455 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 14:58:03 +00:00
f77ed1c692 even more debugging info for zth
git-svn-id: svn://localhost/ardour2/branches/3.0@11454 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 14:35:00 +00:00
d0b1a8100a yet more debugging info for zth
git-svn-id: svn://localhost/ardour2/branches/3.0@11453 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 14:28:43 +00:00
bdbba5af35 some more debugging info for zth
git-svn-id: svn://localhost/ardour2/branches/3.0@11452 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 14:14:40 +00:00
1f0fe4a449 removed #ifdef'ed trace_midi() code (dup'ed from libmidi++)
git-svn-id: svn://localhost/ardour2/branches/3.0@11451 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 14:10:40 +00:00
e7c0919257 some debugging info
git-svn-id: svn://localhost/ardour2/branches/3.0@11450 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-06 13:50:26 +00:00
6db9cb8d75 add some more variants of the cairo rounded rectangle code
git-svn-id: svn://localhost/ardour2/branches/3.0@11434 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-03 03:55:58 +00:00
02ec346c2b add virtual method is_instrument() to PluginInfo (already existed for AUPluginInfo) and use to determine if plugin is an instrument for the purposes of AddRouteDialog, since the rules are plugin-type specific
git-svn-id: svn://localhost/ardour2/branches/3.0@11426 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-02 18:51:32 +00:00
af90dc2bae add a way to create a new MIDI track with an instrument pre-selected
git-svn-id: svn://localhost/ardour2/branches/3.0@11421 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-02 04:12:23 +00:00
Carl Hetherington
452672f78f Make crossfade convert-to-full and activate/deactivate work across edit groups (#4658).
git-svn-id: svn://localhost/ardour2/branches/3.0@11413 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-01 01:07:52 +00:00
Carl Hetherington
6b65e684eb Tidy up slightly.
git-svn-id: svn://localhost/ardour2/branches/3.0@11412 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-01 01:07:44 +00:00
Carl Hetherington
396b8adffe Trim declaration.
git-svn-id: svn://localhost/ardour2/branches/3.0@11411 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-01 01:07:37 +00:00
40af4b914f use musical_time_equal() test for equality when copying note data, not strict floating point equality. should fix #4609 (and maybe another one too)
git-svn-id: svn://localhost/ardour2/branches/3.0@11407 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-31 23:20:13 +00:00
Carl Hetherington
34881407e7 Make crossfade active state and length changes undo-able.
git-svn-id: svn://localhost/ardour2/branches/3.0@11406 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-31 23:06:12 +00:00
Carl Hetherington
0a720e5753 Comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@11404 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-31 21:56:33 +00:00
7629120cda many changes, large and small, related to smart mode editing, range/region selection, and behaviour of playhead when always-play-range is enabled. could be buggy, but probably in subtle (or even very subtle) ways rather than obvious
git-svn-id: svn://localhost/ardour2/branches/3.0@11394 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-30 22:53:22 +00:00
Carl Hetherington
8d0f685d52 Fix faulty comment in previous commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@11392 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-30 21:11:35 +00:00
Carl Hetherington
90bab430c4 Fix non-summon of butler when a track that needs it is followed by a track that does not (in the single-process-thread-CPU case). Should fix #4677.
git-svn-id: svn://localhost/ardour2/branches/3.0@11391 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-30 20:58:17 +00:00
Carl Hetherington
8f0b5a326b Add assert.
git-svn-id: svn://localhost/ardour2/branches/3.0@11390 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-30 20:58:09 +00:00
Carl Hetherington
35a4144e45 Add aux sends at the position that the menu was opened, rather than always pre-fader (#4660).
git-svn-id: svn://localhost/ardour2/branches/3.0@11387 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-30 18:09:54 +00:00
Sakari Bergen
dba601eeab Show an example filename in the main export dialog
git-svn-id: svn://localhost/ardour2/branches/3.0@11383 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-29 20:55:44 +00:00
Sakari Bergen
71a5e435e6 Add timespan name to export status text
git-svn-id: svn://localhost/ardour2/branches/3.0@11381 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-29 09:51:30 +00:00
Sakari Bergen
aaec2a8480 Fix issue with export channel splitting getting stuck in the filename
git-svn-id: svn://localhost/ardour2/branches/3.0@11380 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-28 19:20:17 +00:00
6f23443c26 Fix compilation with older Glib.
git-svn-id: svn://localhost/ardour2/branches/3.0@11378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-28 18:19:19 +00:00
Sakari Bergen
db384a6f14 Go back to one progress bar with several passes in export.
Don't calculate the progress bar position in the engine, let the UI decide. 
Work around progress bar bug (not verified, as I could not reproduce).


git-svn-id: svn://localhost/ardour2/branches/3.0@11377 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-28 18:14:19 +00:00
Sakari Bergen
ab8cea1d7c Store Region export state in instant.xml (fixes #3935)
git-svn-id: svn://localhost/ardour2/branches/3.0@11376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-28 15:05:53 +00:00
Sakari Bergen
aaf418bd6f Fix compilation with older lilv (0.5.0)
git-svn-id: svn://localhost/ardour2/branches/3.0@11375 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-28 13:36:13 +00:00
2858d43902 Use new Lilv state API to save LV2 plugin state.
This saves a complete history of plugin state, i.e. save is no longer destructive.  However, data is shared as much as possible, and new state is only written if the plugin state has actually changed.  There is exactly one link in the entire session directory to any external file, so archiving will work with minimal copying.

Not sure sure about the naming of the "externals" directory, but I have nothing better...


git-svn-id: svn://localhost/ardour2/branches/3.0@11372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-28 01:45:15 +00:00
19ebdba1cb restore independent gain control over click/metronome
git-svn-id: svn://localhost/ardour2/branches/3.0@11370 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 22:47:16 +00:00
d17918e32e patch for CUE file formatting from Andreas Ruge
git-svn-id: svn://localhost/ardour2/branches/3.0@11368 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 19:15:47 +00:00
f56bbe2799 fix inconsistent display on selection clocks when in join-object-range mode, and fix restore of that mode from session state via new ActionManager::set_toggle_action()
git-svn-id: svn://localhost/ardour2/branches/3.0@11366 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 19:05:03 +00:00
27747a6ee2 fix #4443 - tape track files need to be created when opened, not when written to
git-svn-id: svn://localhost/ardour2/branches/3.0@11363 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 17:08:39 +00:00
33c61757fc promote Playlist::RegionList to ARDOUR::RegionList; fix timefx on multiple regions, even regions of mixed type. this mostly involved some trivial code changes but to make the code simpler and less error prone, the API switched away from using RegionSelection (list of regionviews that catches regionviews vanishing) and used RegionList (lists of regions, no semantics) instead.
git-svn-id: svn://localhost/ardour2/branches/3.0@11362 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 16:29:01 +00:00
fc3be1d42c further simplification of midi clock ticker API
git-svn-id: svn://localhost/ardour2/branches/3.0@11361 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 13:27:01 +00:00
6a999b8287 change audioengine's port container to a std::map to provide faster results from get_port_by_name()
git-svn-id: svn://localhost/ardour2/branches/3.0@11360 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 13:23:39 +00:00
98ade9348a rework design of midi clock ticker to avoid expensive generalization that has turned out to have no particular use, and fix bug that caused incorrect ticks to be sent (or attempted) as the transport starts up
git-svn-id: svn://localhost/ardour2/branches/3.0@11359 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 13:22:55 +00:00
e3b2111109 add Port::PostDisconnect signal to allow objects other than the one being directly disconnected to act when disconnection happens. This turns out to be much easier than using the JACK port connect/disconnect callback
git-svn-id: svn://localhost/ardour2/branches/3.0@11355 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-26 19:00:27 +00:00
9b3aefec1b an improvement to the previous patch to catch up with solo state after a disconnect, but still not really done because it doesn't get triggered for both ends of a disconnect
git-svn-id: svn://localhost/ardour2/branches/3.0@11353 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-25 21:19:48 +00:00
18bc80a01c toc filename handling patch from andreas r.
git-svn-id: svn://localhost/ardour2/branches/3.0@11352 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-25 21:14:51 +00:00
9ac351e60c fix #4405, by explicitly cancelling solo when a route's inputs drop to zero
git-svn-id: svn://localhost/ardour2/branches/3.0@11346 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-25 15:30:02 +00:00
Carl Hetherington
275e710e67 Move reader lock to avoid deadlock when calling bbt_time().
git-svn-id: svn://localhost/ardour2/branches/3.0@11342 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 22:42:43 +00:00
Carl Hetherington
eadc2192c5 Remove unused variable.
git-svn-id: svn://localhost/ardour2/branches/3.0@11338 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 20:48:01 +00:00
Sakari Bergen
f57da9b00e Show proper progress information for export while normalizing
git-svn-id: svn://localhost/ardour2/branches/3.0@11337 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 20:21:54 +00:00
Carl Hetherington
e6a7a67933 Make plugins-stop-with-transport work; should fix #4641
as a side-effect.


git-svn-id: svn://localhost/ardour2/branches/3.0@11336 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 19:53:48 +00:00
Carl Hetherington
ddd162bdb0 Make time stretch respect edit groups (#4615).
git-svn-id: svn://localhost/ardour2/branches/3.0@11334 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 17:04:15 +00:00
035074d1b7 provide ActionManager::do_action() as a way to trigger any action item as if the user has asked for it via some UI proxy
git-svn-id: svn://localhost/ardour2/branches/3.0@11332 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 16:19:38 +00:00
175036ea4e always write a PERFORMER entry into a CUE file even if its not defined
git-svn-id: svn://localhost/ardour2/branches/3.0@11331 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 16:18:06 +00:00
d7e17f088f make adding tracks/busses from templates just like adding them at the start of a session, in that IO connections are prevented until they are all added, and then we connect. this should fix the locking issue in #4643
git-svn-id: svn://localhost/ardour2/branches/3.0@11329 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 13:43:48 +00:00
68e72c94c8 more useful error message when an internal send fails to find its target
git-svn-id: svn://localhost/ardour2/branches/3.0@11328 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 13:34:20 +00:00
e2b181bc5c a better fix for click oddness: do not clear clicks when transport stops till *after* the new _transport_frame value has been set, so that we know when the clicks were accurately cleared
git-svn-id: svn://localhost/ardour2/branches/3.0@11327 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 02:30:46 +00:00
e09dccc662 clear clicks when auto-returning, looping or whatever
git-svn-id: svn://localhost/ardour2/branches/3.0@11326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 01:34:50 +00:00
f5e1f6eed6 remove debug output; increase size of click pool, to cover long latency settings and so forth
git-svn-id: svn://localhost/ardour2/branches/3.0@11325 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 01:34:25 +00:00
d0ef18e94e improved fix for TOC string escaping, handle anything that can be converted from UTF-8 to Latin-1
git-svn-id: svn://localhost/ardour2/branches/3.0@11323 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-24 01:03:42 +00:00
5248d79fa4 undo escaping of strings in CUE files
git-svn-id: svn://localhost/ardour2/branches/3.0@11321 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 22:11:01 +00:00
9a21640567 a better fix for CUE/TOC string escaping: if the text is not Latin-1 already, reject it because TOC certainly cannot handle UTF-8 and CUE is probably better off without it too
git-svn-id: svn://localhost/ardour2/branches/3.0@11320 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 21:53:08 +00:00
bc3e1a2122 fix failure to find route templates
git-svn-id: svn://localhost/ardour2/branches/3.0@11319 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 19:49:46 +00:00
Carl Hetherington
4c224ef955 Speed up iterating over an entire PortSet by keeping a
separate list of all ports.


git-svn-id: svn://localhost/ardour2/branches/3.0@11318 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 19:35:56 +00:00
Sakari Bergen
0bede516be Fix export threading timeouts when disk operations take long. Might fix other timeout issues also.
git-svn-id: svn://localhost/ardour2/branches/3.0@11317 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 18:54:13 +00:00
Carl Hetherington
a71172feb2 Trim calls to parameter_count() a bit during the process
thread.


git-svn-id: svn://localhost/ardour2/branches/3.0@11316 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 18:17:09 +00:00
Carl Hetherington
9b4f0f7242 Cache results of lilv_port_is_a(...) in various places.
git-svn-id: svn://localhost/ardour2/branches/3.0@11315 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 18:02:22 +00:00
9c6ef3788c escape \ as \034 in TOC files
git-svn-id: svn://localhost/ardour2/branches/3.0@11314 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 17:24:34 +00:00
cbaa0d472e fix up escaping of strings in TOC files (suggested by andreas ruge)
git-svn-id: svn://localhost/ardour2/branches/3.0@11313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 17:16:53 +00:00
Carl Hetherington
d999895018 Add another profiling session.
git-svn-id: svn://localhost/ardour2/branches/3.0@11312 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 17:16:53 +00:00
Carl Hetherington
f0ff841d01 Tidy a few things up.
git-svn-id: svn://localhost/ardour2/branches/3.0@11311 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 16:03:08 +00:00
Carl Hetherington
62304d57c6 Basic process thread profiling code.
git-svn-id: svn://localhost/ardour2/branches/3.0@11310 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 15:01:08 +00:00
Carl Hetherington
61c57e7c4d Optimisation; it is much cheaper to run UnknownProcessor on the
rare occasions that it exists rather than dcasting every processor
to check for it.  Also put the dcast of PeakMeter off if possible.


git-svn-id: svn://localhost/ardour2/branches/3.0@11309 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-23 14:53:25 +00:00
Sakari Bergen
8e98352b6c Add toc and cue information to export format descriptions
git-svn-id: svn://localhost/ardour2/branches/3.0@11306 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-22 18:07:53 +00:00
Sakari Bergen
09d1fbd6c1 Add warnings for overwriting marker files
git-svn-id: svn://localhost/ardour2/branches/3.0@11305 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-22 18:02:27 +00:00
Carl Hetherington
e317386c5c For now, only use the multi-threaded process code if we are
using >1 processor for DSP; this involves making the DSP
use setting only take effect on a restart of Ardour.


git-svn-id: svn://localhost/ardour2/branches/3.0@11302 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-22 12:28:49 +00:00
Carl Hetherington
9080c672a5 Patch from anrug to always put a PERFORMER field in TOC
files (#4649).


git-svn-id: svn://localhost/ardour2/branches/3.0@11299 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-22 10:43:37 +00:00
Carl Hetherington
b447024c32 Add option to use plugin GUIs or Ardour generic ones.
git-svn-id: svn://localhost/ardour2/branches/3.0@11298 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-22 10:18:37 +00:00
Carl Hetherington
c95b34642f Use a button in the processor box for toggle parameters.
git-svn-id: svn://localhost/ardour2/branches/3.0@11297 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-21 22:54:36 +00:00
Carl Hetherington
4381b590bb Reinstate user Controllable values, as they are needed
for gain (which I forgot about).


git-svn-id: svn://localhost/ardour2/branches/3.0@11293 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-21 16:38:56 +00:00
Carl Hetherington
a8bb49e5d8 Add a send amp's gain control as a send controllable.
Tweak AutomationControl now that PBD::Controllable has
a default implementation of user_to_ui and ui_to_user. 
Add correct implementations of these methods to
Amp::GainControl.  Hence allow SendProcessorEntry to
use the generic mini-fader-adding code from
ProcessorEntry.


git-svn-id: svn://localhost/ardour2/branches/3.0@11292 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-21 16:38:45 +00:00
Carl Hetherington
17e6f1952e Remove unused code.
git-svn-id: svn://localhost/ardour2/branches/3.0@11289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-21 02:42:53 +00:00
Carl Hetherington
5a53f2f1b9 Simple approach to putting plugin controls into the
processor box.


git-svn-id: svn://localhost/ardour2/branches/3.0@11288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 18:02:48 +00:00
Carl Hetherington
d03d0363a4 Remove unused concept of user' values. Make user_to_ui
and ui_to_user virtual members of PBD::Controllable.


git-svn-id: svn://localhost/ardour2/branches/3.0@11286 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 18:02:36 +00:00
052a0785b5 slightly more efficient implementation of Graph::in_process_thread()
git-svn-id: svn://localhost/ardour2/branches/3.0@11278 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 14:35:02 +00:00
facd8b2d90 reverse prior commit, which causes a deadlock between IO::enable_connecting() and Route::add_send_to_internal_return() - issue needs a fix
git-svn-id: svn://localhost/ardour2/branches/3.0@11277 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 14:34:47 +00:00
77f9a1e75c fix an assert failure due to incorrect process locking when adding a send
git-svn-id: svn://localhost/ardour2/branches/3.0@11275 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 13:47:08 +00:00
cc5e8d41da patch from colinf to make dbl-click on send "box" map its controls to the strip; remove related stub functions from ProcessorBox; fix crash when removing send due to the process lock not being held
git-svn-id: svn://localhost/ardour2/branches/3.0@11274 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 03:39:45 +00:00
65c8d673a2 restore ability to create TOC and CUE files during export. this is an option in a given export format, not a per-export choice. so you need export formats with them set (or not) in order to utilize this choice. the resulting CUE/TOC files have not been checked with a burner (e.g. cdrdao) and testing of them would be appreciated - i (paul) have no CD burner h/w
git-svn-id: svn://localhost/ardour2/branches/3.0@11266 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18 21:56:06 +00:00
759f1216af fix reload of session with new send naming in place, drop "aux-" prefix from name of aux sends
git-svn-id: svn://localhost/ardour2/branches/3.0@11264 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18 18:37:26 +00:00
9524b08752 fix two major assert failures arising from the optional monitor section commit; separate numbering of aux sends, sends and listens to fix #3671 (still testing, but the assert failures are critical)
git-svn-id: svn://localhost/ardour2/branches/3.0@11263 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18 17:51:57 +00:00
Carl Hetherington
9237c7411c Catch exception thrown by SMF code when it cannot write
to a file (#4640).


git-svn-id: svn://localhost/ardour2/branches/3.0@11259 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18 02:10:40 +00:00
567153e4fb new file, a small idea
git-svn-id: svn://localhost/ardour2/branches/3.0@11257 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18 01:34:53 +00:00
508c5eb5bd make monitor section an optional feature than can be added/removed as needed. this is a big commit, and breakage is possible. it has been moderately tested. this commit also locks the remote control ID of the master bus to 318 and the monitor section (if any) to 319. the numbers are based on MIDI Machine Control limits
git-svn-id: svn://localhost/ardour2/branches/3.0@11256 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18 01:30:44 +00:00
4b95a7912a fix initial filling out of tempo bars|beats map after loading from XML by extending it (at least) to the last tempo/meter metric
git-svn-id: svn://localhost/ardour2/branches/3.0@11255 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-17 22:32:25 +00:00
Carl Hetherington
7fcfe672c4 Fix unutterably terrible thinko in previous commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@11254 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-17 16:54:09 +00:00
09f5369fea add more debugging to track/spot/debug mis-use of BeatFramesConverter
git-svn-id: svn://localhost/ardour2/branches/3.0@11253 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-17 05:27:22 +00:00
e2729c12a8 fix bug with tempo computation where passed in positions or offsets are negative
git-svn-id: svn://localhost/ardour2/branches/3.0@11252 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-17 03:00:32 +00:00
Carl Hetherington
381346ba5f Try to fix previous commit on 32-bit.
git-svn-id: svn://localhost/ardour2/branches/3.0@11248 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-14 23:32:03 +00:00
Carl Hetherington
36ec03358f Remove thought-to-be-unnecessary setup of Delivery::_no_outs_cuz_we_no_monitor
at the start of each cycle; it is set up at the start of Route::process_output_buffers.


git-svn-id: svn://localhost/ardour2/branches/3.0@11247 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-14 23:31:55 +00:00
Carl Hetherington
b087721d8a Add some debug code to time things in the process
thread(s).


git-svn-id: svn://localhost/ardour2/branches/3.0@11246 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-14 22:02:59 +00:00
Carl Hetherington
d4bab8aeed Trim some lock / unlock cycles on the trigger mutex.
git-svn-id: svn://localhost/ardour2/branches/3.0@11245 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-14 22:02:26 +00:00
Carl Hetherington
6f795668b9 Remove unused variables.
git-svn-id: svn://localhost/ardour2/branches/3.0@11244 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-14 22:02:14 +00:00
Carl Hetherington
af5f57d807 Fix use of rdtsc on 64-bit (I think).
git-svn-id: svn://localhost/ardour2/branches/3.0@11243 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-14 22:02:07 +00:00
d51f3e34b4 complete the do-not-free-data-from-getmntinfo() fix
git-svn-id: svn://localhost/ardour2/branches/3.0@11232 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-11 18:14:18 +00:00
426cb79763 fix latency compensation for the click
git-svn-id: svn://localhost/ardour2/branches/3.0@11226 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-11 14:36:46 +00:00
Carl Hetherington
39d41e46c5 Fix previous commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@11225 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-10 23:51:47 +00:00
Carl Hetherington
08826bc432 Remove unused _process_callback method.
git-svn-id: svn://localhost/ardour2/branches/3.0@11223 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-10 23:39:39 +00:00
0c68a56ffb remove some verbiage when creating audiofile sources
git-svn-id: svn://localhost/ardour2/branches/3.0@11213 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-10 01:57:33 +00:00
9b99745c5a fix auditioning (bystander casualty of monitoring fixes)
git-svn-id: svn://localhost/ardour2/branches/3.0@11212 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 22:25:18 +00:00
e7bb933477 fix nasty memory-related crashes caused by not noticing a bug in getmntinfo() on OS X, which disallows free()-ing memory allocated by that function
git-svn-id: svn://localhost/ardour2/branches/3.0@11211 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 22:02:10 +00:00
4306fc7aee change config dir on OS X to ~/Library/Preferences/Ardour3
git-svn-id: svn://localhost/ardour2/branches/3.0@11210 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 19:35:01 +00:00
34373c30f3 add MIDITrack specific ::monitoring_state() method
git-svn-id: svn://localhost/ardour2/branches/3.0@11207 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 16:43:30 +00:00
d0d6a2015f reduce Processor debug tag verbosity
git-svn-id: svn://localhost/ardour2/branches/3.0@11206 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 16:43:09 +00:00
5bda71718e remove some debug io from the Processors tag that is not really related to processors at all
git-svn-id: svn://localhost/ardour2/branches/3.0@11204 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 16:11:40 +00:00
5f1ff657c2 another AU-specific tempo fix
git-svn-id: svn://localhost/ardour2/branches/3.0@11203 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 16:10:59 +00:00
Carl Hetherington
9b975dce38 Fix typo.
git-svn-id: svn://localhost/ardour2/branches/3.0@11202 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-09 01:59:52 +00:00
c57db81068 don't allow/create non-beat aligned tempo changes in response to meter changes. round the position of a tempo change the earlier beat that it would have followed according to its bar_offset value
git-svn-id: svn://localhost/ardour2/branches/3.0@11199 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-08 17:19:29 +00:00
985946b1a1 fix up a few zero-boundary condition errors in TempoMap
git-svn-id: svn://localhost/ardour2/branches/3.0@11196 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-08 16:53:34 +00:00
0ddff57b50 sort debug options
git-svn-id: svn://localhost/ardour2/branches/3.0@11194 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-08 16:38:49 +00:00
d3346d5466 tempo map debugging with dlp
git-svn-id: svn://localhost/ardour2/branches/3.0@11193 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-08 16:20:54 +00:00
c85e251f0a add operator!= for BBT_Time
git-svn-id: svn://localhost/ardour2/branches/3.0@11188 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-07 17:11:17 +00:00
6b297a9928 when moving tempo and metric sections around (or adding new ones), prevent the existence of two tempo markers within the same beat, as well as two meter markers within the same bar (though i think this was prevented already by snapping meter sections to beat=1; make round_to_beats() work when dir==0 ("true rounding"); a bit of code cleanup
git-svn-id: svn://localhost/ardour2/branches/3.0@11185 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-07 15:18:27 +00:00
ba00aba51c fix positioning of grid line after a non-beat aligned tempo change
git-svn-id: svn://localhost/ardour2/branches/3.0@11182 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-07 02:44:41 +00:00
6a154f9de6 a better fix for timestamping non-beat-aligned tempo changes
git-svn-id: svn://localhost/ardour2/branches/3.0@11181 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-07 00:16:28 +00:00
d64d4a767d remove extra TempoMap::dump() call
git-svn-id: svn://localhost/ardour2/branches/3.0@11180 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 22:56:58 +00:00
c7b7cb9a31 re-adjust computation of non-beat aligned tempo change
git-svn-id: svn://localhost/ardour2/branches/3.0@11179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 22:50:34 +00:00
161c33a84f adjust computation of non-beat aligned tempo change, and let TempoMap::dump() be used "wherever"
git-svn-id: svn://localhost/ardour2/branches/3.0@11178 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 22:36:00 +00:00
28df3238c2 fix frame/beat walking to pass unit tests
git-svn-id: svn://localhost/ardour2/branches/3.0@11176 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 20:29:41 +00:00
bfca00efd2 remove messages when tempo map is not available in RT context
git-svn-id: svn://localhost/ardour2/branches/3.0@11175 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 20:29:18 +00:00
16063123f3 twiddle with one test explanation to help paul reason about it
git-svn-id: svn://localhost/ardour2/branches/3.0@11174 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 20:28:40 +00:00
355183f1ab partially revert some of the recent work on tempo to reflect new understanding of the problem. behaviour is now believed to be totally correct but awaiting a bit more testing
git-svn-id: svn://localhost/ardour2/branches/3.0@11171 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-06 16:39:40 +00:00
bdb15f9422 fix some more crashes with tempo map manipulations
git-svn-id: svn://localhost/ardour2/branches/3.0@11170 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-05 22:36:58 +00:00
c5205fe49f upgrade audiounit support to use the new tempomap API
git-svn-id: svn://localhost/ardour2/branches/3.0@11169 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-05 21:26:54 +00:00
9829a69549 fix over-zealous optimization in tempo map, caused crash
git-svn-id: svn://localhost/ardour2/branches/3.0@11168 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-05 21:24:26 +00:00
862299120c remove debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@11167 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-05 17:42:48 +00:00
3678b7c962 make extending the tempo map O(N) in the section to be filled in, rather than O(N) in the overall length of the map, and clean up some other details
git-svn-id: svn://localhost/ardour2/branches/3.0@11166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-05 17:31:24 +00:00
63f77717d7 remove un-needed TempoMap::frame_time_rt()
git-svn-id: svn://localhost/ardour2/branches/3.0@11165 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-05 15:56:14 +00:00
e0b694f630 possibly fix deadlocking issues with tempo map by rearranging code and adding RT variants for a couple of functions that would normally try to rebuild the map when necessary; instead the variants throw an exception and the RT code that called them tries to do something reasonable
git-svn-id: svn://localhost/ardour2/branches/3.0@11164 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-05 05:05:31 +00:00
Carl Hetherington
4e4306d125 Use Request::Pause rather than Request::Wait for
Butler::wait_until_finished. Otherwise the following bad
thing happens:

1.  The export code wants to call some Butler functions, so it calls
   calls Butler::wait_until_finished.
2.  This (used to) write Request::Wake into the butler's request pipe.
3.  Imagine that when this happens, the butler is already doing stuff.
4.  Meanwhile, Butler::wait_until_finished is waiting on Butler::paused.
5.  Some time later, the butler finishes its other stuff.
6.  Then it signals "paused".
7.  This causes Butler::wait_until_finished to return, so the export code
   thinks everything's ok and starts calling butler functions.
8.  Then the butler sees the Request::Wake, wakes up, and by unhappy coincidence
   ends up calling read on the same diskstream that the export code has just called.

This causes corruption of the Diskstream buffers, resulting in mantis #4283.

Using Request::Pause instead means that the butler will still wake in step #8,
but should_run will be false, so nothing much will happen and the export code
will be unimpeded.

For future reference, this bug was easiest to track down after adding a debugging
mutex to AudioDiskstream and then try-locking it in AudioDiskstream::_do_refill;
as far as I can see, _do_refill should never be called by two threads at the


git-svn-id: svn://localhost/ardour2/branches/3.0@11163 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 21:07:04 +00:00
d48fd2a679 try to clean up locking issues with TempoMap
git-svn-id: svn://localhost/ardour2/branches/3.0@11161 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 20:29:56 +00:00
f61a0d892c fix error in framepos_{plus,minus}_bbt() which miscounted beats while stepping through bars - stops dragged MIDI notes from ending up in the wrong place, and more
git-svn-id: svn://localhost/ardour2/branches/3.0@11159 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 18:48:32 +00:00
2858b0474e fix (?) tricky locking issues in the tempo map by adding a second lock and independently locking the metrics and the map itself
git-svn-id: svn://localhost/ardour2/branches/3.0@11157 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 17:55:42 +00:00
Carl Hetherington
b9a9d8d047 Use a few shared_ptrs to make things slightly neater.
git-svn-id: svn://localhost/ardour2/branches/3.0@11156 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 13:56:09 +00:00
365a8f7f14 implement TempoMap::framepos_minus_beats() using new bar|beat map structure, and fix accuracy of TempoMap::framepos_plus_bbt()
git-svn-id: svn://localhost/ardour2/branches/3.0@11155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 03:27:55 +00:00
b1a33855ce use BBTPoint::is_bar() rather than ::beat == 1 ; implement TempoMap::framepos_plus_{beats,bbt}() with new map structure (not totally finished or accurate yet); prevent crash when dragging a marker to replace the initial tempo/meter markers
git-svn-id: svn://localhost/ardour2/branches/3.0@11154 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-04 02:49:01 +00:00
Carl Hetherington
10d9eaf0bd Remove unused variables.
git-svn-id: svn://localhost/ardour2/branches/3.0@11153 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:13:16 +00:00
Carl Hetherington
2bea7aaca5 Maybe fix initial run of tests with sources.
git-svn-id: svn://localhost/ardour2/branches/3.0@11152 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:13:11 +00:00
Carl Hetherington
58d8b7f42f Add valgrind option for tests.
git-svn-id: svn://localhost/ardour2/branches/3.0@11150 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:12:58 +00:00
Carl Hetherington
469d3b8fd7 Add TestNeedingPlaylistAndRegions
git-svn-id: svn://localhost/ardour2/branches/3.0@11149 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 21:12:53 +00:00
43441aa924 remove duplicated test conditions
git-svn-id: svn://localhost/ardour2/branches/3.0@11148 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 19:20:54 +00:00
bc003a539b save 4 bytes per Bar|Beat point in the tempo map
git-svn-id: svn://localhost/ardour2/branches/3.0@11147 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 19:03:13 +00:00
2a200bdc0e return two iterators into the Bars|Beats list of the tempo map rather than making a copy; use iterators in the GUI
git-svn-id: svn://localhost/ardour2/branches/3.0@11146 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 18:43:58 +00:00
0d4658e0af more tempo fixes, including handling multiple metrics at the same place, and fixing round_to_beat_subdivision(). almost done now...
git-svn-id: svn://localhost/ardour2/branches/3.0@11145 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 17:59:47 +00:00
19126ddc09 fix incorrect tempo test
git-svn-id: svn://localhost/ardour2/branches/3.0@11144 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 17:58:46 +00:00
ce5de59c77 remove body of no-longer-relevant tempo-related test
git-svn-id: svn://localhost/ardour2/branches/3.0@11143 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 17:36:40 +00:00
d6ff0e35d8 add support for -D foobar when running tests
git-svn-id: svn://localhost/ardour2/branches/3.0@11142 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 17:36:17 +00:00
Carl Hetherington
b6438ed1f6 Add TestNeedingSession and add missing tempo_test.h
git-svn-id: svn://localhost/ardour2/branches/3.0@11140 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 16:05:25 +00:00
Carl Hetherington
dd57700445 New test.
git-svn-id: svn://localhost/ardour2/branches/3.0@11139 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:51 +00:00
Carl Hetherington
b0577f260c More test friends.
git-svn-id: svn://localhost/ardour2/branches/3.0@11138 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:22 +00:00
Carl Hetherington
d345d44688 Reverse parameters to CPPUNIT_ASSERT_EQUAL so its assert
messages read the right way round.


git-svn-id: svn://localhost/ardour2/branches/3.0@11137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:17 +00:00
Carl Hetherington
e11c96019a Fix erroneous test.
git-svn-id: svn://localhost/ardour2/branches/3.0@11136 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:12 +00:00
Carl Hetherington
279d0ff34b Remove unused variables.
git-svn-id: svn://localhost/ardour2/branches/3.0@11135 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:07 +00:00
Carl Hetherington
c9ed7d2402 Fix test build.
git-svn-id: svn://localhost/ardour2/branches/3.0@11134 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:32:01 +00:00
Carl Hetherington
c252d65f56 Reverse parameters to CPPUNIT_ASSERT_EQUAL so its assert
messages read the right way round.


git-svn-id: svn://localhost/ardour2/branches/3.0@11133 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-03 14:31:55 +00:00
Carl Hetherington
8be724db1b Use the correct flag for DAZ and default to using FTZ and DAZ denormal protection.
git-svn-id: svn://localhost/ardour2/branches/3.0@11132 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-02 23:52:28 +00:00
f135947606 intermediate commit as all tempo/meter stuff starts to walk the precompute Bars|Beats list. Still have ::round_to_beat_subdivision() to fix. haven't really done any thorough testing at this point, but basic stuff seems OK
git-svn-id: svn://localhost/ardour2/branches/3.0@11131 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-02 23:32:33 +00:00
69c7dac1a1 new approach to tempo/meter: compute and store the entire map (every bar|beat point), thus enabling us to use the same computation to set the BBT points AND the metric markers (tempo + meter) on the audio timeline. It is known that snapping to the BBT grid doesn't work correctly right now, but this probably caused by the separate code in TempoMap::round_to_type() and i'll dig into that tomorrow. Note that the Bar|beat point list is evaluated "lazily" - we'll never store more than anyone actually needs to display or know, other than 1 minute's worth starting from frame zero
git-svn-id: svn://localhost/ardour2/branches/3.0@11129 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-02 04:04:14 +00:00
Carl Hetherington
6c0224c987 Emit notify_layering_changed() more often; especially when we remove the only region on a top layer, and the StreamView needs to sort itself out.
git-svn-id: svn://localhost/ardour2/branches/3.0@11126 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-31 13:25:50 +00:00
Carl Hetherington
9c8a27c664 Don't round control list events when x-scaling them; prevents large loss of accuracy with xfades when they are scaled to be small and then expanded again (#4602).
git-svn-id: svn://localhost/ardour2/branches/3.0@11125 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-31 13:25:29 +00:00
Carl Hetherington
b93254f275 Anywhere that deletes regions needs to use a rdiff() on the playlist
for the undo history, so that changes to regions' layering_index
get stored in the undo record.  Make Playlist::update use add_region_internal
so that undone regions don't have their layering_index corrupted.
Setup layering indices on relayer() so that deletion of regions
causes an update.


git-svn-id: svn://localhost/ardour2/branches/3.0@11123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 23:41:17 +00:00
Carl Hetherington
0be530821c Debug code.
git-svn-id: svn://localhost/ardour2/branches/3.0@11122 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 23:41:11 +00:00
Carl Hetherington
dd53e7284a Set up layering_index immediately on an explicit layer, so that undo
works properly.  Stop the layer being a stateful property, as it is
always derived from layering_index, unambigiously, by relayer().


git-svn-id: svn://localhost/ardour2/branches/3.0@11120 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 20:05:48 +00:00
Carl Hetherington
2c23ff8ceb Add assert.
git-svn-id: svn://localhost/ardour2/branches/3.0@11119 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 20:05:40 +00:00
21d4eb56d4 fix default response behaviour of Gtkmm2ext::Prompter (from colinf)
git-svn-id: svn://localhost/ardour2/branches/3.0@11112 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-30 01:41:21 +00:00
Carl Hetherington
b177514930 Revert internals of the last layering-related commit, and go back a slightly-cleaned-up version of how it was before. Remove all layering modes; only option now is add-is-higher. Move-add-higher could easily be re-added if anyone uses it.
git-svn-id: svn://localhost/ardour2/branches/3.0@11111 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 22:14:15 +00:00
cabb76cce6 clean up comments and commented code
git-svn-id: svn://localhost/ardour2/branches/3.0@11110 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 21:40:20 +00:00
07750ccb32 next iteration of tempo map stuff - fixes off-by-one issues with bar offset<->beat math
git-svn-id: svn://localhost/ardour2/branches/3.0@11109 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-29 21:34:46 +00:00
a85e0b0a2e a huge set of changes to tempo+meter handling. testing feedback requested. the_CLA, you know who i mean :)
git-svn-id: svn://localhost/ardour2/branches/3.0@11103 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-28 21:02:31 +00:00
c3a52084f8 new DEBUG_ENABLED(bits) macro, potentially useful here and there
git-svn-id: svn://localhost/ardour2/branches/3.0@11102 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-28 21:01:52 +00:00
Carl Hetherington
0d46ad4ca5 Remove unused variable.
git-svn-id: svn://localhost/ardour2/branches/3.0@11101 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-28 18:55:25 +00:00
Carl Hetherington
f440f91849 Try to make new layering stuff play nicely with undo.
git-svn-id: svn://localhost/ardour2/branches/3.0@11097 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 20:21:00 +00:00
Carl Hetherington
86cb9348e8 Hack around one case where satisfying all constraints in a
relayer is impossible.


git-svn-id: svn://localhost/ardour2/branches/3.0@11096 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 19:10:31 +00:00
Carl Hetherington
78c4324026 More debugging.
git-svn-id: svn://localhost/ardour2/branches/3.0@11095 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 18:34:05 +00:00
Carl Hetherington
1ac41882d3 Improve debug slightly and fix raise/lower.
git-svn-id: svn://localhost/ardour2/branches/3.0@11094 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 18:33:59 +00:00
Carl Hetherington
2db69318ce Fix up confusion with relayering after movement drags in
overlaid mode.


git-svn-id: svn://localhost/ardour2/branches/3.0@11092 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 18:33:49 +00:00
Carl Hetherington
8f46200449 Basic DEBUG_TRACE for layering code.
git-svn-id: svn://localhost/ardour2/branches/3.0@11091 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 16:29:40 +00:00
Carl Hetherington
6304261b98 Re-work layering in possibly debatable ways. Sketchy docs in doc/layering.
git-svn-id: svn://localhost/ardour2/branches/3.0@11088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 01:42:49 +00:00
Carl Hetherington
0082e3364f Remove some wrongly commited stuff. Sorry\!
git-svn-id: svn://localhost/ardour2/branches/3.0@11087 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 00:57:20 +00:00
Carl Hetherington
dfc3078013 Add configure option to raise a FP exception when a denormal
is detected.


git-svn-id: svn://localhost/ardour2/branches/3.0@11086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 00:48:31 +00:00
Carl Hetherington
d771ca6b0e Move patch changes when inserting silence at the start of a model.
git-svn-id: svn://localhost/ardour2/branches/3.0@11084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 00:22:21 +00:00
a556546291 explain MXCSR shenanigans in libs/pbd/fpu.cc
git-svn-id: svn://localhost/ardour2/branches/3.0@11079 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 22:32:21 +00:00
5f88b44245 (1) do not write sequential same-value automation data into a ControlList (2) thin AutomationList data when reloading from disk (similar code as Ben's from ardour 2.X, but without user-adjustable thinning density at present). Should fix #4583 and maybe others caused by NaN's occuring from zero-slope lines
git-svn-id: svn://localhost/ardour2/branches/3.0@11078 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 22:13:54 +00:00
Carl Hetherington
773d20f330 Fix warnings during test runs.
git-svn-id: svn://localhost/ardour2/branches/3.0@11077 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 19:01:57 +00:00
Carl Hetherington
0fb091dc20 Clean up session after test.
git-svn-id: svn://localhost/ardour2/branches/3.0@11076 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 17:51:03 +00:00
Carl Hetherington
d95f6c7538 Remove unused method.
git-svn-id: svn://localhost/ardour2/branches/3.0@11075 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 17:50:53 +00:00
5558b3cf06 a grab bag of changes correcting and improving the way MIDI note on/off tracking is done. may/should fix a number of problem with spurious note-offs under a variety of circumstances
git-svn-id: svn://localhost/ardour2/branches/3.0@11074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 17:01:31 +00:00
Carl Hetherington
bda0f938fb Tidy up monitoring slightly so that it matches oofus' truth
table for the various different states.  Should fix #4533.


git-svn-id: svn://localhost/ardour2/branches/3.0@11073 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 15:37:14 +00:00
Carl Hetherington
0dbc0429a8 Comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@11070 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 12:50:24 +00:00
ddb1f52352 remove overly-floodish debug message from MidiTrackers trace
git-svn-id: svn://localhost/ardour2/branches/3.0@11068 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-23 19:20:52 +00:00
Carl Hetherington
2858e239f4 Rename a few bits and fix a undeclared method.
git-svn-id: svn://localhost/ardour2/branches/3.0@11066 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-23 01:38:38 +00:00
Carl Hetherington
b7688699ef Remove unused declaration.
git-svn-id: svn://localhost/ardour2/branches/3.0@11065 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-23 01:38:32 +00:00
Carl Hetherington
d8a9f64bbc Clarify ensure vs. request for JACK monitoring, naming-wise.
git-svn-id: svn://localhost/ardour2/branches/3.0@11064 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-23 01:11:46 +00:00
Carl Hetherington
15aa81fe70 Match request in function names to the eventual call to jack_port_request_monitor.
git-svn-id: svn://localhost/ardour2/branches/3.0@11063 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-23 01:11:41 +00:00
Carl Hetherington
d26260f51d Do some renaming in the ARDOUR::Port class tree.
git-svn-id: svn://localhost/ardour2/branches/3.0@11062 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-23 00:26:25 +00:00
Carl Hetherington
66532c0519 Remove unused header.
git-svn-id: svn://localhost/ardour2/branches/3.0@11061 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-22 23:50:08 +00:00
Carl Hetherington
74df4e2d91 Remove unused declaration.
git-svn-id: svn://localhost/ardour2/branches/3.0@11060 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-22 23:41:59 +00:00
d2dd80807c more tempo-related AU changes
git-svn-id: svn://localhost/ardour2/branches/3.0@11059 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-22 21:07:04 +00:00
ceaf76b505 switch over audio_unit.cc to use divisions_per_bar() not beats_per_bar(). not sure how this was missed
git-svn-id: svn://localhost/ardour2/branches/3.0@11058 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-22 20:48:37 +00:00
ed2beaffee main fix: when transport stops, clear per-region per-playlist note trackers even if there is no capture data to process; side effects: remove unused MidiBuffer::merge() and add DEBUG::MidiTrackers as well as more and better MIDI debug tracing facilities
git-svn-id: svn://localhost/ardour2/branches/3.0@11057 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-22 20:14:47 +00:00
2449a787c5 fix a build issue in Evoral that was preventing Sequencer<T>::dump() from being available, and expose operator<< for Sequence<T>
git-svn-id: svn://localhost/ardour2/branches/3.0@11054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-22 02:09:39 +00:00
8ab4703173 remove extraneous debugging output from MidiBuffer::merge_in_place()
git-svn-id: svn://localhost/ardour2/branches/3.0@11053 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-21 19:56:40 +00:00
642ab99db8 reorganize MidiBuffer::merge_in_place() to cover the cases i wasn't thinking about and be more logical to anyone else
git-svn-id: svn://localhost/ardour2/branches/3.0@11052 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-21 19:33:41 +00:00
302ac289ba likely fix for crash in MidiBuffer::merge_in_place() due to unwarranted assumption in the code
git-svn-id: svn://localhost/ardour2/branches/3.0@11051 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-21 18:10:58 +00:00
8d05ed8e8a merge-in-place debugging (to be removed later)
git-svn-id: svn://localhost/ardour2/branches/3.0@11050 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-21 17:30:08 +00:00