13
0
Commit Graph

4847 Commits

Author SHA1 Message Date
99a177da84 LTC slave reworked
* detect LTC framerate
* detect LTC discontinuities
* use a DLL for flywheel sync (engine rate)
* don't use seekahead - internal resync

git-svn-id: svn://localhost/ardour2/branches/3.0@13291 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 20:53:15 +00:00
b40b353264 prepare for non-seekahead [LTC] slave. fix state machine
locate() will call realtime_stop which will reset the slave-state.

git-svn-id: svn://localhost/ardour2/branches/3.0@13290 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 20:53:12 +00:00
64b0efdf9f MTC Slave: allow >2 sec for re-sync, format delta
git-svn-id: svn://localhost/ardour2/branches/3.0@13289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 20:53:10 +00:00
625ee55df0 don't do a pending save if slave is syncing.
13:00 < rgareus> When a slave does initial sync, it sets speed=0, pos=XXX (required by session_process.cc state-machine to init)
13:01 < rgareus> This triggers a locate(roll=false) which in turn triggers a realtime_stop() which in turn triggers a non_realtime_stop().
[..]
13:06 < rgareus> las: the problem I have with non_realtime_stop() is that it does save a pending state IFF  get_record_enabled() is true.
13:06 < rgareus> The save can take ages (seconds), which will void the initial sync of the slave.
13:07 < rgareus> The slave enters a live-lock: sync, save, re-sync, save...
13:07 < las> rgareus: understood
13:07 < rgareus> las: I propose to workaround this: only save pending state if there is no slave or the slave is not locked.
13:07 < las> rgareus: another reason why recording + slave == bad idea :(
13:07 < las> rgareus: but yes, that sounds fine to me
13:07 < rgareus> AFICT this is not harmful. It only affects pre-record settings.
13:07 < rgareus> 'did_record' is used to save a full state after each recording.

git-svn-id: svn://localhost/ardour2/branches/3.0@13288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 20:53:08 +00:00
Hans Baier
4c9fcd407c implement double click to ContentsRange on MidiScroomer
git-svn-id: svn://localhost/ardour2/branches/3.0@13284 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-16 09:19:19 +00:00
cb84e71caa create and manage a new config parameter that defines where LTC originates (still some tweaks to be done here and there)
git-svn-id: svn://localhost/ardour2/branches/3.0@13280 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-15 15:57:35 +00:00
6ab663342d MTC slave: timcode and delta formatting
git-svn-id: svn://localhost/ardour2/branches/3.0@13279 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-15 02:46:56 +00:00
6584ae1ce7 MTC slave fix reporting approx position
git-svn-id: svn://localhost/ardour2/branches/3.0@13277 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 23:23:57 +00:00
a6bc97add9 prepare reporting slave delta & MTC slave implementation
git-svn-id: svn://localhost/ardour2/branches/3.0@13276 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 23:23:53 +00:00
3769c060f2 use translatable strings for TC info,
and prepare delta display

git-svn-id: svn://localhost/ardour2/branches/3.0@13275 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:42:32 +00:00
bdcd6dba69 MTC,LTC print current timecodes in warning
git-svn-id: svn://localhost/ardour2/branches/3.0@13274 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:17:47 +00:00
f6b9572bfd LTC Slave, add support for variable framerates
git-svn-id: svn://localhost/ardour2/branches/3.0@13273 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:17:42 +00:00
96f035e629 formatting timecode: use a semicolon to indicate DF
git-svn-id: svn://localhost/ardour2/branches/3.0@13272 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:17:40 +00:00
a9c9d5072c MTC Slave: MIDI 30df -> A3 29.97df
MIDI only specifies the frame-count, not the rate.
in the vast majority of cases MIDI's
"Count to 30 use drop-frame" is 29.97df fps.

git-svn-id: svn://localhost/ardour2/branches/3.0@13271 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:17:37 +00:00
0e7654255c MTC Slave: fix return approx position.
git-svn-id: svn://localhost/ardour2/branches/3.0@13270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-14 16:17:35 +00:00
e4e4b67ad4 timecode: make subframes unsigned int
git-svn-id: svn://localhost/ardour2/branches/3.0@13268 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-13 23:47:05 +00:00
f66d3f9b13 MTCslave - use new timecode API
git-svn-id: svn://localhost/ardour2/branches/3.0@13267 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-13 23:27:43 +00:00
4a17dd8fb6 move sample/timecode conversion to libtimecode.
git-svn-id: svn://localhost/ardour2/branches/3.0@13266 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-13 23:27:40 +00:00
13d23f15aa provide forgotten case for restoring Windows VST plugins
git-svn-id: svn://localhost/ardour2/branches/3.0@13265 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-13 00:31:46 +00:00
eaaca760c9 tweaks to be ready for more information timecode display in Timecode clock mode
git-svn-id: svn://localhost/ardour2/branches/3.0@13264 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 22:04:21 +00:00
5eeecf82a0 LTC slave - basic working version (hardcoded 25fps)
git-svn-id: svn://localhost/ardour2/branches/3.0@13263 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 21:28:08 +00:00
6de548bd7f MTC slave - return apparent_timecode_format
git-svn-id: svn://localhost/ardour2/branches/3.0@13262 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 21:28:05 +00:00
fd1ab7ad40 MTC Slave: handle locates (quick re-sync)
git-svn-id: svn://localhost/ardour2/branches/3.0@13259 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 17:04:20 +00:00
76eb2f23d6 basics for a TimecodeSlave parent class for MTC and LTC
git-svn-id: svn://localhost/ardour2/branches/3.0@13258 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 16:48:53 +00:00
5a8e83e0de move TC FPS up into status bar, use lower right of timecode audioclock mode for something ... TBDiscussed
git-svn-id: svn://localhost/ardour2/branches/3.0@13257 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 16:25:57 +00:00
bce3184ff5 skeleton framework for LTC-slave
git-svn-id: svn://localhost/ardour2/branches/3.0@13256 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 09:45:22 +00:00
Hans Baier
e3fb47d990 make sure routes instrument info initializes correctly
git-svn-id: svn://localhost/ardour2/branches/3.0@13254 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 09:25:20 +00:00
Hans Baier
6009ad3060 tidy
git-svn-id: svn://localhost/ardour2/branches/3.0@13253 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 09:24:31 +00:00
Hans Baier
e36c855464 issue 0005121: added comment to source. Sorry, last commit was for issue 0005121, not 0005120, copied from the wrong line :[
git-svn-id: svn://localhost/ardour2/branches/3.0@13252 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 06:04:06 +00:00
Hans Baier
2625fd9be8 fix issue 0005120: dont treat percussive mode differently than sustained mode except in GUI. Leaving out all note offs crashes LinuxSampler and totally drowns my Yamaha PSR-S900 by stealing all its available voices. Code is #ifdef-ed out until a more thorough discussion would conclude the removal of percussive mode from the MIDI model, which IMHO makes sense. I don't see any virtue in leaving out note offs since it only creates problems.
git-svn-id: svn://localhost/ardour2/branches/3.0@13251 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 05:58:47 +00:00
617d291d1b MTC: map between timecodes
allow external timecode device to supply timecode with
framerates other than ardour session's framerate.

also fix latency overcompensation. The slave is supposed to
provide transport time - and not audible frame time.

git-svn-id: svn://localhost/ardour2/branches/3.0@13250 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 01:08:32 +00:00
a9abe3b1e1 move TimecodeFormat to libtimecode
provide a way to convert any TimecodeFormat to float frame-rate,
not only the currently active timecode_foramt.

git-svn-id: svn://localhost/ardour2/branches/3.0@13249 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-12 01:08:29 +00:00
Hans Baier
f61f973f87 implement missing midi event filtering during recording
git-svn-id: svn://localhost/ardour2/branches/3.0@13243 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 05:39:40 +00:00
Hans Baier
ed05701ccb revert last commit, wrong place...
git-svn-id: svn://localhost/ardour2/branches/3.0@13242 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 04:31:57 +00:00
Hans Baier
d2c6b00bdd fix bug: capture buffer not filtered by track channel selector
git-svn-id: svn://localhost/ardour2/branches/3.0@13241 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 04:27:53 +00:00
Hans Baier
97c23848d7 implement deleting of sysex events
git-svn-id: svn://localhost/ardour2/branches/3.0@13238 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 03:22:17 +00:00
9707a0e827 move the external sync source selection tobe a global config parameter, not per-session, since this is likely a reflection of studio setup, h/w etc.; starting using real tooltips in the RC option editor
git-svn-id: svn://localhost/ardour2/branches/3.0@13237 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 03:10:18 +00:00
71b7326576 move timecode-is-clock-synced option to global configuration parameters, not per session
git-svn-id: svn://localhost/ardour2/branches/3.0@13235 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 22:56:21 +00:00
8007939839 add global config parameter timecode-sync-frame-rate to control behaviour when a timecode slave (MTC, LTC) has a different frame rate than an Ardour session
git-svn-id: svn://localhost/ardour2/branches/3.0@13233 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 21:07:24 +00:00
0441bc140e MTC slave, don't touch position if no MTC was received
git-svn-id: svn://localhost/ardour2/branches/3.0@13232 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 20:37:59 +00:00
915797fd23 MTC-slave: print error if framerate mismatch
git-svn-id: svn://localhost/ardour2/branches/3.0@13231 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 20:37:56 +00:00
2b1cc9656e remove incorrect and unnecessary template class declaration from Evoral (added recently)
git-svn-id: svn://localhost/ardour2/branches/3.0@13230 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 15:42:47 +00:00
8a6b0ab072 debug msg - varispeed recording
git-svn-id: svn://localhost/ardour2/branches/3.0@13228 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 14:03:19 +00:00
29825092ae ignore slave/engine time-delta when recording.
git-svn-id: svn://localhost/ardour2/branches/3.0@13227 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 14:03:18 +00:00
a2b4128035 fix and improve MTC-slave
- MTC-speed average (MIDI thread)
   * base timing on quarter-frames
   * replace hann-window average with a DLL
 - MTC/engine alignment
   * replace 1st order PI-controller with 2nd order DLL

The 2nd DLL is needed because the jack-process callback effectively
quantizes the transport-speed to integer audio-frames (speed * nframes).
This leaves a delta on every cycle because the remainder from previous
cycles is not compensated for.

Theoretically it is possible to merge the two DLLs into one.
However, with callbacks coming from by two independent threads
it is cleaner to track the MTC and JACK engine-alignment speeds
independently.

git-svn-id: svn://localhost/ardour2/branches/3.0@13226 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 14:03:15 +00:00
Hans Baier
3f5c6f8190 enable and extend EVORAL_MIDI_XML. Useful for Debugging. Any objections?
git-svn-id: svn://localhost/ardour2/branches/3.0@13223 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 04:31:59 +00:00
Hans Baier
f8b7687f78 whitespace
git-svn-id: svn://localhost/ardour2/branches/3.0@13222 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-10 04:30:48 +00:00
Hans Baier
c3850cfb35 evoral/MIDIEvent: Whitespace cosmetics in header, make XML output work properly eg show the numbers instead of blanks
git-svn-id: svn://localhost/ardour2/branches/3.0@13221 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 08:33:27 +00:00
Hans Baier
5c2d7d3644 add missing unit test runner shell script for midi++
git-svn-id: svn://localhost/ardour2/branches/3.0@13220 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:17:55 +00:00
Hans Baier
9a19da77e3 fix insidious bugs in midnam_patch.cc which account for garbled data
git-svn-id: svn://localhost/ardour2/branches/3.0@13219 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:17:15 +00:00
Hans Baier
dec0e3d6da Add patchfile for Yamaha PSR-S900, add unit test for it, remove camel case from test method names
git-svn-id: svn://localhost/ardour2/branches/3.0@13218 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:13:38 +00:00
Hans Baier
ad8c184218 fix whitespace in libs/midi++2/midi++/midnam_patch.h
git-svn-id: svn://localhost/ardour2/branches/3.0@13216 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-09 03:09:54 +00:00
9a4fbfcdfe add 8kHz as an available export format sample rate
git-svn-id: svn://localhost/ardour2/branches/3.0@13214 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-08 19:45:25 +00:00
Hans Baier
0bb2227eb8 add unit tests to midi++ and assorted bugfixes for midnam_patch.cc
git-svn-id: svn://localhost/ardour2/branches/3.0@13213 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-08 04:32:12 +00:00
d29c5cdfb0 drop connections to incoming MIDI signals before deleting MTC Slave object
git-svn-id: svn://localhost/ardour2/branches/3.0@13208 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-04 20:54:08 +00:00
a63d01e24a do not add in ticks in the "at" position when computing BBT duration somewhere on the timeline (fixes issues with nudging etc.
git-svn-id: svn://localhost/ardour2/branches/3.0@13201 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-01 20:55:10 +00:00
02a98547f1 different version of previous commit that leaves previous semantics intact unless punch in/out are enabled
git-svn-id: svn://localhost/ardour2/branches/3.0@13200 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-27 14:11:01 +00:00
f940452bc0 when deciding monitoring state, only consider the session to be in global record state if we are actively recording, not just if we are rec-enabled. this provides correct monitoring when punch in/out are enabled
git-svn-id: svn://localhost/ardour2/branches/3.0@13199 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-27 11:38:13 +00:00
53afa11311 mark session dirty when route active status changes
git-svn-id: svn://localhost/ardour2/branches/3.0@13195 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-19 19:32:05 +00:00
b30ba842d8 fix missing variable initialization
git-svn-id: svn://localhost/ardour2/branches/3.0@13194 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-17 21:09:12 +00:00
87017d581a Support latest options extension.
git-svn-id: svn://localhost/ardour2/branches/3.0@13191 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-16 17:01:23 +00:00
4ee7e09e2c fix a couple of errors in zh.po files
git-svn-id: svn://localhost/ardour2/branches/3.0@13185 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-12 21:30:44 +00:00
3008fbdea5 add chinese translation from Rui-huai Zhang
git-svn-id: svn://localhost/ardour2/branches/3.0@13183 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-12 21:24:55 +00:00
696631f04e comment tweaks from a second reading
git-svn-id: svn://localhost/ardour2/branches/3.0@13182 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-09 20:31:43 +00:00
999ec4a074 remove unused code
git-svn-id: svn://localhost/ardour2/branches/3.0@13181 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-09 20:21:50 +00:00
bfb5292e74 Consistent style.
git-svn-id: svn://localhost/ardour2/branches/3.0@13180 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-08 18:18:47 +00:00
Carl Hetherington
f404e90836 I think Region::can_move() should take into account _locked
as well as the never-used (apart from ImageFrameView)
_position_locked.  Fixes #5090.


git-svn-id: svn://localhost/ardour2/branches/3.0@13179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-08 01:03:00 +00:00
Sakari Bergen
a7cd27e744 Fix end-of-input-handling in silence trimmer
git-svn-id: svn://localhost/ardour2/branches/3.0@13160 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-04 18:16:21 +00:00
Carl Hetherington
c779474c13 Reset pending_locate_roll in all cases, not just when the
roll happened; should help with #5047.


git-svn-id: svn://localhost/ardour2/branches/3.0@13158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-09-01 11:24:17 +00:00
3eaadafd31 Fix compilation without svn lv2.
git-svn-id: svn://localhost/ardour2/branches/3.0@13152 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-30 01:23:39 +00:00
7e335a8234 Implement latest buf-size extension via new options extension.
git-svn-id: svn://localhost/ardour2/branches/3.0@13151 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-29 20:22:18 +00:00
fd37871315 added missing header include
git-svn-id: svn://localhost/ardour2/branches/3.0@13150 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-29 00:30:50 +00:00
322f1c7d0d LV2: amend previous commit, respect replicated plugin instances
When a plugin is replicated (eg. mono plugin on a stereo-track),
configure_io() is only called for the first instance.
The 2nd instance will not have dedicated buffers but re-use copies
of the first instance. Should the 2nd instance use a LV2 worker-thread or
local communication ports they can not be shared with the first instance.
-> this patch allocates Atom-buffers for each instance.

PS. this still needs more work; there is only one UI instance for
all plugin instances. messages from the UI should go to all
instances.

git-svn-id: svn://localhost/ardour2/branches/3.0@13148 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-28 15:42:40 +00:00
198efb82bc LV2: allocate dedicated buffers for [non-midi] event-ports.
git-svn-id: svn://localhost/ardour2/branches/3.0@13147 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-28 15:42:38 +00:00
9ab45f37c6 LV2 worker: prevent corruption of ringbuffer
git-svn-id: svn://localhost/ardour2/branches/3.0@13146 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-28 15:42:35 +00:00
a8f0c3255f fix LV2 worker
start worker thread after _sem and _exit have been initialized.
stop thread when plugin is removed.

git-svn-id: svn://localhost/ardour2/branches/3.0@13145 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-27 04:08:48 +00:00
0a834da466 dedicated LV2 non-MIDI atom-event-port handling
git-svn-id: svn://localhost/ardour2/branches/3.0@13144 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-27 04:08:45 +00:00
7b7140f5ed Create and realize LV2 UI container before instantiating (required for proper embedding in some situations).
git-svn-id: svn://localhost/ardour2/branches/3.0@13140 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-21 19:29:19 +00:00
d110d07e07 Fix some const-violating casts.
git-svn-id: svn://localhost/ardour2/branches/3.0@13138 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-18 15:56:48 +00:00
0cba3886da Add debug trace for LV2 like the other APIs.
git-svn-id: svn://localhost/ardour2/branches/3.0@13137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-18 15:49:32 +00:00
4b053d06f7 LV2 log extension support.
git-svn-id: svn://localhost/ardour2/branches/3.0@13135 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-17 03:05:06 +00:00
fc51a1559a Fix const violating case.
git-svn-id: svn://localhost/ardour2/branches/3.0@13134 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-17 03:03:55 +00:00
89741cf0e9 make --disable-plugins/-d work again, probably
git-svn-id: svn://localhost/ardour2/branches/3.0@13131 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-16 02:06:18 +00:00
5722daf381 undo that last commit
git-svn-id: svn://localhost/ardour2/branches/3.0@13126 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-10 17:03:22 +00:00
f765f0c857 fix for OS X builds with new prototype C warning flags
git-svn-id: svn://localhost/ardour2/branches/3.0@13125 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-10 17:02:37 +00:00
760ccbabfb add -Wpointer-arith -Wcast-qual -Wcast-align and others to compile flags, and fix const cast warnings generated by new flags
git-svn-id: svn://localhost/ardour2/branches/3.0@13124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-10 15:57:09 +00:00
e61c2aeda3 test a different approach to propagating plugin parameter changes (VST only for now)
git-svn-id: svn://localhost/ardour2/branches/3.0@13122 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 17:59:43 +00:00
5ce7e740c4 when sending notice of a change in a plugin parameter value, send the current value
git-svn-id: svn://localhost/ardour2/branches/3.0@13121 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 17:37:23 +00:00
3b250c5475 more vst parameter related stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@13120 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 17:09:05 +00:00
ff2fac11a0 more vst parameter related stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@13119 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 16:55:56 +00:00
3d07cbc37f VST parameter setting tweak
git-svn-id: svn://localhost/ardour2/branches/3.0@13118 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 15:57:04 +00:00
15f58343f6 use new floateq() to check VST plugin parameter equality
git-svn-id: svn://localhost/ardour2/branches/3.0@13117 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 15:47:16 +00:00
5bfa705ff7 new file containing very clever code for floating point "equality" comparisons
git-svn-id: svn://localhost/ardour2/branches/3.0@13116 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 15:46:54 +00:00
f19e7bd238 more VST parameter debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@13115 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 01:06:32 +00:00
5ffce5b8c9 some VST parameter mgmt debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@13114 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-08 22:27:12 +00:00
d7da12285f Fix more tab width assumption mess caused by Paul's misconfigured editor.
git-svn-id: svn://localhost/ardour2/branches/3.0@13113 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-08 00:21:05 +00:00
cf3ae3dec1 Support new LV2 buf-size extension if a new enough (currently svn) LV2 is present.
git-svn-id: svn://localhost/ardour2/branches/3.0@13112 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-08 00:16:30 +00:00
9743340fa3 trying to track down why undo doesn't remove xfade rendering on OS X
git-svn-id: svn://localhost/ardour2/branches/3.0@13102 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-29 23:50:00 +00:00
Sakari Bergen
1573ea991d Add missing #includes to some tests
git-svn-id: svn://localhost/ardour2/branches/3.0@13100 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-28 09:08:29 +00:00
e8c914f0fa if a request to reset the speed to zero as the default arrives when stopped, reset the default speed to 1.0 (and nothing else). hacky, could probably use Session::request_reset_default_transport_speed()
git-svn-id: svn://localhost/ardour2/branches/3.0@13087 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-26 15:40:11 +00:00
4b38ddec62 replace deprecated g_atomic_int_exchange_add()
git-svn-id: svn://localhost/ardour2/branches/3.0@13086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-26 15:39:17 +00:00
3cd8138a41 convert from Glib:: to Glib::Threads for all thread-related API
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25 17:48:55 +00:00
b18fbc8c68 check for multiple tempo/meter marks at the same location, which somehow ardour2 allowed. don't handle it but at least report the error
git-svn-id: svn://localhost/ardour2/branches/3.0@13082 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25 13:12:25 +00:00
1cdf02ae2f remove use of boost::thread/boost::mutex; bump glibmm requirement to 2.30 in order to pick up Glib::Threads::Mutex which can be used statically, use that to replace boost::mutex; add required inclusion of <cerrno> in a couple of places
git-svn-id: svn://localhost/ardour2/branches/3.0@13076 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-24 21:43:05 +00:00
0462a3e413 a bit more output from -D audioplayback, to help thorsten track down a crash/valgrind bug
git-svn-id: svn://localhost/ardour2/branches/3.0@13074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-24 15:32:47 +00:00
ec0a1b88bb another fix for apple's absurd un-namespaced global Carbon macros like "check"
git-svn-id: svn://localhost/ardour2/branches/3.0@13068 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-23 14:21:58 +00:00
b2bbc44eaa forward-port generic MIDI and transport controllable changes from 2.X
git-svn-id: svn://localhost/ardour2/branches/3.0@13066 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-23 13:31:51 +00:00
e43d91949b more work on RID and editor/mixer order matching; when a track/bus is hidden in the GUI controlling RID, it gets a extremely large RID to prevent it showing up on a control surface (but ... for now ... is still visible in the other GUI, even if "sync order between mixer + editor" is enabled); change font in editor route list
git-svn-id: svn://localhost/ardour2/branches/3.0@13054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-19 22:35:43 +00:00
b621b28fce make it possible to (and actually do) name insert and send ports as "return" and "send" rather than "in" and "out" (#5012)
git-svn-id: svn://localhost/ardour2/branches/3.0@13052 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-17 13:59:46 +00:00
c677de4816 updated RU translations from alexander prokoudine
git-svn-id: svn://localhost/ardour2/branches/3.0@13051 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-17 13:13:36 +00:00
e6610e6ad8 i18n fixes from alexander prokoudine (#5016)
git-svn-id: svn://localhost/ardour2/branches/3.0@13050 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-17 13:11:15 +00:00
3c252e9321 lots more fidgety work on automation. sort of works now, but undo/redo needs attention
git-svn-id: svn://localhost/ardour2/branches/3.0@13047 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-17 03:10:40 +00:00
539b94490f do NOT mark imported MIDI files as un-writable - all MIDI files are subject to rewriting at any time
git-svn-id: svn://localhost/ardour2/branches/3.0@13046 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-16 14:48:07 +00:00
f97da74cf7 code motion to put Sequence::{add,append}_patch_changed_unlocked() next to each other as candidates for removal
git-svn-id: svn://localhost/ardour2/branches/3.0@13045 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-16 14:46:21 +00:00
6e3168b7d3 add some Evoral enums to the enumwriter (seems a bit odd)
git-svn-id: svn://localhost/ardour2/branches/3.0@13044 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-16 14:45:35 +00:00
c3ccff8d05 fix up part of the remaining details with automation, so that touch/write over-writes work correctly
git-svn-id: svn://localhost/ardour2/branches/3.0@13041 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-14 15:42:10 +00:00
34c6e03ecf fix OS X compilation
git-svn-id: svn://localhost/ardour2/branches/3.0@13040 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-14 15:02:13 +00:00
5e26deeb6c add missing files
git-svn-id: svn://localhost/ardour2/branches/3.0@13039 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-13 21:13:35 +00:00
0532e2063b dramatic overhaul of automation. too long to explain here. this work is not finished - write/touch passes do not correctly overwrite existing data because the semantics of ControlList::insert_iterator need clarification. more to follow
git-svn-id: svn://localhost/ardour2/branches/3.0@13038 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-13 21:05:45 +00:00
b04cd7d704 AU version of break recursive loops of Plugin::parameter_changed()->Plugin::ParameterChanged()->Plugin::parameter_changed() ...
git-svn-id: svn://localhost/ardour2/branches/3.0@13037 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-12 21:16:43 +00:00
b1ad798b9a break recursive loops of Plugin::parameter_changed()->Plugin::ParameterChanged()->Plugin::parameter_changed() ...
git-svn-id: svn://localhost/ardour2/branches/3.0@13036 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-12 21:16:20 +00:00
163d4b85d1 reinstate thread buffer debug output
git-svn-id: svn://localhost/ardour2/branches/3.0@13035 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 23:55:00 +00:00
de835047d9 force I/O selector windows to stay-on-top (experimental)
git-svn-id: svn://localhost/ardour2/branches/3.0@13034 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 20:14:53 +00:00
40d8d1d985 remove unusued signals inadvertently added during previous plugin-touch-automation changes
git-svn-id: svn://localhost/ardour2/branches/3.0@13030 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 16:07:15 +00:00
ae62e9443b try to fix crashes due to not-enough-per-thread-buffers by just using more of them
git-svn-id: svn://localhost/ardour2/branches/3.0@13029 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 16:00:40 +00:00
8d6d3c309d add StartTouch and EndTouch signals to Plugin class; make PluginInsert handle these signals and mark the start end of touch/gestures for a given AutomationControl; net result is that touch automation now works for AudioUnit plugins, at least those whose GUIs send kAudioUnitEvent_{Begin,End}ParameterGesture events
git-svn-id: svn://localhost/ardour2/branches/3.0@13028 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 15:31:02 +00:00
a782dd36e7 debugging for process thread issues
git-svn-id: svn://localhost/ardour2/branches/3.0@13027 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 15:05:51 +00:00
0fb8c89eeb fix propagation of parameter changes from Plugin to PluginInsert so that automation will record parameter changes performed in a plugin GUI (#4976)
git-svn-id: svn://localhost/ardour2/branches/3.0@13026 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 03:48:14 +00:00
bfd2ee48ce improved version of last commit, for tracking plugin control changes and mapping them to PluginInsert automation controls
git-svn-id: svn://localhost/ardour2/branches/3.0@13025 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 00:23:55 +00:00
67f8063256 update automatable parameter's Evoral::Control object when AU parameter listener notifies us of a change
git-svn-id: svn://localhost/ardour2/branches/3.0@13024 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-11 00:11:21 +00:00
bd2bf3c52e automation fixes/changes: when add a new control point, create necessary points to construct a flat default-valued line from zero the first point, and revert to the default value at the end of the write (breaks value-holds-after-write behaviour); fix bug in data elimination when recording flat-line data
git-svn-id: svn://localhost/ardour2/branches/3.0@12997 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-09 18:32:53 +00:00
80d9eaf96c set fader and plugin parameter automation curve default values - what else needs this?
git-svn-id: svn://localhost/ardour2/branches/3.0@12996 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-09 18:31:09 +00:00
e2c26e1b99 Report correct time instead of old time when locating as Jack transport master.
I encountered this today writing a transport slave, but it seems to be the same
problem as issue #743 from 8 years ago.  The issue is easier to see with a
transport slave client that prints any transport change whatsoever, for example
if the current location is some point well into the session and rewind to start
is pressed, Ardour reports the old position, not zero.  With this change, it
reports zero as expected.

See comment about why this was happening.  If locating here is evil for some
reason, then some other way of making jack_timebase_callback report the target
position is required.  Contrary to what the old comment below this change
suggests, follow_slave() does not update _transport_frame in time.


git-svn-id: svn://localhost/ardour2/branches/3.0@12993 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-08 03:40:15 +00:00
39b42e3766 Fix Jack transport master after session load.
Transport master was not being taken because when the configuration variable is
set, AudioEngine::set_session() has not been called yet so
AudioEngine::reset_timebase() did nothing (the transport stuff at the beginning
of Session::when_engine_running() is questionable for the same reasons).

I am not sure if this is correct, but I have failed to more thoroughly figure
out the issue.  At least Ardour actually sets Jack transport information now.
However, there are some discrepancies between Ardour time and Jack time, as
reported by Session::jack_timebase_callback().

Perhaps related, the transport master menu item does not restore correctly.
Previous to this commit, the only way to make a loaded session take transport
master was to "set" this out of sync item (which did nothing), then unset it,
then set it again, which would finally actually cause the configuration change.


git-svn-id: svn://localhost/ardour2/branches/3.0@12992 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-07 21:00:47 +00:00
f110126fca do not deactivate the meter in a frozen track
git-svn-id: svn://localhost/ardour2/branches/3.0@12991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-06 19:18:33 +00:00
Carl Hetherington
0dc992bcf7 Don't rename playlists on rename track if the track has >1
playlist; hopefully helps with the confusion in mantis
#4977.


git-svn-id: svn://localhost/ardour2/branches/3.0@12990 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-05 00:02:13 +00:00
Carl Hetherington
e35a84a32b Revert erroneous commit 12922 and replace with a better fix
(should fix #4947, #4963, #4987).


git-svn-id: svn://localhost/ardour2/branches/3.0@12986 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-04 19:56:14 +00:00
Sakari Bergen
d762be4f73 Fix the ProcessContext copy-ctor stuff for older compilers, which don't support template base class initialization without template parameters
git-svn-id: svn://localhost/ardour2/branches/3.0@12983 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-02 15:48:29 +00:00
Sakari Bergen
5b5998208f Probably fix warnings on Apple's gcc
git-svn-id: svn://localhost/ardour2/branches/3.0@12973 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-01 10:23:44 +00:00
7db500301d further efforts at cleaning up the design of the interaction/relationship between route sort order keys and remote control IDs
git-svn-id: svn://localhost/ardour2/branches/3.0@12962 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 22:27:37 +00:00
Carl Hetherington
81de53da1d Fix missing lock causing erroneous disk space reports when dragging audio clocks.
git-svn-id: svn://localhost/ardour2/branches/3.0@12961 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 16:08:48 +00:00
Carl Hetherington
b97a1bfb97 Connect to controllable->Destroyed in all cases; fixes crash on route removal.
git-svn-id: svn://localhost/ardour2/branches/3.0@12959 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 15:38:07 +00:00
Carl Hetherington
e09e185e3e Add what I think is a missing lock when reading controllables.
git-svn-id: svn://localhost/ardour2/branches/3.0@12958 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 15:37:54 +00:00
1708ab55b9 fix MIDI binding stuff when the controllable does actually exist the first time we go looking for it (#4950)
git-svn-id: svn://localhost/ardour2/branches/3.0@12957 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 14:44:29 +00:00
11415b49be first pass at the big rethink of managing sort order keys for editor and mixer. this appears to work, but remote control IDs are not yet correct (frequently off by one because of the presence of the master bus in the editor)
git-svn-id: svn://localhost/ardour2/branches/3.0@12953 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-27 22:57:06 +00:00
266030b79c some generic midi debugging plus an assert
git-svn-id: svn://localhost/ardour2/branches/3.0@12950 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 20:49:52 +00:00
dde521f2c6 fix up some issues introduced by lifecycle tracking of Controllable in Generic MIDI control code
git-svn-id: svn://localhost/ardour2/branches/3.0@12947 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 19:10:11 +00:00
faaac88ac8 correctly(?) set number of process thread buffers based on run-time-discovered num-cpus (#4951)
git-svn-id: svn://localhost/ardour2/branches/3.0@12946 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 18:58:39 +00:00
Carl Hetherington
a50dd69c0c Add test for loading sessions, and a session with a
rec-enabled track that currently crashes.


git-svn-id: svn://localhost/ardour2/branches/3.0@12945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 18:47:20 +00:00
Carl Hetherington
7031e12495 Fix uninitialised variable.
git-svn-id: svn://localhost/ardour2/branches/3.0@12944 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 17:58:20 +00:00
Carl Hetherington
c52bdcf69d Remove unused named selection / chunk code.
git-svn-id: svn://localhost/ardour2/branches/3.0@12939 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 02:11:06 +00:00
a054a74dd2 disconnect from a Controllable when it is destroyed
git-svn-id: svn://localhost/ardour2/branches/3.0@12938 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 01:55:53 +00:00
Carl Hetherington
06ad59e936 Fix some oddities with playhead movement when locating
during roll.


git-svn-id: svn://localhost/ardour2/branches/3.0@12937 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 01:40:34 +00:00
Carl Hetherington
a5d013d841 Some spelling mistake fixes from Debian.
git-svn-id: svn://localhost/ardour2/branches/3.0@12936 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 01:40:27 +00:00
Carl Hetherington
cc9ed077be Patch from johan_mattsson_m to be more graceful if there
is an undo record which references a non-existant
object; this shouldn't happen, of course, but there was
a bug in some early betas which made it occur (#4920).


git-svn-id: svn://localhost/ardour2/branches/3.0@12930 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 21:19:21 +00:00
Carl Hetherington
0786ff15a0 Patch from royvegard to add a set-bank midi function
(#4949).


git-svn-id: svn://localhost/ardour2/branches/3.0@12927 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 19:26:00 +00:00
97d920593f drastic rethink of the relationship between remote control ID and route order keys. unless the user explicitly switches to UserOrdered, Route::_remote_control_id is an unallocated pointer, and Route::remote_control_id() simply returns a value based on the relevant order_key() value. Also, change the key used in the Route::order_keys std::map<> from a string to an enum, since there is no evidence that we are benefitting from the theoretical benefit of using a string. Generally tidy up allocation of order keys so that the master and monitor busses always get a "special" MixerSort key value, based on the MMC ID for master (already defined within Ardour), and all other tracks/busses start at zero. Syncing keys between editor and mixer will leave the MixerSort key for the master and monitor bus alone, reflecting the fact that we display these in their own distinct parts of the GUI and they are not orderable like other tracks or busses within the mixer window
git-svn-id: svn://localhost/ardour2/branches/3.0@12923 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 12:46:13 +00:00
Carl Hetherington
f2f35e50a0 Create diskstream before calling Route::set_state, the
set_state causes muted MIDI tracks to look up their
diskstream (#4947).


git-svn-id: svn://localhost/ardour2/branches/3.0@12922 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 12:39:25 +00:00
92469df6ab add late/lazy binding between generic MIDI bindings and controllable elements in the session. this allows you to load a binding map that refers to elements that have not yet been created in the session, and when they are created, the binding will work
git-svn-id: svn://localhost/ardour2/branches/3.0@12921 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 12:33:13 +00:00
Sakari Bergen
ed51eb8801 Remove some excess commas from the export format description
git-svn-id: svn://localhost/ardour2/branches/3.0@12920 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 20:00:30 +00:00
Sakari Bergen
d54d26e822 Inrease the export "chunk size" to speed it up over 10% at least in some situations
git-svn-id: svn://localhost/ardour2/branches/3.0@12919 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 19:45:20 +00:00
Carl Hetherington
aa76272ae7 Revert to using SSE mix-buffers-with-gain rather than simple
one.


git-svn-id: svn://localhost/ardour2/branches/3.0@12918 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 17:12:06 +00:00
Sakari Bergen
0925abbc92 Change logic for compiling export format descriptions from incomplete formats
git-svn-id: svn://localhost/ardour2/branches/3.0@12917 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 13:57:20 +00:00
Sakari Bergen
958fc23ed1 Fix stem export. The capturing processor of routes was never removed, and was restored inactive, which made stem export fail.
git-svn-id: svn://localhost/ardour2/branches/3.0@12916 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 13:38:42 +00:00
ff17d0c0a4 unused variable warning
git-svn-id: svn://localhost/ardour2/branches/3.0@12915 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 12:57:08 +00:00
0ed4059ec7 string fix, plus a tweak to handling variable i/o AUs
git-svn-id: svn://localhost/ardour2/branches/3.0@12913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 12:50:38 +00:00
Sakari Bergen
04416e2d1d In export format dialog, show preview of generated part of description. Fix to #0004941
git-svn-id: svn://localhost/ardour2/branches/3.0@12911 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-24 11:36:33 +00:00
Carl Hetherington
e58e614f20 Fix build.
git-svn-id: svn://localhost/ardour2/branches/3.0@12910 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 12:54:11 +00:00
ef5293398a Remove unused utility function ARDOUR::create_session_directory
git-svn-id: svn://localhost/ardour2/branches/3.0@12909 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 07:33:36 +00:00
11cae0333e Use SessionDirectory class directly rather than ARDOUR::create_session_directory
git-svn-id: svn://localhost/ardour2/branches/3.0@12908 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 07:33:34 +00:00
9680af515c Change the meaning of the return value in SessionDirectory::create
return true if the session directories were successfully created, not
if the session directory was previously invalid(new directory).

git-svn-id: svn://localhost/ardour2/branches/3.0@12907 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 07:33:31 +00:00
e85f11618c Remove unused pbd/filesystem.h/cc
git-svn-id: svn://localhost/ardour2/branches/3.0@12906 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:54 +00:00
1f440fbfec Remove unused or unnecessary header includes
git-svn-id: svn://localhost/ardour2/branches/3.0@12905 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:51 +00:00
4b96a5b34d Use std::string and Glib instead of pbd/filesystem.h in DeviceProfile
git-svn-id: svn://localhost/ardour2/branches/3.0@12902 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:44 +00:00
4522ef26a2 Use Glib instead of pbd/filesystem.h in GenericMidiControlProtocol
git-svn-id: svn://localhost/ardour2/branches/3.0@12901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:42 +00:00
ca888dcba7 Remove unused header include
git-svn-id: svn://localhost/ardour2/branches/3.0@12900 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:39 +00:00
9ae1ff59dc Use std::string and Glib::build_filename in Session::save_template
git-svn-id: svn://localhost/ardour2/branches/3.0@12899 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:37 +00:00
8bfeb96bfc Use std::string and Glib::build_filename in Session::path_from_region_name
git-svn-id: svn://localhost/ardour2/branches/3.0@12898 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:35 +00:00
6844eee3ae Use std::string and Glib::build_filename in Session::load_state
git-svn-id: svn://localhost/ardour2/branches/3.0@12897 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:33 +00:00
831251963c Use std::string and Glib::build_filename in Session::save_state
git-svn-id: svn://localhost/ardour2/branches/3.0@12896 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:31 +00:00
1dadaf3e05 Use std::string instead of sys::path in Session::jack_session_event
git-svn-id: svn://localhost/ardour2/branches/3.0@12895 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:28 +00:00
dbd5a4e002 Use std::string instead of PBD::sys::path in Session::restore_history
git-svn-id: svn://localhost/ardour2/branches/3.0@12894 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:26 +00:00
e37a65dade Use Glib::build_filename in Session::new_midi_source_name()
git-svn-id: svn://localhost/ardour2/branches/3.0@12893 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:24 +00:00
c44917aed7 Remove unused PBD:sys::create_directory/ies functions
git-svn-id: svn://localhost/ardour2/branches/3.0@12892 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:22 +00:00
0d785c8ebd Use g_mkdir_with_parents instead of sys::create_directories
git-svn-id: svn://localhost/ardour2/branches/3.0@12891 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:19 +00:00
01db45859d Add doc note about postcondition of ARDOUR::user_config_directory()
git-svn-id: svn://localhost/ardour2/branches/3.0@12889 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:15 +00:00
7a881ef67a Remove PBD::sys::is_directory and use Glib equivalent
git-svn-id: svn://localhost/ardour2/branches/3.0@12887 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:11 +00:00
f558a8c917 Remove unused PBD::sys::exists function
git-svn-id: svn://localhost/ardour2/branches/3.0@12884 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:04 +00:00
bc205191bf Use Glib::file_test instead of PBD::sys::exists
git-svn-id: svn://localhost/ardour2/branches/3.0@12883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:02 +00:00
5c988c459e Replace use of PBD::sys::exists with Glib equivalent
git-svn-id: svn://localhost/ardour2/branches/3.0@12882 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:00 +00:00
02aa5bcde4 Use Glib::file_test instead of sys::exists
git-svn-id: svn://localhost/ardour2/branches/3.0@12881 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:57 +00:00
6d7302a3a4 Remove unused method PBD::sys::path::leaf
git-svn-id: svn://localhost/ardour2/branches/3.0@12880 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:55 +00:00
1844c8b422 Remove use of pbd/filesystem.h in SessionDirectory, use Glib equivalents
git-svn-id: svn://localhost/ardour2/branches/3.0@12878 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:51 +00:00
7a6e86c9f9 Remove unused method PBD::sys::path::branch_path
git-svn-id: svn://localhost/ardour2/branches/3.0@12877 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:49 +00:00
d2637317a3 Remove unused function PBD::sys::rename
git-svn-id: svn://localhost/ardour2/branches/3.0@12876 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:46 +00:00
a1cb2e02df Use g_rename instead of PBD::sys::rename in Session::save_history
git-svn-id: svn://localhost/ardour2/branches/3.0@12875 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:44 +00:00
4cd73d8165 Use g_rename instead of PBD::sys::rename in Session::rename_state
git-svn-id: svn://localhost/ardour2/branches/3.0@12874 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:40 +00:00
8c831bef10 Remove unused function PBD::sys::remove
git-svn-id: svn://localhost/ardour2/branches/3.0@12873 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:38 +00:00
dcc6d27390 Use g_remove instead of PBD::sys::remove in Session::save_state
git-svn-id: svn://localhost/ardour2/branches/3.0@12872 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:35 +00:00
4de4c2aab4 Use g_remove instead of sys::remove in Session::save_state
git-svn-id: svn://localhost/ardour2/branches/3.0@12871 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:33 +00:00
b5d1dbf62f Use g_remove instead of sys::remove in Session::remove_state
git-svn-id: svn://localhost/ardour2/branches/3.0@12870 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:31 +00:00
695b666430 Don't try to remove pending state file if the file doesn't exist
git-svn-id: svn://localhost/ardour2/branches/3.0@12869 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:29 +00:00
d1fc7aa459 Use Glib file utility functions in Session::remove_pending_capture_state
git-svn-id: svn://localhost/ardour2/branches/3.0@12868 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:26 +00:00
f318d8640c Remove unused function PBD::sys::basename
git-svn-id: svn://localhost/ardour2/branches/3.0@12867 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:24 +00:00
a459f96e38 Remove unused function PBD::sys::extension
git-svn-id: svn://localhost/ardour2/branches/3.0@12866 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:22 +00:00
6b1659a29b Move file utility function into pbd/file_utils.h and into PBD namespace
git-svn-id: svn://localhost/ardour2/branches/3.0@12865 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:19 +00:00
878acbee14 Make PBD::sys::exists_and_writable take a string instead of sys::path
git-svn-id: svn://localhost/ardour2/branches/3.0@12864 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:17 +00:00
e26e59b006 Move three file utility functions from pbd/filesystem.h to pbd/file_utils.h
git-svn-id: svn://localhost/ardour2/branches/3.0@12863 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:14 +00:00
6aee537109 Change PBD::sys::get_absolute_path to take and return a std::string
git-svn-id: svn://localhost/ardour2/branches/3.0@12862 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:11 +00:00
a049a69a1a Move docs for PBD::sys::get_absolute_path into header
git-svn-id: svn://localhost/ardour2/branches/3.0@12861 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:09 +00:00
a239047380 Move doc for PBD::sys::path_is_within to header
git-svn-id: svn://localhost/ardour2/branches/3.0@12860 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:06 +00:00
fb76229f7b Change PBD::sys::path_is_within to take string params and use Glib
git-svn-id: svn://localhost/ardour2/branches/3.0@12859 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:04 +00:00
1d3594cc9b Add docs for PBD::sys::equivalent_paths
git-svn-id: svn://localhost/ardour2/branches/3.0@12858 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:08:01 +00:00
17475df100 Rename PBD::sys::inodes_same to equivalent_paths
This better reflects its function and more closely matches boost
naming(which is usually a good sign)

git-svn-id: svn://localhost/ardour2/branches/3.0@12857 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:59 +00:00
5ae32cdfd9 Fix PBD::sys::inodes_same to check that paths are on same device
two paths can have the same inode and be on different devices and hence
would not be equivalent

git-svn-id: svn://localhost/ardour2/branches/3.0@12856 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:56 +00:00
f4d826047f Use g_stat in PBD::sys::inodes_same for portability
git-svn-id: svn://localhost/ardour2/branches/3.0@12855 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:54 +00:00
e66e9854d7 Overwrite target file in PBD::copy_file
git-svn-id: svn://localhost/ardour2/branches/3.0@12854 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:52 +00:00
a22dd8c20a Move PBD::sys::copy_file/s into pbd/file_utils.h and PBD:: namespace
Copy files no longer depends on PBD::sys::path so move it

git-svn-id: svn://localhost/ardour2/branches/3.0@12853 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:49 +00:00
4cda435203 Use Glib::build_filename in PBD::sys::copy_files
git-svn-id: svn://localhost/ardour2/branches/3.0@12852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:47 +00:00
3e77868269 Use PBD::sys::copy_file in ARDOUR::create_backup_file
git-svn-id: svn://localhost/ardour2/branches/3.0@12851 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:45 +00:00
2f507c8a76 Use giomm in PBD::sys::copy_file and change function signature
now returns bool to indicate successful copy rather than throw and
takes strings as args

git-svn-id: svn://localhost/ardour2/branches/3.0@12850 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:42 +00:00
4363a6920f Remove unnecessary header include
git-svn-id: svn://localhost/ardour2/branches/3.0@12849 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:40 +00:00
2c46bf78b8 Replace use of pbd/filesystem.h with glib/mm equivalents
git-svn-id: svn://localhost/ardour2/branches/3.0@12848 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:37 +00:00
71a4495db4 Use PBD::basename_nosuffix instead of sys::basename
git-svn-id: svn://localhost/ardour2/branches/3.0@12847 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:35 +00:00
28ca644274 Use giomm in ARDOUR::create_backup_file to copy file for portablity
git-svn-id: svn://localhost/ardour2/branches/3.0@12846 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:33 +00:00
8cb88c8c2e Replace use of PBD::sys::path with Glib equivalent
git-svn-id: svn://localhost/ardour2/branches/3.0@12845 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:31 +00:00
d8520401d0 Remove now unnecessary header include
git-svn-id: svn://localhost/ardour2/branches/3.0@12844 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:29 +00:00
28d7884eed Replace PBD::sys::path use in PBD::Stateful
git-svn-id: svn://localhost/ardour2/branches/3.0@12843 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:27 +00:00
ae066dc52a Replace use of pbd/filesystem.h with Glib:: equivalents
There is also no need to try and create user_config_directory() as
calling it ensures it exists and is a valid directory

git-svn-id: svn://localhost/ardour2/branches/3.0@12842 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:24 +00:00
352e63de4c Replace use of PBD::sys::path in PluginManager
git-svn-id: svn://localhost/ardour2/branches/3.0@12841 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:22 +00:00
eb1c762985 Replace use of pbd/filesystem.h with Glib alternative
git-svn-id: svn://localhost/ardour2/branches/3.0@12840 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:20 +00:00
1d31cd008d Replace use of PBD::sys::path in ARDOUR::find_bindings_files
git-svn-id: svn://localhost/ardour2/branches/3.0@12839 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:18 +00:00
727e1faf01 Use static string in ARDOUR::user_config_directory
This code only needs to run once to determine/create users config directory

git-svn-id: svn://localhost/ardour2/branches/3.0@12838 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:16 +00:00
a39990dee0 Replace use of PBD::sys::path in ARDOUR::user_config_directory
git-svn-id: svn://localhost/ardour2/branches/3.0@12837 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:14 +00:00
78c30ae9e4 Simplify ardour_*_search_path functions
Also fixes portability but windows build will likely not rely on env
variables

git-svn-id: svn://localhost/ardour2/branches/3.0@12836 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:12 +00:00
69c518f91e Remove unused header include
git-svn-id: svn://localhost/ardour2/branches/3.0@12835 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:09 +00:00
1dde2f0591 Replace use of PBD::sys::path in AudioLibrary
git-svn-id: svn://localhost/ardour2/branches/3.0@12834 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:07 +00:00
306e6475e5 Replace use of PBD::sys::path in ardour/template_utils.h
some associated changes from not including pbd/filesystem.h in template_utils.h

git-svn-id: svn://localhost/ardour2/branches/3.0@12833 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:05 +00:00
0f482627a5 Replace use of PBD::sys::path in ardour/session_state_utils.h
git-svn-id: svn://localhost/ardour2/branches/3.0@12832 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:02 +00:00
7e7d053f53 Replace use of PBD::sys::path in ExportProfileManager
git-svn-id: svn://localhost/ardour2/branches/3.0@12831 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:07:00 +00:00
33f63bd09c Replace use of PBD::sys::path in AudioRegionImporter
git-svn-id: svn://localhost/ardour2/branches/3.0@12830 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:06:57 +00:00
105caf23da Use std::string instead of PBD::sys::path in pbd/search_path.h, pbd/file_utils.h and ardour/session_dir.h
git-svn-id: svn://localhost/ardour2/branches/3.0@12829 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:06:54 +00:00
6262eae7c0 Remove unnecessary header includes
git-svn-id: svn://localhost/ardour2/branches/3.0@12827 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 03:51:41 +00:00
a2f5ff9535 Remove two unnecessary header includes of pbd/mountpoint.h
git-svn-id: svn://localhost/ardour2/branches/3.0@12826 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 03:51:39 +00:00
ec998b045e Remove unnecessary header include
git-svn-id: svn://localhost/ardour2/branches/3.0@12825 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 03:51:37 +00:00
8770c4668d Remove unnecessary header include
git-svn-id: svn://localhost/ardour2/branches/3.0@12824 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 03:51:34 +00:00
0dc43d677e don't try to backup sessions from older versions of ardour that are also read-only
git-svn-id: svn://localhost/ardour2/branches/3.0@12823 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-22 19:44:11 +00:00
c0f7f044f3 introduce the idea of a "default transport speed", used whenever Session::start_transport() is called. Only the shuttle controller alters it, and even that only alters it in wheel mode, which means that stopping the transport does not rever the default speed back to zero. To get back to zero either switch the shuttle controller back to sprung mode, or change the speed back to zero (fixes #451 ... yes, really, a 3 digit bug fixed!)
git-svn-id: svn://localhost/ardour2/branches/3.0@12819 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-22 14:45:44 +00:00
8c10320497 fix reset of transport speed when seamless looping; add a few comments and tidy-ups to related transport code
git-svn-id: svn://localhost/ardour2/branches/3.0@12818 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-22 14:27:51 +00:00
d70429a066 provide an easier way to add mixed (audio+MIDI) tracks to a session, to facilitate the use of plugins like Reaktor which accept both audio & MIDI data. there's probably still a paradigm shift waiting to happen here but its likely post-3.0.
git-svn-id: svn://localhost/ardour2/branches/3.0@12816 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-22 01:45:16 +00:00