[ANN] Infamous Power Cut
Moderators: raboof, MattKingUSA, khz
[ANN] Infamous Power Cut
In an unprecedented turn around time, announcing:
The infamous power cut!
This effect plugin is more commonly known as tape stop. Do tape players really stop like that? Maybe an old adat or reel to reel or something, but a walkman sure doesn't. Not enough inertia. Anyway, its the power cut. Its like pulling the power plug on your turntable while its playing. You can adjust the decay time and curve (log, linear, exponential). Its pretty fun and the dsp was pretty easy (hence the quick turn).
I figure with this, openAV's masha and maybe some others, add some automation in ardour and you'll have a FLOSS version of the illformed glitch plugin.
I also fixed the rms calculation in the envelope follower, and made the meter more meaningful by splitting it into separate input and output meters. So this makes it infamous plugins version 0.0.20.
Enjoy, and get creative!
Get it at the usual place: http://sourceforge.net/p/infamousplugin ... ster/tree/
p.s. sorry, package manager friends, for the extra work so soon. It was itching me, I had to scratch it. It will probably be a bit longer before another comes out.
The infamous power cut!
This effect plugin is more commonly known as tape stop. Do tape players really stop like that? Maybe an old adat or reel to reel or something, but a walkman sure doesn't. Not enough inertia. Anyway, its the power cut. Its like pulling the power plug on your turntable while its playing. You can adjust the decay time and curve (log, linear, exponential). Its pretty fun and the dsp was pretty easy (hence the quick turn).
I figure with this, openAV's masha and maybe some others, add some automation in ardour and you'll have a FLOSS version of the illformed glitch plugin.
I also fixed the rms calculation in the envelope follower, and made the meter more meaningful by splitting it into separate input and output meters. So this makes it infamous plugins version 0.0.20.
Enjoy, and get creative!
Get it at the usual place: http://sourceforge.net/p/infamousplugin ... ster/tree/
p.s. sorry, package manager friends, for the extra work so soon. It was itching me, I had to scratch it. It will probably be a bit longer before another comes out.
_ssj71
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
-
- Established Member
- Posts: 276
- Joined: Wed Oct 24, 2012 5:19 pm
Re: [ANN] Infamous Power Cut
What's the difference between log and exp? They're inverses of the same function...ssj71 wrote: You can adjust the decay time and curve (log, linear, exponential).
Re: [ANN] Infamous Power Cut
Exactly, so log slows down more and more as time goes on, exponential slows less and less and less with time. Hearing the two it makes sense. I suppose you could describe either behavior with either function and a little manipulation, but I based it mostly on what I thought of when I hear the term "exponential decay". Roughly:diizy wrote:What's the difference between log and exp? They're inverses of the same function...ssj71 wrote: You can adjust the decay time and curve (log, linear, exponential).
Code: Select all
exp:
|
\_
log:
_
\
|
_ssj71
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
Re: [ANN] Infamous Power Cut
Well you can get both of those curves with exponential functions very easily. If you raise the input to a power >1, it gives the first curve, if you raise to <1, it gives the second curve.ssj71 wrote:Exactly, so log slows down more and more as time goes on, exponential slows less and less and less with time. Hearing the two it makes sense. I suppose you could describe either behavior with either function and a little manipulation, but I based it mostly on what I thought of when I hear the term "exponential decay". Roughly:
I'm just saying, exp/log aren't very good terms for describing curve shapes in this way. I don't think there are any standard terms for such descriptions, but you could use "convex / concave" or something like that.
Or you could just make the curve shape into a freely adjustable value. In this one synth I wrote I have two envelopes which have knobs for adjusting the curve shape. The knob is on a -1 to 1 scale, where 0 is linear, -1 is a concave curve (first one in your example), and 1 is a convex curve. This is implemented by taking the envelope signal (which is on a 0-1 scale) and raising it to nth power, where n = pow( 10, x ), where x = the knob value * -1. Or in other words: envelope = pow( envelope, pow( 10, knob_value * -1 ) )
Re: [ANN] Infamous Power Cut
You are correct, but I feel the real exponential function does give it a nice natural feel rather than a polynomial approximation (which is what you are really doing). And I think after trying both it will be immediately obvious to a user the difference between the exp and log functions. Although... I already have a case statement. I could morph easily between the exp, lin, and log functions. You have a good idea here of being able to control the curve.
_ssj71
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
- bluebell
- Established Member
- Posts: 1926
- Joined: Sat Sep 15, 2012 11:44 am
- Location: Saarland, Germany
- Has thanked: 112 times
- Been thanked: 120 times
Re: [ANN] Infamous Power Cut
Something seems to be wrong:
install -m 644 -p /var/daten/Holger/src/infamous_plugins/infamousplugins-code/src/CellularAutomatonSynth/casynth.lv2/casynth_presets.ttl /usr/lib/lv2/casynth.lv2/
WARNING: Failure to find: rms_calc.c
gcc -c -m64 -pipe -std=c99 -g -msse2 -mfpmath=sse -ffast-math -O2 -Wall -W -fPIC -DQT_WEBKIT -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -o .obj_lv2/envfollower.o envfollower.c
In file included from envfollower.c:3:0:
./envfollower.h:9:22: schwerwiegender Fehler: rms_calc.h: Datei oder Verzeichnis nicht gefunden
install -m 644 -p /var/daten/Holger/src/infamous_plugins/infamousplugins-code/src/CellularAutomatonSynth/casynth.lv2/casynth_presets.ttl /usr/lib/lv2/casynth.lv2/
WARNING: Failure to find: rms_calc.c
gcc -c -m64 -pipe -std=c99 -g -msse2 -mfpmath=sse -ffast-math -O2 -Wall -W -fPIC -DQT_WEBKIT -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -o .obj_lv2/envfollower.o envfollower.c
In file included from envfollower.c:3:0:
./envfollower.h:9:22: schwerwiegender Fehler: rms_calc.h: Datei oder Verzeichnis nicht gefunden
Linux – MOTU UltraLite AVB – Qtractor – http://suedwestlicht.saar.de/
- bluebell
- Established Member
- Posts: 1926
- Joined: Sat Sep 15, 2012 11:44 am
- Location: Saarland, Germany
- Has thanked: 112 times
- Been thanked: 120 times
Re: [ANN] Infamous Power Cut
The Power Cut plugin works fine. Funny! I am sure that I will use it some day, eg. to create a stop before a refrain in the master bus. To automate this in Qtractor will be another challenge
But there's sometimes a crack when it's activated. Maybe you can smooth it a bit or sync it to a zero-crossing.
But there's sometimes a crack when it's activated. Maybe you can smooth it a bit or sync it to a zero-crossing.
Linux – MOTU UltraLite AVB – Qtractor – http://suedwestlicht.saar.de/
-
- Established Member
- Posts: 276
- Joined: Wed Oct 24, 2012 5:19 pm
Re: [ANN] Infamous Power Cut
Ran into the same issue myself when I wrote the PKGBUILD. Both rms_calc.h and rms_calc.c are in the Stuck folder. I copied them over to the EnvelopeFollower folder prior to running qmake, make.
- GMaq
- Established Member
- Posts: 2810
- Joined: Fri Sep 25, 2009 1:42 pm
- Has thanked: 527 times
- Been thanked: 567 times
Re: [ANN] Infamous Power Cut
Thanks! Same problem here.. in fact so far for me Envelope Follower always requires manual building (sorry terminal error is not handy right now) it seems to not build properly with the included scripts. Will try and post a better error if I get time..Joermungand wrote:Ran into the same issue myself when I wrote the PKGBUILD. Both rms_calc.h and rms_calc.c are in the Stuck folder. I copied them over to the EnvelopeFollower folder prior to running qmake, make.
-
- Established Member
- Posts: 276
- Joined: Wed Oct 24, 2012 5:19 pm
Re: [ANN] Infamous Power Cut
Here’s the series of (adapted) commands I use to build the package in the PKGUILD:
It works smoothly on Arch. the ‘cp ../Stuck/rms_calc.* ./’ line was only needed in the latest version. Please note that, in Arch, we no longer have qmake. One should use either qmake-qt4 or qmake-qt5 according to one’s needs. Also, I renamed rule to infamous-rule, because it gets installed in /usr/bin and there is significant chance it might conflict with other packages.
Hope this comes in handy when compiling.
Code: Select all
build() {
cd "$srcdir"
cd src/CellularAutomatonSynth
qmake-qt4
make
cd ..
mkdir -p ../utils
gcc rule.c -o ../utils/infamous-rule
cd EnvelopeFollower
cp ../Stuck/rms_calc.* ./
qmake-qt4
make
cd ../Hip2B
qmake-qt4
make
cd ../Stuck
qmake-qt4
make
cd ../PowerCut
qmake-qt4
make
cd ../cheap_distortion
make
}
Hope this comes in handy when compiling.
Re: [ANN] Infamous Power Cut
Yay, people are using them!
In the master branch of git, this is corrected as well as an additional feature to have the decay curve in powercut variable. Once I get a few more testers on it and feel like the bugs are reasonably worked out I'll release a new version.
I found its pretty fun to set to a short decay and end every phrase of a guitar solo with a power cut. But I'm not going to tell you how to use it. Get creative!
*anyone know if the run function of an LV2 is called while its set to bypass? I don't think it is but IDK
Rats. A git error. I have them in my local file so they always build fine when I test, but they aren't added to the git repo. I need to move all shared source to a general folder. I'll put that on top of the todo list.Joermungand wrote:. Both rms_calc.h and rms_calc.c are in the Stuck folder. I copied them over to the EnvelopeFollower folder prior to running qmake, make.
In the master branch of git, this is corrected as well as an additional feature to have the decay curve in powercut variable. Once I get a few more testers on it and feel like the bugs are reasonably worked out I'll release a new version.
The installARCHLINUX.sh script in the source calls qmake-qt4 directly so it should work, but if its packaged, I'm not sure anyone will need it. Also the rule utility isn't installed to /usr/bin by the scripts, the binary must be run from the utils folder that gets created in the local directory.Joermungand wrote:Please note that, in Arch, we no longer have qmake. One should use either qmake-qt4 or qmake-qt5 according to one’s needs. Also, I renamed rule to infamous-rule, because it gets installed in /usr/bin and there is significant chance it might conflict with other packages.
Is that when being activated by the "Pull the plug!" port? This plugin is meant to be active all the time and the effect be triggered through the port. If you just leave that port set to 1 and bypass the plugin it won't work (or at least the behavior is untested), as it uses a couple samples backward for interpolation. If its not running those values will just be 0*. I played with it quite a bit yesterday and didn't experience this. Please just verify how you are triggering. I'll double check the code either way.bluebell wrote:But there's sometimes a crack when it's activated. Maybe you can smooth it a bit or sync it to a zero-crossing.
Automation should be pretty easy, just automate that "Pull the Plug!" port to 1 when you want to activate and back to 0 for the audio to resume. It was designed specifically for this use case.bluebell wrote:To automate this in Qtractor will be another challenge
I found its pretty fun to set to a short decay and end every phrase of a guitar solo with a power cut. But I'm not going to tell you how to use it. Get creative!
*anyone know if the run function of an LV2 is called while its set to bypass? I don't think it is but IDK
Last edited by ssj71 on Mon Jul 14, 2014 7:58 pm, edited 1 time in total.
_ssj71
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
-
- Established Member
- Posts: 276
- Joined: Wed Oct 24, 2012 5:19 pm
Re: [ANN] Infamous Power Cut
Hi,
I updated the infamousplugins-git PKGBUILD to reflect the variable decay curve. As I write, a test compile is under way (probably already completed) for the new file structure in EnvelopeFollower, so an updated PKGBUILD will be available shortly. I know rule is not installed to /usr/bin by the scripts, but I need to do this because chances are that people who use the package in AUR will not have straightforward access to the local compile directories after installing the package – if the directories are still there at all afterwards (e.g. yaourt users). Furthermore, the AUR guidelines require all executables to be installed in /usr/bin. I was merely trying to explain the changes in the build script I had posted with respect to the original scripts. Sorry for the confusion I might have created.
I updated the infamousplugins-git PKGBUILD to reflect the variable decay curve. As I write, a test compile is under way (probably already completed) for the new file structure in EnvelopeFollower, so an updated PKGBUILD will be available shortly. I know rule is not installed to /usr/bin by the scripts, but I need to do this because chances are that people who use the package in AUR will not have straightforward access to the local compile directories after installing the package – if the directories are still there at all afterwards (e.g. yaourt users). Furthermore, the AUR guidelines require all executables to be installed in /usr/bin. I was merely trying to explain the changes in the build script I had posted with respect to the original scripts. Sorry for the confusion I might have created.
Re: [ANN] Infamous Power Cut
No worries, I thought there might be confusion on what the scripts do. I think now both points are clear. Thanks.Joermungand wrote: I was merely trying to explain the changes in the build script I had posted with respect to the original scripts. Sorry for the confusion I might have created.
_ssj71
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!