13
0
Commit Graph

746 Commits

Author SHA1 Message Date
8b160ef500 Add PBD::sys::extension for getting the filename extension of a file
git-svn-id: svn://localhost/ardour2/trunk@2405 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:17 +00:00
4cf84efe88 Modify PBD::sys::basename to match boost::filesystem behaviour and document it.
This makes this function equivalent to PBD::basename_nosuffix, sys::basename
takes a path as an argument rather than a string but that is ok as a path can
automatically constructed from a string.


git-svn-id: svn://localhost/ardour2/trunk@2404 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:15 +00:00
26c4c12fb7 Add path::branch_path to the PBD::sys::path class
This is basically equivalent to Glib::path_get_dirname but returning an
empty string(path) if a path doesn't contain any directory components rather
than "."


git-svn-id: svn://localhost/ardour2/trunk@2403 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:12 +00:00
54b17ddfd7 Fix to avoid overwriting the backup file of a 0.99 session when opening a session
This is equivalent to the fix applied as rev 2244 to the 2.0-ongoing branch


git-svn-id: svn://localhost/ardour2/trunk@2402 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:09 +00:00
a36eccbfcc Add some documentation regarding the PBD::sys namespace and my justifications for writing that code
git-svn-id: svn://localhost/ardour2/trunk@2401 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 07:15:19 +00:00
911c873e56 Change the SessionDirectory constructor to take a sys::path instead of a string
git-svn-id: svn://localhost/ardour2/trunk@2400 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 07:15:17 +00:00
d767a064b6 Use sys::exists instead of g_file_test in session.cc
git-svn-id: svn://localhost/ardour2/trunk@2399 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 07:15:01 +00:00
b821426d4a Remove unused utility function elapsed_time_to_str
git-svn-id: svn://localhost/ardour2/trunk@2398 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 07:14:58 +00:00
a87d7bfe27 Remove declaration of unused and undefined method in Session class
git-svn-id: svn://localhost/ardour2/trunk@2397 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 07:14:50 +00:00
ef9f07ea64 Use Session::_session_dir instead of Session::_path when calling Session::setup_raid_path in Session::set_state
git-svn-id: svn://localhost/ardour2/trunk@2396 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 06:05:26 +00:00
960218a9d3 Remove inclusion of unused header file
git-svn-id: svn://localhost/ardour2/trunk@2394 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 06:05:21 +00:00
db53aaab51 Remove inclusion of unused header file
git-svn-id: svn://localhost/ardour2/trunk@2393 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 06:05:19 +00:00
18767c39f7 Remove unused constant max_layer, which is also incorrectly defined as UCHAR_MAX when layer_t is uint32_t
Defining it using std::numeric_limits<layer_t>::max() would of avoided
this inconsistancy but as it unused it is doesn't really matter I guess.


git-svn-id: svn://localhost/ardour2/trunk@2392 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 06:05:17 +00:00
189071eae2 Remove unused functions Session::possible_states
git-svn-id: svn://localhost/ardour2/trunk@2390 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 05:26:34 +00:00
078e867f3c Add ARDOUR::get_state_files_in_directory and ARDOUR::get_file_names_no_extension to ardour/session_state_utils.h/cc
git-svn-id: svn://localhost/ardour2/trunk@2386 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 05:26:24 +00:00
bf69e8f09a Remove three unused temporary variables from Session::save_template
git-svn-id: svn://localhost/ardour2/trunk@2385 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:42 +00:00
05b4d05d12 Use ARDOUR::create_backup_file in Session::save_state
git-svn-id: svn://localhost/ardour2/trunk@2384 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:39 +00:00
dd51b6a6b8 Use ARDOUR::create_backup_file in Session::remove_state
git-svn-id: svn://localhost/ardour2/trunk@2383 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:36 +00:00
8058475a3d Add function ARDOUR::create_backup_file in new header ardour/session_state_utils.h/cc
git-svn-id: svn://localhost/ardour2/trunk@2382 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:33 +00:00
e7398da7ec Remove unused function PBD::copy_file
git-svn-id: svn://localhost/ardour2/trunk@2381 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:30 +00:00
1f33d1d615 Use PBD::sys::copy_file instead of PBD::copy_file in Session::load_state
git-svn-id: svn://localhost/ardour2/trunk@2380 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:26 +00:00
b8f488c6e4 Use PBD::sys::path instead of PBD::copy_file in Session::save_state
git-svn-id: svn://localhost/ardour2/trunk@2379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:23 +00:00
4535b6ae84 Use PBD::sys::copy_file instead of PBD::copy_file in Session::remote_state
Replace one line C style comments with C++ equivalent in Session::remove_state


git-svn-id: svn://localhost/ardour2/trunk@2378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:21 +00:00
96c9b5456f Use PBD::sys::copy_file instead of PBD::copy_file in Session::create_session_file_from_template
git-svn-id: svn://localhost/ardour2/trunk@2377 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:18 +00:00
e3364b72cc Add function PBD::sys::copy_file intended to replace PBD::copy_file
Basically moving PBD::copy_file implementation to pbd/filesystem.h/cc.
The implementation itself looks like it could be improved to use
much less memory when copying big files by reading and writing in
chunks but I don't think that is an issue at present.


git-svn-id: svn://localhost/ardour2/trunk@2376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:13 +00:00
653a552da5 Use functions in pbd/filesystem.h in Session::save_state for portability
Add ARDOUR::temp_suffix to ardour/filename_extensions.h/cc


git-svn-id: svn://localhost/ardour2/trunk@2375 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:11 +00:00
b49e50afac Use functions from pbd/filesystem.h in Session::remove_state for portability
Add ARDOUR::backup_suffix to ardour/filename_extensions.h/cc


git-svn-id: svn://localhost/ardour2/trunk@2374 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:09 +00:00
911e30a73a Use sys::remove instead of ::unlink in Session::remove_pending_capture_state for portability
git-svn-id: svn://localhost/ardour2/trunk@2373 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:06 +00:00
29842063e3 Add function PBD::sys::remove as a wrapper to g_unlink
API is intended to be indentical(apart from the string type) to boost::filesystem::remove


git-svn-id: svn://localhost/ardour2/trunk@2372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:48:04 +00:00
f9c202dba0 Use PBD::sys::path and SessionDirectory in Session::remove_pending_capture_state for portability
git-svn-id: svn://localhost/ardour2/trunk@2371 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:47:54 +00:00
96034486b2 Use sys::path and SessionDirectory in Session::create_session_file_from_template for portability
git-svn-id: svn://localhost/ardour2/trunk@2370 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:47:51 +00:00
3b937a7c44 Rename PBD::SearchPath::get_string to PBD::SearchPath::to_string
git-svn-id: svn://localhost/ardour2/trunk@2369 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:47:48 +00:00
39cd07a969 Use sys::path and SessionDirectory classes in Session::load_state for portability
git-svn-id: svn://localhost/ardour2/trunk@2368 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:47:44 +00:00
54f525770f Use PBD::sys::exists instead of Glib::file_test in Session::load_state
git-svn-id: svn://localhost/ardour2/trunk@2367 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 04:47:41 +00:00
51c0f6c442 Reading of MIDI CC from MIDI regions (MidiModel). UI still needs work though..
Various fixes for linear/integer AutomationList interpolation (for CC).


git-svn-id: svn://localhost/ardour2/trunk@2359 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-31 05:02:45 +00:00
056b2a59d5 Split MidiModel::Note out to ARDOUR::Note in it's own file (midi_model.h was getting fat).
Initial work on MidiModel iterator.


git-svn-id: svn://localhost/ardour2/trunk@2355 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-28 17:48:37 +00:00
e486a8d86f Per-region MIDI CC "automation".
Extremely broken in several ways.
This commit brought to you by the letters D, R, and my need to switch machines.


git-svn-id: svn://localhost/ardour2/trunk@2323 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-17 17:25:20 +00:00
f9a7388d7a Make SMFSource suck significantly less.
Read from MidiRingbuffer directly into model, don't read MidiRingBuffer into a new midi buffer, then into the model.
Pass rec data to UI via model instead of a separate buffer.
Read MIDI CC data into MidiModel (though not actually used yet).
Made quantization toggle edited flag so model is saved.


git-svn-id: svn://localhost/ardour2/trunk@2308 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-16 01:25:58 +00:00
Carl Hetherington
4bd83a409e Fix segfault due to uninitialised variable
git-svn-id: svn://localhost/ardour2/trunk@2299 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-14 10:49:29 +00:00
2f84a7792b Remove excessive SMF "Wrote EOT" printing.
Shave a few bytes off each ControlPoint if not used by a Curve (24 bytes on 64-bit).


git-svn-id: svn://localhost/ardour2/trunk@2294 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-13 20:27:38 +00:00
67a0d6b2d9 Fix (edited) MIDI saving restoring (restore note offs/durations correctly).
git-svn-id: svn://localhost/ardour2/trunk@2292 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-13 15:32:29 +00:00
5156998e6e Saving of edited MIDI data to disk (on session save).
Seems to be a pretty random problem with note duration restoring though...


git-svn-id: svn://localhost/ardour2/trunk@2290 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-11 06:17:42 +00:00
861181d742 Fix MIDI file names on recording (don't write out a ton of useless empty .mid files).
Preliminary hooks for writing model to file (still does nothing).


git-svn-id: svn://localhost/ardour2/trunk@2289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-11 00:22:57 +00:00
b6855bc209 Fix crash on audio region bounce. Not sure if it's correct though...
git-svn-id: svn://localhost/ardour2/trunk@2288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-10 23:28:53 +00:00
8f6a131e41 Fix note separator lines from stealing mouse events.
Fix shutdown crash (one of many, namely the least nasty).
Failed attempt at getting MIDI edits to apply ASAP (Diskstream::playlist_modified isn't the magic I'd hoped it was).


git-svn-id: svn://localhost/ardour2/trunk@2265 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-07 20:51:24 +00:00
c80e9d4ac9 Fix note-offs during playback from model.
git-svn-id: svn://localhost/ardour2/trunk@2262 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-07 00:28:06 +00:00
d07f541cdf slightly improved fixes for MIDI issues
git-svn-id: svn://localhost/ardour2/trunk@2260 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-06 17:50:23 +00:00
6529c7994f Fix startup crashes from recent MIDI stuff.
git-svn-id: svn://localhost/ardour2/trunk@2259 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-06 17:44:07 +00:00
b0efb9f434 Added missing files.
git-svn-id: svn://localhost/ardour2/trunk@2258 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-06 16:43:14 +00:00
b9b6ba8be4 merge changes to libmidi++ API from 2.0-ongoing
git-svn-id: svn://localhost/ardour2/trunk@2256 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-06 14:19:19 +00:00
f68caf23dd Genericificationalizeified AudioFilter (now Filter).
Added primitive (non-undoable, placeholder, etc) quantization.


git-svn-id: svn://localhost/ardour2/trunk@2254 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-06 05:30:18 +00:00
d594470148 Fix for deadlock in Session::remove_source that was committed in rev 1815
git-svn-id: svn://localhost/ardour2/trunk@2253 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-06 04:45:24 +00:00
53415b270c Little MidiEvent prettification additions, ifdef'd non-realtime aspects (for future purposes).
Fix MIDI recording crash bug.


git-svn-id: svn://localhost/ardour2/trunk@2228 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-02 21:08:18 +00:00
cfda46ba3e ... commit in top level instead of gtk2_ardour. whoops.
git-svn-id: svn://localhost/ardour2/trunk@2219 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-02 04:45:16 +00:00
874f3bbf8b Fix note delete crash bug.
Fix midi recording crash bug.


git-svn-id: svn://localhost/ardour2/trunk@2216 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-01 23:18:56 +00:00
6698f5f686 use XML state to store processors in mixer (strips) and fixup crash caused by missing AutomationController for integer LADSPA plugin params
git-svn-id: svn://localhost/ardour2/trunk@2215 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-01 22:18:46 +00:00
d7db3f757f Better MidiModel command framework, ready to go for all your canvas editing needs.
Rewrote MidiEvent to be a well-behaved self-contained object that optionally owns it's buffer, has proper copying semantics, etc.
Fixed crazy bugs triggered by adding lots of events with varying times to a region.
Speed up initial session display significantly (don't redraw each MIDI region tons of times, though still happens more than once and can use fixing...).


git-svn-id: svn://localhost/ardour2/trunk@2213 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-01 20:50:09 +00:00
41c0847c57 extend filtering to VST + AU, tweak details, add filter-by-creator and by library
git-svn-id: svn://localhost/ardour2/trunk@2199 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-31 16:03:35 +00:00
bb33e5d9f8 Get MidiRegionView's hands on MidiModel for editing operations to come.
MIDI select rectangle.
Add notes on a proper click only (not mouse down).
Fix crash when dragging from region to outside region.


git-svn-id: svn://localhost/ardour2/trunk@2196 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-31 02:16:46 +00:00
ea5a4eac10 Use correct install path for powermate control surface module on x86_64. Fixes bug 1764.
git-svn-id: svn://localhost/ardour2/trunk@2195 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-31 02:00:23 +00:00
Taybin Rutkin
8756647ab9 - build fixes for OS X.
-- casts for vDSP in mix.cc
-- fix for PluginInsert::PluginControl usage
-- disable POWERMATE if POWERMATE=0



git-svn-id: svn://localhost/ardour2/trunk@2193 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-31 00:48:10 +00:00
f59870b49f another minor fix for gtkmm breakage with Gtk::Settings::get_default() in not-entirely current gtkmm releases
git-svn-id: svn://localhost/ardour2/trunk@2191 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-30 23:08:06 +00:00
2cbaa2751c Basic canvas note event handling framework.
Note dragging (non-functional).


git-svn-id: svn://localhost/ardour2/trunk@2187 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-30 16:33:10 +00:00
633d9131af Use 'show contents' note range by default (fix uninitialized value).
Obey note mode on playback (note offs are not sent in Percussive mode).
Vary note colour/opacity with velocity (needs theization/tweaking, but hey, it's something).


git-svn-id: svn://localhost/ardour2/trunk@2184 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-28 09:01:19 +00:00
6e167cb1a8 Playback from MIDI model, playback of clicked-in events.
Note the diskstream chunk size affects reading of clicked-in, so you may need to seek away and back again to have new events read (this will be fixed).


git-svn-id: svn://localhost/ardour2/trunk@2183 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-28 07:09:21 +00:00
Sampo Savolainen
71452634a7 Protect ardour from sessions with errant capture sources stored in the
session state.



git-svn-id: svn://localhost/ardour2/trunk@2177 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-24 19:17:29 +00:00
Sampo Savolainen
722ea289a7 Workaround / safeguard which should enable punching in more than once
due to wrongly set last_recordable_frame.


git-svn-id: svn://localhost/ardour2/trunk@2170 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-21 13:16:36 +00:00
823a1d36c1 Remove random access interface from MidiBuffer, towards killing fixed/limited event size assumption.
git-svn-id: svn://localhost/ardour2/trunk@2159 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-20 05:37:24 +00:00
58d8a71597 Trimmed some code by removing silly Java-isms.
Real men make references to functions, and like it!


git-svn-id: svn://localhost/ardour2/trunk@2158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-20 04:30:21 +00:00
f9717abf01 Fix absolutely atrocious memory leak on MIDI recording. I meeean... move along now, nothing to see here.
Fix SMFSource to realloc a scratch read buffer as necessary, removing upper limit on single raw event size.
Remove public exposure of MidiBuffer::max_event_size (though it still exists internally).
Fix crash bug on MIDI record completion (transport stop).


git-svn-id: svn://localhost/ardour2/trunk@2157 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-20 03:18:36 +00:00
6a4bd8e926 Added Note tool to Keymouse Actions menu and gave it a hotkey (n).
Removed excessive MIDI debug messages.
Fixed stuck note resolution bug, rewrote MidiModel "recording" stuff to be stronger, faster, better.
We have the technology.


git-svn-id: svn://localhost/ardour2/trunk@2156 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-20 01:56:19 +00:00
f542fa693c Midi pencil undo (not yet serializable).
Formatting fixes for session.h (ie kill more of those damned 8 space expanded tabs).


git-svn-id: svn://localhost/ardour2/trunk@2135 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-17 01:48:42 +00:00
37c74810d2 support for 16 bit native files, part II
git-svn-id: svn://localhost/ardour2/trunk@2134 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-16 22:06:35 +00:00
94f329cd1e Fix formatting of command stuff to adhere to The Guidelines(TM).
git-svn-id: svn://localhost/ardour2/trunk@2130 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-16 18:32:31 +00:00
332a3d9813 Selection of visible note range (full range vs fit contents, selectable from midi track menu).
Added note pencil tool, mock note adding (notes can be added visually but don't yet play).
Reworked MidiModel to be notes w/ duration instead of realtime style MIDI events.
Moved layering (stacked/overlaid) from auto time axis down to route time axis since it applies
to MIDI tracks as well.


git-svn-id: svn://localhost/ardour2/trunk@2128 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-15 01:56:11 +00:00
Doug McLain
74eded425a show() widgets explicitly in the MixerUI window, fix UI::just_hide_it(), so that it only hides the requested widget
git-svn-id: svn://localhost/ardour2/trunk@2127 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-10 19:11:59 +00:00
01c84bcbba Linear interpolation for MIDI CC (bar controller, line, and actual MIDI output all now obey linear/discrete mode).
git-svn-id: svn://localhost/ardour2/trunk@2125 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-07 07:54:51 +00:00
68653307e6 Note modes: note, percussion.
Percussion tracks display diamonds.
	Separated/fixed MIDI and audio mode menus.
CC automation modes: discrete, line.
	Bar controllers follow setting (hard steps or line) on playback.
	Sent CC data is always discrete (line not implemented yet).
	Discrete tracks show no lines, and always show control points.
Separated ControlPoint from AutomationLine.
Added some basic information (range) to Parameter (to be fleshed out..).


git-svn-id: svn://localhost/ardour2/trunk@2123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-07 03:19:04 +00:00
b942d3613e Fix 'live' CC sending of bar controllers after loading session (previously only worked when immediately created by user).
git-svn-id: svn://localhost/ardour2/trunk@2116 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-06 02:37:35 +00:00
19273e824d Midi CC automation sending (send points only, no linear interpolation yet).
Split buffer.cc into buffer.cc audio_buffer.cc midi_buffer.cc.
Renamed 'send_buffers' to 'mix_buffers'.
This is the first revision of Ardour where clicking around and drawing things can send MIDI and thus generate wonderful world-changing music.  Break out the champagne.


git-svn-id: svn://localhost/ardour2/trunk@2115 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-06 00:09:53 +00:00
0c3944f7dd Replace remaining references to 'param_id' (with 'parameter').
git-svn-id: svn://localhost/ardour2/trunk@2109 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-05 01:43:30 +00:00
912346057c Remove unneeded cruft from Curve.
git-svn-id: svn://localhost/ardour2/trunk@2108 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-05 01:31:43 +00:00
a1052b0eca Changed Processor interface to support out-of-place processors, for Panner.
git-svn-id: svn://localhost/ardour2/trunk@2106 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-04 22:32:28 +00:00
2177f00841 Add AutomationControl::parameter() for terseness.
Future-proof automation track GUI 'extra' XML (<GUI><AutomationChild automation-id="gain"> instead of <GUI><gain> so Parameter.to_string isn't used as an XML node name).
Fix automation track controller bar shown/hidden state.
Fix automation track initial show bug.


git-svn-id: svn://localhost/ardour2/trunk@2103 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-04 00:39:00 +00:00
133a66920b s/ParamID/Parameter/
git-svn-id: svn://localhost/ardour2/trunk@2098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-03 18:39:09 +00:00
0da2977027 Pan automation/serialization fixes.
"Live" Midi CC sending from Midi CC automation track controllers.


git-svn-id: svn://localhost/ardour2/trunk@2097 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-03 02:37:24 +00:00
ef0b9a7409 Pan automation work. Almost, but not quite, working.
git-svn-id: svn://localhost/ardour2/trunk@2093 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-30 22:08:39 +00:00
bbf4175713 Another not-quite-there-but-better commit.
Brought plugin automation into the fold of new automation system.
Fixed plugin automation, broke panner automation :] (pending Panner work).
Made AutomationController better at automatically following it's controller value (mimic what gain meter does).
Fixed some visible automation track bugs (but still broken WRT serialization).


git-svn-id: svn://localhost/ardour2/trunk@2092 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-30 18:41:50 +00:00
Doug McLain
685fa95e72 only do the widget packing style hack once, instead of everytime there is a theme change
git-svn-id: svn://localhost/ardour2/trunk@2091 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-29 21:12:52 +00:00
Doug McLain
4c000c13ee Moved canvas colors and theme file selection into new ui specific config system
git-svn-id: svn://localhost/ardour2/trunk@2086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-29 17:13:09 +00:00
eb296b2c95 Reduce overhead of multi-type-ness (last Summer's SoC):
Use uint32_t instead of size_t counts (halves size of ChanCount on 64-bit).
	Shift DataType values down to eliminate subtraction every index of a ChanCount or *Set.

Allow using DataType directly as an array index (prettier/terser).
Fix some mixed spaces/tabs in file comment headers.


git-svn-id: svn://localhost/ardour2/trunk@2082 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-29 06:58:07 +00:00
44867662a3 Separate MidiBuffer and AudioBuffer into separate headers (trims the dependency tree, and too large to be in one anyway).
git-svn-id: svn://localhost/ardour2/trunk@2081 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-29 04:40:41 +00:00
24ccaac67e Further automation refactoring - bring in the concept of Controllable, work towards
making automation + GUI + play/write/touch generic and easily reusable.
Added bar controller to automation track controls (mostly relevant for MIDI CC, but added for gain and pan too Just Because).
Fixed glaring "redirect" list errors.
Fix plugin controls/automation loading.


git-svn-id: svn://localhost/ardour2/trunk@2080 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-29 04:02:58 +00:00
f8697ed223 remove inadvertently committed objects
git-svn-id: svn://localhost/ardour2/trunk@2079 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-28 19:38:20 +00:00
f95aa76f4a add basic support for the griffin powermate (a control surface) (from ben loftis)
git-svn-id: svn://localhost/ardour2/trunk@2078 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-28 19:35:48 +00:00
b5af3bb8e3 allow user tweaking of everything that might have inherent latency; add GUI for track level adjustment and widget that can be (but is not yet) embedded in a plugin GUI
git-svn-id: svn://localhost/ardour2/trunk@2075 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 22:06:35 +00:00
05bcdd1d4c Renamed Insert to Processor and Redirect to IOProcessor.
git-svn-id: svn://localhost/ardour2/trunk@2071 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 20:23:48 +00:00
09264537c4 Fix annoying warning from canvas var stuff.
git-svn-id: svn://localhost/ardour2/trunk@2070 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 16:45:57 +00:00
d7bd270aa1 Big ol' automation refactor.
Things with automation parameters now inherit from Automatable, which handles serialization, fetching/adding/removing parameters, etc.
Use AutomationList everywhere instead of Curve, make Curve a member of AutomationList instead (towards other types of "Curve" needed for CC, among other things).
Work towards MIDI CC sending "automation" tracks.


git-svn-id: svn://localhost/ardour2/trunk@2069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 15:51:50 +00:00
d7afe01c30 Remove functions from ardour/ardour.h that are now unused
git-svn-id: svn://localhost/ardour2/trunk@2068 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:54 +00:00
66caf9b7e5 Use ARDOUR::system_data_search_path instead of get_system_data_path in ARDOUR::system_template_directory
git-svn-id: svn://localhost/ardour2/trunk@2066 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:51 +00:00
e6986c0360 Add ARDOUR::system_data_search_path to ardour/filesystem_paths.h
git-svn-id: svn://localhost/ardour2/trunk@2062 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:43 +00:00
327cfc9cb5 Remove unused function ARDOUR::find_config_file
git-svn-id: svn://localhost/ardour2/trunk@2061 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:41 +00:00
7092ef3d08 Move ARDOUR_UI::ThemeChanged signal into Gtkmm2ext::UI
This means ThemeManager no longer depends on ARDOUR_UI


git-svn-id: svn://localhost/ardour2/trunk@2057 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:34 +00:00
bbc289dbe3 Add ARDOUR::ardour_search_path that contains the directories in the ARDOUR_PATH environment variable.
Rename ARDOUR::config_search_path to ARDOUR::system_config_search_path

Use PBD::find_file_in_search_path in Configuration::load_state


git-svn-id: svn://localhost/ardour2/trunk@2054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:28 +00:00
c37a944b15 Add ARDOUR::config_search_path
git-svn-id: svn://localhost/ardour2/trunk@2053 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:26 +00:00
1c8fc3c584 Rename ARDOUR::system_module_directory ARDOUR::ardour_module_directory
git-svn-id: svn://localhost/ardour2/trunk@2052 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:24 +00:00
fca7e674c1 Add PBD::system_data_directories and PBD::system_config_directories
These two functions are for convenience and wrap the glib functions
g_get_system_data_dirs and g_get_system_config_dirs.


git-svn-id: svn://localhost/ardour2/trunk@2051 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:22 +00:00
b82ecabcbf Use sys::path and ARDOUR::user_config_directory in VSTPlugin::get_state
This is so I can remove ARDOUR::get_user_ardour_path which is replaced by
ARDOUR::user_config_directory


git-svn-id: svn://localhost/ardour2/trunk@2050 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:20 +00:00
0abcfb16ba Replace code for finding ControlProtocols/Surface plugins with a portable equivalent.
Remove Session::control_protocol_path and the supporting non-portable
Session::suffixed_search_path from Session.

Add ARDOUR::control_protocol_search_path which is used in place of
Session::control_protocol_path

Replace ARDOUR::get_system_module_path with ARDOUR::system_module_directory which
is used by ARDOUR::control_protocol_search_path

Export ARDOUR_SURFACES_PATH in gtk2_ardour/ardev_common.sh which is returned
by ARDOUR::control_protocol_search_path if defined. This means the control surfaces
in the libs/surfaces/* directories can now be used without installing them.

Add pbd/file_utils.h/cc containing functions for finding files matching a certain
pattern

Update documentation in SearchPath and add another constructor that takes
a sys::path


git-svn-id: svn://localhost/ardour2/trunk@2049 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:18 +00:00
1b77a35353 Remove AudioLibrary::uri2path and use Glib::filename_from_path in its place
git-svn-id: svn://localhost/ardour2/trunk@2048 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:14 +00:00
28bf53adcc Remove AudioLibrary::path2uri and use Glib::filename_to_uri instead
git-svn-id: svn://localhost/ardour2/trunk@2047 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:12 +00:00
18e65da42b Use sys::path and ARDOUR::user_config_directory in AudioLibrary for portablility
Use Glib::filename_to_uri to create the src uri(which didn't look valid as it was)


git-svn-id: svn://localhost/ardour2/trunk@2046 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:10 +00:00
e71ec730bf Use sys::path and ARDOUR::user_config_directory in ARDOUR::read/write_recent_sessions
git-svn-id: svn://localhost/ardour2/trunk@2045 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:09 +00:00
7459379ec4 Use sys::path and ARDOUR::user_config_directory in Configuration::save_state for portability
git-svn-id: svn://localhost/ardour2/trunk@2044 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:07 +00:00
4b0a205830 Use ARDOUR::user_config_directory in Configuration::*instant_xml
Stateful::add_instant_xml was modified so it would create the user
config directory if it doesn't exist, create_directories may throw
if it cannot be created. This isn't a change in behaviour as
ARDOUR::get_user_ardour_path also throws an exception(although I
can't see any existing code to handle it)


git-svn-id: svn://localhost/ardour2/trunk@2043 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:06 +00:00
283e8f211f Use ARDOUR::user_config_directory in ARDOUR::user_template_directory
git-svn-id: svn://localhost/ardour2/trunk@2042 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:03 +00:00
8d88671178 Add ARDOUR::user_config_directory in new header ardour/filesystem_paths.h
git-svn-id: svn://localhost/ardour2/trunk@2041 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:12:00 +00:00
0cab8ee556 Remove inclusion of an unused header file
git-svn-id: svn://localhost/ardour2/trunk@2040 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:11:57 +00:00
b3d2b45615 Remove unused and non-portable utility function
git-svn-id: svn://localhost/ardour2/trunk@2039 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-27 12:11:56 +00:00
Doug McLain
2e3bc708db Fix for blank (null) strings being saved for any color with an r value that contained a leading zero
git-svn-id: svn://localhost/ardour2/trunk@2037 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-26 23:50:20 +00:00
72b0e4399c (Untested) loop recording support in MIDI Diskstream (fix compilation broken by loop recording changes).
git-svn-id: svn://localhost/ardour2/trunk@2036 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-26 04:16:17 +00:00
Jesse Chappell
e9b1b7110b * Added (let's call it revealed) ability to record while the transport is looping.
This works for both Internal (seamless) and JACK sync, new regions are created 
  each cycle around the loop and stacked on top of each other.  It is recommended 
  for now that automatic crossfades be turned off when doing this.  
  Punch-In/Out may be used also (this used to be the only way to accomplish recording
  while looping, but now the GUI represents it without goofiness.
 
* Fixed the stuttering/stuck problem when looping with JACK sync

* Fixed gui bug that prevented record-disable when latch record option is on

* Fixed issue where it would rec-enable unnecessarily when passing through the punch-out point

* Fixed corner case in diskstream record length (that no one would ever notice)



git-svn-id: svn://localhost/ardour2/trunk@2035 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-26 02:16:54 +00:00
Doug McLain
c94583a81d make libsndfile build with or without flac support based on flac version checking
git-svn-id: svn://localhost/ardour2/trunk@2032 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-25 21:26:34 +00:00
66722dd874 Fix loading inserts from 2.0 sessions.
git-svn-id: svn://localhost/ardour2/trunk@2029 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-23 22:12:16 +00:00
4b9c53bb98 Added missing file.
git-svn-id: svn://localhost/ardour2/trunk@2028 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-23 20:15:34 +00:00
49ee64ada7 Insert/Redirect refactoring, towards better MIDI support in mixer strip, and
http://ardour.org/node/1043 style things.


git-svn-id: svn://localhost/ardour2/trunk@2027 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-23 20:13:13 +00:00
05184ed52f Split PortInsert and PluginInsert into their own files.
git-svn-id: svn://localhost/ardour2/trunk@2026 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-20 03:39:19 +00:00
8ae5804279 Made plugin input/output counts multi-typed (towards MIDI plugins, instruments, etc).
Cleaning up/genericification of Insert interface.
Fixed meter count for pre-fader metering (was # inputs, not # channels at end of pre-fader redirect list).
Work on redirect list stream handling, better error reporting (towards automatically adding 'adaptors' in the future?).


git-svn-id: svn://localhost/ardour2/trunk@2025 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-20 03:05:16 +00:00
ac1a241644 Fix SMF file directory (midifiles instead of audiofiles).
git-svn-id: svn://localhost/ardour2/trunk@2023 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 05:35:25 +00:00
cc42292445 Remove unused method Session::template_dir
git-svn-id: svn://localhost/ardour2/trunk@2022 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:53:33 +00:00
92ba31386d Whitespace fixes in ardour/session.h
git-svn-id: svn://localhost/ardour2/trunk@2021 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:53:26 +00:00
1ef0ecd90a Remove unused method Session::delete_template
git-svn-id: svn://localhost/ardour2/trunk@2020 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:53:18 +00:00
2ac399c82c Remove unused method Session::rename_template
git-svn-id: svn://localhost/ardour2/trunk@2019 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:53:11 +00:00
ccd732beea Reinstate code removed in rev 1917 that creates the text tags for the log window
This was causing an assertion each time a log message is sent as the text tags
are uninitialized.


git-svn-id: svn://localhost/ardour2/trunk@2018 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:53:04 +00:00
56a27e8734 Modify Session::save_template for portablity
git-svn-id: svn://localhost/ardour2/trunk@2017 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:52:57 +00:00
0681da3e62 Add ardour/template_utils.h that contains ARDOUR::user_template_directory and ARDOUR::system_template_directory
git-svn-id: svn://localhost/ardour2/trunk@2015 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:52:45 +00:00
f21746ad7c Remove unused Session::template_path method
git-svn-id: svn://localhost/ardour2/trunk@2014 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:52:39 +00:00
dfbda70cea Modify PBD::Stateful::add_instant_xml/instant_xml to take a PBD::sys::path instead of a string
git-svn-id: svn://localhost/ardour2/trunk@2013 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:52:32 +00:00
36291eb399 Make Stateful::*instant_xml methods protected and non-virtual
Add add_instant_xml and instant_xml methods to the Session class which call
the corresponding Stateful methods with the session directory for the
directory argument

Add add_instant_xml and instant_xml methods to the Configuration class which
call the Stateful methods with ARDOUR::get_user_ardour_path() for the directory
argument


git-svn-id: svn://localhost/ardour2/trunk@2012 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:47:40 +00:00
4b95621853 Move Stateful class declared in pbd/stateful.h into the PBD namespace
git-svn-id: svn://localhost/ardour2/trunk@2011 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:47:33 +00:00
0ce6fa247d Whitespace fixes in pbd/stateful.h
git-svn-id: svn://localhost/ardour2/trunk@2010 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:47:24 +00:00
68289676c0 Remove unused method Session::get_template_list
git-svn-id: svn://localhost/ardour2/trunk@2008 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:47:11 +00:00
6da12f1009 Remove unused method Session::export_dir
git-svn-id: svn://localhost/ardour2/trunk@2007 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:47:04 +00:00
221733e446 Remove unused method Session::peak_dir
git-svn-id: svn://localhost/ardour2/trunk@2005 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:46:50 +00:00
4c298f62b5 Use SessionDirectory::peak_path in place of Session::peak_dir in Session::second_stage_init
git-svn-id: svn://localhost/ardour2/trunk@2004 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:46:43 +00:00
b2d26fcb9e Use SessionDirectory and sys::path in Session::peak_path_from_audio_path for portability
git-svn-id: svn://localhost/ardour2/trunk@2003 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:46:37 +00:00
238cab0166 Remove unused methods Session::sound_dir and Session::old_sound_dir
git-svn-id: svn://localhost/ardour2/trunk@2002 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:46:30 +00:00
8755e8a609 Add an method for to accessing a Session's SessionDirectory
git-svn-id: svn://localhost/ardour2/trunk@1999 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:46:12 +00:00
3ee59d437f Remove Session::midi_dir...again.
git-svn-id: svn://localhost/ardour2/trunk@1998 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:46:05 +00:00
ee29fcacfb Replace Session::discover_best_sound/midi_dir with Session::get_best_session_directory_for_new_source
git-svn-id: svn://localhost/ardour2/trunk@1997 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:45:58 +00:00
0346cdc281 Forward declare the SessionDirectory class in session.h to reduce compilation dependencies
git-svn-id: svn://localhost/ardour2/trunk@1996 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:45:50 +00:00
db2fd8402e Remove unneeded temporary variable.
git-svn-id: svn://localhost/ardour2/trunk@1995 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17 00:45:43 +00:00
a7ad624392 Fix time canvas separator lines.
git-svn-id: svn://localhost/ardour2/trunk@1994 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-16 23:55:23 +00:00
842ade44fb Move (default) colours from code to rc file.
Write/read colours from XML in hex (ie usual RGBA values).
Fix "clipped aveform" typo in canvas vars.


git-svn-id: svn://localhost/ardour2/trunk@1991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-16 17:48:08 +00:00
8ceea13592 Fix marker label text colour.
git-svn-id: svn://localhost/ardour2/trunk@1990 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-16 15:28:42 +00:00
Doug McLain
789cbb2181 Major Theme Manager changes, see ardour-dev
git-svn-id: svn://localhost/ardour2/trunk@1987 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-15 22:08:27 +00:00
13151b43f0 Redraw MIDI region views on zoom and track height changes.
Disable excessive/old debug prints.
Fix region view heights.


git-svn-id: svn://localhost/ardour2/trunk@1982 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-09 06:10:30 +00:00
7ff7f4013d Use double MIDI timestamps (towards tempo based time, and more-than-sample-accurate LV2 MIDI plugin application).
Eliminate double iteration over MIDIRingBuffer read to translate timestamps.


git-svn-id: svn://localhost/ardour2/trunk@1981 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-09 02:07:59 +00:00
0605f98fdc Fix time skew after MIDI recording (added missing conversion from delta time to audio frames).
Fix crash bug in MIDI recording.


git-svn-id: svn://localhost/ardour2/trunk@1980 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-08 23:03:32 +00:00
cc18cf3516 Write MIDI files to interchange/sessionname/midifiles (for real this time).
git-svn-id: svn://localhost/ardour2/trunk@1979 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 23:12:04 +00:00
b17a003d0a Logarithmic MIDI metering.
git-svn-id: svn://localhost/ardour2/trunk@1978 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 21:04:37 +00:00
bc60785ea5 Remove two unused temporary variables from SearchPath::add_subdirectory_to_paths
git-svn-id: svn://localhost/ardour2/trunk@1977 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:25:06 +00:00
a94bbda76c Refactor Session::setup_raid_path Session::raid_path to use PBD::SearchPath
git-svn-id: svn://localhost/ardour2/trunk@1976 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:25:00 +00:00
2c8d0460c2 Rename SearchPath::get_search_path_string to SearchPath::get_string
git-svn-id: svn://localhost/ardour2/trunk@1975 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:24:53 +00:00
82b884b707 Add SearchPath class to libpbd
git-svn-id: svn://localhost/ardour2/trunk@1974 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:24:46 +00:00
1e7ff46a81 Remove unused PBD::Path class.
git-svn-id: svn://localhost/ardour2/trunk@1973 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:24:38 +00:00
5fa419129d Use sys::path and SessionDirectory in Session::find_all_sources for portability
git-svn-id: svn://localhost/ardour2/trunk@1972 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:24:31 +00:00
df7358904a Remove unused Session methods for re/storing favorite directories.
This sort of functionality is also now supported directly by Gtk+.


git-svn-id: svn://localhost/ardour2/trunk@1971 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:24:25 +00:00
131366d046 Use SessionDirectory instead of Session::sound_dir in Session::cleanup_sources
git-svn-id: svn://localhost/ardour2/trunk@1970 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:24:18 +00:00
91f6efcbe9 Use SessionDirectory instead of Session::sound_dir in Session::audio_path_from_name
git-svn-id: svn://localhost/ardour2/trunk@1969 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:24:12 +00:00
8222f62216 Use SessionDirectory for generating the sound directory path in Session::remove_empty_sounds
git-svn-id: svn://localhost/ardour2/trunk@1968 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:24:05 +00:00
5dcea083d7 Add a SessionDirectory to the Session class
git-svn-id: svn://localhost/ardour2/trunk@1967 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:23:58 +00:00
3c446f0920 Use ARDOUR::peakfile_suffix in audiofilesource.cc
git-svn-id: svn://localhost/ardour2/trunk@1966 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:23:51 +00:00
f3b51babe3 Use ARDOUR::peakfile_suffix in place of a couple of string constants
git-svn-id: svn://localhost/ardour2/trunk@1965 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:23:46 +00:00
ec642bb95a Add peak file extension to ardour/filename_extensions.h/cc
git-svn-id: svn://localhost/ardour2/trunk@1964 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:23:39 +00:00
ee78f64092 Remove unused method Session::dead_sound_dir
git-svn-id: svn://localhost/ardour2/trunk@1963 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:23:33 +00:00
e3d73847ea Add ARDOUR::surfaces_dir_name to directory_names.h/cc
git-svn-id: svn://localhost/ardour2/trunk@1962 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:23:26 +00:00
4afbeb664a Use ARDOUR::templates_dir_name in session_state.cc
git-svn-id: svn://localhost/ardour2/trunk@1961 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:23:19 +00:00
f8a39386e7 Add ARDOUR::templates_dir_name to directory_names.h/cc
git-svn-id: svn://localhost/ardour2/trunk@1959 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 03:23:05 +00:00
9091ba932d Fixed MIDI crash bug.
Added some asserts to gtkmm2ext that hopefully may catch a bug I might have possibly seen once or twice, probably.
Fixed uninitialized value in time_axis_view.cc.


git-svn-id: svn://localhost/ardour2/trunk@1958 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-07 02:07:49 +00:00
ca40990444 Fix MIDI session path problems (thanks timbyr).
Fix conversion warnings in smf_source.cc. 


git-svn-id: svn://localhost/ardour2/trunk@1957 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-06 15:39:56 +00:00
3718a85c29 merge essej's fix for OS X
git-svn-id: svn://localhost/ardour2/trunk@1956 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-06 01:16:05 +00:00
7852cc219c Save MIDI files to interchange/sessionname/midifiles (instead of audiofiles).
Fix some uninitialized variables in Streamview.
Tempo-based SMF source (internally only).
Horrible crash on MIDI record finish.


git-svn-id: svn://localhost/ardour2/trunk@1955 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-05 16:39:23 +00:00
e9de0dec8a Fix MIDI metering to not "clip" on many notes.
git-svn-id: svn://localhost/ardour2/trunk@1951 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-04 03:24:14 +00:00
10a282777a MIDI metering.
git-svn-id: svn://localhost/ardour2/trunk@1950 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-04 01:38:28 +00:00
70fd14afe8 Show selected MIDI track in editor mixer.
Minor code cleanups.


git-svn-id: svn://localhost/ardour2/trunk@1949 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-04 00:05:33 +00:00
b0e91bfa08 Fix MIDI region loading.
Add model loading and destroying to SMFSource.
Load and display MIDI region data on session load.


git-svn-id: svn://localhost/ardour2/trunk@1947 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-03 20:06:01 +00:00
b6814c4839 Fix vertical order of MIDI notes.
Extend current active notes to end of region while recording.
Initialize note state correctly.


git-svn-id: svn://localhost/ardour2/trunk@1945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-02 00:55:32 +00:00
7bfe236ba7 maybe fix flac stuff
git-svn-id: svn://localhost/ardour2/trunk@1944 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-02 00:35:09 +00:00
b32765571b Preliminary visible MIDI notes in MidiRegionView.
git-svn-id: svn://localhost/ardour2/trunk@1943 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-01 23:27:29 +00:00
01a780eb4d round 2 of denormal handling changes - detect DAZ support at runtime, and use accordingly. move all FPU feature detection into PBD::FPU
git-svn-id: svn://localhost/ardour2/trunk@1939 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-01 20:29:36 +00:00
38ed75ff97 merge denormal handling work from 2.0-ongoing
git-svn-id: svn://localhost/ardour2/trunk@1937 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-01 02:27:21 +00:00
0f2f4d8efc Rewrote MidiRingBuffer to more efficiently pack data (flat pack stamps, sizes, and event data into a single buffer).
Eliminate a double-copy on MIDI playback (MidiRingBuffer -> MidiBuffer).
Various MIDI diskstream/source/SMF fixes (only write when appropriate, handle transport locates, etc).
Fix MIDI rec region size/offset problems.
Code cleanups.


git-svn-id: svn://localhost/ardour2/trunk@1934 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-31 21:37:20 +00:00
52a8242a11 fixup botched xfade-as-audioregion; apply work from 2.0-ongoing
git-svn-id: svn://localhost/ardour2/trunk@1933 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-31 21:15:28 +00:00
539aa71d18 (MERGED FROM rev 1924 on 2.0-ongoing) fix some (all? not likely) problems with dragging close to 2^32-1 frames
git-svn-id: svn://localhost/ardour2/trunk@1925 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-30 03:31:49 +00:00
Doug McLain
e1f57ba8f0 New theme manager, with option to select between dark and light theme. Cleanups to ardours handling of the ui rc file during startup, and changed the monitoring options to be global instead of session specific. More details about the theme stuff comign to ardour-dev
git-svn-id: svn://localhost/ardour2/trunk@1917 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-25 20:29:12 +00:00
376c5381ed (merge from 2.0-ongoing -r1911:1912) fix audio clock handling of key press; fix crash bug caused by mapping over a region list selection that includes rows without regions; also merge sampo's redirect undo/state fixes from 2.0-ongoing
git-svn-id: svn://localhost/ardour2/trunk@1913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-23 00:06:16 +00:00
48d078b975 virtualize audioregion, make crossfade IS-A audioregion
git-svn-id: svn://localhost/ardour2/trunk@1889 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-21 22:12:06 +00:00
b99c6c6e1d When loading sessions, create any missing session directories rather than throwing an exception.
Change the meaning of the return value of SessionDirectory::create and add documentation to explain usage.

Add PBD::sys::filesystem_error to indicate a filesystem error and throw it where necessary.

Change the semantics of PBD::sys::create_directory/ies functions to match boost::filesystem


git-svn-id: svn://localhost/ardour2/trunk@1884 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-19 11:31:27 +00:00
Carl Hetherington
fd6408e6ba Rename ARDOUR::Connection to ARDOUR::Bundle, a few minor cleanups along the way.
git-svn-id: svn://localhost/ardour2/trunk@1882 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 15:58:01 +00:00
Carl Hetherington
452daa6371 Remove region raise() and lower(). Try to do region layering better.
git-svn-id: svn://localhost/ardour2/trunk@1881 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 13:55:25 +00:00
Taybin Rutkin
de9187f0ed fix for compiling with COREAUDIO=yes. Hopefully this fix will prevent future drifting.
git-svn-id: svn://localhost/ardour2/trunk@1880 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 11:06:54 +00:00
Taybin Rutkin
91b67c1d98 fix for linking midi++ on MacOSX.
git-svn-id: svn://localhost/ardour2/trunk@1879 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 03:01:52 +00:00
f160408d4b Add SessionDirectory::export_path and make sure it gets created in SessionDirectory::create
git-svn-id: svn://localhost/ardour2/trunk@1878 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:46:40 +00:00
355a988c3f Remove Session::create_session_directory as it is no longer used
git-svn-id: svn://localhost/ardour2/trunk@1876 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:46:27 +00:00
b8a14dff49 Use SessionDirectory class in place of Session::create_session_directory when creating a session from a template
git-svn-id: svn://localhost/ardour2/trunk@1875 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:46:19 +00:00
04c1ce1960 Add PBD::sys::path class that has a similar API to boost::filesystem::path but using glib/mm filesystem utility functions
Add ARDOUR::SessionDirectory class

Use SessionDirectory to create the session directory structure when creating a new session


git-svn-id: svn://localhost/ardour2/trunk@1874 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:46:12 +00:00
113b80adb0 Move directory names out of Session class and into directory_names.h/cc files
git-svn-id: svn://localhost/ardour2/trunk@1873 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:46:05 +00:00
e88f2f2e2f Rename Session::create to Session::create_session_directory and use bool to indicate success/failure
git-svn-id: svn://localhost/ardour2/trunk@1872 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:45:56 +00:00
944601ec2d Move code from Session::create into the Session constructors
git-svn-id: svn://localhost/ardour2/trunk@1871 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:45:49 +00:00
0b0c764f4c Add Session::create_session_file_from_template method
git-svn-id: svn://localhost/ardour2/trunk@1870 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:45:36 +00:00
5f7f6e092a Add Session::create_session_file method
git-svn-id: svn://localhost/ardour2/trunk@1869 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:45:29 +00:00
62c4c4cfbd Add a Session::initialize_start_and_end_locations method
git-svn-id: svn://localhost/ardour2/trunk@1868 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:45:22 +00:00
c7e404a1c0 Use PBD::copy_file in Session::create() to copy the template file.
git-svn-id: svn://localhost/ardour2/trunk@1867 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:45:15 +00:00
1dd429ac35 Change return type of PBD::copy_file to boolean to indicate success/failure
git-svn-id: svn://localhost/ardour2/trunk@1866 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:45:08 +00:00
1ca0e752fd Move Session::find_session into a session_utils.h header
git-svn-id: svn://localhost/ardour2/trunk@1865 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:41:44 +00:00
09d6a96321 Move file suffixes out of the Session class and into filename_extensions.h/cc
git-svn-id: svn://localhost/ardour2/trunk@1864 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18 02:41:36 +00:00
06fd14b085 Remove bogus assertion from ardour/source.cc as the names of embedded files are stored as absolute paths.
git-svn-id: svn://localhost/ardour2/trunk@1854 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-17 01:00:39 +00:00
9b226f8eb6 baby steps to virtualize AudioRegion
git-svn-id: svn://localhost/ardour2/trunk@1853 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-16 12:54:21 +00:00
770dc73cde 2nd of tim mayberry's patches to fix middle-click pastingina couple of dialogs
git-svn-id: svn://localhost/ardour2/trunk@1851 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-16 02:42:01 +00:00
44a8ba64f0 added L and R as possible audio file suffixes
git-svn-id: svn://localhost/ardour2/trunk@1847 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-16 01:49:38 +00:00
c6df33a82d correctly manage video sync state
git-svn-id: svn://localhost/ardour2/trunk@1844 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-15 13:16:59 +00:00
6cf8026ac3 add new "lock position" feature for regions
git-svn-id: svn://localhost/ardour2/trunk@1842 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-14 16:16:54 +00:00
bac4734a13 add new A/B comparison for plugins, plus ways of disabling all plugins quickly (not undoable at this time)
git-svn-id: svn://localhost/ardour2/trunk@1840 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-14 14:13:59 +00:00
Doug McLain
9383499ce6 Add 'delta edit cursor' option to primary and secondary clocks. When in this mode, the clocks display the absolute difference between the playhead and the edit cursor
git-svn-id: svn://localhost/ardour2/trunk@1838 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-14 02:48:28 +00:00
Carl Hetherington
90f3128d73 Add some comments.
git-svn-id: svn://localhost/ardour2/trunk@1837 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-11 15:06:12 +00:00
Carl Hetherington
9b411705f2 Fix compilation with VST=1
git-svn-id: svn://localhost/ardour2/trunk@1834 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-11 12:53:43 +00:00
Carl Hetherington
aa3bb18b17 Re-work main right-click context menu to operate on the selection, and remove some confusion about what region(s) will be affected by menu selections.
git-svn-id: svn://localhost/ardour2/trunk@1831 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-10 11:53:35 +00:00
4342f2aeb0 fix use of old .ardour dir for VST presets
git-svn-id: svn://localhost/ardour2/trunk@1829 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-10 11:39:35 +00:00
3f75517610 Got rid of (possibly?) false assertion (not present in 2.0 and caused crashes).
git-svn-id: svn://localhost/ardour2/trunk@1818 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-10 05:29:26 +00:00
9a4a9cbb63 Added nicer looking wrapper methods for ChanCount::get(DataType), sedified code to use it.
git-svn-id: svn://localhost/ardour2/trunk@1816 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-10 03:50:17 +00:00
7f64e5ac4c merge changes for 2.0.1/2.0.2, plus some fixes to issues made apparent by conflicts
git-svn-id: svn://localhost/ardour2/branches/midi@1812 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-10 02:23:12 +00:00
1e7bcd8b0f Gain performance improvements (don't waste time applying gain when not necessary).
git-svn-id: svn://localhost/ardour2/branches/midi@1811 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-10 00:41:04 +00:00
185be4e841 fix #1637 (needs merging to 2.0.1 branch); remove debug printf
git-svn-id: svn://localhost/ardour2/branches/midi@1791 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-07 14:13:25 +00:00
5183f9b772 require new JACK API; fix inheritance bug in AudioRegion::verify_*()
git-svn-id: svn://localhost/ardour2/branches/midi@1789 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-07 03:26:43 +00:00
ebe4fc9d88 Update Jack system port names to reflect new Jack naming scheme.
git-svn-id: svn://localhost/ardour2/branches/midi@1787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-07 00:06:07 +00:00
34009a4565 Fixed metering instant-dropoff bug.
git-svn-id: svn://localhost/ardour2/branches/midi@1786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-06 01:36:26 +00:00
7c9db826bc Use Jack trunk MIDI. This needs proper fixing..
git-svn-id: svn://localhost/ardour2/branches/midi@1784 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-04 23:57:01 +00:00
b8e9b3f071 Real fix for Jack MIDI crash. Maybe!
git-svn-id: svn://localhost/ardour2/branches/midi@1782 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-04 02:50:31 +00:00
acdfe9857a Possible fix for Jack MIDI crash on jack_get_buffer_size some are seeing.
git-svn-id: svn://localhost/ardour2/branches/midi@1780 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-04 01:47:13 +00:00
a8da89d745 optimize some performance bottlenecks; remove jack_nframes_t that crept back into the code
git-svn-id: svn://localhost/ardour2/branches/midi@1779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-03 23:28:57 +00:00
5a1ca70f07 Fixed performance (assert/branching/call overhead) issue with DataType.
git-svn-id: svn://localhost/ardour2/branches/midi@1776 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-02 17:55:57 +00:00
c3e666867c reintroduce use of optimized functions for gain into buffer code, and cleanup the way they are declared to avoid depending on Session
git-svn-id: svn://localhost/ardour2/branches/midi@1775 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-02 15:21:51 +00:00
a612857eb6 make session restore work by using explicit data types when creating new playlists ... poses question - how did this ever compile before?
git-svn-id: svn://localhost/ardour2/branches/midi@1774 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-02 13:09:03 +00:00
0c7b7216ef initial fixes to get build to work without new JACK MIDI, and to get it running with an older session, at least somewhat
git-svn-id: svn://localhost/ardour2/branches/midi@1773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-01 23:26:14 +00:00
cdaec2d09e Fixed meter crash bug.
git-svn-id: svn://localhost/ardour2/branches/midi@1771 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-01 17:12:25 +00:00
b3fe7cfc89 Merged with trunk R1761
git-svn-id: svn://localhost/ardour2/branches/midi@1762 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-04-29 17:23:11 +00:00
490e18d80a Merged with trunk R1736.
git-svn-id: svn://localhost/ardour2/branches/midi@1737 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-04-22 18:01:10 +00:00
a9f5e379d2 Merged with trunk R1729.
git-svn-id: svn://localhost/ardour2/branches/midi@1730 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-04-19 18:23:23 +00:00