env = conf.Finish()
+# generate the per-user and system rc files from the same source
+
rcbuild = env.SubstInFile ('ardour.rc','ardour.rc.in', SUBST_DICT = subst_dict)
+sysrcbuild = env.SubstInFile ('ardour_system.rc','ardour.rc.in', SUBST_DICT = subst_dict)
+
+# add to the substitution dictionary
+
subst_dict['%VERSION%'] = ardour_version[0:3]
subst_dict['%EXTRA_VERSION%'] = ardour_version[3:]
subst_dict['%REVISION_STRING%'] = ''
env.Alias('install', env.Install(os.path.join(config_prefix, 'ardour2'), 'ardour.rc'))
Default (rcbuild)
+Default (sysrcbuild)
# source tarball
<Option name="quieten-at-speed" value="1.000000"/>
<Option name="use-vst" value="yes"/>
<Option name="use-tranzport" value="yes"/>
+ <Option name="disk-choice-space-threshold" value="57600000"/>
<Option name="destructive-xfade-msecs" value="20"/>
<Option name="periodic-safety-backups" value="1"/>
<Option name="periodic-safety-backup-interval" value="120"/>
<Keyboard edit-button="3" edit-modifier="4" delete-button="3" delete-modifier="1" snap-modifier="32"/>
</extra>
</Ardour>
+
<?xml version="1.0" encoding="UTF-8"?>
<Ardour>
+ <MIDI-port tag="seq" device="ardour" type="alsa/sequencer" mode="duplex"/>
+ <MIDI-port tag="control" device="ardour" type="alsa/sequencer" mode="duplex"/>
+ <MIDI-port tag="mcu" device="ardour" type="alsa/sequencer" mode="duplex"/>
<Config>
<Option name="minimum-disk-io-bytes" value="262144"/>
<Option name="track-buffer-seconds" value="5.000000"/>
<Option name="mute-affects-control-outs" value="yes"/>
<Option name="mute-affects-main-outs" value="yes"/>
<Option name="solo-latch" value="yes"/>
- <Option name="pixmap-path" value="/usr/share/ardour/pixmaps:/usr/local/share/ardour/pixmaps"/>
+ <Option name="mtc-port" value="seq"/>
+ <Option name="mmc-port" value="seq"/>
+ <Option name="midi-port" value="seq"/>
+ <Option name="jack-time-master" value="yes"/>
+ <Option name="trace-midi-input" value="no"/>
+ <Option name="trace-midi-output" value="no"/>
+ <Option name="plugins-stop-with-transport" value="no"/>
+ <Option name="no-sw-monitoring" value="no"/>
+ <Option name="stop-recording-on-xrun" value="no"/>
+ <Option name="stop-at-session-end" value="no"/>
+ <Option name="auto-xfade" value="yes"/>
+ <Option name="crossfades-active" value="1"/>
+ <Option name="crossfades-visible" value="1"/>
+ <Option name="xfade-model" value="0"/>
+ <Option name="no-new-session-dialog" value="yes"/>
+ <Option name="timecode-source-is-synced" value="yes"/>
+ <Option name="auditioner-left-out" value="alsa_pcm:playback_1"/>
+ <Option name="auditioner-right-out" value="alsa_pcm:playback_2"/>
+ <Option name="quieten-at-speed" value="1.000000"/>
+ <Option name="use-vst" value="yes"/>
+ <Option name="use-tranzport" value="yes"/>
<Option name="disk-choice-space-threshold" value="57600000"/>
- <Option name="mtc-port" value="trident"/>
- <Option name="mmc-port" value="trident"/>
- <Option name="monitor-inputs" value="no"/>
+ <Option name="destructive-xfade-msecs" value="20"/>
+ <Option name="periodic-safety-backups" value="1"/>
+ <Option name="periodic-safety-backup-interval" value="120"/>
</Config>
+ <extra>
+ <Keyboard edit-button="3" edit-modifier="4" delete-button="3" delete-modifier="1" snap-modifier="32"/>
+ </extra>
</Ardour>
+
#include <ardour/crossfade.h>
#include <ardour/crossfade_compare.h>
#include <ardour/session.h>
+#include <pbd/enumwriter.h>
#include "i18n.h"
}
+
OverlapType c = top->coverage (bottom->position(), bottom->last_frame());
try {
xfade = boost::shared_ptr<Crossfade> (new Crossfade (top, bottom, xfade_length, top->first_frame(), StartOfIn));
add_crossfade (xfade);
-
+
if (top_region_at (top->last_frame() - 1) == top) {
/*
only add a fade out if there is no region on top of the end of 'top' (which
/* create command */
string obj_T = n->property ("type_name")->value();
if (obj_T == typeid (AudioRegion).name() || obj_T == typeid (Region).name()) {
- if (audio_regions.count(id))
+ if (audio_regions.count(id)) {
return new MementoCommand<AudioRegion>(*audio_regions[id], before, after);
+ } else {
+ cerr << "count failed for " << id << " though we have " << audio_regions.size() << endl;
+ }
} else if (obj_T == typeid (AudioSource).name()) {
if (audio_sources.count(id))
return new MementoCommand<AudioSource>(*audio_sources[id], before, after);
/* we failed */
error << string_compose (_("could not reconstitute MementoCommand from XMLNode. object type = %1 id = %2"), obj_T, id.to_s()) << endmsg;
+
return 0 ;
}