13
0
Commit Graph

784 Commits

Author SHA1 Message Date
27b022bdeb Pass a path argument to ImportableSource rather than SNDFILE handle so resource management is contained
git-svn-id: svn://localhost/ardour2/trunk@2667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:58 +00:00
4076f7714a Fix mixed usage of tabs and spaces for indentation in ardour/importable_source.h
git-svn-id: svn://localhost/ardour2/trunk@2666 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:54 +00:00
3bf4a04d94 Use std::auto_ptr instead of boost::scoped_ptr in Session::import_audiofile
git-svn-id: svn://localhost/ardour2/trunk@2665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:46 +00:00
e34d3e3312 Move variable declaration closer to usage
git-svn-id: svn://localhost/ardour2/trunk@2664 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:43 +00:00
a45598ec2a Use sys::remove instead of ::unlink in Session::import_audiofile for portability
git-svn-id: svn://localhost/ardour2/trunk@2663 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:39 +00:00
da48c50527 Remove unused variable in Session::import_audiofile
git-svn-id: svn://localhost/ardour2/trunk@2662 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:36 +00:00
e1fde117b4 Use scoped_ptr in Session::import_audiofile to manage ImportableSource
git-svn-id: svn://localhost/ardour2/trunk@2661 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:32 +00:00
9e8afdd306 Refactor part of Session::import_audiofile into write_audio_data_to_new_files utility function
git-svn-id: svn://localhost/ardour2/trunk@2660 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:28 +00:00
1bffd1c209 Use std::vector and boost::shared_array instead of raw arrays for channel data in Session::import_audiofile
git-svn-id: svn://localhost/ardour2/trunk@2659 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:23 +00:00
4f7e6c0714 Use boost::scoped_array to manage working buffer for RAII in Session::import_audiofile
git-svn-id: svn://localhost/ardour2/trunk@2658 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:19 +00:00
4e89709c2d Move filename generation in Session::import_audiofile to utility function get_non_existent_filename
git-svn-id: svn://localhost/ardour2/trunk@2657 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:14 +00:00
1c70e4393e Use boost::shared_ptr for RAII with a SNDFILE handle in Session::import_audiofile
A scoped_ptr would be more suitable and efficient but scoped_ptr doesn't support
a custom deleter function(sf_close in this case), there are ways around that
limitation but I don't think it is worth doing at this point as it requires more
code etc.


git-svn-id: svn://localhost/ardour2/trunk@2656 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-15 02:31:09 +00:00
Carl Hetherington
49df5c24a9 More missing bits.
git-svn-id: svn://localhost/ardour2/trunk@2650 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 11:09:40 +00:00
Carl Hetherington
f44e2a5e69 Yet more missing things. I'm going slightly mad.
git-svn-id: svn://localhost/ardour2/trunk@2649 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 11:00:40 +00:00
Carl Hetherington
cec0caf4fc Add some more bits.
git-svn-id: svn://localhost/ardour2/trunk@2648 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 10:55:13 +00:00
Carl Hetherington
9c98fdec1b Fix up permissions.
git-svn-id: svn://localhost/ardour2/trunk@2647 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 10:54:16 +00:00
Carl Hetherington
a1e55f9367 Fix up permissions.
git-svn-id: svn://localhost/ardour2/trunk@2646 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 10:53:56 +00:00
Carl Hetherington
aa6faa86b5 More missing stuff...
git-svn-id: svn://localhost/ardour2/trunk@2645 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 10:45:40 +00:00
Carl Hetherington
a313924b77 Re-add glibmm2 properly.
git-svn-id: svn://localhost/ardour2/trunk@2644 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 10:37:24 +00:00
Carl Hetherington
89f1f09c04 Add stuff missing from yesterday's library commit.
git-svn-id: svn://localhost/ardour2/trunk@2643 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 10:29:44 +00:00
84e1a74e43 Don't log info message when creating session directories
git-svn-id: svn://localhost/ardour2/trunk@2640 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 06:41:12 +00:00
e1351fbe75 Don't log a warning when the system template directory does not exist.
git-svn-id: svn://localhost/ardour2/trunk@2639 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 06:41:02 +00:00
e75fe398ac Remove unused header include from ardour/ladspa_plugin.cc
git-svn-id: svn://localhost/ardour2/trunk@2638 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 06:40:56 +00:00
3b32566d30 Modify Session::path_from_region_name for portability
git-svn-id: svn://localhost/ardour2/trunk@2637 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 06:40:50 +00:00
6dc5e02575 Replace Glib::file_test with sys::exists in Session::path_from_region_name
git-svn-id: svn://localhost/ardour2/trunk@2636 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 06:40:45 +00:00
Carl Hetherington
d346adb1d9 Add missing cairomm lib from previous commit.
git-svn-id: svn://localhost/ardour2/trunk@2631 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-13 00:43:53 +00:00
Carl Hetherington
61c990dfba Upgrade gtkmm to 2.10.8, glibmm to 2.13.3 and add cairomm 1.2.4
git-svn-id: svn://localhost/ardour2/trunk@2630 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-12 23:44:49 +00:00
b01bdb7e70 merged with trunk revs 2605-2627
git-svn-id: svn://localhost/ardour2/trunk@2628 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-12 22:23:01 +00:00
badc087263 merged with 2.0-ongoing changes 2582-2605 (not thoroughly tested but it compiles, start up, and creates a new session)
git-svn-id: svn://localhost/ardour2/trunk@2606 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-08 01:40:25 +00:00
8e73c9ee80 patch to prevent (mostly) CD marker being set for the start of the session
git-svn-id: svn://localhost/ardour2/trunk@2601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-07 02:42:27 +00:00
Carl Hetherington
caa3dde1d4 Fix for some problems with punch ranges.
git-svn-id: svn://localhost/ardour2/trunk@2589 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-11-05 15:20:44 +00:00
13fce7e753 Do unto MIDI as thou hath done unto audio.
git-svn-id: svn://localhost/ardour2/trunk@2582 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-31 20:08:00 +00:00
0051f92a4c Truly atomic port mixdown function setting.
git-svn-id: svn://localhost/ardour2/trunk@2581 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-31 20:05:49 +00:00
1059b3f48e new files added
git-svn-id: svn://localhost/ardour2/trunk@2580 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-31 18:28:52 +00:00
8ab17e9631 new port design, probably about 90% done (i.e it mostly works and this commit is to stop anyone else from stomping on my changes :)
git-svn-id: svn://localhost/ardour2/trunk@2579 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-31 18:24:43 +00:00
Nick Mainsbridge
cc862d31bd use filechooser widget in export dialog, selected files set format combos, hide progress bar until use in export dialog, speed up 'separate regions in range' operation on larger sessions, ruler scale now calculated separately to mark generation, fix for non-stacked layering regression, try not to generate 'buried' crossfades, use playlist->freeze() to speed up copying/moving regions on large playlists (not done for undo), width dependent items now reset on regionview init, get rid of jack_port_ensure_monitor check, remove audiosourse _length (only source has a length.. i think), make overlapend differ to overlapexternal where start points coincide.
git-svn-id: svn://localhost/ardour2/trunk@2576 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-26 13:32:24 +00:00
0c3f01e540 Use SSE/veclib/whatever for AudioBuffer::accumulate_from
git-svn-id: svn://localhost/ardour2/trunk@2574 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-25 00:42:53 +00:00
7ba6a6c11b Fix mixed space/tab evil in globals.cc for no particular reason.
git-svn-id: svn://localhost/ardour2/trunk@2573 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-25 00:19:09 +00:00
f53f2e8e33 Clean/strengthen up constructor/type stuff in new port system.
git-svn-id: svn://localhost/ardour2/trunk@2572 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-25 00:09:23 +00:00
Carl Hetherington
fc9ab1ccbd Re-work Port construction slightly so that _flags is always initialised before reset() is called. Otherwise a decision is made based on an uninitialised variable (as spotted by valgrind)
git-svn-id: svn://localhost/ardour2/trunk@2568 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-23 14:02:15 +00:00
Carl Hetherington
4d33fbac62 Fix a probably-irrelevant warning from valgrind.
git-svn-id: svn://localhost/ardour2/trunk@2567 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-23 13:33:46 +00:00
Carl Hetherington
20db119cd3 Fix crash due to invalidated shared_ptr, as suggested by Paul
git-svn-id: svn://localhost/ardour2/trunk@2565 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-23 12:50:25 +00:00
Carl Hetherington
77f16522e0 Various work on bundles. We now have a Bundle Manager dialogue, and hopefully things are a bit cleaner internally. This commit changes the session file format with respect to bundles (or Connections as they used to be called).
git-svn-id: svn://localhost/ardour2/trunk@2561 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-19 13:30:07 +00:00
239ec39da6 new internal port type, round I, plus tiny fix for legalize_for_xml() (also for 2.0-ongoing)
git-svn-id: svn://localhost/ardour2/trunk@2559 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-17 16:49:31 +00:00
df28e90c67 Fix compilation.
git-svn-id: svn://localhost/ardour2/trunk@2558 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-17 03:09:38 +00:00
c6c9bfda49 added file
git-svn-id: svn://localhost/ardour2/trunk@2557 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-17 02:09:24 +00:00
f3cf31009a virtualize Port object; clean up automation tracks from track deletion
git-svn-id: svn://localhost/ardour2/trunk@2556 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-16 21:01:12 +00:00
14dcc3f017 Fix displaying of notes in auto-created MIDI region when it's the first region in the track.
Fix crash after recording long phrases of MIDI.
Fix MIDI looping (kinda).
Add note-off exposure to MidiModel::iterator.
Fix first-note-is-stuck-note problem.
Fix resolving long notes while recording.
Fix several other things I forget now.  MIDI works pretty well.....


git-svn-id: svn://localhost/ardour2/trunk@2555 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-14 05:45:31 +00:00
Carl Hetherington
15af67c179 Fix up physical port bundles.
git-svn-id: svn://localhost/ardour2/trunk@2554 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-13 18:10:57 +00:00
50c68c6d0c fix peakfile/sourcefactory botch
git-svn-id: svn://localhost/ardour2/trunk@2546 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-12 14:27:47 +00:00
40d8d96785 fixes for varispeed playback, mackie control compilation, new odd color for treeview rows
git-svn-id: svn://localhost/ardour2/trunk@2544 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-12 02:11:14 +00:00
29f0d9732e add keybinding editor
git-svn-id: svn://localhost/ardour2/trunk@2543 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-12 01:54:35 +00:00
169fd9e368 add missing file
git-svn-id: svn://localhost/ardour2/trunk@2540 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-11 23:39:26 +00:00
f7f9d6fdc4 merge from 2.0-ongoing by hand, minus key binding editor
git-svn-id: svn://localhost/ardour2/trunk@2539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-11 22:07:47 +00:00
Carl Hetherington
796bfc025e Make sure we notice when an IO's port count is reduced as well as when it's increased. Fixes an assertion failure when removing a port from an IO with 3 existing ports.
git-svn-id: svn://localhost/ardour2/trunk@2537 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-10 14:49:25 +00:00
Carl Hetherington
0e7dcf7841 Remove a file that should have been removed a few commits ago.
git-svn-id: svn://localhost/ardour2/trunk@2533 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-09 23:41:05 +00:00
Carl Hetherington
8bcbe9ca4c Few cleanups related to signed-ness of minimum/maximum port counts.
git-svn-id: svn://localhost/ardour2/trunk@2532 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-09 23:04:53 +00:00
Carl Hetherington
4d66204f4e Various work on Bundles, especially dynamic ones so that you can, for example, pass tracks to busses by selecting the buss name from the track's output menu.
git-svn-id: svn://localhost/ardour2/trunk@2530 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-08 23:47:35 +00:00
49763a55c9 Fix several MIDI timestamp related problems:
Fix recording MIDI regions that start at t != 0.
	Fix display of MIDI events in regions that start at t != 0.
	Fix recording after relocating an already rec-armed MIDI track.


git-svn-id: svn://localhost/ardour2/trunk@2528 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-07 07:20:09 +00:00
Sampo Savolainen
4848acedee Fix crash with tracks/busses with more outputs than control outputs.
git-svn-id: svn://localhost/ardour2/trunk@2521 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-05 21:48:22 +00:00
Carl Hetherington
811426b5b3 Fix to stacked layering for the case when a region is dragged to overlap another. Remove unused signal LayeringChanged from Playlist. Cleanups in AudioRegion, and ensure that region envelopes cannot become empty when regions are split (and maybe in some other cases too). Empty envelopes cause crashes when e.g. AutomationList::truncate_at_start() is called.
git-svn-id: svn://localhost/ardour2/trunk@2513 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-04 16:26:02 +00:00
79db28b0b8 Merge the two separate 'add notes to midi region' interfaces (note and midievent).
Update note range dynamically while recording to fit incoming notes.


git-svn-id: svn://localhost/ardour2/trunk@2512 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-04 05:15:28 +00:00
Sampo Savolainen
0adeb63484 Make sure plugins are activated at least once before they are cleaned up
git-svn-id: svn://localhost/ardour2/trunk@2495 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-27 19:05:27 +00:00
Sampo Savolainen
05b27b52a2 Make sure activate() and deactivate() are never run multiple times in a
row. Make cleanup work nicely


git-svn-id: svn://localhost/ardour2/trunk@2485 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-25 17:56:39 +00:00
80ee9e6e13 click reset error fixed, plus some older work on sends+panners i/o counts
git-svn-id: svn://localhost/ardour2/trunk@2456 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-11 11:27:59 +00:00
11a4c2804e make sure that AudioRegion::set_live_state() notifies interested parties when normalization gain changes
git-svn-id: svn://localhost/ardour2/trunk@2455 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-11 11:26:39 +00:00
648edb8b0f make OSC thread register with GUI
git-svn-id: svn://localhost/ardour2/trunk@2453 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-11 10:43:55 +00:00
c0af53a98a Fix crash on playhead relocate in MIDI regions w/o CC data.
git-svn-id: svn://localhost/ardour2/trunk@2448 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-10 22:48:08 +00:00
47c56f3092 Fix note separator lines adaptation to changing track height.
git-svn-id: svn://localhost/ardour2/trunk@2447 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-10 22:25:22 +00:00
43f23ee971 Fix a misdefinition in ardour/recent_sessions.h
git-svn-id: svn://localhost/ardour2/trunk@2436 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-09 10:05:21 +00:00
6fccd83fac If sys::copy_file fails, try and remove the target file before throwing an exception
git-svn-id: svn://localhost/ardour2/trunk@2435 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-09 10:05:16 +00:00
9ae356550e Use sys::path and sys::rename in Session::rename_state for portability
git-svn-id: svn://localhost/ardour2/trunk@2434 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-09 10:05:13 +00:00
cb34718b38 Modify Session::load_history for portability
git-svn-id: svn://localhost/ardour2/trunk@2433 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-09 10:05:06 +00:00
bddb43a2bf Modify Session::save_history for portability
git-svn-id: svn://localhost/ardour2/trunk@2432 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-09 10:04:58 +00:00
99ecfb4096 Add function sys::rename to pbd/filesystem.h/cc. Renames a file, uses g_rename.
git-svn-id: svn://localhost/ardour2/trunk@2431 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-09 10:04:54 +00:00
82a7819518 Add history_suffix to ardour/filename_extensions.cc
git-svn-id: svn://localhost/ardour2/trunk@2430 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-09 10:04:47 +00:00
7e0f100069 Use std::transform with sys::basename in ARDOUR::get_file_names_no_extension
git-svn-id: svn://localhost/ardour2/trunk@2429 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-09 10:04:43 +00:00
c190aca4a0 Deep "automation regions" support.
Fix zoom/height/etc changing for automation region views.
Broke smooth automation region dragging (make omelette, break eggs, etc).


git-svn-id: svn://localhost/ardour2/trunk@2424 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-06 02:30:39 +00:00
4997dec414 Fix source directory paths so that the session name element is "legalized" and compatible with 2.0
Fixes bug 1854.


git-svn-id: svn://localhost/ardour2/trunk@2418 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-05 01:53:51 +00:00
2a7b23d515 Remove unused header includes from ardour/session_directory.cc
git-svn-id: svn://localhost/ardour2/trunk@2414 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:37 +00:00
22067eaddb Use PBD::sys::operator/ instead of PBD::sys::path::operator/= in ARDOUR::SessionDirectory
git-svn-id: svn://localhost/ardour2/trunk@2413 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:35 +00:00
a6e68cbb92 Add PBD::sys::operator/ to pbd/filesystem for convenient path building
git-svn-id: svn://localhost/ardour2/trunk@2412 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:32 +00:00
d7c5629376 Use sys::remove instead of ::unlink in Session::remove_empty_sounds for portability
git-svn-id: svn://localhost/ardour2/trunk@2411 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:31 +00:00
41ba22d225 Add ARDOUR::TapeFileMatcher class for matching filenames and use it in Session::remove_empty_sounds
git-svn-id: svn://localhost/ardour2/trunk@2410 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:28 +00:00
d07c90b003 Use PBD::get_files_in_directory instead of PBD::Scanner in Session::remove_empty_sounds
git-svn-id: svn://localhost/ardour2/trunk@2409 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:25 +00:00
d8d24a7521 Use path::leaf instead of sys::basename in SessionDirectory::sound/midi_path
sys::basename now matches boost::filesystem behaviour so if a session name
had a dot in it the session name used in the interchange directory would be
truncated.


git-svn-id: svn://localhost/ardour2/trunk@2408 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:22 +00:00
bb5314c364 Use path::leaf in sys::basename and sys::extension
git-svn-id: svn://localhost/ardour2/trunk@2407 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:21 +00:00
414dd87040 Add path::leaf method function to the PBD::sys::path class
git-svn-id: svn://localhost/ardour2/trunk@2406 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-04 09:01:19 +00:00
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