Giter Site home page Giter Site logo

southpole-vcvrack's Introduction

Southpole VCV Rack Modules 0.6

1.0 under construction in branch v1 - not yet released

report issues in the Issue Tracker thread

All

A personal collection of modules I've always wanted for my workflow.

  • Some of the modules are simply reskins of the existing Audible Instruments VCV Rack versions of Mutable Instruments eurorack modules.

    • The skins are inspired by hardware micro versions of various MI modules.
    • Some skins are additonal modes of firmware with appropriate labels for knobs and ports to make usage easier.
    • Some skins do not exist yet in hardware.
  • Some modules did not yet exist in VCV Rack versions.

  • Some modules are new.

  • Mutable Instruments

  • Audible Instruments

  • Extra "Southpole Parasites" for parasites firmware based modules are on a separate branch

Building

Compile Rack from source, following the instructions at https://github.com/VCVRack/Rack.

After checking out in the plugins/ directory, get external dependencies with

git submodule update --init --recursive

There is a build script

./scripts/make_all.sh

WARNING: Overwrites existing Southpole directories from eg. a regular download, inspect script before use

Modules copied from Audible Instruments

Cornrows X - Macro Oscillator

  • Based on Braids, Manual

  • Extended as follows

    • As complete implementation of Braids / macro oscillator as possible
    • so far not available features in the Audible Instruments version have been activated and broken out as controls: AD-envelope, bit crusher, scale quantizer, tuning
    • Implemented as menu options: AUTO, VCA, FLAT, Paques

Splash - Tidal Modulator / Lambs - Wavetable Oscillator

Smoke - Texture Synthesizer

Based on Clouds, Manual

  • Smoke, extra skins for additional modes: Espectro, Ritardo, Camilla

Annuli - Resonator

  • Based on Rings, Manual
  • extra skin for Disastrous Peace mode

Bandana - Quad VC-polarizer

Balaclava - Quad VCA

New modules

Aux - 2 stereo effect send/return loops

  • with cross feedback (same or swapped stereo channels)
  • mute button for input (to listen to those sweet reverb tails)
  • bypass button for fx (in case you went wild with the feedback pots)

Abr - Manual A/B Switch

  • Inverse of But, either input A or B goes to output
  • Sums of inputs set to A or B provided

Blanks

  • Nothing special right now, but watch this space
  • 42HP useful if you want to recreate a 84HP row common in hardware

But - Manual A/B Buss

  • Inspired by DJ Steevio's modular method
  • Either input A or B go to the output and the A/B busses
  • Two summed identical outputs for A and B buss are provided.

Deux Etagères

  • convenience stereo version of Etagère

Etagère - EQ Filter

  • Inspired by Shelves, Manual

  • Does not fully reproduce all characteristics of Shelves!

  • Biquad filters copied from RJModules Filters

Falls - Attenumixer

  • Attenumixverter, inspired by Fonitronik Cascade
  • empty inputs provide offset voltages
  • empty outputs mix into output below
  • Range switch +/-1 or +/-10

Ftagn: No Filter

  • transgressive module for your nihilistic no-input patches at the noise show
  • stereo - neither left nor right channel do anything at all

Fuse - Synchronized one-shot triggers

  • Intended to build a "queue next pattern" system like on groove boxes / drum machines
  • Helps fire synchronized events in 4/4 based music if you can't count like me
  • Can be used to launch triggers (or beat-long gates) ONCE at a given beat on a 16 step counter
  • Arm triggers/gates manually or via inputs
  • For example, clock with bars, trigger to mute the kick for exactly 4 bars, trigger 4 bar later to drop

Piste - Drum Processor

  • One-stop module to turn oscillators into drums / percussion, or process existing drums to taste
  • Inspired by Bastl Skis
  • Input gain + eq + overdrive because sometimes basic processing is all that's needed
  • 2 independent decay envelopes (eg. body and accent) the sum of which is applied to input signal via internal VCA
  • 2nd envelope is scaled to 1st
  • Triggers are scalable
  • Mute input / trigger veto intended for choke groups (eg. open hihat mutes closed hihat)

Pulse: Pulse Generator

  • main purpose is to convert triggers to gates
  • clock through sends 1ms triggers - clean your clock
  • range selectable (1s / 10s)
  • when clocked, duration/delay are quantized to "musically relevant" intervals

Rakes: Stereo Resonator

  • inspired by the Ableton Resonator effect
  • 6 stereo comb filters
  • V/OCT inputs quantized to SEMI tones or FREE
  • FINE detuning works with opposite sign on L/R channels
  • small values produce Haas effect (stereo widening)
  • individual GAINs
  • best used together with a chord generator patched into the V/OCT inputs

Riemann

  • chord generator based on Neo-Riemannian Tonnetz analysis
  • inspired by NE Tonnetz Sequent, Navichord app, o_C Automatonnetz (and my incapability to compose / improvise diatonic music)
  • Traversal via perfect fifth (P5/V) per volt and major triad per volt (M3/V) inputs
  • Major/minor, Augmented/diminished chord groups
  • 3 - 7 parts per chord (from standard triads to thirteenth chords)
  • Parts mostly display for now, outputs after last part output root note
  • Switch for suspensions (sus4) close to fifth-axis
  • Transpose rotates within octave
  • Outputs in V/oct
  • Tonic output (T) for tonic drone
  • Voicing inc/decreases octaves to the right/left sequentially by part (small settings to the right give chord inversions)

SNS - Euclidean Sequencer

  • I know. but this one looks cool and has a few additional features:
  • Up to 32 steps
  • Accents: nested euclidean sequence on main sequence
  • Rotate sequence and accents
  • Up to 32 pads (silent steps)
  • All inputs scaled to each other in what i think is a sensible way - great for LFO modulation of inputs
  • CLK/RST thru for easy chaining
  • Turing mode to translate pattern into CV a la Turing Machine

Snake

  • 16 internal busses 0-F with 10 lines per buss to bridge large distances or generally tidy up the patch
  • First connection to input locks input (green led - red on all other instances)
  • Works best with slow signal. In case of parallel processin check difference between original and bussed signal by means of inverting summer and scope

Sssh - Noise / S+H

  • 4x noise / S+H - inspired by the lowest section from Kinks
  • Triggers are normalled from top to bottom
  • Inputs are normalled to noise
  • Noises are four calls to generator (not a copy)

Wriggle - Spring Model

  • Follows input with a given stiffness and damping of the spring
  • Mass normalized to one
  • Output can be scaled/offset
  • Designed to implement "Woggle CV" (works best at LFO rates)

Gnome - Synth Voice

  • An all-in-one module inspired by MFB Nanozwerg
  • Because sometimes you just need the basics and want to get started fast
  • The submodules are mostly copied from the Fundamental modules with some omissions and additions:
  • VCO: analog part of Fundamental VCO, morphing
  • Sub-OSC 1/2 Oct / Noise
  • LFO from Fundamental LFO, morphing + S+H
  • ADSR from Fundamental ADSR
  • Biquad VCF with resonance gain-compensation

southpole-vcvrack's People

Contributors

gbrandt1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

southpole-vcvrack's Issues

Riemann example

Hello,
just to inform you the riemann example give this message:

"Could not find module "Southpole-parasites" in plugin "SplashParasite"

The parasites modules are installed and works btw, maybe a change in the names ?

v1 plugin name breaks backward compatibility

The v1 plugins show up as "southpole" in the browser and patches
The prior versions were listed as "Southpole" in the browser and patches
Any patches made with older versions of this package cannot load without going through the patch and changing the plugin values from Southpole to southpole.

A/B switches sometimes malfunctioning

Hi there, first of all: Thanks for some great modules. Lately, I have been making heavy use of the A/B Bus switches (both types). They mostly work great, but occasionally, I run into a weird issue with the "But" switch (I am not certain if the same happens with the other version). Unfortunately I am not sure if I can describe it well (and it is hard to reproduce). Basically, what happens is that some of the switches seem to stop working, or only start working once another switch is used as well. I believe unpatching the cables usually solves it.

I also noticed that the led of the bus that is switched off is still lit in some of these cases. The output of the bus that is switched off still gets through.

I am sorry that I cannot give more useful information. I will update this report if I encounter the issue again and have more useful details.

Please update to current eurorack

I sent a patch that fixes DSP on which Annuli depends.
This is already updated in AudibleInstruments/Resonator, but it isn't incorprated here yet..

Rakes crashes on removal

Rakes crashes when one tries to delete it with cables connected, one must remove cables first. vcv 0.6.2c on macosx high sierra, though haven’t tried the issue on linux yet.

Piste

Hi,
is it possible to squeeze in cv control for the filter knob?
sometimes need to envelope that filter for a kick and so on :)

Sssh... random range?

I just noticed the voltage range of random noise seems odd or wrong. It seems to be generating noise between -15 and 15 volts. Shouldn't this be +/-5 volts?

Southpole v1.0.0 fails to load in linux

Hi, I read in #36 that Southpole V1 was ready so I downloaded and installed the zip at https://github.com/gbrandt1/southpole-vcvrack/files/3745624/Southpole-1.0.0-lin.zip

However it fails to load. Extract from log.txt says -

[0.275 warn src/plugin.cpp:158] Could not load plugin /home/chris/.Rack/plugins-v1/Southpole: Failed to load library /home/chris/.Rack/plugins-v1/Southpole/plugin.so: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /home/chris/.Rack/plugins-v1/Southpole/plugin.so)

From a previous linux issue (and I may be misquoting slightly) but linux builds need to be compiled against glibc V2.23 not V2.27.

See https://community.vcvrack.com/t/rack-development-blog/5864/8

Thanks.

0.5.3 Snake: buss assignment not written to patches

OS: Win10
Rack: 5.1

Simple test:

  1. Create a patch using 2 Snake Modules assign one module a buss other than 0
  2. Save patch
  3. Open patch

Expected result: the buss assignment should be preserved in the patch
Actual result: both modules are set to buss 0

Looking at the saved patch - the buss assignments are not written into Snake parameters.

This makes it difficult to use buss assignments as they have to be added back to the patch every time.

build fail

Fedora 23 Linux
Rack 0.5.x

Greetings ! Got some problems with the latest pull:

g++ -DTEST -DPARASITES -I./parasites -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.1 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_LIN -Wsuggest-override -std=c++11 -c -o build/src/Sns.cpp.o src/Sns.cpp
In file included from src/Sns.cpp:7:0:
src/Bjorklund.hpp: In member function ‘void Bjorklund::iter()’:
src/Bjorklund.hpp:58:49: error: ‘reverse’ was not declared in this scope
reverse(sequence.begin(), sequence.end());
^
src/Bjorklund.hpp:66:13: error: ‘rotate’ is not a member of ‘std’
std::rotate(sequence.begin(), sequence.begin() + zeroCount, sequence.end());
^
src/Bjorklund.hpp: In member function ‘void Bjorklund::rotater(int)’:
src/Bjorklund.hpp:89:13: error: ‘rotate’ is not a member of ‘std’
std::rotate(sequence.rbegin(),sequence.rbegin() + 1,sequence.rend());

Those problems seem to have been resolved by adding to the Bjorklund.hpp includes.

This problem has me stumped:

g++ -DTEST -DPARASITES -I./parasites -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.1 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_LIN -Wsuggest-override -std=c++11 -c -o build/src/Sns.cpp.o src/Sns.cpp
src/Sns.cpp: In constructor ‘SnsWidget::SnsWidget()’:
src/Sns.cpp:313:53: error: no matching function for call to ‘rack::Vec::Vec(int, double (&)(double) throw ())’
addParam(createParam<sp_SmallBlackKnob>(Vec(4 , y1 ), module, Sns::K_PARAM, 0., 1., .25));
^
In file included from ../../include/rack.hpp:4:0,
from src/Southpole.hpp:1,
from src/Sns.cpp:4:
../../include/math.hpp:160:2: note: candidate: rack::Vec::Vec(float, float)
Vec(float x, float y) : x(x), y(y) {}
^
../../include/math.hpp:160:2: note: no known conversion for argument 2 from ‘double(double) throw ()’ to ‘float’
../../include/math.hpp:159:2: note: candidate: rack::Vec::Vec()
Vec() : x(0.0), y(0.0) {}
^
../../include/math.hpp:159:2: note: candidate expects 0 arguments, 2 provided
../../include/math.hpp:156:8: note: candidate: constexpr rack::Vec::Vec(const rack::Vec&)
struct Vec {
^
../../include/math.hpp:156:8: note: candidate expects 1 argument, 2 provided
../../include/math.hpp:156:8: note: candidate: constexpr rack::Vec::Vec(rack::Vec&&)
../../include/math.hpp:156:8: note: candidate expects 1 argument, 2 provided
src/Sns.cpp:314:55: error: no matching function for call to ‘rack::Vec::Vec(int, double (&)(double) throw ())’
addParam(createParam<sp_SmallBlackKnob>(Vec(4+25, y1 ), module, Sns::L_PARAM, 0., 1., 1.));
^
In file included from ../../include/rack.hpp:4:0,
from src/Southpole.hpp:1,
from src/Sns.cpp:4:
../../include/math.hpp:160:2: note: candidate: rack::Vec::Vec(float, float)
Vec(float x, float y) : x(x), y(y) {}
^
../../include/math.hpp:160:2: note: no known conversion for argument 2 from ‘double(double) throw ()’ to ‘float’
../../include/math.hpp:159:2: note: candidate: rack::Vec::Vec()
Vec() : x(0.0), y(0.0) {}
^
../../include/math.hpp:159:2: note: candidate expects 0 arguments, 2 provided
../../include/math.hpp:156:8: note: candidate: constexpr rack::Vec::Vec(const rack::Vec&)
struct Vec {
^
../../include/math.hpp:156:8: note: candidate expects 1 argument, 2 provided
../../include/math.hpp:156:8: note: candidate: constexpr rack::Vec::Vec(rack::Vec&&)
../../include/math.hpp:156:8: note: candidate expects 1 argument, 2 provided
src/Sns.cpp:315:55: error: ‘yh’ was not declared in this scope
addParam(createParam<sp_SmallBlackKnob>(Vec(4 , y1+2*yh), module, Sns::S_PARAM, 0., 1., 0.));
^
../../compile.mk:53: recipe for target 'build/src/Sns.cpp.o' failed
make: *** [build/src/Sns.cpp.o] Error 1

Any suggestions ?

Parasite mode

How do you start the Parasite mode in Smoke and Splash?

Splash Parasites slug

Hi,

it seems you changed the slug from "SplashParasites" to "Splash Parasites".
Was that intended? Before editing my patches i was wondering whether you are planning to change it back?

In future, please try not to change the slugs. Names can be changed, though.

Cheers,
Martin

Missing Equalizer tag on EQ filters

You have two EQ filters which as the name suggests are pretty much just equalizers.

There's an Equalizer tag, but neither of these modules are in it, and I believe they ought to be.

sssh vcv rack install

Hi,

thanks for the great contribution, how do we install southpole to vcv rack?

thanks

load fail

Fedora 23 Linux
Rack 0.5.x

Built from latest git pull. No problems with the build, btw. However:

[warning] Failed to load library ./plugins/southpole-vcvrack/plugin.so: ./plugins/southpole-vcvrack/plugin.so: undefined symbol: _ZN6braids20ws_violent_overdriveE

Warnings like that typically indicate that an object didn't get compiled and/or linked. Please advise if you've a suggested fix. Very excited to try your modules ! :)

Feature request: Snake -> Medusa?

Hey, really loving these modules! Unfortch, C++ is not in my arsenal of languages, so I can't appreciate the ease/difficulty of this request, but could you, for example, sacrifice the bottom two (or four) jacks for a "Bus select" widget allowing for multiple instances of the Snake to pair up with its own groups of "children"? Thus all Snakes set to the same bus work together, but apart from those on other busses.

The UI could be as simple (?) as a fixed-detente knob for say 8 busses, or a bank/bus pair of such knobs expanding the potential number, or a knob + LED display of the selected bus.

I can imagine it might be tricky to handle changing the internal connections when the bus knob gets changed, so I leave all this for your consideration.

Many thanks for the fine plugins!

Build error?

Using Ubuntu 16.04. Trying to build the plugins, following the page:

Cloned the repo. Then proceeded to:

  1. git submodule update --init --recursive

then

  1. ./scripts/make_all.sh`

I think this is the 2nd time I've got this. I didn't follow up last time it happened. Get an error as suggested:

cp: cannot stat 'dist/Southpole': No such file or directory
make: getcwd: No such file or directory
make: *** No rule to make target 'clean'. Stop.

Splash envelope modes don't match graphic

Probably related to VCVRack/AudibleInstruments#18

Splash's faceplate clearly shows the green mode should be an Attack-Decay envelope with no hold time, wheras red mode should be an Attack-Sustain-Release, presumably sustaining while the gate is high. This is what the original Tides module manual says as well, as far as I can determine.

In practice this is reversed:
http://puu.sh/APdjW/232c8569f7.png - offscreen input is a Clocked from Impromtu but anything that produces a gate with a high and low phase will show this.

(Since I lack a physical Tides module, I've looked around the internet to try and confirm whether the hardware also does this, but I can't find any video where someone is using it in either envelope mode and has the camera sufficiently focussed on it to tell for sure, sorry. That said, your virtual module has an infographic, and that graphic doesn't match what your module actually does, so, I thought it should have an issue.)

0.53 don't appear on Mac

i've test to replace 0.5.2, it's ok, but i see nothing with the last release 0.5.3
I'm on Mac yosemite

0.6 branch testing

hi,
if anybody wants to help test the new 0.6 branch, go ahead.
thanks

OSX Cornrow RACK Crashes

Hi,

When trying to right click on Cornrows when in Rack, it causes Rack to crashes completely.

Reimann 0.6.0 - tuning issues.

Hi, I playing around with chord generation. I wanted to generate a C4 Major chord using 0volts in and outputs 1,3,5. But I find that the resultant notes are not C4, E4 and G4 as I would expect. I get C4, D4, G4.

I added Harmony and Chord-G1 as checks and they generate the chords as expected. See pic.
image

If I bump up note to C5 (1volt) Harmony and Chord-G1 are still giving me what I expect as a C5 major chord (C5,E5,G5) but Riemann now gives G#4,A#4,D#5. See pic.
image

Going up in semitones sends Reimann's chord all over the place whereas the other two chord generators are producing chords as expected.

Is this a bug on Reimann or is there a logic to the way it generates chords that I don't understand?

Thanks.

Sssh... input normalization suggestion

It would be nice if the inputs were normalized to the inputs above if an external input is present. The first input could be normalized to noise, then the 2nd through 4th normalized to the input above it.

chord tool

Hey Gerhardt,

the Riemann module made me think about the following.
You say you have no capability to compose tonal music (or something like that).
What about a bit of help from me?
I am a trained composer and arranger. I find the Riemann thing interesting, but quite complicated. I could help you out designing a chord creator that's easier to use, and built from a composer's perspective.
Would you be interested?

No rule to make target 'build/src/Aux.cpp.o' building Master on Windows

Does Master still build under VCV Rack 0.5.1 Windows? Not having any luck building Southpole. Any suggestions? Thanks!

$ make
g++ -DTEST -I./eurorack -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.3 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_WIN -D_USE_MATH_DEFINES  -Wsuggest-override -std=c++11 -c -o build/src/Southpole.cpp.o src/Southpole.cpp
g++ -DTEST -I./eurorack -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.3 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_WIN -D_USE_MATH_DEFINES  -Wsuggest-override -std=c++11 -c -o build/src/Abr.cpp.o src/Abr.cpp
make: *** No rule to make target 'build/src/Aux.cpp.o', needed by 'plugin.dll'.  Stop.

Splash (two bumps) out of tune

Hi Gerhard,

something goes wrong in your calculation of the pitch in the "two bumps" mode.
It is fine for samplerates of 48000 and 96000 but is out of tune for 44100 and 88200.

I have the impression that it was ok in older versions. I have a patch using the two bumps which worked fine in Rack 0.5. In 0.6, after renaming the module in my patch file (see other issue), it is out of tune.

Also, the patch now consumes MUCH more CPU and is basically unplayable. Not sure though which plugin is causing that...

Cheers,
Martin

Permission to adopt this repo for submission to the Rack v2 library

As per the post here: https://community.vcvrack.com/t/now-taking-submissions-of-v2-plugins-to-the-library/14747

I have been working on this fine collection of modules (inc. Parasites branch) on separate forked repo's - one each for Southpole/Southpole Parasites - to bring them up to date for the imminent release of VCV Rack 2 Free/Pro editions.

I am posting this issue to ask for permission to take over the maintenance, now and in the future, of this collection if you no longer wish to do so.
Please reply to this issue or email [email protected] approving transfer of maintainership, referencing this issue so that there is a record of the tranfer that can be added to the plugin issue entry in the v2 library.

Thanks in advance
Steve

CornrowsX segfaults Rack 0.6.x

Fedora 23 Linux
Rack master (0.6.x dev)

Greetings ! I'm testing your 0.6 branch and have run into one problem so far. As the subject line says, when I load CornrowsX it segfaults Rack every time. I ran make debug on Rack and have pasted the backtrace output to pastebin at https://pastebin.com/y6T3tK3h. I hope that helps, please advise if there's anything else you'd like me to try.

0.5.3 Mac binaries non functioning

There seems to be an issue with v0.5.3 of both Southpole and Southpole-parasites's Mac Binaries 0.5.2 binary installs fine without issue but the current binaries of 0.5.3 do not. If you delete 0.5.2 and install 0.5.3 Southpole, nothing appears in the plugin list. Not even an entry for Southpole at all. Deleting 0.5.3 and adding back 0.5.2 results in Southpole being accessible once more. Tested and found same issue on two different Macs here using Public Binary of 0.5.1 of Rack..

0.5.3 - Tags

Hi again,

IMO you'll must to review many tags you've used for your modules. Try to limit as possible UTILITY_TAG usage if you can. For example, for all blank panels, replace UTILITY_TAG by BLANK_TAG

Concerned modules:

  • Fall
  • Aux
  • Piste
  • Sssh
  • Snake
  • Gnome
  • all blank panels

Dominique Camus.
Into attached .zip file: Southpole.cpp (edited)
Southpole.zip

Annuli Crashes rack, cannot terminate process

Windows 7 and 10.
As stated in the header when I add Annuli to my patch, give it a couple of minuted and the rack crashes, audio keeps looping until I restart the PC. I can't terminate the Process through Process explorer.
I realize this is still being ported but i thought I'd mention it here.
If there's any crash dump or further info that might be useful to ye i'd be happy to provide it.. just point me in the right direction :)
Really looking forward to having this great suite back in all it's glory :)

Don't find some modules

Hello, i can 't find some last modules in my southpole or southpole parasites folder , example with ritardo ?
Can you help ? ;-)

Southpole V2 build (Windows only)

@SteveRussel33's v1 port branch also compiles fine for v2 (Only change needed is to change version number to 2.0.0 in plugin.json, then build)

Here is the build I did and tested on my build of v2, nothing amiss so far but not excessively tested so let us hear what issues others may find....

Remove .zip from filename, then put into v2 plugin folder and off you go

southpole-2.0.0-win.vcvplugin,zip

Some routine for the parasites version:

Southpole-parasites-2.0.0-win.vcvplugin.zip

compile errors

OS: win7 (mingw64)
Rack: 0.5
Plugin: master

i'm interested in your plugins. unfortunately they don't build here.

console output:

In file included from src/Sns.cpp:7:0:
src/Bjorklund.hpp: In member function 'void Bjorklund::iter()':
src/Bjorklund.hpp:58:9: error: 'reverse' was not declared in this scope
reverse(sequence.begin(), sequence.end());
^~~~~~~
src/Bjorklund.hpp:66:18: error: 'rotate' is not a member of 'std'
std::rotate(sequence.begin(), sequence.begin() + zeroCount, sequence.end());
^~~~~~
src/Bjorklund.hpp:66:18: note: suggested alternative: '_S_ate'
std::rotate(sequence.begin(), sequence.begin() + zeroCount, sequence.end());
^~~~~~
_S_ate
In file included from src/Sns.cpp:7:0:
src/Bjorklund.hpp: In member function 'void Bjorklund::rotater(int)':
src/Bjorklund.hpp:89:18: error: 'rotate' is not a member of 'std'
std::rotate(sequence.rbegin(),sequence.rbegin() + 1,sequence.rend());
^~~~~~
src/Bjorklund.hpp:89:18: note: suggested alternative: '_S_ate'
std::rotate(sequence.rbegin(),sequence.rbegin() + 1,sequence.rend());
^~~~~~
_S_ate
src/Sns.cpp: At global scope:
src/Sns.cpp:64:2: error: 'uint' does not name a type; did you mean 'rint'?
uint par_k = 1; // fill
^~~~
rint
src/Sns.cpp:65:2: error: 'uint' does not name a type; did you mean 'rint'?
uint par_l = 1; // pattern length
^~~~
rint
src/Sns.cpp:66:2: error: 'uint' does not name a type; did you mean 'rint'?
uint par_s = 1; // shift
^~~~
rint
src/Sns.cpp:67:2: error: 'uint' does not name a type; did you mean 'rint'?
uint par_a = 1; // accent
^~~~
rint
src/Sns.cpp:68:2: error: 'uint' does not name a type; did you mean 'rint'?
uint par_last;
^~~~
rint
src/Sns.cpp:75:2: error: 'uint' does not name a type; did you mean 'rint'?
uint currentStep = 0;
^~~~
rint
src/Sns.cpp: In member function 'virtual void Sns::reset()':
src/Sns.cpp:81:14: error: 'par_l' was not declared in this scope
euclid.init(par_l,par_k);
^~~~~
src/Sns.cpp:81:14: note: suggested alternative: 'params'
euclid.init(par_l,par_k);
^~~~~
params
src/Sns.cpp:81:20: error: 'par_k' was not declared in this scope
euclid.init(par_l,par_k);
^~~~~
src/Sns.cpp:81:20: note: suggested alternative: 'params'
euclid.init(par_l,par_k);
^~~~~
params
src/Sns.cpp:83:17: error: 'par_s' was not declared in this scope
euclid.rotater(par_s);
^~~~~
src/Sns.cpp:83:17: note: suggested alternative: 'params'
euclid.rotater(par_s);
^~~~~
params
src/Sns.cpp:87:6: error: 'par_a' was not declared in this scope
if (par_a>0) {
^~~~~
src/Sns.cpp:87:6: note: suggested alternative: 'params'
if (par_a>0) {
^~~~~
params
src/Sns.cpp:96:10: error: 'par_a' was not declared in this scope
if (par_a && euclid.sequence.at(i)) {
^~~~~
src/Sns.cpp:96:10: note: suggested alternative: 'params'
if (par_a && euclid.sequence.at(i)) {
^~~~~
params
src/Sns.cpp: In member function 'virtual void Sns::step()':
src/Sns.cpp:139:4: error: 'currentStep' was not declared in this scope
currentStep = par_l;
^~~~~~~~~~~
src/Sns.cpp:139:4: note: suggested alternative: 'nextStep'
currentStep = par_l;
^~~~~~~~~~~
nextStep
src/Sns.cpp:139:18: error: 'par_l' was not declared in this scope
currentStep = par_l;
^~~~~
src/Sns.cpp:139:18: note: suggested alternative: 'params'
currentStep = par_l;
^~~~~
params
src/Sns.cpp:146:3: error: 'currentStep' was not declared in this scope
currentStep++;
^~~~~~~~~~~
src/Sns.cpp:146:3: note: suggested alternative: 'nextStep'
currentStep++;
^~~~~~~~~~~
nextStep
src/Sns.cpp:147:22: error: 'par_l' was not declared in this scope
if (currentStep >= par_l) {
^~~~~
src/Sns.cpp:147:22: note: suggested alternative: 'params'
if (currentStep >= par_l) {
^~~~~
params
src/Sns.cpp:169:2: error: 'par_l' was not declared in this scope
par_l = uint( 1. + 15. * ( clampf( params[L_PARAM].value + inputs[L_INPUT].normalize(0.) / 9., 0.0f, 1.0f)));
^~~~~
src/Sns.cpp:169:2: note: suggested alternative: 'params'
par_l = uint( 1. + 15. * ( clampf( params[L_PARAM].value + inputs[L_INPUT].normalize(0.) / 9., 0.0f, 1.0f)));
^~~~~
params
src/Sns.cpp:169:10: error: 'uint' was not declared in this scope
par_l = uint( 1. + 15. * ( clampf( params[L_PARAM].value + inputs[L_INPUT].normalize(0.) / 9., 0.0f, 1.0f)));
^~~~
src/Sns.cpp:169:10: note: suggested alternative: 'rint'
par_l = uint( 1. + 15. * ( clampf( params[L_PARAM].value + inputs[L_INPUT].normalize(0.) / 9., 0.0f, 1.0f)));
^~~~
rint
src/Sns.cpp:170:2: error: 'par_s' was not declared in this scope
par_s = uint( (par_l-1.) * ( clampf( params[S_PARAM].value + inputs[S_INPUT].normalize(0.) / 9., 0.0f, 1.0f)));
^~~~~
src/Sns.cpp:170:2: note: suggested alternative: 'params'
par_s = uint( (par_l-1.) * ( clampf( params[S_PARAM].value + inputs[S_INPUT].normalize(0.) / 9., 0.0f, 1.0f)));
^~~~~
params
src/Sns.cpp:171:2: error: 'par_k' was not declared in this scope
par_k = uint( 1. + (par_l-1.) * ( clampf( params[K_PARAM].value + inputs[K_INPUT].normalize(0.) / 9., 0.0f, 1.0f)));
^~~~~
src/Sns.cpp:171:2: note: suggested alternative: 'params'
par_k = uint( 1. + (par_l-1.) * ( clampf( params[K_PARAM].value + inputs[K_INPUT].normalize(0.) / 9., 0.0f, 1.0f)));
^~~~~
params
src/Sns.cpp:172:2: error: 'par_a' was not declared in this scope
par_a = float( par_k ) * ( clampf( params[ACCENT_PARAM].value + inputs[ACCENT_INPUT].normalize(0.) / 9., 0.0f, 1.0f));
^~~~~
src/Sns.cpp:172:2: note: suggested alternative: 'params'
par_a = float( par_k ) * ( clampf( params[ACCENT_PARAM].value + inputs[ACCENT_INPUT].normalize(0.) / 9., 0.0f, 1.0f));
^~~~~
params
src/Sns.cpp:180:33: error: 'par_last' was not declared in this scope
if (par_l+par_s+par_a+par_k != par_last) {
^~~~~~~~
src/Sns.cpp:180:33: note: suggested alternative: 'va_list'
if (par_l+par_s+par_a+par_k != par_last) {
^~~~~~~~
va_list
src/Sns.cpp: In member function 'void SnsDisplay::drawPolygon(NVGcontext*)':
src/Sns.cpp:219:26: error: 'struct Sns' has no member named 'par_l'; did you mean 'params'?
unsigned len = module->par_l;
^~~~~
params
src/Sns.cpp:229:22: error: 'struct Sns' has no member named 'currentStep'
if ( i == module->currentStep ) {
^~~~~~~~~~~
src/Sns.cpp:240:8: error: 'uint' was not declared in this scope
for (uint i = 0; i < module->par_l; i++) {
^~~~
src/Sns.cpp:240:8: note: suggested alternative: 'rint'
for (uint i = 0; i < module->par_l; i++) {
^~~~
rint
src/Sns.cpp:240:20: error: 'i' was not declared in this scope
for (uint i = 0; i < module->par_l; i++) {
^
src/Sns.cpp:240:32: error: 'struct Sns' has no member named 'par_l'; did you mean 'params'?
for (uint i = 0; i < module->par_l; i++) {
^~~~~
params
src/Sns.cpp:241:30: error: 'struct Sns' has no member named 'par_l'; did you mean 'params'?
float a = i/float(module->par_l);
^~~~~
params
src/Sns.cpp:251:17: error: 'struct Sns' has no member named 'par_k'; did you mean 'params'?
if (module->par_k == 1) nvgCircle(vg, x, y, 3.);
^~~~~
params
src/Sns.cpp: In member function 'virtual void SnsDisplay::draw(NVGcontext*)':
src/Sns.cpp:284:50: error: 'struct Sns' has no member named 'par_k'; did you mean 'params'?
snprintf(str,sizeof(str),"%2d %2d",int(module->par_k),int(module->par_l));
^~~~~
params
src/Sns.cpp:284:69: error: 'struct Sns' has no member named 'par_l'; did you mean 'params'?
snprintf(str,sizeof(str),"%2d %2d",int(module->par_k),int(module->par_l));
^~~~~
params
src/Sns.cpp:287:50: error: 'struct Sns' has no member named 'par_s'; did you mean 'params'?
snprintf(str,sizeof(str),"%2d %2d",int(module->par_s),int(module->par_a));
^~~~~
params
src/Sns.cpp:287:69: error: 'struct Sns' has no member named 'par_a'; did you mean 'params'?
snprintf(str,sizeof(str),"%2d %2d",int(module->par_s),int(module->par_a));
^~~~~
params
src/Sns.cpp: In constructor 'SnsWidget::SnsWidget()':
src/Sns.cpp:313:52: error: 'y1' was not declared in this scope
addParam(createParam<sp_SmallBlackKnob>(Vec(4 , y1 ), module, Sns::K_PARAM, 0., 1., .25));
^~
src/Sns.cpp:315:57: error: 'yh' was not declared in this scope
addParam(createParam<sp_SmallBlackKnob>(Vec(4 , y1+2*yh), module, Sns::S_PARAM, 0., 1., 0.));
^~
make: *** [../../compile.mk:54: build/src/Sns.cpp.o] Error 1

Smoke build on Mac?

Hey, I can't thank you enough for these modules!!

The latest "clone" to Mac (VCV 0.5.1, High Sierra, Xcode 9.2) fails to build the parasites version of Smoke.

After making the "straight" version successfully, and then "make clean" the build goes as:

make -f Makefile.parasites dist
c++ -DTEST -DPARASITES -I./parasites -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.1 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_MAC -mmacosx-version-min=10.7 -std=c++11 -stdlib=libc++ -c -o build/src/Southpole.cpp.o src/Southpole.cpp
c++ -DTEST -DPARASITES -I./parasites -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.1 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_MAC -mmacosx-version-min=10.7 -std=c++11 -stdlib=libc++ -c -o build/parasites/stmlib/utils/random.cc.o parasites/stmlib/utils/random.cc
c++ -DTEST -DPARASITES -I./parasites -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.1 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_MAC -mmacosx-version-min=10.7 -std=c++11 -stdlib=libc++ -c -o build/parasites/stmlib/dsp/units.cc.o parasites/stmlib/dsp/units.cc
c++ -DTEST -DPARASITES -I./parasites -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.1 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_MAC -mmacosx-version-min=10.7 -std=c++11 -stdlib=libc++ -c -o build/parasites/stmlib/dsp/atan.cc.o parasites/stmlib/dsp/atan.cc
c++ -DTEST -DPARASITES -I./parasites -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=0.5.1 -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_MAC -mmacosx-version-min=10.7 -std=c++11 -stdlib=libc++ -c -o build/src/Smoke.cpp.o src/Smoke.cpp
In file included from src/Smoke.cpp:13:
In file included from ./parasites/clouds/dsp/granular_processor.h:45:
In file included from ./parasites/clouds/dsp/pvoc/phase_vocoder.h:34:
./parasites/stmlib/fft/shy_fft.h:91:31: warning: all paths through this function will call itself [-Winfinite-recursion]
inline double cos(double x) { return cos(x); }
^
./parasites/stmlib/fft/shy_fft.h:92:31: warning: all paths through this function will call itself [-Winfinite-recursion]
inline double sin(double x) { return sin(x); }
^
src/Smoke.cpp:310:9: error: cannot use arrow operator on a type
Panel->setBackground(SVG::load(assetPlugin(plugin, "res/Smoke6HP.svg")));
^
src/Smoke.cpp:311:9: error: cannot use arrow operator on a type
Panel->box.size = box.size;
^
2 warnings and 2 errors generated.
make: *** [build/src/Smoke.cpp.o] Error 1

I'm afraid I skipped C++ in my programming language path, but let me know if I can help (If this IS a bug).

Thanks again!

Noisy Output in harmonic oscillator mode (octaves) for tides

Hi,
I see you are using my code for the tides parasite, so you have probably noticed that the harmonic oscillator mode is very noisy when used with octaves (mode led green). I did some digging into the code, found the source of the problem and was wondering if you have an oppinion on this.

In generator.cc line 1095 it does this:

if ((harm & 3) == 0) tn = Interpolate1121(wav_sine1024, phase_ << harm);

harm can be 0,4,8. As i understand it this just reads a wavetable (wav_sine1024 is the high quality version of the wavetable, range button = red) and plays it back. The bitshifting of the phase transposes the wave, so that looks good. At first I thought the problem might be aliasing because the spectrum becomes quite wide when only using octaves, but this also happens at high samplerates so that's probably not it.

Any ideas?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.