summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWerner Schweer <ws.seh.de>2006-06-19 11:33:11 +0000
committerWerner Schweer <ws.seh.de>2006-06-19 11:33:11 +0000
commite494b49ed5a8f077f263e74b5b88a825540ee7df (patch)
treeeec39429f7a38eebf19a2fe35f020d5e4d1e8458
parenta86e9a7ff7ce31a2f02991ad89bcf1fa6d4e26bf (diff)
fixed: mono plugins on stereo tracks only work on one channel
-rw-r--r--muse/ChangeLog3
-rw-r--r--muse/muse/plugin.cpp8
-rw-r--r--muse/muse/projectdialog.cpp2
3 files changed, 7 insertions, 6 deletions
diff --git a/muse/ChangeLog b/muse/ChangeLog
index b84a9cab..6e454c86 100644
--- a/muse/ChangeLog
+++ b/muse/ChangeLog
@@ -1,5 +1,6 @@
19.6. (ws)
- * fix drawing of cutted wave part
+ * fixed: mono plugins on stereo tracks work only on one channel
+ * fixed drawing of cutted wave part
14.6. (ws)
* fix build of libawlplugin.so; works for "release" build
12.6. (ws)
diff --git a/muse/muse/plugin.cpp b/muse/muse/plugin.cpp
index 6ab03d18..c5d6362a 100644
--- a/muse/muse/plugin.cpp
+++ b/muse/muse/plugin.cpp
@@ -564,7 +564,7 @@ void PluginI::apply(unsigned nframes, int ports, float** src, float** dst)
float** spp = sp;
float** dpp = dp;
for (int i = 0; i < instances; ++i) {
- pif[i]->apply(nframes, sp, dp);
+ pif[i]->apply(nframes, spp, dpp);
spp += iports;
dpp += oports;
}
@@ -656,7 +656,7 @@ bool PluginI::initPluginInstance(Plugin* plug, int c)
_name = _plugin->name() + inst;
_label = _plugin->label() + inst;
- instances = channel/plug->outports();
+ instances = channel / plug->outports();
if (instances < 1)
instances = 1;
pif = new PluginIF*[instances];
@@ -718,6 +718,7 @@ void PluginI::writeConfiguration1(Xml& xml)
if (hasNativeGui() && nativeGuiVisible())
xml.intTag("nativeGui", 1);
}
+
//---------------------------------------------------------
// readConfiguration
// return true on error
@@ -725,7 +726,6 @@ void PluginI::writeConfiguration1(Xml& xml)
bool PluginI::readConfiguration(QDomNode node)
{
- instances = 1;
QDomElement e = node.toElement();
QString file = e.attribute("file");
QString label = e.attribute("label");
@@ -735,7 +735,7 @@ bool PluginI::readConfiguration(QDomNode node)
_plugin = plugins.find(file, label);
if (_plugin == 0)
return true;
- if (initPluginInstance(_plugin, instances))
+ if (initPluginInstance(_plugin, channel))
return true;
}
node = node.firstChild();
diff --git a/muse/muse/projectdialog.cpp b/muse/muse/projectdialog.cpp
index 968e6cc4..b31e94ff 100644
--- a/muse/muse/projectdialog.cpp
+++ b/muse/muse/projectdialog.cpp
@@ -143,7 +143,7 @@ void ProjectTree::dropEvent(QDropEvent* event)
QTreeWidgetItem* dstItem = itemAt(event->pos());
if (dstItem && dstItem->type() == DIR_TYPE) {
QString src = event->mimeData()->text();
- QTreeWidgetItem* srcItem;
+ QTreeWidgetItem* srcItem = 0;
int n = topLevelItemCount();
for (int i = 0; i < n; ++i) {
QTreeWidgetItem* item = topLevelItem(i);