summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-10-03 19:57:38 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-10-03 19:57:38 +0000
commitaabf0be5a934f098d98ca83abb2209685d9b8ead (patch)
treeaa727d2d8f4b9c542655837e17f6df3a0563a474
parentc0fa196073f21587129aaf7e8305bbbb8f1ec5ca (diff)
floating point precision fix, after months of waiting, plus fix for width of string ID representation
git-svn-id: svn://localhost/ardour2/trunk@940 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--SConstruct2
-rw-r--r--gtk2_ardour/SConscript9
-rw-r--r--libs/ardour/audio_diskstream.cc2
-rw-r--r--libs/ardour/crossfade.cc4
-rw-r--r--libs/ardour/vst_plugin.cc9
5 files changed, 16 insertions, 10 deletions
diff --git a/SConstruct b/SConstruct
index b12b803121..03eee09815 100644
--- a/SConstruct
+++ b/SConstruct
@@ -15,7 +15,7 @@ import SCons.Node.FS
SConsignFile()
EnsureSConsVersion(0, 96)
-version = '2.0beta3'
+version = '2.0beta3.2'
subst_dict = { }
diff --git a/gtk2_ardour/SConscript b/gtk2_ardour/SConscript
index eb82230e49..072965ca94 100644
--- a/gtk2_ardour/SConscript
+++ b/gtk2_ardour/SConscript
@@ -315,8 +315,13 @@ env.Alias ('tarball', env.Distribute (env['DISTTREE'],
'ardour.menus', 'ardour.bindings', 'ardour.colors',
'editor_xpms'
] +
- gtkardour_files + vst_files + pixmap_files +
- glob.glob('po/*.po') + glob.glob('*.h')))
+ gtkardour_files +
+ vst_files +
+ pixmap_files +
+ skipped_files +
+ audiounit_files +
+ fft_analysis_files +
+ glob.glob('po/*.po') + glob.glob('*.h')))
# generate a prototype full-featured ardour_ui.rc file
diff --git a/libs/ardour/audio_diskstream.cc b/libs/ardour/audio_diskstream.cc
index 89bffc89e3..efe4e89cd1 100644
--- a/libs/ardour/audio_diskstream.cc
+++ b/libs/ardour/audio_diskstream.cc
@@ -1755,7 +1755,7 @@ AudioDiskstream::get_state ()
node->add_property ("playlist", _playlist->name());
- snprintf (buf, sizeof(buf), "%f", _visible_speed);
+ snprintf (buf, sizeof(buf), "%.12g", _visible_speed);
node->add_property ("speed", buf);
node->add_property("name", _name);
diff --git a/libs/ardour/crossfade.cc b/libs/ardour/crossfade.cc
index acf254e73a..203041616e 100644
--- a/libs/ardour/crossfade.cc
+++ b/libs/ardour/crossfade.cc
@@ -803,7 +803,7 @@ Crossfade::set_state (const XMLNode& node)
sscanf (prop->value().c_str(), "%" PRIu32, &x);
prop = (*i)->property ("y");
- sscanf (prop->value().c_str(), "%f", &y);
+ sscanf (prop->value().c_str(), "%.12g", &y);
_fade_in.add (x, y);
}
@@ -825,7 +825,7 @@ Crossfade::set_state (const XMLNode& node)
sscanf (prop->value().c_str(), "%" PRIu32, &x);
prop = (*i)->property ("y");
- sscanf (prop->value().c_str(), "%f", &y);
+ sscanf (prop->value().c_str(), "%.12g", &y);
_fade_out.add (x, y);
}
diff --git a/libs/ardour/vst_plugin.cc b/libs/ardour/vst_plugin.cc
index e5a84bbad0..02003a4238 100644
--- a/libs/ardour/vst_plugin.cc
+++ b/libs/ardour/vst_plugin.cc
@@ -212,7 +212,7 @@ VSTPlugin::get_state()
char index[64];
char val[32];
snprintf (index, sizeof (index), "param_%ld", n);
- snprintf (val, sizeof (val), "%f", _plugin->getParameter (_plugin, n));
+ snprintf (val, sizeof (val), "%.12g", _plugin->getParameter (_plugin, n));
parameters->add_property (index, val);
}
@@ -244,11 +244,12 @@ VSTPlugin::set_state(const XMLNode& node)
for (i = child->properties().begin(); i != child->properties().end(); ++i) {
long param;
- float val;
+ double val;
+
sscanf ((*i)->name().c_str(), "param_%ld", &param);
- sscanf ((*i)->value().c_str(), "%f", &val);
+ sscanf ((*i)->value().c_str(), "%g", &val);
- _plugin->setParameter (_plugin, param, val);
+ _plugin->setParameter (_plugin, param, (float) val);
}
return 0;