rpms/armstrong/F-12 armstrong-29f9f6e28626.diff, NONE, 1.1 armstrong-57a562c38b47.diff, NONE, 1.1 armstrong-a8789ff6ae37.diff, NONE, 1.1 armstrong.spec, 1.7, 1.8
Orcan Ogetbil
oget at fedoraproject.org
Sat May 29 22:44:17 UTC 2010
- Previous message: rpms/armstrong/F-13 armstrong-29f9f6e28626.diff, NONE, 1.1 armstrong-57a562c38b47.diff, NONE, 1.1 armstrong-a8789ff6ae37.diff, NONE, 1.1 armstrong.spec, 1.9, 1.10
- Next message: rpms/armstrong/F-11 armstrong-29f9f6e28626.diff, NONE, 1.1 armstrong-57a562c38b47.diff, NONE, 1.1 armstrong-a8789ff6ae37.diff, NONE, 1.1 armstrong.spec, 1.5, 1.6
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: oget
Update of /cvs/pkgs/rpms/armstrong/F-12
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv15351
Modified Files:
armstrong.spec
Added Files:
armstrong-29f9f6e28626.diff armstrong-57a562c38b47.diff
armstrong-a8789ff6ae37.diff
Log Message:
* Fri Mar 05 2010 Orcan Ogetbil <oget [DOT] fedora [AT] gmail [DOT] com> 0.2.6-11
- Fix stack smashing in 32 bit systems RHBZ#508779
- More lunar fixes
- Superfm fix
- New lunar note plugin
armstrong-29f9f6e28626.diff:
envelope.cpp | 2 ++
zephod_superfm.cpp | 6 ++++--
2 files changed, 6 insertions(+), 2 deletions(-)
--- NEW FILE armstrong-29f9f6e28626.diff ---
# HG changeset patch -- Bitbucket.org
# Project Armstrong
# URL http://bitbucket.org/paniq/armstrong/overview
# User tzhau
# Date 1244759320 -7200
# Node ID 29f9f6e28626113918e07bb46cb6a7735ee3731a
# Parent 617eef7ebbe4f1d7abcd4dce58335af991ddda08
Superfm fix (thanks bitbucket)
--- a/src/plugins/lunar/fx/zephod_superfm/zephod_superfm.cpp
+++ b/src/plugins/lunar/fx/zephod_superfm/zephod_superfm.cpp
@@ -203,10 +203,10 @@ public:
return -1.0;
case 2:
// Saw wave.
- return (float)phi;
+ return (float)((phi - 0.5) * 2.0);
case 3:
// Inverted saw wave.
- return (float)-phi;
+ return (float)((0.5 - phi) * 2.0);
default:
// Silence.
return 0.0;
@@ -303,6 +303,8 @@ public:
} else {
// Note on - set freq, reset envelopes.
Voices[t].freq = ((float)*tracks[t].note / float(SAMPLING_RATE * 2));
+ Voices[t].VCA.stop();
+ Voices[t].ENV.stop();
Voices[t].VCA.reset();
Voices[t].ENV.reset();
}
--- a/src/plugins/lunar/fx/zephod_superfm/envelope.cpp
+++ b/src/plugins/lunar/fx/zephod_superfm/envelope.cpp
@@ -3,6 +3,8 @@
envelope::envelope() {
envcoef=0;
suscounter=0;
+ stop();
+ reset();
}
envelope::~envelope() {
armstrong-57a562c38b47.diff:
lunar.cpp | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
--- NEW FILE armstrong-57a562c38b47.diff ---
# HG changeset patch -- Bitbucket.org
# Project Armstrong
# URL http://bitbucket.org/paniq/armstrong/overview/
# User mental at bede
# Date 1240218357 14400
# Node ID 57a562c38b47dfc421b407938311cd3a1e41d558
# Parent b66ffb24e75874e9db416f9875aeaa3221da63b3
fix buffer overrun (it happens on my system)
--- a/src/plugins/lunar/lunar.cpp
+++ b/src/plugins/lunar/lunar.cpp
@@ -1471,15 +1471,13 @@ struct dspplugincollection : zzub::plugi
char modulename[MAX_PATH];
GetModuleFileName(g_hModule, modulename, MAX_PATH);
*strrchr(modulename,'\\') = '\0';
- strcat(modulename, "\\..\\lunar\\fx");
- enumerate_plugins(modulename);
+ std::string modulepath = modulename;
+ modulepath.append("\\..\\lunar\\fx");
#else
- char modulepath[PATH_MAX];
- strncpy(modulepath, ZZUB_LIB_DIR_PATH, PATH_MAX);
- modulepath[PATH_MAX] = '\0';
- strcat(modulepath, "/../lunar/fx");
- enumerate_plugins(modulepath);
+ std::string modulepath = ZZUB_LIB_DIR_PATH;
+ modulepath.append("/../lunar/fx");
#endif
+ enumerate_plugins(modulepath.c_str());
this->factory = factory;
for (std::list<dspplugin::info*>::iterator i = infos.begin(); i != infos.end(); ++i) {
armstrong-a8789ff6ae37.diff:
filter/filter.cpp | 220 +++++++++++++++++++++++++++++++++++++++++-----------
filter/filter.h | 8 +
filter/manifest.xml | 151 +++++++++++++++++------------------
note/manifest.xml | 66 +++++++++++++++
note/note.cpp | 103 ++++++++++++++++++++++++
note/note.h | 92 +++++++++++++++++++++
6 files changed, 518 insertions(+), 122 deletions(-)
--- NEW FILE armstrong-a8789ff6ae37.diff ---
diff -rupN armstrong.old/src/plugins/lunar/fx/filter/filter.cpp armstrong/src/plugins/lunar/fx/filter/filter.cpp
--- armstrong.old/src/plugins/lunar/fx/filter/filter.cpp 2009-01-09 16:17:45.000000000 -0500
+++ armstrong/src/plugins/lunar/fx/filter/filter.cpp 2010-05-08 03:48:01.000000000 -0400
@@ -2,55 +2,187 @@
#include "filter.h"
#include <lunar/fx.hpp>
#include <lunar/dsp.h>
-#include "svf.h"
-class filter : public lunar::fx<filter> {
+class Lag {
+private:
+ float *output;
+ float val, increment;
+ int counter;
+
+ inline float next() {
+ if (counter > 0) {
+ counter -= 1;
+ return val += increment;
+ } else {
+ return val;
+ }
+ }
public:
+ Lag(int n) {
+ this->val = 0.0;
+ counter = 0;
+ output = new float[n];
+ }
+
+ ~Lag() {
+ delete output;
+ }
+
+ void set_val(float target, int delay) {
+ if (delay == 0) {
+ val = target;
+ }
+ else {
+ counter = delay;
+ increment = (target - val) / (float)delay;
+ }
+ }
+
+ inline float get_val() {
+ return val;
+ }
+
+ float *get_output() {
+ return output;
+ }
+
+ void process(int n, int fs) {
+ for (int i = 0; i < n; i++) {
+ output[i] = next();
+ }
+ }
+};
- float l_ftype, l_freq, l_res;
+class Svf {
+private:
+ float low, high, band, notch;
+ float *input, *output, *cutoff, *x, *y;
+ float q;
+public:
+ Svf(int n) {
+ output = new float[n];
+ low = high = band = 0.0;
+ }
+
+ ~Svf() {
+ delete output;
+ }
+
+ void set_input(float *input) {
+ this->input = input;
+ }
+
+ void set_cutoff(float *cutoff) {
+ this->cutoff = cutoff;
+ }
+
+ void set_x(float *x) {
+ this->x = x;
+ }
+
+ void set_y(float *y) {
+ this->y = y;
+ }
+
+ void set_q(float reso) {
+ this->q = sqrt(1.0 - atan(sqrt(reso * 100.0)) * 2.0 / M_PI);
+ }
+
+ float *get_output() {
+ return output;
+ }
+
+ void process(int n, int fs) {
+ float scale, f, pair1, pair2;
+ scale = sqrt(q);
+ for (int i = 0; i < n; i++) {
+ f = cutoff[i] / (float)fs * 2.0;
+ for (int j = 0; j < 2; j++) {
+ low = low + f * band;
+ high = scale * input[i] - low - q * band;
+ band = f * high + band;
+ notch = high + low;
+ }
+ pair1 = low * y[i] + high * (1.0 - y[i]);
+ pair2 = band * y[i] + notch * (1.0 - y[i]);
+ output[i] = pair2 * x[i] + pair1 * (1.0 - x[i]);
+ }
+ }
+};
+
+class filter : public lunar::fx<filter> {
+public:
- svf fk1;
- svf fk2;
+ float l_ftype, l_freq, l_res, l_x, l_y;
+ int inertia;
- void update_filters() {
- fk1.setup(transport->samples_per_second, l_freq, l_res, 0);
- fk2.setup(transport->samples_per_second, l_freq, l_res, 0);
- }
-
- void init() {
- }
-
- void exit() {
- }
-
- void process_events() {
- int update = 0;
-
- if (globals->ftype) {
- l_ftype = *globals->ftype;
- update = 1;
- }
- if (globals->freq) {
- l_freq = *globals->freq;
- update = 1;
- }
- if (globals->res) {
- l_res = *globals->res;
- update = 1;
- }
- if (update)
- update_filters();
- }
-
- void process_stereo(float *inL, float *inR, float *outL, float *outR, int n) {
- dsp_copy(inL, outL, n);
- dsp_copy(inR, outR, n);
- fk1.process(outL, n, int(l_ftype));
- fk2.process(outR, n, int(l_ftype));
- dsp_clip(outL, n, 1); // signal may never exceed -1..1
- dsp_clip(outR, n, 1);
-
- }
+ Lag *lag_cutoff, *lag_x, *lag_y;
+ Svf *fleft, *fright;
+
+ void init() {
+ int n = transport->samples_per_tick;
+ lag_cutoff = new Lag(n);
+ lag_x = new Lag(n);
+ lag_y = new Lag(n);
+ fleft = new Svf(n);
+ fright = new Svf(n);
+ }
+
+ void exit() {
+ delete lag_cutoff;
+ delete lag_x;
+ delete lag_y;
+ delete fleft;
+ delete fright;
+ }
+
+ void process_events() {
+ if (globals->freq) {
+ l_freq = *globals->freq;
+ lag_cutoff->set_val(l_freq, inertia * transport->samples_per_tick);
+ }
+ if (globals->res) {
+ l_res = *globals->res;
+ fleft->set_q(l_res);
+ fright->set_q(l_res);
+ }
+ if (globals->x) {
+ l_x = *globals->x;
+ lag_x->set_val(l_x, inertia * transport->samples_per_tick);
+ }
+ if (globals->y) {
+ l_y = *globals->y;
+ lag_y->set_val(l_y, inertia * transport->samples_per_tick);
+ }
+ if (globals->inertia) {
+ inertia = *globals->inertia;
+ }
+ }
+
+ void process_stereo(float *inL, float *inR, float *outL, float *outR, int n) {
+ int fs;
+ fs = transport->samples_per_second;
+ fleft->set_input(inL);
+ fright->set_input(inR);
+ fleft->set_cutoff(lag_cutoff->get_output());
+ fright->set_cutoff(lag_cutoff->get_output());
+ fleft->set_x(lag_x->get_output());
+ fright->set_x(lag_x->get_output());
+ fleft->set_y(lag_y->get_output());
+ fright->set_y(lag_y->get_output());
+ lag_cutoff->process(n, fs);
+ lag_x->process(n, fs);
+ lag_y->process(n, fs);
+ fleft->process(n, fs);
+ fright->process(n, fs);
+ float *templ, *tempr;
+ templ = fleft->get_output();
+ tempr = fright->get_output();
+ dsp_copy(templ, outL, n);
+ dsp_copy(tempr, outR, n);
+ dsp_clip(outL, n, 1);
+ dsp_clip(outR, n, 1);
+ }
};
lunar_fx *new_fx() { return new filter(); }
diff -rupN armstrong.old/src/plugins/lunar/fx/filter/filter.h armstrong/src/plugins/lunar/fx/filter/filter.h
--- armstrong.old/src/plugins/lunar/fx/filter/filter.h 2009-01-09 16:17:45.000000000 -0500
+++ armstrong/src/plugins/lunar/fx/filter/filter.h 2010-05-08 03:48:01.000000000 -0400
@@ -7,14 +7,18 @@ extern "C" {
typedef struct _lunar_attributes {
} lunar_attributes_t;
typedef struct _lunar_globals {
- float *ftype;
float *freq;
float *res;
+ float *x;
+ float *y;
+ float *inertia;
} lunar_globals_t;
typedef struct _lunar_global_values {
- float ftype;
float freq;
float res;
+ float x;
+ float y;
+ float inertia;
} lunar_global_values_t;
typedef struct _lunar_track {
} lunar_track_t;
diff -rupN armstrong.old/src/plugins/lunar/fx/filter/manifest.xml armstrong/src/plugins/lunar/fx/filter/manifest.xml
--- armstrong.old/src/plugins/lunar/fx/filter/manifest.xml 2009-01-09 16:17:45.000000000 -0500
+++ armstrong/src/plugins/lunar/fx/filter/manifest.xml 2010-05-08 03:49:36.000000000 -0400
@@ -1,79 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<zzub>
- <plugin
- uri="@trac.zeitherrschaft.org/aldrin/lunar/effect/filter;1"
- name="Lunar Filter"
- shortname="Filter"
- type="effect"
- description="An SVF filter effect (2pass)."
- author="Leonard Ritter"
- email="contact at leonard-ritter+com">
- <parameters>
- <valuenamegroup>
- <valuenames id="ftypes">
- <alias value="0" name="Notch"/>
- <alias value="1" name="Low Pass"/>
- <alias value="2" name="High Pass"/>
- <alias value="3" name="Band Pass"/>
- <alias value="4" name="Peak"/>
- </valuenames>
- </valuenamegroup>
- <global>
- <parameter
- id="ftype"
- name="Type"
- description="Type of filter (0 = notch, 1 = low, 2 = high, 3 = band, 4 = peak)"
- type="byte"
- minvalue="0"
- maxvalue="4"
- defvalue="1"
- valuenames="ftypes"
- state="true"/>
- <parameter
- id="freq"
- name="Cutoff (Hz)"
- description="Cutoff frequency of filter"
- type="float"
- logarithmic="true"
- power="0.7"
- minvalue="10"
- maxvalue="20000"
- defvalue="20000"
- precision="1"
- state="true"/>
- <parameter
- id="res"
- name="Resonance"
- description="Resonance of filter"
- type="float"
- minvalue="0"
- maxvalue="0.99"
- defvalue="0"
- precision="0.01"
- state="true"/>
- <!-- <parameter
- id="dist"
- name="Distortion"
- description="Distortion of filter"
- type="float"
- minvalue="0"
- maxvalue="0.1"
- defvalue="0"
- precision="0.01"
- state="true"/> -->
- </global>
- <track>
- </track>
- </parameters>
- <files>
- <file ref="filter.cpp"/>
- <file ref="filter.h"/>
- <file ref="svf.h"/>
- </files>
- <modules>
- <module id="filter">
- <source language="c++" ref="filter.cpp" fxdef="filter.h"/>
- </module>
- </modules>
- </plugin>
+ <plugin
+ uri="@trac.zeitherrschaft.org/aldrin/lunar/effect/filter;1"
+ name="Lunar Filter"
+ shortname="Filter"
+ type="effect"
+ description="An SVF filter effect (2pass)."
+ author="Leonard Ritter"
+ email="contact at leonard-ritter+com">
+ <parameters>
+ <global>
+ <parameter
+ id="freq"
+ name="Cutoff (Hz)"
+ description="Cutoff frequency of filter"
+ type="float"
+ logarithmic="true"
+ power="0.7"
+ minvalue="20"
+ maxvalue="20000"
+ defvalue="20000"
+ precision="1"
+ state="true"/>
+ <parameter
+ id="res"
+ name="Resonance"
+ description="Resonance of filter"
+ type="float"
+ minvalue="0"
+ maxvalue="1"
+ defvalue="0"
+ precision="0.01"
+ state="true"/>
+ <parameter
+ id="x"
+ name="X"
+ description="State morph X parameter"
+ type="float"
+ minvalue="0"
+ maxvalue="1"
+ defvalue="0"
+ precision="0.01"
+ state="true"/>
+ <parameter
+ id="y"
+ name="Y"
+ description="State morph Y parameter"
+ type="float"
+ minvalue="0"
+ maxvalue="1"
+ defvalue="0"
+ precision="0.01"
+ state="true"/>
+ <parameter
+ id="inertia"
+ name="Inertia (ticks)"
+ description="Cutoff change inertia"
+ type="byte"
+ minvalue="0"
+ maxvalue="16"
+ defvalue="1"
+ state="true"/>
+ </global>
+ <track>
+ </track>
+ </parameters>
+ <files>
+ <file ref="filter.cpp"/>
+ <file ref="filter.h"/>
+ </files>
+ <modules>
+ <module id="filter">
+ <source language="c++" ref="filter.cpp" fxdef="filter.h"/>
+ </module>
+ </modules>
+ </plugin>
</zzub>
diff -rupN armstrong.old/src/plugins/lunar/fx/note/manifest.xml armstrong/src/plugins/lunar/fx/note/manifest.xml
--- armstrong.old/src/plugins/lunar/fx/note/manifest.xml 1969-12-31 19:00:00.000000000 -0500
+++ armstrong/src/plugins/lunar/fx/note/manifest.xml 2010-05-08 03:48:01.000000000 -0400
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<zzub>
+ <plugin
+ uri="@trac.zeitherrschaft.org/aldrin/lunar/controller/note;1"
+ name="Lunar Note BETA" shortname="Note" description="A controller which sends note values to machines"
+ type="controller"
+ mintracks="1" maxtracks="16"
+ author="zoner" email="zon3r at yahoo.com">
+ <parameters>
+ <valuenamegroup>
+ </valuenamegroup>
+ <global>
+ </global>
+ <track>
+ <parameter id="note" description="Note" type="note"/>
+ <parameter id="effect" description="Effect" type="float" minvalue="0" maxvalue="1" defvalue="0" precision="0.001" state="true"/>
+
+ </track>
+ <controller>
+ <parameter id="note01" name="Note 01" description="Note" type="midinote"/>
+ <parameter id="effect01" name="Effect 01" description="Effect" type="float"/>
+ <parameter id="note02" name="Note 02" description="Note" type="midinote"/>
+ <parameter id="effect02" name="Effect 02" description="Effect" type="float"/>
+ <parameter id="note03" name="Note 03" description="Note" type="midinote"/>
+ <parameter id="effect03" name="Effect 03" description="Effect" type="float"/>
+ <parameter id="note04" name="Note 04" description="Note" type="midinote"/>
+ <parameter id="effect04" name="Effect 04" description="Effect" type="float"/>
+ <parameter id="note05" name="Note 05" description="Note" type="midinote"/>
+ <parameter id="effect05" name="Effect 05" description="Effect" type="float"/>
+ <parameter id="note06" name="Note 06" description="Note" type="midinote"/>
+ <parameter id="effect06" name="Effect 06" description="Effect" type="float"/>
+ <parameter id="note07" name="Note 07" description="Note" type="midinote"/>
+ <parameter id="effect07" name="Effect 07" description="Effect" type="float"/>
+ <parameter id="note08" name="Note 08" description="Note" type="midinote"/>
+ <parameter id="effect08" name="Effect 08" description="Effect" type="float"/>
+ <parameter id="note09" name="Note 09" description="Note" type="midinote"/>
+ <parameter id="effect09" name="Effect 09" description="Effect" type="float"/>
+ <parameter id="note10" name="Note 10" description="Note" type="midinote"/>
+ <parameter id="effect10" name="Effect 10" description="Effect" type="float"/>
+ <parameter id="note11" name="Note 11" description="Note" type="midinote"/>
+ <parameter id="effect11" name="Effect 11" description="Effect" type="float"/>
+ <parameter id="note12" name="Note 12" description="Note" type="midinote"/>
+ <parameter id="effect12" name="Effect 12" description="Effect" type="float"/>
+ <parameter id="note13" name="Note 13" description="Note" type="midinote"/>
+ <parameter id="effect13" name="Effect 13" description="Effect" type="float"/>
+ <parameter id="note14" name="Note 14" description="Note" type="midinote"/>
+ <parameter id="effect14" name="Effect 14" description="Effect" type="float"/>
+ <parameter id="note15" name="Note 15" description="Note" type="midinote"/>
+ <parameter id="effect15" name="Effect 15" description="Effect" type="float"/>
+ <parameter id="note16" name="Note 16" description="Note" type="midinote"/>
+ <parameter id="effect16" name="Effect 16" description="Effect" type="float"/>
+ </controller>
+ </parameters>
+ <attributes>
+ </attributes>
+ <files>
+ <file ref="note.cpp"/>
+ <file ref="note.h"/>
+ </files>
+ <modules>
+ <module id="note">
+ <source language="c++" ref="note.cpp" fxdef="note.h"/>
+ </module>
+ </modules>
+ </plugin>
+</zzub>
diff -rupN armstrong.old/src/plugins/lunar/fx/note/note.cpp armstrong/src/plugins/lunar/fx/note/note.cpp
--- armstrong.old/src/plugins/lunar/fx/note/note.cpp 1969-12-31 19:00:00.000000000 -0500
+++ armstrong/src/plugins/lunar/fx/note/note.cpp 2010-05-08 03:48:01.000000000 -0400
@@ -0,0 +1,103 @@
+/*
+*
+* Lunar Note BETA
+*
+*/
+
+#include "note.h"
+#include <lunar/fx.hpp>
+
+#define MAX_TRACKS 16
+
+class note : public lunar::fx<note> {
+public:
+
+ struct trackdat {
+ float note;
+ float effect;
+ float **cmap_note;
+ float **cmap_effect;
+ };
+
+ trackdat trackd[MAX_TRACKS];
+
+ int translate_note(float value) const {
+ int midinote;
+
+ midinote = (int)((log(value / 440.0f) / log(2.0f)) * 12.0f + 57.5f);
+ midinote = ((midinote / 12) << 4) | ((midinote % 12) + 1);
+ return 12 * (midinote >> 4) + (midinote & 0xf) - 1;
+ }
+
+ void init() {
+
+ // Map controller placeholders to local variables for iterative convenience
+
+ trackd[0].cmap_note = &(controllers->note01);
+ trackd[0].cmap_effect = &(controllers->effect01);
+ trackd[1].cmap_note = &(controllers->note02);
+ trackd[1].cmap_effect = &(controllers->effect02);
+ trackd[2].cmap_note = &(controllers->note03);
+ trackd[2].cmap_effect = &(controllers->effect03);
+ trackd[3].cmap_note = &(controllers->note04);
+ trackd[3].cmap_effect = &(controllers->effect04);
+ trackd[4].cmap_note = &(controllers->note05);
+ trackd[4].cmap_effect = &(controllers->effect05);
+ trackd[5].cmap_note = &(controllers->note06);
+ trackd[5].cmap_effect = &(controllers->effect06);
+ trackd[6].cmap_note = &(controllers->note07);
+ trackd[6].cmap_effect = &(controllers->effect07);
+ trackd[7].cmap_note = &(controllers->note08);
+ trackd[7].cmap_effect = &(controllers->effect08);
+ trackd[8].cmap_note = &(controllers->note09);
+ trackd[8].cmap_effect = &(controllers->effect09);
+ trackd[9].cmap_note = &(controllers->note10);
+ trackd[9].cmap_effect = &(controllers->effect10);
+ trackd[10].cmap_note = &(controllers->note11);
+ trackd[10].cmap_effect = &(controllers->effect11);
+ trackd[11].cmap_note = &(controllers->note12);
+ trackd[11].cmap_effect = &(controllers->effect12);
+ trackd[12].cmap_note = &(controllers->note13);
+ trackd[12].cmap_effect = &(controllers->effect13);
+ trackd[13].cmap_note = &(controllers->note14);
+ trackd[13].cmap_effect = &(controllers->effect14);
+ trackd[14].cmap_note = &(controllers->note15);
+ trackd[14].cmap_effect = &(controllers->effect15);
+ trackd[15].cmap_note = &(controllers->note16);
+ trackd[15].cmap_effect = &(controllers->effect16);
+ }
+
+ void exit() {
+ delete this;
+ }
+
+ void process_events() {
+ int t;
+
+ for(t = 0; t < track_count; t++) {
+ if(tracks[t].note) {
+ if (*tracks[t].note != 0)
+ trackd[t].note = float(translate_note(*(tracks[t].note)));
+ else
+ trackd[t].note = 0;
+ }
+ if(tracks[t].effect) {
+ trackd[t].effect = float(*tracks[t].effect);
+ }
+ }
+ }
+
+ void process_controller_events() {
+ int t;
+ for(t = 0; t < track_count; t++) {
+ *(trackd[t].cmap_note) = (tracks[t].note) ? &trackd[t].note : 0;
+ *(trackd[t].cmap_effect) = (tracks[t].effect) ? &trackd[t].effect : 0;
+ }
+ }
+
+ void process_stereo(float *inL, float *inR, float *outL, float *outR, int n) {
+ }
+
+};
+
+lunar_fx *new_fx() { return new note(); }
diff -rupN armstrong.old/src/plugins/lunar/fx/note/note.h armstrong/src/plugins/lunar/fx/note/note.h
--- armstrong.old/src/plugins/lunar/fx/note/note.h 1969-12-31 19:00:00.000000000 -0500
+++ armstrong/src/plugins/lunar/fx/note/note.h 2010-05-08 03:48:01.000000000 -0400
@@ -0,0 +1,92 @@
+#if !defined(LUNAR_PLUGIN_LOCALS_H)
+#define LUNAR_PLUGIN_LOCALS_H
+#define LUNAR_USE_LOCALS
+#if defined(__cplusplus)
+extern "C" {
+#endif // __cplusplus
+typedef struct _lunar_attributes {
+} lunar_attributes_t;
+typedef struct _lunar_globals {
+} lunar_globals_t;
+typedef struct _lunar_global_values {
+} lunar_global_values_t;
+typedef struct _lunar_track {
+ float *note;
+ float *effect;
+} lunar_track_t;
+typedef struct _lunar_track_values {
+ float note;
+ float effect;
+} lunar_track_values_t;
+typedef struct _lunar_controllers {
+ float *note01;
+ float *effect01;
+ float *note02;
+ float *effect02;
+ float *note03;
+ float *effect03;
+ float *note04;
+ float *effect04;
+ float *note05;
+ float *effect05;
+ float *note06;
+ float *effect06;
+ float *note07;
+ float *effect07;
+ float *note08;
+ float *effect08;
+ float *note09;
+ float *effect09;
+ float *note10;
+ float *effect10;
+ float *note11;
+ float *effect11;
+ float *note12;
+ float *effect12;
+ float *note13;
+ float *effect13;
+ float *note14;
+ float *effect14;
+ float *note15;
+ float *effect15;
+ float *note16;
+ float *effect16;
+} lunar_controllers_t;
+typedef struct _lunar_controller_values {
+ float note01;
+ float effect01;
+ float note02;
+ float effect02;
+ float note03;
+ float effect03;
+ float note04;
+ float effect04;
+ float note05;
+ float effect05;
+ float note06;
+ float effect06;
+ float note07;
+ float effect07;
+ float note08;
+ float effect08;
+ float note09;
+ float effect09;
+ float note10;
+ float effect10;
+ float note11;
+ float effect11;
+ float note12;
+ float effect12;
+ float note13;
+ float effect13;
+ float note14;
+ float effect14;
+ float note15;
+ float effect15;
+ float note16;
+ float effect16;
+} lunar_controller_values_t;
+#if defined(__cplusplus)
+}
+#endif // __cplusplus
+#endif // LUNAR_PLUGIN_LOCALS_H
Index: armstrong.spec
===================================================================
RCS file: /cvs/pkgs/rpms/armstrong/F-12/armstrong.spec,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -p -r1.7 -r1.8
--- armstrong.spec 13 Feb 2010 17:04:40 -0000 1.7
+++ armstrong.spec 29 May 2010 22:44:17 -0000 1.8
@@ -2,7 +2,7 @@
Name: armstrong
Version: 0.2.6
-Release: 10%{?dist}
+Release: 11%{?dist}
Summary: Powerful music sequencing library
Group: System Environment/Libraries
# src/plugins/Geonik is GPL+
@@ -67,8 +67,15 @@ Patch8: armstrong-conflict-names
# Repair lunar support
# http://bitbucket.org/paniq/armstrong/issue/15/lunar-does-not-work
Patch9: armstrong.git-0625ca6e4a4ebf9b6182334f027ed9d79734e28b.patch
-
-
+# More lunar fixes. From upstream trunk. Fixes RHBZ#508779
+# http://bitbucket.org/paniq/armstrong/changeset/57a562c38b47/
+Patch10: armstrong-57a562c38b47.diff
+# superfm fix
+# http://www.bitbucket.org/paniq/armstrong/changeset/29f9f6e28626
+Patch11: armstrong-29f9f6e28626.diff
+# new lunar note plugin
+# http://www.bitbucket.org/paniq/armstrong/changeset/a8789ff6ae37
+Patch12: armstrong-a8789ff6ae37.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: alsa-lib-devel
@@ -138,7 +145,9 @@ Python scripts.
%patch7 -p1 -b .symbols
%patch8 -p1 -b .conflict
%patch9 -p1 -b .lunarrepair
-
+%patch10 -p1 -b .lunarstacksmashing
+%patch11 -p1 -b .superfm
+%patch12 -p1 -b .lunarnote
# To build against portmidi >=184
%if 0%{fedora} > 12
sed -i '/porttime/d' src/libzzub/SConscript
@@ -180,8 +189,6 @@ done
scons configure \
PREFIX=%{_prefix} \
LIBDIR=/%{_lib} \
- CCFLAGS="%{optflags}" \
- CXXFLAGS="%{optflags}" \
optflags="%{optflags}" \
%ifarch %{ix86}
SSE="true" \
@@ -306,6 +313,12 @@ rm -rf $RPM_BUILD_ROOT
%{python_sitelib}/*
%changelog
+* Fri Mar 05 2010 Orcan Ogetbil <oget [DOT] fedora [AT] gmail [DOT] com> 0.2.6-11
+- Fix stack smashing in 32 bit systems RHBZ#508779
+- More lunar fixes
+- Superfm fix
+- New lunar note plugin
+
* Sat Feb 13 2010 Orcan Ogetbil <oget [DOT] fedora [AT] gmail [DOT] com> 0.2.6-10
- Link against rtaudio-4.0.7
- Repair lunar support
- Previous message: rpms/armstrong/F-13 armstrong-29f9f6e28626.diff, NONE, 1.1 armstrong-57a562c38b47.diff, NONE, 1.1 armstrong-a8789ff6ae37.diff, NONE, 1.1 armstrong.spec, 1.9, 1.10
- Next message: rpms/armstrong/F-11 armstrong-29f9f6e28626.diff, NONE, 1.1 armstrong-57a562c38b47.diff, NONE, 1.1 armstrong-a8789ff6ae37.diff, NONE, 1.1 armstrong.spec, 1.5, 1.6
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list