From 08fa6ce1a7cf376e9ad355859fd0ea9d8ccce473 Mon Sep 17 00:00:00 2001 From: Owen Green Date: Fri, 23 Apr 2021 17:12:11 +0100 Subject: [PATCH] Add a version method to all objects --- release-packaging/Classes/FluidAmpGate.sc | 2 +- release-packaging/Classes/FluidAmpSlice.sc | 2 +- .../Classes/FluidAudioTransport.sc | 2 +- release-packaging/Classes/FluidBufNMF.sc | 2 +- release-packaging/Classes/FluidHPSS.sc | 2 +- release-packaging/Classes/FluidLoudness.sc | 2 +- release-packaging/Classes/FluidMFCC.sc | 2 +- release-packaging/Classes/FluidMelBands.sc | 2 +- release-packaging/Classes/FluidMessageTest.sc | 12 +++---- release-packaging/Classes/FluidNMFFilter.sc | 2 +- release-packaging/Classes/FluidNMFMatch.sc | 2 +- release-packaging/Classes/FluidNMFMorph.sc | 2 +- release-packaging/Classes/FluidNRTProcess.sc | 2 +- .../Classes/FluidNoveltySlice.sc | 2 +- release-packaging/Classes/FluidOnsetSlice.sc | 2 +- release-packaging/Classes/FluidPitch.sc | 2 +- .../Classes/FluidProviderTest.sc | 30 ++++++++-------- release-packaging/Classes/FluidSTFTPass.sc | 2 +- .../Classes/FluidServerObject.sc | 22 ++++++++++++ release-packaging/Classes/FluidSines.sc | 2 +- .../Classes/FluidSpectralShape.sc | 2 +- .../Classes/FluidSubscriberTest.sc | 34 +++++++++---------- .../Classes/FluidTransientSlice.sc | 2 +- release-packaging/Classes/FluidTransients.sc | 2 +- 24 files changed, 80 insertions(+), 58 deletions(-) diff --git a/release-packaging/Classes/FluidAmpGate.sc b/release-packaging/Classes/FluidAmpGate.sc index 1fe4a29..a751bb0 100644 --- a/release-packaging/Classes/FluidAmpGate.sc +++ b/release-packaging/Classes/FluidAmpGate.sc @@ -1,4 +1,4 @@ -FluidAmpGate : UGen { +FluidAmpGate : FluidRTUGen { *ar { arg in = 0, rampUp = 10, rampDown = 10, onThreshold = -90, offThreshold = -90, minSliceLength = 1, minSilenceLength = 1, minLengthAbove = 1, minLengthBelow = 1, lookBack = 0, lookAhead = 0, highPassFreq = 85, maxSize = 88200; ^this.multiNew('audio', in.asAudioRateInput(this), rampUp, rampDown, onThreshold, offThreshold, minSliceLength, minSilenceLength, minLengthAbove, minLengthBelow, lookBack, lookAhead, highPassFreq, maxSize) } diff --git a/release-packaging/Classes/FluidAmpSlice.sc b/release-packaging/Classes/FluidAmpSlice.sc index d39e1af..e5a133a 100644 --- a/release-packaging/Classes/FluidAmpSlice.sc +++ b/release-packaging/Classes/FluidAmpSlice.sc @@ -1,4 +1,4 @@ -FluidAmpSlice : UGen { +FluidAmpSlice : FluidRTUGen { *ar { arg in = 0, fastRampUp = 1, fastRampDown = 1, slowRampUp = 100, slowRampDown = 100, onThreshold = -144, offThreshold = -144, floor = -144, minSliceLength = 2, highPassFreq = 85; ^this.multiNew('audio', in.asAudioRateInput(this), fastRampUp, fastRampDown, slowRampUp, slowRampDown, onThreshold, offThreshold, floor, minSliceLength, highPassFreq) diff --git a/release-packaging/Classes/FluidAudioTransport.sc b/release-packaging/Classes/FluidAudioTransport.sc index cc41b92..3f26c36 100644 --- a/release-packaging/Classes/FluidAudioTransport.sc +++ b/release-packaging/Classes/FluidAudioTransport.sc @@ -1,4 +1,4 @@ -FluidAudioTransport : UGen { +FluidAudioTransport : FluidRTUGen { init { |...theInputs| theInputs; diff --git a/release-packaging/Classes/FluidBufNMF.sc b/release-packaging/Classes/FluidBufNMF.sc index 97f6634..56c8d23 100644 --- a/release-packaging/Classes/FluidBufNMF.sc +++ b/release-packaging/Classes/FluidBufNMF.sc @@ -1,4 +1,4 @@ -FluidBufNMF : FluidBufProcessor //: UGen { +FluidBufNMF : FluidBufProcessor { *kr {|source, startFrame = 0, numFrames = -1, startChan = 0, numChans = -1, resynth, bases, basesMode = 0, activations, actMode = 0, components = 1, iterations = 100, windowSize = 1024, hopSize = -1, fftSize = -1, windowType = 0, randomSeed = -1, trig = 1, blocking = 0| diff --git a/release-packaging/Classes/FluidHPSS.sc b/release-packaging/Classes/FluidHPSS.sc index 44e92bf..8fecd18 100644 --- a/release-packaging/Classes/FluidHPSS.sc +++ b/release-packaging/Classes/FluidHPSS.sc @@ -1,4 +1,4 @@ -FluidHPSS : MultiOutUGen { +FluidHPSS : FluidRTMultiOutUGen { *ar { arg in = 0, harmFilterSize=17, percFilterSize = 31, maskingMode=0, harmThreshFreq1 = 0.1, harmThreshAmp1 = 0, harmThreshFreq2 = 0.5, harmThreshAmp2 = 0, percThreshFreq1 = 0.1, percThreshAmp1 = 0, percThreshFreq2 = 0.5, percThreshAmp2 = 0, windowSize= 1024, hopSize= -1, fftSize= -1, maxFFTSize = 16384, maxHarmFilterSize = 101, maxPercFilterSize = 101; ^this.multiNew('audio', in.asAudioRateInput(this), harmFilterSize, percFilterSize, maskingMode, harmThreshFreq1, harmThreshAmp1, harmThreshFreq2, harmThreshAmp2, percThreshFreq1, percThreshAmp1, percThreshFreq2, percThreshAmp2, windowSize, hopSize, fftSize, maxFFTSize, maxHarmFilterSize, maxPercFilterSize) } diff --git a/release-packaging/Classes/FluidLoudness.sc b/release-packaging/Classes/FluidLoudness.sc index 36bece6..ac8372d 100644 --- a/release-packaging/Classes/FluidLoudness.sc +++ b/release-packaging/Classes/FluidLoudness.sc @@ -1,4 +1,4 @@ -FluidLoudness : MultiOutUGen { +FluidLoudness : FluidRTMultiOutUGen { *kr { arg in = 0, kWeighting = 1, truePeak = 1, windowSize = 1024, hopSize = 512, maxwindowSize = 16384; ^this.multiNew('control', in.asAudioRateInput(this), kWeighting, truePeak, windowSize, hopSize, maxwindowSize); } diff --git a/release-packaging/Classes/FluidMFCC.sc b/release-packaging/Classes/FluidMFCC.sc index 326c7e6..f4e2bc4 100644 --- a/release-packaging/Classes/FluidMFCC.sc +++ b/release-packaging/Classes/FluidMFCC.sc @@ -1,4 +1,4 @@ -FluidMFCC : MultiOutUGen { +FluidMFCC : FluidRTMultiOutUGen { *kr { arg in = 0, numCoeffs = 13, numBands = 40, minFreq = 20, maxFreq = 20000, maxNumCoeffs = 40, windowSize = 1024, hopSize = -1, fftSize = -1, maxFFTSize = 16384; ^this.multiNew('control', in.asAudioRateInput(this), numCoeffs, numBands, minFreq, maxFreq, maxNumCoeffs, windowSize, hopSize, fftSize, maxFFTSize); diff --git a/release-packaging/Classes/FluidMelBands.sc b/release-packaging/Classes/FluidMelBands.sc index db0aa35..12ee90d 100644 --- a/release-packaging/Classes/FluidMelBands.sc +++ b/release-packaging/Classes/FluidMelBands.sc @@ -1,4 +1,4 @@ -FluidMelBands : MultiOutUGen { +FluidMelBands : FluidRTMultiOutUGen { *kr { arg in = 0, numBands = 40, minFreq = 20, maxFreq = 20000, maxNumBands = 120, normalize = 1, windowSize = 1024, hopSize = -1, fftSize = -1, maxFFTSize = 16384; ^this.multiNew('control', in.asAudioRateInput(this), numBands, minFreq, maxFreq, maxNumBands, normalize, windowSize, hopSize, fftSize, maxFFTSize); diff --git a/release-packaging/Classes/FluidMessageTest.sc b/release-packaging/Classes/FluidMessageTest.sc index 8138d6e..dffb399 100644 --- a/release-packaging/Classes/FluidMessageTest.sc +++ b/release-packaging/Classes/FluidMessageTest.sc @@ -1,11 +1,11 @@ -FluidMessageTest : UGen { +FluidMessageTest : FluidModelObject { var server; - *kr { |trig = 1, blocking = 0| - - ^this.multiNew('control', trig, blocking); - } + // *kr { |trig = 1, blocking = 0| + // + // ^this.multiNew('control', trig, blocking); + // } testReturnStrings { |server, nodeID, action| @@ -117,4 +117,4 @@ FluidMessageTest : UGen { -} \ No newline at end of file +} diff --git a/release-packaging/Classes/FluidNMFFilter.sc b/release-packaging/Classes/FluidNMFFilter.sc index a4ab279..75a0f74 100644 --- a/release-packaging/Classes/FluidNMFFilter.sc +++ b/release-packaging/Classes/FluidNMFFilter.sc @@ -1,4 +1,4 @@ -FluidNMFFilter : MultiOutUGen { +FluidNMFFilter : FluidRTMultiOutUGen { *ar { arg in = 0, bases, maxComponents = 1, iterations = 10, windowSize = 1024, hopSize = -1, fftSize = -1, maxFFTSize = 16384; ^this.multiNew('audio', in.asAudioRateInput(this), bases, maxComponents, iterations, windowSize, hopSize, fftSize, maxFFTSize); diff --git a/release-packaging/Classes/FluidNMFMatch.sc b/release-packaging/Classes/FluidNMFMatch.sc index 0c438d5..16dd827 100644 --- a/release-packaging/Classes/FluidNMFMatch.sc +++ b/release-packaging/Classes/FluidNMFMatch.sc @@ -1,4 +1,4 @@ -FluidNMFMatch : MultiOutUGen { +FluidNMFMatch : FluidRTMultiOutUGen { *kr { arg in = 0, bases, maxComponents = 1, iterations = 10, windowSize = 1024, hopSize = -1, fftSize = -1, maxFFTSize = 16384; ^this.multiNew('control', in.asAudioRateInput(this), bases, maxComponents, iterations, windowSize, hopSize, fftSize, maxFFTSize); diff --git a/release-packaging/Classes/FluidNMFMorph.sc b/release-packaging/Classes/FluidNMFMorph.sc index 62f18cc..ed95f43 100644 --- a/release-packaging/Classes/FluidNMFMorph.sc +++ b/release-packaging/Classes/FluidNMFMorph.sc @@ -1,4 +1,4 @@ -FluidNMFMorph : UGen { +FluidNMFMorph : FluidRTUGen { *ar { arg source = -1, target = -1, activations = -1, autoassign = 1, interp = 0, windowSize = 1024, hopSize = -1, fftSize = -1, maxFFTSize = 16384; diff --git a/release-packaging/Classes/FluidNRTProcess.sc b/release-packaging/Classes/FluidNRTProcess.sc index 97c6102..c8df9ea 100644 --- a/release-packaging/Classes/FluidNRTProcess.sc +++ b/release-packaging/Classes/FluidNRTProcess.sc @@ -11,7 +11,7 @@ FluidNRTProcess : Object{ "FluidNRTProcess: Server not running".throw; }); if (ugen.isNil){ - "FluidNRTProcess: UGen is nil".throw; + "FluidNRTProcess : FluidRTUGen is nil".throw; }; outputBuffers = outputBuffers.collect{|b| var checked = server.cachedBufferAt(b.asUGenInput); diff --git a/release-packaging/Classes/FluidNoveltySlice.sc b/release-packaging/Classes/FluidNoveltySlice.sc index a0ecbe1..d724017 100644 --- a/release-packaging/Classes/FluidNoveltySlice.sc +++ b/release-packaging/Classes/FluidNoveltySlice.sc @@ -1,4 +1,4 @@ -FluidNoveltySlice : UGen { +FluidNoveltySlice : FluidRTUGen { *ar { arg in = 0, feature = 0, kernelSize = 3, threshold = 0.8, filterSize = 1, minSliceLength = 2, windowSize = 1024, hopSize = -1, fftSize = -1, maxFFTSize = 16384, maxKernelSize = 101, maxFilterSize = 100; ^this.multiNew('audio', in.asAudioRateInput(this), feature, kernelSize, threshold, filterSize, minSliceLength, windowSize, hopSize, fftSize, maxFFTSize, maxKernelSize, maxFilterSize) } diff --git a/release-packaging/Classes/FluidOnsetSlice.sc b/release-packaging/Classes/FluidOnsetSlice.sc index 2ecbb51..c376e83 100644 --- a/release-packaging/Classes/FluidOnsetSlice.sc +++ b/release-packaging/Classes/FluidOnsetSlice.sc @@ -1,4 +1,4 @@ -FluidOnsetSlice : UGen { +FluidOnsetSlice : FluidRTUGen { *ar { arg in = 0, metric = 0, threshold = 0.5, minSliceLength = 2, filterSize = 5, frameDelta = 0, windowSize = 1024, hopSize = -1, fftSize = -1, maxFFTSize = 16384; ^this.multiNew('audio', in.asAudioRateInput(this), metric, threshold, minSliceLength, filterSize, frameDelta, windowSize, hopSize, fftSize, maxFFTSize) } diff --git a/release-packaging/Classes/FluidPitch.sc b/release-packaging/Classes/FluidPitch.sc index b56eba7..3e6b676 100644 --- a/release-packaging/Classes/FluidPitch.sc +++ b/release-packaging/Classes/FluidPitch.sc @@ -1,4 +1,4 @@ -FluidPitch : MultiOutUGen { +FluidPitch : FluidRTMultiOutUGen { *kr { arg in = 0, algorithm = 2, minFreq = 20, maxFreq = 10000, unit = 0, windowSize = 1024, hopSize = -1, fftSize = -1, maxFFTSize = 16384; ^this.multiNew('control', in.asAudioRateInput(this), algorithm, minFreq, maxFreq, unit, windowSize, hopSize, fftSize, maxFFTSize); diff --git a/release-packaging/Classes/FluidProviderTest.sc b/release-packaging/Classes/FluidProviderTest.sc index 02107ea..e368dbe 100644 --- a/release-packaging/Classes/FluidProviderTest.sc +++ b/release-packaging/Classes/FluidProviderTest.sc @@ -1,4 +1,4 @@ -FluidProviderTest : UGen { +FluidProviderTest : FluidModelObject { /* var <> server; var <> nodeID; @@ -9,19 +9,19 @@ FluidProviderTest : UGen { }*/ - *kr{ |name,vals| - ^this.new1('control',name,vals); - } - - *new1 { |rate, name,vals| - var ascii = name.ascii; - var args; - vals ?? {vals = []}; - if(vals.isArray.not) {vals = [vals]}; - args = ([rate, ascii.size].addAll(ascii) ++ vals.size).addAll(vals).addAll([1,1]); - args.postln; - ^super.new1(*args); - } + // *kr{ |name,vals| + // ^this.new1('control',name,vals); + // } + // + // *new1 { |rate, name,vals| + // var ascii = name.ascii; + // var args; + // vals ?? {vals = []}; + // if(vals.isArray.not) {vals = [vals]}; + // args = ([rate, ascii.size].addAll(ascii) ++ vals.size).addAll(vals).addAll([1,1]); + // args.postln; + // ^super.new1(*args); + // } /* init { |size...chars| specialIndex = -1; @@ -56,4 +56,4 @@ FluidProviderTest : UGen { -} \ No newline at end of file +} diff --git a/release-packaging/Classes/FluidSTFTPass.sc b/release-packaging/Classes/FluidSTFTPass.sc index d3456fd..c79d600 100644 --- a/release-packaging/Classes/FluidSTFTPass.sc +++ b/release-packaging/Classes/FluidSTFTPass.sc @@ -1,4 +1,4 @@ -FluidSTFTPass : UGen { +FluidSTFTPass : FluidRTUGen { *ar { arg in = 0, windowSize= 1024, hopSize= -1, fftSize= -1, maxFFTSize = 16384; ^this.multiNew('audio', in.asAudioRateInput(this), windowSize, hopSize, fftSize, maxFFTSize) } diff --git a/release-packaging/Classes/FluidServerObject.sc b/release-packaging/Classes/FluidServerObject.sc index 06ce7c1..79ed282 100644 --- a/release-packaging/Classes/FluidServerObject.sc +++ b/release-packaging/Classes/FluidServerObject.sc @@ -5,6 +5,11 @@ FluidServerObject classvar persistent = true; var providerName; var <> nodeID; - *kr { |provider| - ^this.multiNew('control',provider); - } - - *new1 { |rate, provider| - var ascii = provider.ascii; - ^super.new1(*[rate, ascii.size].addAll(ascii)); - } - - init { |size...chars| - //Send the number of inputs (size of provider string) as specialIndex, - //so server plugin knows what's going on - specialIndex = -1; - inputs = [size].addAll(chars); - providerName = chars.collectAs({|x|x.asInteger.asAscii}, String); - } + // *kr { |provider| + // ^this.multiNew('control',provider); + // } + // + // *new1 { |rate, provider| + // var ascii = provider.ascii; + // ^super.new1(*[rate, ascii.size].addAll(ascii)); + // } + // + // init { |size...chars| + // //Send the number of inputs (size of provider string) as specialIndex, + // //so server plugin knows what's going on + // specialIndex = -1; + // inputs = [size].addAll(chars); + // providerName = chars.collectAs({|x|x.asInteger.asAscii}, String); + // } providerLookup { |server, nodeID, label, action| this.prSendMsg(server, nodeID, 'providerLookup', label, action, diff --git a/release-packaging/Classes/FluidTransientSlice.sc b/release-packaging/Classes/FluidTransientSlice.sc index b4f4ecc..3d228d3 100644 --- a/release-packaging/Classes/FluidTransientSlice.sc +++ b/release-packaging/Classes/FluidTransientSlice.sc @@ -1,4 +1,4 @@ -FluidTransientSlice : UGen { +FluidTransientSlice : FluidRTUGen { *ar { arg in = 0, order = 20, blockSize = 256, padSize = 128, skew = 0.0, threshFwd = 2.0, threshBack = 1.1, windowSize=14, clumpLength=25, minSliceLength = 1000; ^this.multiNew('audio', in.asAudioRateInput(this), order, blockSize, padSize, skew, threshFwd ,threshBack, windowSize, clumpLength, minSliceLength) } diff --git a/release-packaging/Classes/FluidTransients.sc b/release-packaging/Classes/FluidTransients.sc index ef0c968..972bf98 100644 --- a/release-packaging/Classes/FluidTransients.sc +++ b/release-packaging/Classes/FluidTransients.sc @@ -1,4 +1,4 @@ -FluidTransients : MultiOutUGen { +FluidTransients : FluidRTMultiOutUGen { *ar { arg in = 0, order = 20, blockSize = 256, padSize = 128, skew = 0.0, threshFwd = 2.0, threshBack = 1.1, windowSize=14, clumpLength=25; ^this.multiNew('audio', in.asAudioRateInput(this), order, blockSize, padSize, skew, threshFwd, threshBack, windowSize, clumpLength) }