From f18d063d9312c95e25294e0777bc135ee9a3fd8a Mon Sep 17 00:00:00 2001 From: Thomas O Fredericks Date: Sun, 25 Oct 2009 00:39:13 +0000 Subject: Adding mtl svn path=/trunk/abstractions/mtl/; revision=12667 --- 1-13LP.pd | 694 +++++++++++ 2dAngle-help.pd | 87 ++ 2dAngle.pd | 93 ++ 2dAngleLine-help.pd | 44 + 2dAngleLine.pd | 72 ++ 2dDistance-help.pd | 91 ++ 2dDistance.pd | 32 + 2dRatio-help.pd | 19 + 2dRatio.pd | 34 + 3dAdd-help.pd | 26 + 3dAdd.pd | 32 + 3dAngle-help.pd | 27 + 3dAngle.pd | 46 + 3dCross-help.pd | 33 + 3dCross.pd | 60 + 3dDistance-help.pd | 21 + 3dDistance.pd | 43 + 3dDot-help.pd | 29 + 3dDot.pd | 33 + 3dMagnitude-help.pd | 19 + 3dMagnitude.pd | 35 + 3dMove-help.pd | 35 + 3dMove.pd | 44 + 3dNormalize-help.pd | 30 + 3dNormalize.pd | 61 + 3dPanTilt-help.pd | 73 ++ 3dPanTilt.pd | 52 + 3dRotate-help.pd | 38 + 3dRotate.pd | 210 ++++ 3dScale-help.pd | 26 + 3dScale.pd | 30 + 3dSubtract-help.pd | 26 + 3dSubtract.pd | 32 + LICENSE.txt | 340 ++++++ TODO | 90 ++ VCR-help.pd | 65 ++ VCR.pd | 150 +++ additive~-help.pd | 30 + additive~.pd | 109 ++ adsr~-help.pd | 63 + adsr~.pd | 71 ++ ambient~-help.pd | 12 + ambient~.pd | 487 ++++++++ applause~-help.pd | 20 + applause~.pd | 56 + arpeggio-help.pd | 32 + arpeggio.pd | 38 + asciiToPd-help.pd | 25 + asciiToPd.pd | 25 + aux~-help.pd | 7 + aux~.pd | 8 + beep~-help.pd | 25 + beep~.pd | 40 + bell~-help.pd | 22 + bell~.pd | 288 +++++ benchmark-help.pd | 34 + benchmark.pd | 21 + binaryToByte-help.pd | 46 + binaryToByte.pd | 78 ++ biorythm~-help.pd | 44 + biorythm~.pd | 28 + blip~-help.pd | 20 + blip~.pd | 63 + bounce~-help.pd | 16 + bounce~.pd | 143 +++ bpmToFreq-help.pd | 23 + bpmToFreq.pd | 8 + bpmToMs-help.pd | 19 + bpmToMs.pd | 10 + browser-help.pd | 5 + browser.pd | 694 +++++++++++ bubbles~-help.pd | 8 + bubbles~.pd | 191 ++++ buttonColor-help.pd | 30 + buttonColor.pd | 20 + byteToBinary-help.pd | 60 + byteToBinary.pd | 96 ++ bytesToIntSigned-help.pd | 23 + bytesToIntSigned.pd | 29 + center-help.pd | 13 + center.pd | 48 + channel~-help.pd | 34 + channel~.pd | 94 ++ chordGuess-help.pd | 27 + chordGuess.pd | 92 ++ chronometer-help.pd | 7 + chronometer.pd | 71 ++ clap808~-help.pd | 26 + clap808~.pd | 81 ++ clap~-help.pd | 15 + clap~.pd | 60 + clk-quantization-help.pd | 33 + clkMaster-help.pd | 37 + clkMaster.pd | 140 +++ clkSlave-help.pd | 36 + clkSlave.pd | 265 +++++ clkUDPIn-help.pd | 15 + clkUDPIn.pd | 4 + clkUDPOut-help.pd | 11 + clkUDPOut.pd | 34 + clocker-help.pd | 23 + clocker.pd | 24 + closestNote-help.pd | 89 ++ closestNote.pd | 53 + colorGrid-help.pd | 9 + colorGrid.pd | 140 +++ coloredNoise~-help.pd | 37 + coloredNoise~.pd | 182 +++ compress~-help.pd | 59 + compress~.pd | 203 ++++ concat-help.pd | 10 + concat.pd | 12 + core.txt | 199 ++++ crackles~-help.pd | 11 + crackles~.pd | 45 + cranks~-help.pd | 16 + cranks~.pd | 210 ++++ cues-help.pd | 41 + cues.pd | 61 + cues~-help.pd | 41 + cues~.pd | 78 ++ cycle5-help.pd | 8 + cycle5.pd | 10 + degreeToChord-help.pd | 25 + degreeToChord.pd | 46 + degreeToRadian-help.pd | 14 + degreeToRadian.pd | 17 + delayPhasor~-help.pd | 54 + delayPhasor~.pd | 97 ++ distoAp~-help.pd | 65 ++ distoAp~.pd | 79 ++ distoCrusher~-help.pd | 26 + distoCrusher~.pd | 75 ++ distoFuzz~-help.pd | 37 + distoFuzz~.pd | 170 +++ distoLofi~-help.pd | 29 + distoLofi~.pd | 88 ++ distoNonmonotone~-help.pd | 52 + distoNonmonotone~.pd | 160 +++ distoSign~-help.pd | 22 + distoSign~.pd | 146 +++ distoTanh~-help.pd | 19 + distoTanh~.pd | 42 + dodeca-help.pd | 38 + dodeca.pd | 66 ++ doubleClick-help.pd | 24 + doubleClick.pd | 19 + drips~-help.pd | 10 + drips~.pd | 37 + dtmfBusy~-help.pd | 12 + dtmfBusy~.pd | 45 + dtmfHandUp~-help.pd | 12 + dtmfHandUp~.pd | 38 + dtmfHurryUp~-help.pd | 12 + dtmfHurryUp~.pd | 65 ++ dtmfNumber~-help.pd | 11 + dtmfNumber~.pd | 112 ++ dtmfRing~-help.pd | 12 + dtmfRing~.pd | 39 + echoBp~-help.pd | 94 ++ echoBp~.pd | 139 +++ echoRobot~-help.pd | 49 + echoRobot~.pd | 54 + echoVd~-help.pd | 51 + echoVd~.pd | 85 ++ eq~-help.pd | 24 + eq~.pd | 179 +++ every-help.pd | 23 + every.pd | 25 + examples/gems-fft~.pd | 107 ++ examples/gems-movies_with_sound~.pd | 43 + examples/gems-scope~.pd | 130 +++ examples/gems-sobel_filter.pd | 359 ++++++ fibonacci-help.pd | 8 + fibonacci.pd | 29 + fileBrowser-help.pd | 39 + fileBrowser.pd | 142 +++ filterPeakSig~-help.pd | 65 ++ filterPeakSig~.pd | 211 ++++ fit-help.pd | 38 + fit.pd | 113 ++ form-help.pd | 52 + form.pd | 44 + fpsToMs-help.pd | 11 + fpsToMs.pd | 8 + framesToSmpte-help.pd | 41 + framesToSmpte.pd | 33 + frying~-help.pd | 16 + frying~.pd | 52 + gBrowser-help.pd | 126 ++ gBrowser.pd | 438 +++++++ gateNoise~-help.pd | 83 ++ gateNoise~.pd | 161 +++ gemsAlpha-help.pd | 130 +++ gemsAlpha.pd | 124 ++ gemsAverageColor-help.pd | 46 + gemsAverageColor.pd | 26 + gemsCropMap-help.pd | 76 ++ gemsCropMap.pd | 122 ++ gemsCuber-help.pd | 59 + gemsCuber.pd | 131 +++ gemsDuplicate-help.pd | 58 + gemsDuplicate.pd | 20 + gemsFeedback-help.pd | 62 + gemsFeedback.pd | 83 ++ gemsFit-help.pd | 60 + gemsFit.pd | 247 ++++ gemsImages-help.pd | 29 + gemsImages.pd | 22 + gemsLines-help.pd | 92 ++ gemsLines.pd | 149 +++ gemsLoop-help.pd | 41 + gemsLoop.pd | 214 ++++ gemsMouse-help.pd | 33 + gemsMouse.pd | 91 ++ gemsMovies-help.pd | 79 ++ gemsMovies.pd | 254 +++++ gemsPolygon-help.pd | 99 ++ gemsPolygon.pd | 147 +++ gemsWheel-help.pd | 42 + gemsWheel.pd | 45 + gemsWin-help.pd | 74 ++ gemsWin.pd | 273 +++++ granularLive~-help.pd | 62 + granularLive~.pd | 249 ++++ gunGas~-help.pd | 18 + gunGas~.pd | 110 ++ gunShot~-help.pd | 11 + gunShot~.pd | 139 +++ hexToDec-help.pd | 16 + hexToDec.pd | 8 + hissing~-help.pd | 8 + hissing~.pd | 27 + hold~-help.pd | 12 + hold~.pd | 30 + hsv-help.pd | 8 + hsv.pd | 63 + hsvToRgb-help.pd | 49 + hsvToRgb.pd | 180 +++ import.sh | 9 + inBetweens-help.pd | 18 + inBetweens.pd | 53 + indexer-help.pd | 51 + indexer.pd | 138 +++ instrument~-help.pd | 28 + instrument~.pd | 88 ++ intToDigits-help.pd | 14 + intToDigits.pd | 23 + in~-help.pd | 10 + in~.pd | 238 ++++ keyNameLearn-help.pd | 15 + keyNameLearn.pd | 31 + keyR-help.pd | 23 + keyR.pd | 22 + keyText-help.pd | 29 + keyText.pd | 64 ++ kick808~-help.pd | 50 + kick808~.pd | 409 +++++++ lightFreqToWave-help.pd | 8 + lightFreqToWave.pd | 7 + lightWaveToFreq-help.pd | 8 + lightWaveToFreq.pd | 9 + lightning~-help.pd | 27 + lightning~.pd | 155 +++ limit~-help.pd | 94 ++ limit~.pd | 31 + listBoolToPos-help.pd | 16 + listBoolToPos.pd | 20 + listBuild-help.pd | 52 + listBuild.pd | 48 + listCutUp-help.pd | 15 + listCutUp.pd | 13 + listDelay-help.pd | 19 + listDelay.pd | 18 + listJump-help.pd | 34 + listJump.pd | 56 + listOp-help.pd | 25 + listOp.pd | 32 + love.txt | 148 +++ mToHarm-help.pd | 14 + mToHarm.pd | 40 + mToSpeed-help.pd | 19 + mToSpeed.pd | 17 + main~-help.pd | 6 + main~.pd | 8 + makeLabel-help.pd | 19 + makeLabel.pd | 46 + makecore.sh | 12 + material~-help.pd | 55 + material~.pd | 72 ++ modf-help.pd | 17 + modf.pd | 12 + msToBpm-help.pd | 18 + msToBpm.pd | 11 + msToFps-help.pd | 15 + msToFps.pd | 8 + msToFreq-help.pd | 11 + msToFreq.pd | 8 + msToSmp-help.pd | 11 + msToSmp.pd | 15 + msToTime-help.pd | 25 + msToTime.pd | 30 + mtl-meta.pd | 11 + nbx~-help.pd | 16 + nbx~.pd | 19 + noteClose-help.pd | 67 ++ noteClose.pd | 94 ++ noteFloat-help.pd | 27 + noteFloat.pd | 33 + noteSplit-help.pd | 26 + noteSplit.pd | 21 + noteToName-help.pd | 12 + noteToName.pd | 47 + numToRgb-help.pd | 24 + numToRgb.pd | 60 + octava-help.pd | 18 + octava.pd | 15 + oldRecord~-help.pd | 9 + oldRecord~.pd | 50 + out~-help.pd | 19 + out~.pd | 275 +++++ param-enabled-help.pd | 2 + pdToAscii-help.pd | 27 + pdToAscii.pd | 8 + phi-help.pd | 10 + phi.pd | 16 + piano-help.pd | 13 + piano.pd | 373 ++++++ pitchShift~-help.pd | 29 + pitchShift~.pd | 770 +++++++++++++ player~-help.pd | 75 ++ player~.pd | 137 +++ punch~-help.pd | 25 + punch~.pd | 25 + qtrack-help.pd | 73 ++ qtrack.pd | 122 ++ radianToDegree-help.pd | 17 + radianToDegree.pd | 13 + rain~-help.pd | 8 + rain~.pd | 164 +++ randomFloat-help.pd | 40 + randomFloat.pd | 43 + reverbCm~-help.pd | 52 + reverbCm~.pd | 118 ++ reverbFdn~-help.pd | 63 + reverbFdn~.pd | 438 +++++++ reverbFree~-help.pd | 55 + reverbFree~.pd | 74 ++ rgbToHsv-help.pd | 31 + rgbToHsv.pd | 326 ++++++ rgbToNum-help.pd | 51 + rgbToNum.pd | 55 + round-help.pd | 13 + round.pd | 6 + roundUp-help.pd | 8 + roundUp.pd | 11 + rumble~-help.pd | 8 + rumble~.pd | 24 + sawor~-help.pd | 46 + sawor~.pd | 29 + scaleSmart-help.pd | 36 + scaleSmart.pd | 128 +++ seq1x8-help.pd | 58 + seq1x8.pd | 150 +++ seq8x8-help.pd | 206 ++++ seq8x8.pd | 488 ++++++++ sfIndexer-help.pd | 69 ++ sfIndexer.pd | 272 +++++ shrinkSymbol-help.pd | 31 + shrinkSymbol.pd | 64 ++ sigToFloat~-help.pd | 10 + sigToFloat~.pd | 17 + sign-help.pd | 13 + sign.pd | 17 + sl8-help.pd | 48 + sl8.pd | 115 ++ smpToBpm-help.pd | 41 + smpToBpm.pd | 128 +++ smpToFreq-help.pd | 11 + smpToFreq.pd | 15 + smpToMem-help.pd | 11 + smpToMem.pd | 8 + smpToMs-help.pd | 10 + smpToMs.pd | 18 + smpToTime-help.pd | 13 + smpToTime.pd | 49 + smpteToFrames-help.pd | 33 + smpteToFrames.pd | 46 + sometimes-help.pd | 24 + sometimes.pd | 14 + soundFreqToWave-help.pd | 15 + soundFreqToWave.pd | 25 + soundWaveToFreq-help.pd | 8 + soundWaveToFreq.pd | 9 + spectrum~-help.pd | 31 + spectrum~.pd | 62 + speedToM-help.pd | 19 + speedToM.pd | 18 + splitExtension-help.pd | 14 + splitExtension.pd | 8 + tabwriteAuto-help.pd | 26 + tabwriteAuto.pd | 43 + tempo-help.pd | 34 + tempo.pd | 197 ++++ theMatrix-help.pd | 78 ++ theMatrix.pd | 248 ++++ timeToMs-help.pd | 32 + timeToMs.pd | 28 + tom.txt | 8 + track.txt | 18 + tracker4-help.pd | 57 + tracker4.pd | 2154 +++++++++++++++++++++++++++++++++++ transpose-help.pd | 13 + transpose.pd | 38 + valueChange-help.pd | 36 + valueChange.pd | 34 + vdirac~-help.pd | 33 + vdirac~.pd | 23 + vocoder~-help.pd | 16 + vocoder~.pd | 154 +++ vu~-help.pd | 19 + vu~.pd | 110 ++ wind~-help.pd | 14 + wind~.pd | 74 ++ 424 files changed, 30165 insertions(+) create mode 100644 1-13LP.pd create mode 100644 2dAngle-help.pd create mode 100644 2dAngle.pd create mode 100644 2dAngleLine-help.pd create mode 100644 2dAngleLine.pd create mode 100644 2dDistance-help.pd create mode 100644 2dDistance.pd create mode 100644 2dRatio-help.pd create mode 100644 2dRatio.pd create mode 100644 3dAdd-help.pd create mode 100644 3dAdd.pd create mode 100644 3dAngle-help.pd create mode 100644 3dAngle.pd create mode 100644 3dCross-help.pd create mode 100644 3dCross.pd create mode 100644 3dDistance-help.pd create mode 100644 3dDistance.pd create mode 100644 3dDot-help.pd create mode 100644 3dDot.pd create mode 100644 3dMagnitude-help.pd create mode 100644 3dMagnitude.pd create mode 100644 3dMove-help.pd create mode 100644 3dMove.pd create mode 100644 3dNormalize-help.pd create mode 100644 3dNormalize.pd create mode 100644 3dPanTilt-help.pd create mode 100644 3dPanTilt.pd create mode 100644 3dRotate-help.pd create mode 100644 3dRotate.pd create mode 100644 3dScale-help.pd create mode 100644 3dScale.pd create mode 100644 3dSubtract-help.pd create mode 100644 3dSubtract.pd create mode 100644 LICENSE.txt create mode 100644 TODO create mode 100644 VCR-help.pd create mode 100644 VCR.pd create mode 100644 additive~-help.pd create mode 100644 additive~.pd create mode 100644 adsr~-help.pd create mode 100644 adsr~.pd create mode 100644 ambient~-help.pd create mode 100644 ambient~.pd create mode 100644 applause~-help.pd create mode 100644 applause~.pd create mode 100644 arpeggio-help.pd create mode 100644 arpeggio.pd create mode 100644 asciiToPd-help.pd create mode 100644 asciiToPd.pd create mode 100644 aux~-help.pd create mode 100644 aux~.pd create mode 100644 beep~-help.pd create mode 100644 beep~.pd create mode 100644 bell~-help.pd create mode 100644 bell~.pd create mode 100644 benchmark-help.pd create mode 100644 benchmark.pd create mode 100644 binaryToByte-help.pd create mode 100644 binaryToByte.pd create mode 100644 biorythm~-help.pd create mode 100644 biorythm~.pd create mode 100644 blip~-help.pd create mode 100644 blip~.pd create mode 100644 bounce~-help.pd create mode 100644 bounce~.pd create mode 100644 bpmToFreq-help.pd create mode 100644 bpmToFreq.pd create mode 100644 bpmToMs-help.pd create mode 100644 bpmToMs.pd create mode 100644 browser-help.pd create mode 100644 browser.pd create mode 100644 bubbles~-help.pd create mode 100644 bubbles~.pd create mode 100644 buttonColor-help.pd create mode 100644 buttonColor.pd create mode 100644 byteToBinary-help.pd create mode 100644 byteToBinary.pd create mode 100644 bytesToIntSigned-help.pd create mode 100644 bytesToIntSigned.pd create mode 100644 center-help.pd create mode 100644 center.pd create mode 100644 channel~-help.pd create mode 100644 channel~.pd create mode 100644 chordGuess-help.pd create mode 100644 chordGuess.pd create mode 100644 chronometer-help.pd create mode 100644 chronometer.pd create mode 100644 clap808~-help.pd create mode 100644 clap808~.pd create mode 100644 clap~-help.pd create mode 100644 clap~.pd create mode 100644 clk-quantization-help.pd create mode 100644 clkMaster-help.pd create mode 100644 clkMaster.pd create mode 100644 clkSlave-help.pd create mode 100644 clkSlave.pd create mode 100644 clkUDPIn-help.pd create mode 100644 clkUDPIn.pd create mode 100644 clkUDPOut-help.pd create mode 100644 clkUDPOut.pd create mode 100644 clocker-help.pd create mode 100644 clocker.pd create mode 100644 closestNote-help.pd create mode 100644 closestNote.pd create mode 100644 colorGrid-help.pd create mode 100644 colorGrid.pd create mode 100644 coloredNoise~-help.pd create mode 100644 coloredNoise~.pd create mode 100644 compress~-help.pd create mode 100644 compress~.pd create mode 100644 concat-help.pd create mode 100644 concat.pd create mode 100644 core.txt create mode 100644 crackles~-help.pd create mode 100644 crackles~.pd create mode 100644 cranks~-help.pd create mode 100644 cranks~.pd create mode 100644 cues-help.pd create mode 100644 cues.pd create mode 100644 cues~-help.pd create mode 100644 cues~.pd create mode 100644 cycle5-help.pd create mode 100644 cycle5.pd create mode 100644 degreeToChord-help.pd create mode 100644 degreeToChord.pd create mode 100644 degreeToRadian-help.pd create mode 100644 degreeToRadian.pd create mode 100644 delayPhasor~-help.pd create mode 100644 delayPhasor~.pd create mode 100644 distoAp~-help.pd create mode 100644 distoAp~.pd create mode 100644 distoCrusher~-help.pd create mode 100644 distoCrusher~.pd create mode 100644 distoFuzz~-help.pd create mode 100644 distoFuzz~.pd create mode 100644 distoLofi~-help.pd create mode 100644 distoLofi~.pd create mode 100644 distoNonmonotone~-help.pd create mode 100644 distoNonmonotone~.pd create mode 100644 distoSign~-help.pd create mode 100644 distoSign~.pd create mode 100644 distoTanh~-help.pd create mode 100644 distoTanh~.pd create mode 100644 dodeca-help.pd create mode 100644 dodeca.pd create mode 100644 doubleClick-help.pd create mode 100644 doubleClick.pd create mode 100644 drips~-help.pd create mode 100644 drips~.pd create mode 100644 dtmfBusy~-help.pd create mode 100644 dtmfBusy~.pd create mode 100644 dtmfHandUp~-help.pd create mode 100644 dtmfHandUp~.pd create mode 100644 dtmfHurryUp~-help.pd create mode 100644 dtmfHurryUp~.pd create mode 100644 dtmfNumber~-help.pd create mode 100644 dtmfNumber~.pd create mode 100644 dtmfRing~-help.pd create mode 100644 dtmfRing~.pd create mode 100644 echoBp~-help.pd create mode 100644 echoBp~.pd create mode 100644 echoRobot~-help.pd create mode 100644 echoRobot~.pd create mode 100644 echoVd~-help.pd create mode 100644 echoVd~.pd create mode 100644 eq~-help.pd create mode 100644 eq~.pd create mode 100644 every-help.pd create mode 100644 every.pd create mode 100644 examples/gems-fft~.pd create mode 100644 examples/gems-movies_with_sound~.pd create mode 100644 examples/gems-scope~.pd create mode 100644 examples/gems-sobel_filter.pd create mode 100644 fibonacci-help.pd create mode 100644 fibonacci.pd create mode 100644 fileBrowser-help.pd create mode 100644 fileBrowser.pd create mode 100644 filterPeakSig~-help.pd create mode 100644 filterPeakSig~.pd create mode 100644 fit-help.pd create mode 100644 fit.pd create mode 100644 form-help.pd create mode 100644 form.pd create mode 100644 fpsToMs-help.pd create mode 100644 fpsToMs.pd create mode 100644 framesToSmpte-help.pd create mode 100644 framesToSmpte.pd create mode 100644 frying~-help.pd create mode 100644 frying~.pd create mode 100644 gBrowser-help.pd create mode 100644 gBrowser.pd create mode 100644 gateNoise~-help.pd create mode 100644 gateNoise~.pd create mode 100644 gemsAlpha-help.pd create mode 100644 gemsAlpha.pd create mode 100644 gemsAverageColor-help.pd create mode 100644 gemsAverageColor.pd create mode 100644 gemsCropMap-help.pd create mode 100644 gemsCropMap.pd create mode 100644 gemsCuber-help.pd create mode 100644 gemsCuber.pd create mode 100644 gemsDuplicate-help.pd create mode 100644 gemsDuplicate.pd create mode 100644 gemsFeedback-help.pd create mode 100644 gemsFeedback.pd create mode 100644 gemsFit-help.pd create mode 100644 gemsFit.pd create mode 100644 gemsImages-help.pd create mode 100644 gemsImages.pd create mode 100644 gemsLines-help.pd create mode 100644 gemsLines.pd create mode 100644 gemsLoop-help.pd create mode 100644 gemsLoop.pd create mode 100644 gemsMouse-help.pd create mode 100644 gemsMouse.pd create mode 100644 gemsMovies-help.pd create mode 100644 gemsMovies.pd create mode 100644 gemsPolygon-help.pd create mode 100644 gemsPolygon.pd create mode 100644 gemsWheel-help.pd create mode 100644 gemsWheel.pd create mode 100644 gemsWin-help.pd create mode 100644 gemsWin.pd create mode 100644 granularLive~-help.pd create mode 100644 granularLive~.pd create mode 100644 gunGas~-help.pd create mode 100644 gunGas~.pd create mode 100644 gunShot~-help.pd create mode 100644 gunShot~.pd create mode 100644 hexToDec-help.pd create mode 100644 hexToDec.pd create mode 100644 hissing~-help.pd create mode 100644 hissing~.pd create mode 100644 hold~-help.pd create mode 100644 hold~.pd create mode 100644 hsv-help.pd create mode 100644 hsv.pd create mode 100644 hsvToRgb-help.pd create mode 100644 hsvToRgb.pd create mode 100755 import.sh create mode 100644 inBetweens-help.pd create mode 100644 inBetweens.pd create mode 100644 indexer-help.pd create mode 100644 indexer.pd create mode 100644 instrument~-help.pd create mode 100644 instrument~.pd create mode 100644 intToDigits-help.pd create mode 100644 intToDigits.pd create mode 100644 in~-help.pd create mode 100644 in~.pd create mode 100644 keyNameLearn-help.pd create mode 100644 keyNameLearn.pd create mode 100644 keyR-help.pd create mode 100644 keyR.pd create mode 100644 keyText-help.pd create mode 100644 keyText.pd create mode 100644 kick808~-help.pd create mode 100644 kick808~.pd create mode 100644 lightFreqToWave-help.pd create mode 100644 lightFreqToWave.pd create mode 100644 lightWaveToFreq-help.pd create mode 100644 lightWaveToFreq.pd create mode 100644 lightning~-help.pd create mode 100644 lightning~.pd create mode 100644 limit~-help.pd create mode 100644 limit~.pd create mode 100644 listBoolToPos-help.pd create mode 100644 listBoolToPos.pd create mode 100644 listBuild-help.pd create mode 100644 listBuild.pd create mode 100644 listCutUp-help.pd create mode 100644 listCutUp.pd create mode 100644 listDelay-help.pd create mode 100644 listDelay.pd create mode 100644 listJump-help.pd create mode 100644 listJump.pd create mode 100644 listOp-help.pd create mode 100644 listOp.pd create mode 100644 love.txt create mode 100644 mToHarm-help.pd create mode 100644 mToHarm.pd create mode 100644 mToSpeed-help.pd create mode 100644 mToSpeed.pd create mode 100644 main~-help.pd create mode 100644 main~.pd create mode 100644 makeLabel-help.pd create mode 100644 makeLabel.pd create mode 100755 makecore.sh create mode 100644 material~-help.pd create mode 100644 material~.pd create mode 100644 modf-help.pd create mode 100644 modf.pd create mode 100644 msToBpm-help.pd create mode 100644 msToBpm.pd create mode 100644 msToFps-help.pd create mode 100644 msToFps.pd create mode 100644 msToFreq-help.pd create mode 100644 msToFreq.pd create mode 100644 msToSmp-help.pd create mode 100644 msToSmp.pd create mode 100644 msToTime-help.pd create mode 100644 msToTime.pd create mode 100644 mtl-meta.pd create mode 100644 nbx~-help.pd create mode 100644 nbx~.pd create mode 100644 noteClose-help.pd create mode 100644 noteClose.pd create mode 100644 noteFloat-help.pd create mode 100644 noteFloat.pd create mode 100644 noteSplit-help.pd create mode 100644 noteSplit.pd create mode 100644 noteToName-help.pd create mode 100644 noteToName.pd create mode 100644 numToRgb-help.pd create mode 100644 numToRgb.pd create mode 100644 octava-help.pd create mode 100644 octava.pd create mode 100644 oldRecord~-help.pd create mode 100644 oldRecord~.pd create mode 100644 out~-help.pd create mode 100644 out~.pd create mode 100644 param-enabled-help.pd create mode 100644 pdToAscii-help.pd create mode 100644 pdToAscii.pd create mode 100644 phi-help.pd create mode 100644 phi.pd create mode 100644 piano-help.pd create mode 100644 piano.pd create mode 100644 pitchShift~-help.pd create mode 100644 pitchShift~.pd create mode 100644 player~-help.pd create mode 100644 player~.pd create mode 100644 punch~-help.pd create mode 100644 punch~.pd create mode 100644 qtrack-help.pd create mode 100644 qtrack.pd create mode 100644 radianToDegree-help.pd create mode 100644 radianToDegree.pd create mode 100644 rain~-help.pd create mode 100644 rain~.pd create mode 100644 randomFloat-help.pd create mode 100644 randomFloat.pd create mode 100644 reverbCm~-help.pd create mode 100644 reverbCm~.pd create mode 100644 reverbFdn~-help.pd create mode 100644 reverbFdn~.pd create mode 100644 reverbFree~-help.pd create mode 100644 reverbFree~.pd create mode 100644 rgbToHsv-help.pd create mode 100644 rgbToHsv.pd create mode 100644 rgbToNum-help.pd create mode 100644 rgbToNum.pd create mode 100644 round-help.pd create mode 100644 round.pd create mode 100644 roundUp-help.pd create mode 100644 roundUp.pd create mode 100644 rumble~-help.pd create mode 100644 rumble~.pd create mode 100644 sawor~-help.pd create mode 100644 sawor~.pd create mode 100644 scaleSmart-help.pd create mode 100644 scaleSmart.pd create mode 100644 seq1x8-help.pd create mode 100644 seq1x8.pd create mode 100644 seq8x8-help.pd create mode 100644 seq8x8.pd create mode 100644 sfIndexer-help.pd create mode 100644 sfIndexer.pd create mode 100644 shrinkSymbol-help.pd create mode 100644 shrinkSymbol.pd create mode 100644 sigToFloat~-help.pd create mode 100644 sigToFloat~.pd create mode 100644 sign-help.pd create mode 100644 sign.pd create mode 100644 sl8-help.pd create mode 100644 sl8.pd create mode 100644 smpToBpm-help.pd create mode 100644 smpToBpm.pd create mode 100644 smpToFreq-help.pd create mode 100644 smpToFreq.pd create mode 100644 smpToMem-help.pd create mode 100644 smpToMem.pd create mode 100644 smpToMs-help.pd create mode 100644 smpToMs.pd create mode 100644 smpToTime-help.pd create mode 100644 smpToTime.pd create mode 100644 smpteToFrames-help.pd create mode 100644 smpteToFrames.pd create mode 100644 sometimes-help.pd create mode 100644 sometimes.pd create mode 100644 soundFreqToWave-help.pd create mode 100644 soundFreqToWave.pd create mode 100644 soundWaveToFreq-help.pd create mode 100644 soundWaveToFreq.pd create mode 100644 spectrum~-help.pd create mode 100644 spectrum~.pd create mode 100644 speedToM-help.pd create mode 100644 speedToM.pd create mode 100644 splitExtension-help.pd create mode 100644 splitExtension.pd create mode 100644 tabwriteAuto-help.pd create mode 100644 tabwriteAuto.pd create mode 100644 tempo-help.pd create mode 100644 tempo.pd create mode 100644 theMatrix-help.pd create mode 100644 theMatrix.pd create mode 100644 timeToMs-help.pd create mode 100644 timeToMs.pd create mode 100644 tom.txt create mode 100644 track.txt create mode 100644 tracker4-help.pd create mode 100644 tracker4.pd create mode 100644 transpose-help.pd create mode 100644 transpose.pd create mode 100644 valueChange-help.pd create mode 100644 valueChange.pd create mode 100644 vdirac~-help.pd create mode 100644 vdirac~.pd create mode 100644 vocoder~-help.pd create mode 100644 vocoder~.pd create mode 100644 vu~-help.pd create mode 100644 vu~.pd create mode 100644 wind~-help.pd create mode 100644 wind~.pd diff --git a/1-13LP.pd b/1-13LP.pd new file mode 100644 index 0000000..48259d8 --- /dev/null +++ b/1-13LP.pd @@ -0,0 +1,694 @@ +#N canvas 184 399 401 173 10; +#X obj 137 17 vsl 15 115 0 175 0 0 \$0_slider_s0 \$0_slider_r0 empty +0 -8 0 8 -1 -228856 -228856 11400 0; +#X obj -45 45 hradio 15 1 0 12 \$0_hr_2_s0 \$0_hr_2_r0 behavior 2 8 +1 9 -1 -1 -262140 0; +#X obj -45 60 hradio 15 1 0 12 \$0_hr_3_s0 \$0_hr_3_r0 control~ 2 8 +1 9 -1 -1 -262140 0; +#X obj -45 75 hradio 15 1 0 12 \$0_hr_4_s0 \$0_hr_4_r0 conversion 2 +8 1 9 -1 -1 -262140 0; +#X obj -45 90 hradio 15 1 0 12 \$0_hr_5_s0 \$0_hr_5_r0 counter 2 8 +1 9 -1 -1 -262140 0; +#X obj -45 105 hradio 15 1 0 12 \$0_hr_6_s0 \$0_hr_6_r0 data 2 8 1 +9 -1 -1 -262140 0; +#X obj -45 120 hradio 15 1 0 12 \$0_hr_7_s0 \$0_hr_7_r0 examples 2 +8 1 9 -1 -1 -262140 0; +#X obj 336 17 vsl 15 115 0 175 0 0 \$0_slider_s \$0_slider_r empty +0 -8 0 8 -1 -228856 -1 11400 0; +#X obj 154 15 hradio 15 1 0 12 \$0_hr_0_s \$0_hr_0_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 30 hradio 15 1 0 12 \$0_hr_1_s \$0_hr_1_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 45 hradio 15 1 0 12 \$0_hr_2_s \$0_hr_2_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 60 hradio 15 1 0 12 \$0_hr_3_s \$0_hr_3_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 75 hradio 15 1 0 12 \$0_hr_4_s \$0_hr_4_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 90 hradio 15 1 0 12 \$0_hr_5_s \$0_hr_5_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 105 hradio 15 1 0 12 \$0_hr_6_s \$0_hr_6_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 120 hradio 15 1 0 12 \$0_hr_7_s \$0_hr_7_r empty 2 8 1 9 +-1 -1 -262140 0; +#N canvas 1058 43 723 396 ./browser 0; +#N canvas 1069 45 887 645 coll 0; +#X obj 23 -42 inlet; +#X obj 247 -40 inlet; +#X obj 141 321 zexy/demultiplex 0 1; +#X obj 114 224 cyclone/coll; +#C restore; +#X obj 32 99 unpack f f; +#X obj 32 53 zexy/demultiplex 0 1; +#X obj 36 507 maxlib/remote; +#X obj 36 451 list prepend \$0; +#X msg 36 480 \$1_hr_\$2_r label \$3; +#X msg 678 40 clear; +#X msg 635 83 0; +#X obj 573 148 value \$0count; +#X obj 532 50 t f f; +#X obj 450 134 list prepend; +#X obj 452 176 list trim; +#X msg 270 75 open; +#X obj 36 426 list append; +#X msg 70 357 symbol; +#X obj 33 77 t a b; +#X obj 133 371 cyclone/tosymbol; +#X obj 653 4 t b b b; +#X obj 405 -85 inlet add; +#X obj 694 -43 inlet; +#X obj 522 11 tof/increment; +#X obj 565 377 zexy/symbol2list /; +#X obj 565 397 list trim; +#X obj 343 344 cyclone/tosymbol; +#X obj 447 544 tof/openHelp; +#X msg 630 471 1; +#N canvas 0 0 988 652 pdmtl-help 0; +#X obj 380 252 pack s s; +#X obj 378 191 t a b; +#X msg 283 312 \; pd open \$1 \$2; +#X msg 296 230 \$1-help.pd; +#X obj 379 277 t a a; +#X obj 360 77 inlet; +#X obj 357 388 print browser; +#X msg 407 334 Trying to open \$1 in folder \$2; +#X obj 427 225 tof/path current; +#X obj 393 118 symbol; +#X connect 0 0 4 0; +#X connect 1 0 3 0; +#X connect 1 1 8 0; +#X connect 2 0 6 0; +#X connect 3 0 0 0; +#X connect 4 0 2 0; +#X connect 4 1 7 0; +#X connect 5 0 9 0; +#X connect 7 0 6 0; +#X connect 8 0 0 1; +#X connect 9 0 1 0; +#X restore 555 510 pd pdmtl-help; +#X obj 447 505 spigot; +#X obj 447 396 t a a; +#X obj 555 443 t a b; +#X msg 584 469 0; +#X obj 565 420 route mtl; +#X obj 393 -62 route bang; +#X obj 367 10 zexy/symbol2list /; +#X obj 334 -15 t s s; +#X obj 442 -37 t s b; +#X obj 104 251 unpack s s; +#X obj 434 63 list split 1; +#X obj 358 127 list; +#X obj 382 31 route symbol; +#X obj 377 59 t s s; +#X text 178 251 long name \, short name; +#X msg 381 256 sort -1 2 \, renumber; +#X obj 796 -48 inlet tag; +#X obj 564 248 sel examples; +#X obj 370 368 zexy/demultiplex; +#X msg 600 297 0; +#N canvas 0 0 716 536 examples 0; +#X obj 56 28 inlet; +#X obj 225 262 pack s s; +#X msg 128 322 \; pd open \$1 \$2; +#X obj 224 287 t a a; +#X obj 202 398 print browser; +#X msg 252 344 Trying to open \$1 in folder \$2; +#X obj 172 139 t s b; +#X obj 272 235 tof/path current absolute; +#X msg 280 202 symbol examples; +#X connect 0 0 6 0; +#X connect 1 0 3 0; +#X connect 2 0 4 0; +#X connect 3 0 2 0; +#X connect 3 1 5 0; +#X connect 5 0 4 0; +#X connect 6 0 1 0; +#X connect 6 1 8 0; +#X connect 7 0 1 1; +#X connect 8 0 7 0; +#X restore 658 332 pd examples; +#X msg 531 289 1; +#X connect 0 0 5 0; +#X connect 1 0 5 1; +#X connect 1 0 2 1; +#X connect 2 0 19 0; +#X connect 2 1 26 0; +#X connect 3 0 39 0; +#X connect 4 0 16 0; +#X connect 4 1 3 0; +#X connect 5 0 18 0; +#X connect 5 1 3 0; +#X connect 7 0 8 0; +#X connect 8 0 6 0; +#X connect 9 0 3 0; +#X connect 10 0 11 0; +#X connect 12 0 13 1; +#X connect 12 1 11 0; +#X connect 13 0 14 0; +#X connect 14 0 3 0; +#X connect 15 0 3 0; +#X connect 16 0 7 0; +#X connect 17 0 16 1; +#X connect 18 0 4 0; +#X connect 18 1 17 0; +#X connect 19 0 16 1; +#X connect 20 0 23 1; +#X connect 20 1 10 0; +#X connect 20 2 9 0; +#X connect 21 0 35 0; +#X connect 22 0 20 0; +#X connect 23 0 12 0; +#X connect 24 0 25 0; +#X connect 25 0 34 0; +#X connect 26 0 48 0; +#X connect 28 0 30 1; +#X connect 30 0 27 0; +#X connect 31 0 30 0; +#X connect 31 1 24 0; +#X connect 32 0 29 0; +#X connect 32 1 33 0; +#X connect 33 0 30 1; +#X connect 34 0 32 0; +#X connect 34 1 28 0; +#X connect 35 0 45 0; +#X connect 35 1 38 0; +#X connect 36 0 42 0; +#X connect 37 0 41 0; +#X connect 37 1 36 0; +#X connect 38 0 37 0; +#X connect 38 1 23 0; +#X connect 39 0 2 0; +#X connect 40 1 41 1; +#X connect 41 0 13 0; +#X connect 42 0 43 0; +#X connect 42 1 40 0; +#X connect 43 0 41 0; +#X connect 43 1 41 1; +#X connect 45 0 3 0; +#X connect 46 0 47 0; +#X connect 47 0 51 0; +#X connect 47 1 49 0; +#X connect 48 0 31 0; +#X connect 48 1 50 0; +#X connect 49 0 48 1; +#X connect 51 0 48 1; +#X restore 259 269 pd coll; +#N canvas 986 52 946 631 scroll 0; +#X obj 147 75 int; +#X msg 178 155 8; +#X obj 125 389 pack; +#X obj 151 310 + 0; +#X obj 138 541 outlet; +#X obj 100 275 t f f; +#X obj 306 542 outlet; +#X msg 232 359 0; +#X obj 130 4 r \$0_slider_s; +#X obj 235 201 value \$0off; +#X obj 413 82 value \$0count; +#X obj 134 27 t f b; +#X msg 515 43 12; +#X obj 421 142 max 0; +#X obj 416 108 - 7; +#X obj 137 50 expr (175-$f1)/175 * $f2; +#X obj 98 250 tof/iterate; +#X obj 580 261 f -1; +#X text 616 271 previous; +#X obj 614 472 list prepend \$0; +#X msg 614 498 \; \$1_hr_\$2_r color -1 -1 \$3; +#X obj 428 410 list append -1.67177e+07; +#X obj 638 351 list append -1.67772e+07; +#X obj 789 130 r \$0reset; +#X obj 771 273 tof/iterate; +#X msg 768 252 8; +#X obj 410 179 r \$0query; +#X obj 354 328 -; +#X obj 473 296 t f f f b; +#X obj 353 272 pack; +#X msg 355 298 \$2 \$1; +#X obj 412 205 +; +#X obj 184 122 t b f b f f f; +#X obj 582 303 maxlib/split 0 7; +#X obj 427 375 maxlib/split 0 7; +#X msg 698 233 -1; +#X obj 410 228 t b f; +#X obj 686 23 inlet; +#X obj 712 174 t b b b; +#X msg 652 195 -1; +#X connect 0 0 32 0; +#X connect 1 0 16 0; +#X connect 2 0 4 0; +#X connect 3 0 2 1; +#X connect 5 0 2 0; +#X connect 5 1 3 0; +#X connect 7 0 6 0; +#X connect 8 0 11 0; +#X connect 10 0 14 0; +#X connect 11 0 15 0; +#X connect 11 1 10 0; +#X connect 12 0 10 0; +#X connect 13 0 15 1; +#X connect 14 0 13 0; +#X connect 15 0 0 0; +#X connect 16 0 5 0; +#X connect 17 0 33 0; +#X connect 19 0 20 0; +#X connect 21 0 19 0; +#X connect 22 0 19 0; +#X connect 23 0 38 0; +#X connect 24 0 22 0; +#X connect 25 0 24 0; +#X connect 26 0 31 0; +#X connect 27 0 28 0; +#X connect 28 1 34 0; +#X connect 28 2 17 1; +#X connect 28 3 17 0; +#X connect 29 0 30 0; +#X connect 30 0 27 0; +#X connect 31 0 36 0; +#X connect 32 0 1 0; +#X connect 32 1 3 1; +#X connect 32 2 7 0; +#X connect 32 3 9 0; +#X connect 32 4 29 0; +#X connect 32 5 31 1; +#X connect 33 0 22 0; +#X connect 34 0 21 0; +#X connect 35 0 17 1; +#X connect 36 0 29 0; +#X connect 36 1 29 1; +#X connect 37 0 38 0; +#X connect 38 0 39 0; +#X connect 38 1 35 0; +#X connect 38 2 25 0; +#X connect 39 0 29 1; +#X restore 131 203 pd scroll; +#N canvas 1173 127 770 510 query 0; +#X obj 23 285 outlet; +#X obj 107 310 outlet; +#X obj 71 59 r \$0_hr_0_s; +#X obj 153 61 r \$0_hr_1_s; +#X obj 232 56 r \$0_hr_2_s; +#X obj 304 60 r \$0_hr_3_s; +#X obj 382 63 r \$0_hr_4_s; +#X obj 460 62 r \$0_hr_5_s; +#X obj 545 60 r \$0_hr_6_s; +#X obj 630 63 r \$0_hr_7_s; +#X msg 107 255 1; +#X msg 77 112 0; +#X msg 154 107 1; +#X msg 221 112 2; +#X msg 265 100 3; +#X msg 315 101 4; +#X msg 369 106 5; +#X msg 415 106 6; +#X msg 479 109 7; +#X obj 33 229 +; +#X obj 83 201 value \$0off; +#X obj 211 242 s \$0query; +#X obj 97 150 t f b b f; +#X connect 2 0 11 0; +#X connect 3 0 12 0; +#X connect 4 0 13 0; +#X connect 5 0 14 0; +#X connect 6 0 15 0; +#X connect 7 0 16 0; +#X connect 8 0 17 0; +#X connect 9 0 18 0; +#X connect 10 0 1 0; +#X connect 11 0 22 0; +#X connect 12 0 22 0; +#X connect 13 0 22 0; +#X connect 14 0 22 0; +#X connect 15 0 22 0; +#X connect 16 0 22 0; +#X connect 17 0 22 0; +#X connect 18 0 22 0; +#X connect 19 0 0 0; +#X connect 20 0 19 1; +#X connect 22 0 19 0; +#X connect 22 1 20 0; +#X connect 22 2 10 0; +#X connect 22 3 21 0; +#X restore 229 202 pd query; +#N canvas 0 25 1018 673 readTags 0; +#X msg 390 384 clear; +#X obj 310 -25 inlet read; +#X msg 388 405 open; +#X obj 19 212 t b b b; +#X msg 330 472 0; +#X msg 291 465 1; +#X obj 374 636 outlet patches; +#X msg 196 382 merge \$1 \$2; +#X msg 48 417 dump; +#X obj 320 524 == 0; +#X obj 100 623 outlet tags; +#X obj 96 -14 inlet select_tag; +#X obj 115 37 list trim; +#X obj 463 269 tof/listUnfold; +#X obj 511 124 zexy/msgfile; +#X obj 508 154 list split 1; +#X msg 475 84 read core.txt cr \, flush \, read love.txt cr \, flush +; +#X obj 499 227 list; +#X obj 496 177 t b a; +#X obj 503 349 list append; +#X obj 405 -26 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X msg 327 206 sort -1 -1; +#X obj 185 467 cyclone/coll; +#C restore; +#X obj 149 587 tof/listUnfold; +#X obj 488 583 tof/listUnfold; +#X obj 168 515 zexy/multiplex 0 1; +#X obj 169 543 zexy/demultiplex 0 1; +#X obj 96 207 t b a b; +#X obj 473 542 t b a; +#X obj 884 154 hcs/folder_list; +#X obj 884 124 tof/path current absolute; +#X msg 884 95 symbol examples/*; +#X obj 884 190 hcs/split_path; +#X obj 959 235 list prepend examples; +#X obj 381 -2 t b b f b b; +#X obj 502 49 sel 1 0; +#X msg 618 120 read core.txt cr \, flush; +#X connect 0 0 22 0; +#X connect 1 0 34 0; +#X connect 2 0 22 0; +#X connect 3 0 8 0; +#X connect 3 1 5 0; +#X connect 4 0 9 0; +#X connect 4 0 25 2; +#X connect 5 0 9 0; +#X connect 5 0 25 2; +#X connect 7 0 22 0; +#X connect 8 0 22 0; +#X connect 9 0 26 1; +#X connect 11 0 12 0; +#X connect 12 0 27 0; +#X connect 13 0 19 0; +#X connect 14 0 15 0; +#X connect 15 0 18 0; +#X connect 15 1 17 1; +#X connect 16 0 14 0; +#X connect 17 0 13 0; +#X connect 18 0 17 0; +#X connect 18 1 19 1; +#X connect 19 0 7 0; +#X connect 20 0 34 0; +#X connect 21 0 22 0; +#X connect 22 0 25 0; +#X connect 22 1 25 1; +#X connect 23 0 10 0; +#X connect 24 0 6 0; +#X connect 25 0 26 0; +#X connect 26 0 23 0; +#X connect 26 1 28 0; +#X connect 27 1 22 0; +#X connect 27 2 4 0; +#X connect 28 0 6 0; +#X connect 28 1 24 0; +#X connect 29 0 32 0; +#X connect 30 0 29 0; +#X connect 31 0 30 0; +#X connect 32 1 33 0; +#X connect 33 0 7 0; +#X connect 34 0 3 0; +#X connect 34 1 21 0; +#X connect 34 2 35 0; +#X connect 34 3 31 0; +#X connect 34 4 0 0; +#X connect 35 0 16 0; +#X connect 35 1 36 0; +#X connect 36 0 14 0; +#X restore 321 63 pd readTags; +#N canvas 178 252 827 449 coll 0; +#X obj 23 -42 inlet; +#X obj 247 -40 inlet; +#X obj 129 177 zexy/demultiplex 0 1; +#X obj 93 130 cyclone/coll; +#C restore; +#X obj 32 99 unpack f f; +#X obj 32 53 zexy/demultiplex 0 1; +#X obj 66 364 maxlib/remote; +#X obj 55 293 list prepend \$0; +#X obj 259 348 outlet; +#X msg 678 40 clear; +#X msg 635 83 0; +#X obj 494 46 t f f; +#X obj 441 101 list prepend; +#X obj 411 142 list trim; +#X msg 270 75 open; +#X obj 52 265 list append; +#X msg 66 197 symbol; +#X obj 33 77 t a b; +#X obj 129 211 cyclone/tosymbol; +#X obj 653 4 t b b b; +#X obj 459 -25 t a b; +#X msg 555 -16 0; +#X obj 435 -55 inlet add; +#X obj 521 11 tof/increment; +#X msg 61 327 \$1_hr_\$2_r0 label \$3; +#X obj 573 148 value \$0count0; +#X obj 670 -29 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 221 33 r \$0reset; +#X msg 224 54 clear; +#X obj 666 -49 r \$0reset; +#X connect 0 0 5 0; +#X connect 1 0 5 1; +#X connect 1 0 2 1; +#X connect 2 0 18 0; +#X connect 2 1 8 0; +#X connect 3 0 2 0; +#X connect 4 0 15 0; +#X connect 4 1 3 0; +#X connect 5 0 17 0; +#X connect 5 1 3 0; +#X connect 7 0 24 0; +#X connect 9 0 3 0; +#X connect 10 0 25 0; +#X connect 11 0 12 1; +#X connect 11 1 25 0; +#X connect 12 0 13 0; +#X connect 13 0 3 0; +#X connect 14 0 3 0; +#X connect 15 0 7 0; +#X connect 16 0 15 1; +#X connect 17 0 4 0; +#X connect 17 1 16 0; +#X connect 18 0 15 1; +#X connect 19 0 21 0; +#X connect 19 1 10 0; +#X connect 19 2 9 0; +#X connect 20 0 12 0; +#X connect 20 1 23 0; +#X connect 21 0 23 1; +#X connect 22 0 20 0; +#X connect 23 0 11 0; +#X connect 24 0 6 0; +#X connect 26 0 19 0; +#X connect 27 0 28 0; +#X connect 28 0 3 0; +#X connect 29 0 26 0; +#X restore 240 54 pd coll; +#N canvas 12 100 1010 606 scroll 0; +#X obj 147 75 int; +#X msg 178 155 8; +#X obj 194 306 pack; +#X obj 231 269 + 0; +#X obj 174 521 outlet; +#X obj 180 234 t f f; +#X obj 342 522 outlet; +#X msg 311 319 0; +#X obj 134 27 t f b; +#X msg 515 43 12; +#X obj 421 142 max 0; +#X obj 416 108 - 7; +#X obj 137 50 expr (175-$f1)/175 * $f2; +#X obj 130 4 r \$0_slider_s0; +#X obj 413 82 value \$0count0; +#X obj 307 285 value \$0off0; +#X obj 178 209 tof/iterate; +#X obj 651 352 f -1; +#X text 687 362 previous; +#X obj 587 508 list prepend \$0; +#X obj 513 444 list append -1.67177e+07; +#X obj 734 469 list append -1.67772e+07; +#X obj 874 164 r \$0reset; +#X obj 856 307 tof/iterate; +#X msg 853 286 8; +#X obj 547 278 -; +#X obj 587 306 t f f f b; +#X obj 549 216 pack; +#X msg 548 248 \$2 \$1; +#X obj 573 150 +; +#X obj 653 394 maxlib/split 0 7; +#X obj 512 409 maxlib/split 0 7; +#X msg 783 267 -1; +#X obj 571 173 t b f; +#X obj 829 41 inlet; +#X obj 786 184 t b b b; +#X msg 737 229 -1; +#X obj 571 124 r \$0query0; +#X obj 183 122 t b f b f f f; +#X msg 588 534 \; \$1_hr_\$2_r0 color -1 -1 \$3; +#X connect 0 0 38 0; +#X connect 1 0 16 0; +#X connect 2 0 4 0; +#X connect 3 0 2 1; +#X connect 5 0 2 0; +#X connect 5 1 3 0; +#X connect 7 0 6 0; +#X connect 8 0 12 0; +#X connect 8 1 14 0; +#X connect 9 0 14 0; +#X connect 10 0 12 1; +#X connect 11 0 10 0; +#X connect 12 0 0 0; +#X connect 13 0 8 0; +#X connect 14 0 11 0; +#X connect 16 0 5 0; +#X connect 17 0 30 0; +#X connect 19 0 39 0; +#X connect 20 0 19 0; +#X connect 21 0 19 0; +#X connect 22 0 35 0; +#X connect 23 0 21 0; +#X connect 24 0 23 0; +#X connect 25 0 26 0; +#X connect 26 1 31 0; +#X connect 26 2 17 1; +#X connect 26 3 17 0; +#X connect 27 0 28 0; +#X connect 28 0 25 0; +#X connect 29 0 33 0; +#X connect 30 0 21 0; +#X connect 31 0 20 0; +#X connect 32 0 17 1; +#X connect 33 0 27 0; +#X connect 33 1 27 1; +#X connect 34 0 35 0; +#X connect 35 0 36 0; +#X connect 35 1 32 0; +#X connect 35 2 24 0; +#X connect 36 0 27 1; +#X connect 37 0 29 0; +#X connect 38 0 1 0; +#X connect 38 1 3 1; +#X connect 38 2 7 0; +#X connect 38 3 15 0; +#X connect 38 4 27 0; +#X connect 38 5 29 1; +#X restore 196 -33 pd scroll; +#N canvas 277 192 744 361 query 0; +#X obj 39 239 outlet; +#X obj 235 243 outlet; +#X msg 241 200 1; +#X msg 77 112 0; +#X msg 154 107 1; +#X msg 221 112 2; +#X msg 265 100 3; +#X msg 315 101 4; +#X msg 369 106 5; +#X msg 415 106 6; +#X msg 479 109 7; +#X obj 96 211 +; +#X obj 116 180 value \$0off0; +#X obj 71 59 r \$0_hr_0_s0; +#X obj 153 61 r \$0_hr_1_s0; +#X obj 232 56 r \$0_hr_2_s0; +#X obj 304 60 r \$0_hr_3_s0; +#X obj 382 63 r \$0_hr_4_s0; +#X obj 460 62 r \$0_hr_5_s0; +#X obj 545 60 r \$0_hr_6_s0; +#X obj 630 63 r \$0_hr_7_s0; +#X obj 324 193 s \$0query0; +#X obj 97 150 t f b b f; +#X connect 2 0 1 0; +#X connect 3 0 22 0; +#X connect 4 0 22 0; +#X connect 5 0 22 0; +#X connect 6 0 22 0; +#X connect 7 0 22 0; +#X connect 8 0 22 0; +#X connect 9 0 22 0; +#X connect 10 0 22 0; +#X connect 11 0 0 0; +#X connect 12 0 11 1; +#X connect 13 0 3 0; +#X connect 14 0 4 0; +#X connect 15 0 5 0; +#X connect 16 0 6 0; +#X connect 17 0 7 0; +#X connect 18 0 8 0; +#X connect 19 0 9 0; +#X connect 20 0 10 0; +#X connect 22 0 11 0; +#X connect 22 1 12 0; +#X connect 22 2 2 0; +#X connect 22 3 21 0; +#X restore 263 -36 pd query; +#X obj 399 -64 loadbang; +#X msg 437 154 175; +#X msg 256 115 175; +#X msg 459 43 175; +#X obj 461 65 s \$0_slider_r; +#X obj 405 182 s \$0_slider_r0; +#X obj 587 293 outlet; +#X obj 490 31 s \$0reset; +#X text 186 53 TAGS->; +#X text 160 265 ABSTRACTIONS->; +#X obj 254 82 t b a b a; +#X obj 473 -69 r \$0love; +#X obj 605 -25 loadbang; +#X msg 605 2 set 1; +#X obj 604 33 s \$0lover; +#X obj 412 -34 f 1; +#X obj 411 -9 t b f b b; +#X obj 258 137 s \$0_slider_r; +#X obj 435 97 t b b b; +#X connect 1 0 0 0; +#X connect 1 1 0 1; +#X connect 2 0 0 0; +#X connect 2 1 0 1; +#X connect 3 0 4 2; +#X connect 3 1 0 2; +#X connect 4 0 17 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 4 0; +#X connect 6 1 4 1; +#X connect 7 0 22 0; +#X connect 8 0 12 0; +#X connect 9 0 24 0; +#X connect 10 0 11 0; +#X connect 17 0 9 0; +#X connect 17 1 3 0; +#X connect 17 2 0 3; +#X connect 17 2 1 0; +#X connect 17 3 0 4; +#X connect 18 0 22 0; +#X connect 19 0 20 0; +#X connect 20 0 21 0; +#X connect 22 0 23 0; +#X connect 23 0 25 0; +#X connect 23 1 3 1; +#X connect 23 2 10 0; +#X connect 23 3 0 3; +#X connect 23 3 14 0; +#X connect 25 0 8 0; +#X connect 25 1 5 0; +#X connect 25 2 13 0; +#X restore 229 -9 pd ./browser; +#X obj -45 15 hradio 15 1 0 12 \$0_hr_0_s0 \$0_hr_0_r0 2d 2 8 1 9 -1 +-1 -262140 0; +#X obj -45 31 hradio 15 1 0 12 \$0_hr_1_s0 \$0_hr_1_r0 3d 2 8 1 9 -1 +-1 -262140 0; +#X obj -45 -9 cnv 15 198 22 empty empty TAG 1 12 1 12 -16645 -228856 +0; +#X obj 154 -9 cnv 15 197 22 empty empty CLASS/ABSTRACTION 0 12 1 12 +-16645 -228856 0; +#X obj -45 137 cnv 15 396 20 empty empty empty 20 12 0 14 -16645 -258401 +0; +#X obj -41 141 tgl 11 0 \$0love \$0lover with:love 17 6 0 8 -162280 +-262144 -258401 1 1; diff --git a/2dAngle-help.pd b/2dAngle-help.pd new file mode 100644 index 0000000..9047adf --- /dev/null +++ b/2dAngle-help.pd @@ -0,0 +1,87 @@ +#N canvas 105 259 694 498 10; +#X declare -lib Gem; +#X floatatom 21 214 5 0 0 0 - - -; +#X msg 21 109 0 1; +#X msg 108 108 9 5; +#X msg 139 108 1 0; +#X msg 55 109 -2 6; +#X text 18 86 Target point.; +#X text 106 86 Reference point.; +#X text 68 212 Angle in degrees.; +#X msg 171 108 0 -1; +#X text 250 85 -- GEM EXAMPLE --; +#X obj 257 342 circle 0.3; +#X obj 257 314 colorRGB 1 0 0; +#X obj 313 233 cos; +#X obj 368 234 sin; +#X floatatom 313 255 5 0 0 0 - - -; +#X floatatom 368 256 5 0 0 0 - - -; +#X obj 367 206 t f f; +#X obj 417 284 pack; +#X floatatom 417 355 5 0 0 0 - - -; +#X obj 366 354 gemhead; +#X obj 366 454 curve 2; +#X msg 385 429 0 0 0; +#X msg 426 428 1 0 0; +#X obj 366 380 rotateXYZ; +#X obj 367 134 metro 1000; +#X obj 367 112 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 +1; +#X obj 367 91 loadbang; +#X obj 385 401 loadbang; +#X text 409 256 x y position of red circle.; +#X text 426 331 angle between 0 0 and x y of circle; +#X msg 510 206 3; +#X msg 510 182 4; +#X msg 509 159 6; +#X msg 511 228 0.1; +#X msg 253 108 1; +#X msg 285 108 0; +#X obj 12 10 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 17 52 tags: 2d; +#X text 17 13 Description: Returns the angle in degrees between two +2d points.; +#X obj 253 134 mtl/gemsWin; +#X obj 21 171 mtl/2dAngle; +#X obj 417 307 mtl/2dAngle; +#X obj 367 159 mtl/randomFloat 0 6; +#X obj 612 11 import Gem; +#X obj 257 254 gemhead; +#X obj 257 287 translateXYZ 0 0 0; +#X connect 1 0 40 0; +#X connect 2 0 40 1; +#X connect 3 0 40 1; +#X connect 4 0 40 0; +#X connect 8 0 40 1; +#X connect 11 0 10 0; +#X connect 12 0 14 0; +#X connect 13 0 15 0; +#X connect 14 0 17 0; +#X connect 14 0 45 1; +#X connect 15 0 17 1; +#X connect 15 0 45 2; +#X connect 16 0 12 0; +#X connect 16 1 13 0; +#X connect 17 0 41 0; +#X connect 18 0 23 3; +#X connect 19 0 23 0; +#X connect 21 0 20 1; +#X connect 22 0 20 2; +#X connect 23 0 20 0; +#X connect 24 0 42 0; +#X connect 25 0 24 0; +#X connect 26 0 25 0; +#X connect 27 0 21 0; +#X connect 27 0 22 0; +#X connect 30 0 16 0; +#X connect 31 0 16 0; +#X connect 32 0 16 0; +#X connect 33 0 16 0; +#X connect 34 0 39 0; +#X connect 35 0 39 0; +#X connect 40 0 0 0; +#X connect 41 0 18 0; +#X connect 42 0 16 0; +#X connect 44 0 45 0; +#X connect 45 0 11 0; diff --git a/2dAngle.pd b/2dAngle.pd new file mode 100644 index 0000000..f0faaa9 --- /dev/null +++ b/2dAngle.pd @@ -0,0 +1,93 @@ +#N canvas 232 25 1012 720 10; +#X obj 284 457 atan; +#X obj 165 182 inlet; +#X obj 316 177 inlet; +#X text 203 184 x y; +#X obj 178 211 unpack; +#X obj 294 208 unpack; +#X obj 208 253 - \$1; +#X obj 287 252 - \$2; +#X obj 281 436 /; +#X obj 288 411 swap; +#X obj 364 387 < 0; +#X obj 275 366 t f f; +#X obj 427 558 *; +#X obj 480 571 +; +#X obj 420 403 pack; +#X obj 372 354 t f f; +#X obj 422 373 > 0; +#X obj 449 427 route 1; +#X obj 448 455 sel 0 1; +#X obj 427 598 *; +#X obj 238 278 pack; +#X obj 292 334 unpack; +#X obj 238 302 route 0; +#X obj 168 343 moses 0; +#X obj 348 679 outlet; +#X obj 378 639 * 57.2958; +#X obj 202 407 / 2; +#X obj 104 420 / -2; +#X obj 567 439 t b b; +#X obj 383 476 t b b; +#X msg 560 462 1; +#X msg 605 461 0; +#X msg 379 499 -1; +#X msg 526 512 1; +#X obj 516 491 t b b; +#X obj 104 392 hcs/pi; +#X obj 202 385 hcs/pi; +#X obj 438 481 hcs/pi; +#X obj 628 491 hcs/pi; +#X connect 0 0 12 0; +#X connect 1 0 4 0; +#X connect 2 0 5 0; +#X connect 4 0 6 0; +#X connect 4 1 7 0; +#X connect 5 0 6 1; +#X connect 5 1 7 1; +#X connect 6 0 20 0; +#X connect 7 0 20 1; +#X connect 8 0 0 0; +#X connect 9 0 8 0; +#X connect 9 1 8 1; +#X connect 10 0 14 0; +#X connect 11 0 9 0; +#X connect 11 1 10 0; +#X connect 12 0 13 0; +#X connect 13 0 19 0; +#X connect 14 0 17 0; +#X connect 15 0 9 1; +#X connect 15 1 16 0; +#X connect 16 0 14 1; +#X connect 17 0 18 0; +#X connect 17 1 28 0; +#X connect 18 0 29 0; +#X connect 18 1 34 0; +#X connect 19 0 25 0; +#X connect 20 0 22 0; +#X connect 21 0 11 0; +#X connect 21 1 15 0; +#X connect 22 0 23 0; +#X connect 22 1 21 0; +#X connect 23 0 35 0; +#X connect 23 1 36 0; +#X connect 25 0 24 0; +#X connect 26 0 25 0; +#X connect 27 0 25 0; +#X connect 28 0 30 0; +#X connect 28 1 31 0; +#X connect 29 0 32 0; +#X connect 29 1 37 0; +#X connect 30 0 12 1; +#X connect 30 0 19 1; +#X connect 31 0 13 1; +#X connect 32 0 12 1; +#X connect 32 0 19 1; +#X connect 33 0 12 1; +#X connect 33 0 19 1; +#X connect 34 0 33 0; +#X connect 34 1 38 0; +#X connect 35 0 27 0; +#X connect 36 0 26 0; +#X connect 37 0 13 1; +#X connect 38 0 13 1; diff --git a/2dAngleLine-help.pd b/2dAngleLine-help.pd new file mode 100644 index 0000000..03c88d3 --- /dev/null +++ b/2dAngleLine-help.pd @@ -0,0 +1,44 @@ +#N canvas 524 238 530 360 10; +#X declare -lib Gem; +#X text 274 50 -- GEM EXAMPLE --; +#X text 18 117 Inlet_1: The target angle.; +#X text 18 157 Inlet_3: Set the current angle.; +#X text 18 137 Inlet_2: Set the ramp time.; +#X text 18 186 Argument_1: The ramp time.; +#X text 18 204 Argument_2: The initial angle.; +#X msg 238 90 1; +#X obj 239 146 gemhead; +#X obj 239 194 translateXYZ; +#X obj 262 168 unpack; +#X obj 239 286 rectangle 0.1 1; +#X obj 345 136 t a a a; +#X obj 239 235 rotateXYZ; +#X obj 346 208 + 90; +#X obj 239 262 translateXYZ 0 1 0; +#X msg 268 90 0; +#X obj 12 11 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 17 53 tags: 2d; +#X text 18 13 Description: A ramp between two angles that takes the +quickest route.; +#X obj 346 158 mtl/2dAngle; +#X obj 346 182 mtl/2dAngleLine 100; +#X obj 238 114 mtl/gemsWin; +#X obj 345 113 mtl/gemsMouse; +#X obj 21 92 mtl/2dAngleLine 5; +#X obj 442 15 import Gem; +#X connect 6 0 21 0; +#X connect 7 0 8 0; +#X connect 8 0 12 0; +#X connect 9 0 8 1; +#X connect 9 1 8 2; +#X connect 11 0 19 1; +#X connect 11 1 19 0; +#X connect 11 2 9 0; +#X connect 12 0 14 0; +#X connect 13 0 12 3; +#X connect 14 0 10 0; +#X connect 15 0 21 0; +#X connect 19 0 20 0; +#X connect 20 0 13 0; +#X connect 22 0 11 0; diff --git a/2dAngleLine.pd b/2dAngleLine.pd new file mode 100644 index 0000000..239715d --- /dev/null +++ b/2dAngleLine.pd @@ -0,0 +1,72 @@ +#N canvas 362 123 799 765 10; +#X obj 371 32 inlet current_angle; +#X obj 25 10 inlet target_angle; +#X obj 314 627 line; +#X obj 229 667 t f f; +#X obj 228 713 outlet; +#X obj 247 20 inlet time; +#X obj 474 79 loadbang; +#X obj 394 110 f \$2; +#X obj 456 351 moses 0; +#X obj 537 397 moses 180; +#X obj 430 388 moses -180; +#X msg 488 423 0; +#X obj 98 253 -; +#X obj 25 67 moses 0; +#X obj 178 125 mod 360; +#X obj 77 306 f 0; +#X obj 126 212 f 0; +#X obj 78 181 t b f b f; +#X obj 45 156 t f f; +#X msg 430 412 1; +#X msg 595 427 2; +#X obj 542 508 expr 360+$f1; +#X obj 443 504 expr $f1-360; +#X msg 385 165 \$1 0; +#X obj 441 543 t f f; +#X obj 289 528 pack f \$1; +#X msg 277 569 \$1 \$2; +#X msg 431 569 \$1 0; +#X obj 8 106 expr (($f1*(-1))%360)*(-1); +#X obj 401 462 zexy/demultiplex 0 1 2; +#X connect 0 0 7 0; +#X connect 1 0 13 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X connect 3 1 15 1; +#X connect 3 1 16 1; +#X connect 5 0 25 1; +#X connect 6 0 7 0; +#X connect 7 0 23 0; +#X connect 8 0 10 0; +#X connect 8 1 9 0; +#X connect 9 0 11 0; +#X connect 9 1 20 0; +#X connect 10 0 19 0; +#X connect 10 1 11 0; +#X connect 11 0 29 1; +#X connect 12 0 8 0; +#X connect 13 0 28 0; +#X connect 13 1 14 0; +#X connect 14 0 18 0; +#X connect 15 0 29 0; +#X connect 16 0 12 1; +#X connect 17 0 15 0; +#X connect 17 1 12 0; +#X connect 17 2 16 0; +#X connect 18 0 25 0; +#X connect 18 1 17 0; +#X connect 19 0 29 1; +#X connect 20 0 29 1; +#X connect 21 0 24 0; +#X connect 22 0 24 0; +#X connect 23 0 2 0; +#X connect 24 0 27 0; +#X connect 24 1 15 1; +#X connect 24 1 16 1; +#X connect 25 0 26 0; +#X connect 26 0 2 0; +#X connect 27 0 2 0; +#X connect 28 0 18 0; +#X connect 29 1 22 0; +#X connect 29 2 21 0; diff --git a/2dDistance-help.pd b/2dDistance-help.pd new file mode 100644 index 0000000..06c1f73 --- /dev/null +++ b/2dDistance-help.pd @@ -0,0 +1,91 @@ +#N canvas 488 174 619 331 10; +#X floatatom 211 241 5 0 0 0 - - -; +#X obj 31 122 cnv 15 127 127 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X obj 39 130 cnv 15 15 15 empty c1 empty 20 12 0 14 -258699 -66577 +0; +#X obj 102 213 cnv 15 15 15 empty c2 empty 20 12 0 14 -62784 -66577 +0; +#X obj 13 120 vsl 15 128 0 112 0 1 rv empty empty 0 -8 0 8 -258699 +-1 -1 10400 1; +#X obj 31 103 hsl 128 15 0 112 0 1 rh empty empty -2 -6 0 8 -258699 +-1 -1 4500 1; +#X obj 162 121 vsl 15 128 0 112 0 1 bv empty empty 0 -8 0 8 -62784 +-1 -1 1000 1; +#X obj 31 252 hsl 128 15 0 112 0 1 bh empty empty -2 -6 0 8 -62784 +-1 -1 11600 1; +#N canvas 0 22 482 332 graphics.guts 0; +#X obj 100 157 pack; +#X obj 84 130 t b f; +#X msg 79 186 \; c1 pos \$1 \$2; +#X msg 246 185 \; c2 pos \$1 \$2; +#X obj 248 166 pack; +#X obj 54 121 -; +#X obj 241 80 -; +#X msg 55 99 112 \$1; +#X msg 240 61 112 \$1; +#X obj 242 137 t b b f; +#X obj 190 133 t b f; +#X obj 192 114 r bh; +#X obj 264 38 r bv; +#X obj 122 116 r rh; +#X obj 58 46 r rv; +#X obj 94 231 s red_position; +#X obj 242 236 s blue_position; +#X obj 241 105 + 100; +#X obj 36 148 + 100; +#X connect 0 0 2 0; +#X connect 0 0 15 0; +#X connect 1 0 0 0; +#X connect 1 1 0 1; +#X connect 4 0 3 0; +#X connect 4 0 16 0; +#X connect 5 0 18 0; +#X connect 6 0 17 0; +#X connect 7 0 5 0; +#X connect 8 0 6 0; +#X connect 9 0 0 0; +#X connect 9 1 4 0; +#X connect 9 2 4 1; +#X connect 10 0 0 0; +#X connect 10 1 4 0; +#X connect 11 0 10 0; +#X connect 12 0 8 0; +#X connect 13 0 0 0; +#X connect 14 0 7 0; +#X connect 17 0 9 0; +#X connect 18 0 1 0; +#X restore 46 276 pd graphics.guts; +#X obj 211 120 r red_position; +#X obj 338 122 r blue_position; +#X obj 338 143 unpack; +#X obj 338 183 pack; +#X floatatom 338 164 5 0 0 0 - - -; +#X floatatom 375 164 5 0 0 0 - - -; +#X obj 211 141 unpack; +#X obj 211 181 pack; +#X floatatom 211 162 5 0 0 0 - - -; +#X floatatom 249 162 5 0 0 0 - - -; +#X text 10 79 Drag the sliders to move the squares.; +#X text 314 207 Both inlets expect a pair of x y coordinates.; +#X text 245 242 Distance in pixels between the blue and red square. +; +#X obj 211 207 mtl/2dDistance; +#X obj 11 7 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 16 49 tags: 2d; +#X text 16 11 Description: Calculates the 2d distance between 2 points. +; +#X connect 9 0 15 0; +#X connect 10 0 11 0; +#X connect 11 0 13 0; +#X connect 11 1 14 0; +#X connect 12 0 22 1; +#X connect 13 0 12 0; +#X connect 14 0 12 1; +#X connect 15 0 17 0; +#X connect 15 1 18 0; +#X connect 16 0 22 0; +#X connect 17 0 16 0; +#X connect 18 0 16 1; +#X connect 22 0 0 0; diff --git a/2dDistance.pd b/2dDistance.pd new file mode 100644 index 0000000..2a94c50 --- /dev/null +++ b/2dDistance.pd @@ -0,0 +1,32 @@ +#N canvas 0 22 486 336 10; +#X obj 82 25 inlet; +#X obj 216 26 inlet; +#X text 120 27 x y; +#X text 253 27 x y; +#X obj 95 54 unpack; +#X obj 211 51 unpack; +#X obj 182 192 +; +#X obj 183 226 sqrt; +#X obj 186 264 outlet; +#X obj 124 93 - \$1; +#X obj 212 89 - \$2; +#X obj 123 149 *; +#X obj 221 149 *; +#X obj 123 119 t f f; +#X obj 215 112 t f f; +#X connect 0 0 4 0; +#X connect 1 0 5 0; +#X connect 4 0 9 0; +#X connect 4 1 10 0; +#X connect 5 0 9 1; +#X connect 5 1 10 1; +#X connect 6 0 7 0; +#X connect 7 0 8 0; +#X connect 9 0 13 0; +#X connect 10 0 14 0; +#X connect 11 0 6 0; +#X connect 12 0 6 1; +#X connect 13 0 11 0; +#X connect 13 1 11 1; +#X connect 14 0 12 0; +#X connect 14 1 12 1; diff --git a/2dRatio-help.pd b/2dRatio-help.pd new file mode 100644 index 0000000..b0ed9fe --- /dev/null +++ b/2dRatio-help.pd @@ -0,0 +1,19 @@ +#N canvas 674 84 439 246 10; +#X msg 22 89 640 480; +#X msg 78 89 320 240; +#X msg 134 89 256 256; +#X obj 22 160 print; +#X obj 75 162 /; +#X floatatom 75 191 5 0 0 0 - - -; +#X obj 22 127 mtl/2dRatio; +#X obj 14 12 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 19 54 tags: 2d; +#X text 20 14 Description: Returns the ratio of two values between +each other.; +#X connect 0 0 6 0; +#X connect 1 0 6 0; +#X connect 2 0 6 0; +#X connect 4 0 5 0; +#X connect 6 0 3 0; +#X connect 6 0 4 0; diff --git a/2dRatio.pd b/2dRatio.pd new file mode 100644 index 0000000..aed8aa0 --- /dev/null +++ b/2dRatio.pd @@ -0,0 +1,34 @@ +#N canvas 719 239 619 400 10; +#X obj 155 194 /; +#X obj 197 196 /; +#X obj 155 76 inlet; +#X obj 155 243 outlet; +#X obj 155 99 t l l; +#X obj 155 133 unpack; +#X obj 155 222 pack; +#X obj 237 242 outlet; +#X obj 237 195 /; +#X obj 263 195 /; +#X obj 155 160 t f f; +#X obj 207 160 t f f; +#X obj 237 220 pack; +#X obj 252 132 zexy/minmax; +#X connect 0 0 6 0; +#X connect 1 0 6 1; +#X connect 2 0 4 0; +#X connect 4 0 5 0; +#X connect 4 1 13 0; +#X connect 5 0 10 0; +#X connect 5 1 11 0; +#X connect 6 0 3 0; +#X connect 8 0 12 0; +#X connect 9 0 12 1; +#X connect 10 0 0 0; +#X connect 10 1 8 0; +#X connect 11 0 1 0; +#X connect 11 1 9 0; +#X connect 12 0 7 0; +#X connect 13 0 8 1; +#X connect 13 0 9 1; +#X connect 13 1 0 1; +#X connect 13 1 1 1; diff --git a/3dAdd-help.pd b/3dAdd-help.pd new file mode 100644 index 0000000..6e3718c --- /dev/null +++ b/3dAdd-help.pd @@ -0,0 +1,26 @@ +#N canvas 129 119 410 258 10; +#X msg 47 107 2 1 0; +#X msg 120 108 3 4 5; +#X obj 21 168 unpack f f f; +#X floatatom 21 191 5 0 0 0 - - -; +#X floatatom 60 191 5 0 0 0 - - -; +#X floatatom 100 192 5 0 0 0 - - -; +#X msg 21 84 1 2 3; +#X text 171 103 args: ; +#X text 169 133 1st inlet: accepts list of 3 floats; +#X text 169 153 2nd inlet: accepts list of 3 floats; +#X text 171 193 outlet: list of 3 floats; +#X obj 21 134 mtl/3dAdd 0 1 2; +#X obj 11 9 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 269 50 Version: 2007-12-09; +#X text 18 10 Description: Adds two vectors; +#X text 102 51 Author: Roman Haefeli; +#X text 16 51 tags: 3d; +#X connect 0 0 11 0; +#X connect 1 0 11 1; +#X connect 2 0 3 0; +#X connect 2 1 4 0; +#X connect 2 2 5 0; +#X connect 6 0 11 0; +#X connect 11 0 2 0; diff --git a/3dAdd.pd b/3dAdd.pd new file mode 100644 index 0000000..d267632 --- /dev/null +++ b/3dAdd.pd @@ -0,0 +1,32 @@ +#N canvas 78 84 498 265 10; +#X obj 35 48 unpack f f f; +#X obj 35 153 pack f f f; +#X text 211 153 V =; +#X obj 168 49 unpack f f f; +#X text 128 10 A; +#X text 263 12 B; +#X text 135 181 V; +#X obj 35 9 inlet vector; +#X obj 168 12 inlet vector; +#X obj 35 178 outlet vector; +#X text 245 137 | Ax+Bx |; +#X text 245 153 | Ay+By |; +#X text 245 169 | Ay+By |; +#X text 318 154 = A + B; +#X obj 35 121 + \$1; +#X obj 74 122 + \$2; +#X obj 114 122 + \$3; +#X text 292 225 Version: 2007-12-09; +#X text 293 244 Author: Roman Haefeli; +#X connect 0 0 14 0; +#X connect 0 1 15 0; +#X connect 0 2 16 0; +#X connect 1 0 9 0; +#X connect 3 0 14 1; +#X connect 3 1 15 1; +#X connect 3 2 16 1; +#X connect 7 0 0 0; +#X connect 8 0 3 0; +#X connect 14 0 1 0; +#X connect 15 0 1 1; +#X connect 16 0 1 2; diff --git a/3dAngle-help.pd b/3dAngle-help.pd new file mode 100644 index 0000000..d1086f1 --- /dev/null +++ b/3dAngle-help.pd @@ -0,0 +1,27 @@ +#N canvas 183 120 451 274 10; +#X msg 135 93 1 0 0; +#X text 205 94 args: ; +#X text 203 124 1st inlet: accepts list of 3 floats; +#X text 203 144 2nd inlet: accepts list of 3 floats; +#X floatatom 24 222 5 0 0 0 - - -; +#X msg 50 97 0 -1 0; +#X text 202 184 outlet: float ; +#X msg 67 117 -1 0 0; +#X msg 24 78 1 1 0; +#X msg 141 115 0 1 0; +#X obj 24 139 mtl/3dAngle 0 1 0; +#X obj 14 7 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 19 49 tags: 3d; +#X text 116 49 Author: Roman Haefeli; +#X text 269 49 Version: 2007-12-09; +#X text 20 9 Description: Computes the angle between both incoming +vectors.; +#X obj 24 184 mtl/radianToDegree; +#X connect 0 0 10 1; +#X connect 5 0 10 0; +#X connect 7 0 10 0; +#X connect 8 0 10 0; +#X connect 9 0 10 1; +#X connect 10 0 16 0; +#X connect 16 0 4 0; diff --git a/3dAngle.pd b/3dAngle.pd new file mode 100644 index 0000000..3b6866e --- /dev/null +++ b/3dAngle.pd @@ -0,0 +1,46 @@ +#N canvas 110 65 471 385 10; +#X obj 23 228 expr acos($f1); +#X obj 23 21 inlet vector; +#X obj 234 22 inlet vector; +#X obj 23 170 /; +#X obj 23 200 /; +#X obj 23 273 outlet float; +#X text 118 23 A; +#X text 328 24 B; +#X text 257 195 .; +#X text 151 198 rho = arccos((A; +#X text 266 198 B)/(|A|*|B|)); +#X text 118 273 rho; +#X text 25 308 computes the angle (radian) between both incoming vectors +; +#X obj 352 27 loadbang; +#X obj 352 50 t b b b; +#X obj 352 73 \$1; +#X obj 384 73 \$2; +#X obj 417 74 \$3; +#X obj 352 96 pack f f f; +#X text 291 344 Version: 2007-12-09; +#X text 292 363 Author: Roman Haefeli; +#X obj 23 50 t a a; +#X obj 161 119 ./3dMagnitude; +#X obj 234 150 ./3dMagnitude; +#X obj 23 119 ./3dDot \$1 \$2 \$3; +#X connect 0 0 5 0; +#X connect 1 0 21 0; +#X connect 2 0 23 0; +#X connect 2 0 24 1; +#X connect 3 0 4 0; +#X connect 4 0 0 0; +#X connect 13 0 14 0; +#X connect 14 0 15 0; +#X connect 14 1 16 0; +#X connect 14 2 17 0; +#X connect 15 0 18 0; +#X connect 16 0 18 1; +#X connect 17 0 18 2; +#X connect 18 0 23 0; +#X connect 21 0 24 0; +#X connect 21 1 22 0; +#X connect 22 0 3 1; +#X connect 23 0 4 1; +#X connect 24 0 3 0; diff --git a/3dCross-help.pd b/3dCross-help.pd new file mode 100644 index 0000000..d942f61 --- /dev/null +++ b/3dCross-help.pd @@ -0,0 +1,33 @@ +#N canvas 202 166 447 279 10; +#X obj 24 187 unpack f f f; +#X floatatom 24 212 5 0 0 0 - - -; +#X floatatom 63 212 5 0 0 0 - - -; +#X floatatom 103 212 5 0 0 0 - - -; +#X msg 24 78 1 0 0; +#X msg 50 103 0 1 0; +#X msg 64 128 0 0 1; +#X msg 135 106 1 0 0; +#X msg 143 127 0 0 1; +#X text 21 233 the outcoming vector is orthogonal to both incoming +vectors; +#X text 195 91 args: ; +#X text 193 121 1st inlet: accepts list of 3 floats; +#X text 193 141 2nd inlet: accepts list of 3 floats; +#X text 195 181 outlet: list of 3 floats; +#X obj 24 149 mtl/3dCross 0 1 0; +#X obj 13 8 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 18 50 tags: 3d; +#X text 115 50 Author: Roman Haefeli; +#X text 268 50 Version: 2007-12-09; +#X text 19 11 Description: Computes the cross product of two vectors. +; +#X connect 0 0 1 0; +#X connect 0 1 2 0; +#X connect 0 2 3 0; +#X connect 4 0 14 0; +#X connect 5 0 14 0; +#X connect 6 0 14 0; +#X connect 7 0 14 1; +#X connect 8 0 14 1; +#X connect 14 0 0 0; diff --git a/3dCross.pd b/3dCross.pd new file mode 100644 index 0000000..3cfd101 --- /dev/null +++ b/3dCross.pd @@ -0,0 +1,60 @@ +#N canvas 213 104 543 353 10; +#X obj 65 58 unpack f f f; +#X obj 35 267 pack f f f; +#X text 316 250 V =; +#X obj 244 62 unpack f f f; +#X obj 51 213 -; +#X obj 146 221 -; +#X obj 267 216 -; +#X obj 35 238 f; +#X obj 146 194 f; +#X obj 202 167 t b f; +#X text 350 230 | Ay*Bz-Az*By |; +#X text 128 10 A; +#X text 339 13 B; +#X text 350 248 | Az*Bx-Ax*Bz |; +#X text 350 266 | Ax*By-Ay*Bx |; +#X text 460 249 = A x B; +#X text 134 293 V; +#X obj 35 9 inlet vector; +#X obj 244 13 inlet vector; +#X obj 35 292 outlet vector; +#X obj 35 34 t b l; +#X obj 162 144 * \$1; +#X obj 307 145 * \$1; +#X obj 91 144 * \$2; +#X obj 267 145 * \$2; +#X obj 202 144 * \$3; +#X obj 51 142 * \$3; +#X text 344 307 Version: 2007-12-09; +#X text 345 326 Author: Roman Haefeli; +#X connect 0 0 24 0; +#X connect 0 0 25 0; +#X connect 0 1 22 0; +#X connect 0 1 26 0; +#X connect 0 2 21 0; +#X connect 0 2 23 0; +#X connect 1 0 19 0; +#X connect 3 0 21 1; +#X connect 3 0 22 1; +#X connect 3 1 23 1; +#X connect 3 1 24 1; +#X connect 3 2 25 1; +#X connect 3 2 26 1; +#X connect 4 0 7 1; +#X connect 5 0 1 1; +#X connect 6 0 1 2; +#X connect 7 0 1 0; +#X connect 8 0 5 0; +#X connect 9 0 8 0; +#X connect 9 1 5 1; +#X connect 17 0 20 0; +#X connect 18 0 3 0; +#X connect 20 0 7 0; +#X connect 20 1 0 0; +#X connect 21 0 8 1; +#X connect 22 0 6 1; +#X connect 23 0 4 1; +#X connect 24 0 6 0; +#X connect 25 0 9 0; +#X connect 26 0 4 0; diff --git a/3dDistance-help.pd b/3dDistance-help.pd new file mode 100644 index 0000000..ddbcfba --- /dev/null +++ b/3dDistance-help.pd @@ -0,0 +1,21 @@ +#N canvas 378 442 421 197 10; +#X msg 19 94 0 1 4; +#X text 17 76 x y z; +#X text 152 75 x y z; +#X msg 154 94 5 -3 4; +#X floatatom 19 159 5 0 0 0 - - -; +#X msg 62 94 3 -7 0; +#X msg 206 94 3 -7 0; +#X obj 11 6 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 16 48 tags: 3d; +#X text 113 48 Author: Roman Haefeli; +#X text 266 48 Version: 2007-12-09; +#X text 17 9 Description: Returns the distance between two 3d points. +; +#X obj 19 135 mtl/3dDistance 3 -7 0; +#X connect 0 0 12 0; +#X connect 3 0 12 1; +#X connect 5 0 12 0; +#X connect 6 0 12 1; +#X connect 12 0 4 0; diff --git a/3dDistance.pd b/3dDistance.pd new file mode 100644 index 0000000..238575d --- /dev/null +++ b/3dDistance.pd @@ -0,0 +1,43 @@ +#N canvas 0 0 478 328 12; +#X obj 82 25 inlet; +#X obj 216 26 inlet; +#X obj 175 192 +; +#X obj 179 249 sqrt; +#X obj 174 278 outlet; +#X obj 124 93 - \$1; +#X obj 212 89 - \$2; +#X text 132 25 x y z; +#X text 274 27 x y z; +#X obj 95 54 unpack f f f; +#X obj 208 220 +; +#X obj 304 89 - \$3; +#X obj 126 122 t f f; +#X obj 211 121 t f f; +#X obj 296 127 t f f; +#X obj 126 160 *; +#X obj 198 152 *; +#X obj 280 165 *; +#X obj 211 51 unpack \$1 \$2 \$3; +#X connect 0 0 9 0; +#X connect 1 0 18 0; +#X connect 2 0 10 0; +#X connect 3 0 4 0; +#X connect 5 0 12 0; +#X connect 6 0 13 0; +#X connect 9 0 5 0; +#X connect 9 1 6 0; +#X connect 9 2 11 0; +#X connect 10 0 3 0; +#X connect 11 0 14 0; +#X connect 12 0 15 0; +#X connect 12 1 15 1; +#X connect 13 0 16 0; +#X connect 13 1 16 1; +#X connect 14 0 17 0; +#X connect 14 1 17 1; +#X connect 15 0 2 0; +#X connect 16 0 2 1; +#X connect 17 0 10 1; +#X connect 18 0 5 1; +#X connect 18 1 6 1; +#X connect 18 2 11 1; diff --git a/3dDot-help.pd b/3dDot-help.pd new file mode 100644 index 0000000..5eed6aa --- /dev/null +++ b/3dDot-help.pd @@ -0,0 +1,29 @@ +#N canvas 726 327 438 307 10; +#X msg 24 77 1 0 0; +#X msg 123 99 1 0 0; +#X msg 130 120 0 0 1; +#X text 195 87 args: ; +#X text 193 117 1st inlet: accepts list of 3 floats; +#X text 193 137 2nd inlet: accepts list of 3 floats; +#X text 192 175 outlet: float ; +#X floatatom 24 181 5 0 0 0 - - -; +#X msg 50 100 0 -1 0; +#X msg 66 122 0 0 -1; +#X text 21 214 the dot product is the same as: |A|*|B|*cos(rho); +#X text 21 227 where rho is the angle between the vectors A and B; +#X text 21 245 don't know for what it could be useful besides computing +the angle.; +#X obj 24 145 mtl/3dDot 0 1 0; +#X obj 14 8 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 19 50 tags: 3d; +#X text 116 50 Author: Roman Haefeli; +#X text 269 50 Version: 2007-12-09; +#X text 20 9 Description: Computes the dot product of two vectors. +; +#X connect 0 0 13 0; +#X connect 1 0 13 1; +#X connect 2 0 13 1; +#X connect 8 0 13 0; +#X connect 9 0 13 0; +#X connect 13 0 7 0; diff --git a/3dDot.pd b/3dDot.pd new file mode 100644 index 0000000..bba2c60 --- /dev/null +++ b/3dDot.pd @@ -0,0 +1,33 @@ +#N canvas 59 4 508 268 10; +#X obj 16 21 inlet vector; +#X text 113 23 A; +#X obj 168 22 inlet vector; +#X text 265 24 B; +#X obj 168 53 unpack f f f; +#X obj 16 54 unpack f f f; +#X obj 16 119 * \$1; +#X obj 55 119 * \$2; +#X obj 95 120 * \$3; +#X obj 16 152 +; +#X obj 16 182 +; +#X obj 16 220 outlet float; +#X text 139 158 A; +#X text 151 155 .; +#X text 163 158 B = Ax*Bx+Ay*By+Az*Bz = |A|*|B|*cos(rho); +#X text 138 187 where rho is the angle between the vectors A and B +; +#X text 310 220 Version: 2007-12-09; +#X text 311 239 Author: Roman Haefeli; +#X connect 0 0 5 0; +#X connect 2 0 4 0; +#X connect 4 0 6 1; +#X connect 4 1 7 1; +#X connect 4 2 8 1; +#X connect 5 0 6 0; +#X connect 5 1 7 0; +#X connect 5 2 8 0; +#X connect 6 0 9 0; +#X connect 7 0 9 1; +#X connect 8 0 10 1; +#X connect 9 0 10 0; +#X connect 10 0 11 0; diff --git a/3dMagnitude-help.pd b/3dMagnitude-help.pd new file mode 100644 index 0000000..9d94eb3 --- /dev/null +++ b/3dMagnitude-help.pd @@ -0,0 +1,19 @@ +#N canvas 56 27 411 191 10; +#X text 145 112 args: none; +#X text 144 127 inlet: accepts list of 3 floats; +#X text 144 142 outlet: float ; +#X floatatom 19 138 5 0 0 0 - - -; +#X msg 63 90 3 1 2; +#X msg 106 90 0 0 7; +#X msg 19 90 1 1 0; +#X obj 12 6 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 17 48 tags: 3d; +#X text 114 48 Author: Roman Haefeli; +#X text 267 48 Version: 2007-12-09; +#X obj 19 115 mtl/3dMagnitude; +#X text 17 8 Description: Computes the magnitude of a vector.; +#X connect 4 0 11 0; +#X connect 5 0 11 0; +#X connect 6 0 11 0; +#X connect 11 0 3 0; diff --git a/3dMagnitude.pd b/3dMagnitude.pd new file mode 100644 index 0000000..be80003 --- /dev/null +++ b/3dMagnitude.pd @@ -0,0 +1,35 @@ +#N canvas 139 64 481 270 10; +#X obj 21 39 unpack f f f; +#X obj 21 104 *; +#X obj 76 104 *; +#X obj 131 103 *; +#X obj 21 127 +; +#X obj 21 148 +; +#X obj 21 169 sqrt; +#X obj 21 198 outlet float; +#X obj 21 14 inlet vector; +#X text 115 14 A; +#X text 115 199 m; +#X text 179 173 m = (Ax^2+Ay^2+Az^2)^(1/2); +#X text 129 143 computes the magnitude of the incoming vector; +#X obj 21 82 t f f; +#X obj 76 82 t f f; +#X obj 131 81 t f f; +#X text 301 226 Version: 2007-12-09; +#X text 302 245 Author: Roman Haefeli; +#X connect 0 0 13 0; +#X connect 0 1 14 0; +#X connect 0 2 15 0; +#X connect 1 0 4 0; +#X connect 2 0 4 1; +#X connect 3 0 5 1; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 8 0 0 0; +#X connect 13 0 1 0; +#X connect 13 1 1 1; +#X connect 14 0 2 0; +#X connect 14 1 2 1; +#X connect 15 0 3 0; +#X connect 15 1 3 1; diff --git a/3dMove-help.pd b/3dMove-help.pd new file mode 100644 index 0000000..c8498db --- /dev/null +++ b/3dMove-help.pd @@ -0,0 +1,35 @@ +#N canvas 465 249 490 322 10; +#X obj 24 177 unpack f f f; +#X floatatom 24 202 5 0 0 0 - - -; +#X floatatom 63 202 5 0 0 0 - - -; +#X floatatom 103 202 5 0 0 0 - - -; +#X text 221 182 2nd inlet: accepts list of 3 floats; +#X text 222 281 outlet: list of 3 floats; +#X msg 94 114 2 2 2; +#X obj 24 100 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X msg 165 113 4 3 5; +#X msg 146 92 1 1 1; +#X text 222 88 args: ; +#X text 293 104 startpoint and direction; +#X text 221 136 1st inlet: accepts bangs; +#X text 220 232 3rd inlet: accepts list of 3 floats; +#X text 295 202 sets the startpoint; +#X text 297 249 sets the direction; +#X text 295 152 trigger; +#X obj 24 139 mtl/3dMove 0 0 0 1 2 4; +#X obj 15 6 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 20 48 tags: 3d; +#X text 117 48 Author: Roman Haefeli; +#X text 270 48 Version: 2007-12-09; +#X text 20 8 Description: Moves a vector in the given direction on +each step.; +#X connect 0 0 1 0; +#X connect 0 1 2 0; +#X connect 0 2 3 0; +#X connect 6 0 17 1; +#X connect 7 0 17 0; +#X connect 8 0 17 2; +#X connect 9 0 17 2; +#X connect 17 0 0 0; diff --git a/3dMove.pd b/3dMove.pd new file mode 100644 index 0000000..44e01c4 --- /dev/null +++ b/3dMove.pd @@ -0,0 +1,44 @@ +#N canvas 145 82 431 344 10; +#X obj 112 26 inlet vector; +#X obj 112 69 unpack f f f; +#X obj 233 25 inlet vector; +#X obj 233 68 unpack f f f; +#X text 326 25 D; +#X text 205 26 L; +#X obj 9 25 inlet bang; +#X text 57 47 step; +#X obj 9 80 t b b b; +#X obj 10 197 pack f f f; +#X obj 10 241 outlet vector; +#X text 113 241 V; +#X text 70 270 moves a vector L in direction D on each step; +#X obj 49 142 \$1; +#X obj 88 142 \$2; +#X obj 128 142 \$3; +#X obj 123 197 + \$4; +#X obj 162 197 + \$5; +#X obj 202 197 + \$6; +#X text 267 306 Version: 2007-12-09; +#X text 268 325 Author: Roman Haefeli; +#X connect 0 0 1 0; +#X connect 1 0 13 1; +#X connect 1 1 14 1; +#X connect 1 2 15 1; +#X connect 2 0 3 0; +#X connect 3 0 16 1; +#X connect 3 1 17 1; +#X connect 3 2 18 1; +#X connect 6 0 8 0; +#X connect 8 0 13 0; +#X connect 8 1 14 0; +#X connect 8 2 15 0; +#X connect 9 0 10 0; +#X connect 13 0 9 0; +#X connect 13 0 16 0; +#X connect 14 0 9 1; +#X connect 14 0 17 0; +#X connect 15 0 9 2; +#X connect 15 0 18 0; +#X connect 16 0 13 1; +#X connect 17 0 14 1; +#X connect 18 0 15 1; diff --git a/3dNormalize-help.pd b/3dNormalize-help.pd new file mode 100644 index 0000000..fa79b39 --- /dev/null +++ b/3dNormalize-help.pd @@ -0,0 +1,30 @@ +#N canvas 560 411 434 311 10; +#X text 178 151 args: none; +#X text 177 172 inlet: accepts list of 3 floats; +#X text 178 196 outlet: list of 3 floats ; +#X msg 21 85 7 0 0; +#X msg 37 106 2 1 3; +#X msg 57 128 13.23 3.1 9.86; +#X obj 41 190 unpack f f f; +#X floatatom 41 215 5 0 0 0 - - -; +#X floatatom 80 215 5 0 0 0 - - -; +#X floatatom 120 215 5 0 0 0 - - -; +#X floatatom 21 270 5 0 0 0 - - -; +#X text 62 269 the magnitude of the output vector is always 1; +#X obj 21 239 mtl/3dMagnitude; +#X obj 21 153 mtl/3dNormalize; +#X obj 11 7 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 16 49 tags: 3d; +#X text 113 49 Author: Roman Haefeli; +#X text 266 49 Version: 2007-12-09; +#X text 18 10 Description: Normalizes the incoming vector.; +#X connect 3 0 13 0; +#X connect 4 0 13 0; +#X connect 5 0 13 0; +#X connect 6 0 7 0; +#X connect 6 1 8 0; +#X connect 6 2 9 0; +#X connect 12 0 10 0; +#X connect 13 0 6 0; +#X connect 13 0 12 0; diff --git a/3dNormalize.pd b/3dNormalize.pd new file mode 100644 index 0000000..ce65327 --- /dev/null +++ b/3dNormalize.pd @@ -0,0 +1,61 @@ +#N canvas 223 126 515 348 10; +#X obj 21 39 unpack f f f; +#X obj 21 82 t f f f; +#X obj 43 107 *; +#X obj 76 82 t f f f; +#X obj 98 107 *; +#X obj 131 81 t f f f; +#X obj 153 106 *; +#X obj 43 130 +; +#X obj 43 151 +; +#X obj 43 172 sqrt; +#X obj 21 266 /; +#X obj 60 266 /; +#X obj 115 269 /; +#X obj 21 293 pack f f f; +#X text 195 135 V =; +#X obj 60 245 f; +#X obj 115 248 f; +#X obj 60 218 t b f; +#X obj 115 220 t b f; +#X obj 21 14 inlet vector; +#X obj 21 318 outlet vector; +#X text 123 319 V; +#X text 117 13 A; +#X text 176 41 normalizes the incomimg vector A to ||V|| = 1; +#X text 228 119 | Ax/((x^2+y^2+z^2)^(1/2)) |; +#X text 227 135 | Ay/((x^2+y^2+z^2)^(1/2)) |; +#X text 227 152 | Az/((x^2+y^2+z^2)^(1/2)) |; +#X text 300 306 Version: 2007-12-09; +#X text 301 325 Author: Roman Haefeli; +#X connect 0 0 1 0; +#X connect 0 1 3 0; +#X connect 0 2 5 0; +#X connect 1 0 10 0; +#X connect 1 1 2 0; +#X connect 1 2 2 1; +#X connect 2 0 7 0; +#X connect 3 0 15 1; +#X connect 3 1 4 0; +#X connect 3 2 4 1; +#X connect 4 0 7 1; +#X connect 5 0 16 1; +#X connect 5 1 6 0; +#X connect 5 2 6 1; +#X connect 6 0 8 1; +#X connect 7 0 8 0; +#X connect 8 0 9 0; +#X connect 9 0 10 1; +#X connect 9 0 17 0; +#X connect 9 0 18 0; +#X connect 10 0 13 0; +#X connect 11 0 13 1; +#X connect 12 0 13 2; +#X connect 13 0 20 0; +#X connect 15 0 11 0; +#X connect 16 0 12 0; +#X connect 17 0 15 0; +#X connect 17 1 11 1; +#X connect 18 0 16 0; +#X connect 18 1 12 1; +#X connect 19 0 0 0; diff --git a/3dPanTilt-help.pd b/3dPanTilt-help.pd new file mode 100644 index 0000000..7b347de --- /dev/null +++ b/3dPanTilt-help.pd @@ -0,0 +1,73 @@ +#N canvas 65 56 874 639 10; +#X declare -lib Gem; +#X obj 18 96 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X obj 174 429 gemhead; +#X obj 20 262 gemhead; +#X obj 20 470 cube; +#X floatatom 110 291 5 0 0 0 - - -; +#X floatatom 209 293 5 0 0 0 - - -; +#X obj 20 407 translateXYZ 1 0 0; +#X obj 20 441 scaleXYZ 1 0.1 0.1; +#X obj 195 513 colorRGB 1 0 0; +#X text 15 239 The rectangle pointer.; +#X text 172 408 The sphere.; +#X text 505 134 Inlet_1: First set of 3D coordinates.; +#X text 504 155 Inlet_2: Reference set of 3D coordinates.; +#X text 504 175 Outlet_1: Pan angle.; +#X text 504 196 Outlet_2: Tilt angle.; +#X text 504 218 The angles are imagined with a top down perspective +of the standard Gem window.; +#X obj 110 270 mtl/3dPanTilt 0 0 0; +#X obj 14 22 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 19 64 tags: 3d; +#X text 21 25 Description: Calculate the pan and tilt between two 3D +coordinates.; +#X obj 781 23 import Gem; +#X obj 265 273 mtl/gemsMouse; +#X obj 265 368 pack f f 0; +#X obj 266 396 t l l; +#X obj 195 487 translateXYZ; +#X obj 293 424 unpack f f f; +#X text 14 179 Note how 2 rotateXYZ are used to transfer the pan & +tilt angles to Gem angles.; +#X obj 290 300 route 0 1; +#X msg 290 325 \$1 \$2 0; +#X obj 195 538 sphere 0.2; +#X msg 353 326 \$1 \$2 -2; +#X obj 20 345 rotateXYZ; +#X obj 20 378 rotateXYZ; +#X obj 507 112 mtl/3dPanTilt 0 0 0; +#X obj 516 327 gemhead; +#X obj 516 399 light; +#X obj 18 119 mtl/gemsWin /lighting 1; +#X obj 516 363 translateXYZ 0 0 1; +#X text 258 255 Move the mouse in the gem window; +#X connect 0 0 36 0; +#X connect 1 0 24 0; +#X connect 2 0 31 0; +#X connect 4 0 31 3; +#X connect 5 0 32 2; +#X connect 6 0 7 0; +#X connect 7 0 3 0; +#X connect 8 0 29 0; +#X connect 16 0 4 0; +#X connect 16 1 5 0; +#X connect 21 0 22 0; +#X connect 21 1 27 0; +#X connect 22 0 23 0; +#X connect 23 0 16 0; +#X connect 23 1 25 0; +#X connect 24 0 8 0; +#X connect 25 0 24 1; +#X connect 25 1 24 2; +#X connect 25 2 24 3; +#X connect 27 0 28 0; +#X connect 27 1 30 0; +#X connect 28 0 22 0; +#X connect 30 0 22 0; +#X connect 31 0 32 0; +#X connect 32 0 6 0; +#X connect 34 0 37 0; +#X connect 37 0 35 0; diff --git a/3dPanTilt.pd b/3dPanTilt.pd new file mode 100644 index 0000000..f82d0dd --- /dev/null +++ b/3dPanTilt.pd @@ -0,0 +1,52 @@ +#N canvas 0 25 991 658 10; +#X obj 74 97 inlet; +#X text 60 68 x y z (target); +#X obj 107 184 unpack f f f; +#X obj 176 747 outlet; +#X obj 468 740 outlet; +#X obj 448 217 loadbang; +#X obj 270 528 atan; +#X obj 270 501 /; +#X obj 79 132 t l l l; +#X obj 77 425 loadbang; +#X obj 232 295 t l l; +#X obj 230 266 pack; +#X obj 268 471 swap; +#X text 172 770 pan; +#X text 467 759 tilt; +#X obj 447 244 pack \$1 \$2; +#X obj 78 452 pack \$1 \$2; +#X obj 456 339 - \$3; +#X obj 265 424 t f f; +#X obj 374 87 inlet; +#X obj 377 124 t l l l; +#X msg 490 171 \$3; +#X obj 282 595 * -57.2958; +#X obj 225 390 ./2dDistance; +#X obj -31 492 ./2dAngle; +#X connect 0 0 8 0; +#X connect 2 0 11 0; +#X connect 2 1 11 1; +#X connect 2 2 17 0; +#X connect 5 0 15 0; +#X connect 6 0 22 0; +#X connect 7 0 6 0; +#X connect 8 0 2 0; +#X connect 9 0 16 0; +#X connect 10 0 24 0; +#X connect 10 1 23 0; +#X connect 11 0 10 0; +#X connect 12 0 7 0; +#X connect 12 1 7 1; +#X connect 15 0 23 1; +#X connect 16 0 24 1; +#X connect 17 0 12 1; +#X connect 18 0 12 0; +#X connect 19 0 20 0; +#X connect 20 0 16 0; +#X connect 20 1 15 0; +#X connect 20 2 21 0; +#X connect 21 0 17 1; +#X connect 22 0 4 0; +#X connect 23 0 18 0; +#X connect 24 0 3 0; diff --git a/3dRotate-help.pd b/3dRotate-help.pd new file mode 100644 index 0000000..fb890d5 --- /dev/null +++ b/3dRotate-help.pd @@ -0,0 +1,38 @@ +#N canvas 727 261 654 345 10; +#X obj 27 210 unpack f f f; +#X floatatom 27 235 5 0 0 0 - - -; +#X floatatom 66 235 5 0 0 0 - - -; +#X floatatom 106 235 5 0 0 0 - - -; +#X text 373 195 2nd inlet: accepts list of 3 floats; +#X text 372 301 outlet: list of 3 floats; +#X floatatom 93 94 5 0 0 0 - - -; +#X text 138 94 degree; +#X msg 106 162 0 1 0; +#X text 375 110 args: ; +#X text 22 260 !!! uses [expr]-external !!!; +#X msg 27 162 3 1 4; +#X obj 93 120 t b f; +#X text 374 159 1st inlet: accepts lists of 3 floats; +#X text 430 128 rotation axis and angle; +#X text 450 214 sets the rotation axis; +#X text 448 260 sets the angle (in radian format); +#X text 372 240 3rd inlet: accepts floats; +#X obj 27 185 mtl/3dRotate 0 0 1 1.5708; +#X obj 17 9 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 22 51 tags: 3d; +#X text 119 51 Author: Roman Haefeli; +#X text 272 51 Version: 2007-12-09; +#X text 22 11 Description: rotates the incoming vector around a specified +axis by a specified angle (using a rotation matrix); +#X obj 186 161 mtl/degreeToRadian; +#X connect 0 0 1 0; +#X connect 0 1 2 0; +#X connect 0 2 3 0; +#X connect 6 0 12 0; +#X connect 8 0 18 1; +#X connect 11 0 18 0; +#X connect 12 0 11 0; +#X connect 12 1 24 0; +#X connect 18 0 0 0; +#X connect 24 0 18 2; diff --git a/3dRotate.pd b/3dRotate.pd new file mode 100644 index 0000000..ad87792 --- /dev/null +++ b/3dRotate.pd @@ -0,0 +1,210 @@ +#N canvas 369 22 1127 773 10; +#X obj 36 74 expr cos($f4)+(1-cos($f4))*pow($f1 \, 2); +#X obj 399 74 expr (1-cos($f4))*$f1*$f2-(sin($f4))*$f3; +#X obj 772 75 expr (1-cos($f4))*$f1*$f3+(sin($f4))*$f2; +#X obj 35 249 expr (1-cos($f4))*$f2*$f1+(sin($f4))*$f3; +#X obj 399 246 expr cos($f4)+(1-cos($f4))*pow($f2 \, 2); +#X obj 773 254 expr (1-cos($f4))*$f2*$f3-(sin($f4))*$f1; +#X obj 35 419 expr (1-cos($f4))*$f3*$f1-(sin($f4))*$f2; +#X obj 402 416 expr (1-cos($f4))*$f3*$f2+(sin($f4))*$f1; +#X obj 776 415 expr cos($f4)+(1-cos($f4))*pow($f3 \, 2); +#X obj 20 101 *; +#X obj 36 50 r \$0-Rx; +#X obj 123 50 r \$0-Ry; +#X obj 210 50 r \$0-Rz; +#X obj 297 51 r \$0-rho; +#X obj 399 49 r \$0-Rx; +#X obj 490 49 r \$0-Ry; +#X obj 582 49 r \$0-Rz; +#X obj 674 50 r \$0-rho; +#X obj 772 50 r \$0-Rx; +#X obj 863 50 r \$0-Ry; +#X obj 955 51 r \$0-Rz; +#X obj 1047 51 r \$0-rho; +#X obj 35 224 r \$0-Rx; +#X obj 126 224 r \$0-Ry; +#X obj 218 224 r \$0-Rz; +#X obj 310 225 r \$0-rho; +#X obj 399 222 r \$0-Rx; +#X obj 486 222 r \$0-Ry; +#X obj 573 221 r \$0-Rz; +#X obj 660 222 r \$0-rho; +#X obj 773 229 r \$0-Rx; +#X obj 864 229 r \$0-Ry; +#X obj 956 229 r \$0-Rz; +#X obj 1048 231 r \$0-rho; +#X obj 35 394 r \$0-Rx; +#X obj 126 394 r \$0-Ry; +#X obj 218 394 r \$0-Rz; +#X obj 310 395 r \$0-rho; +#X obj 402 391 r \$0-Rx; +#X obj 493 391 r \$0-Ry; +#X obj 585 391 r \$0-Rz; +#X obj 677 392 r \$0-rho; +#X obj 776 391 r \$0-Rx; +#X obj 863 391 r \$0-Ry; +#X obj 950 391 r \$0-Rz; +#X obj 1037 391 r \$0-rho; +#X obj 19 271 *; +#X obj 19 442 *; +#X obj 383 98 *; +#X obj 383 271 *; +#X obj 386 441 *; +#X obj 756 100 *; +#X obj 757 278 *; +#X obj 760 440 *; +#X obj 20 124 +; +#X obj 20 146 +; +#X obj 19 294 +; +#X obj 19 316 +; +#X obj 19 464 +; +#X obj 19 486 +; +#X obj 21 635 pack f f f; +#X text 20 4 M A T R I X; +#X text 21 547 O U T P U T; +#X obj 637 615 s \$0-rho; +#X obj 247 589 unpack f f f; +#X text 253 513 I N P U T; +#X obj 419 565 unpack f f f; +#X obj 498 613 s \$0-Rz; +#X obj 458 633 s \$0-Ry; +#X obj 419 655 s \$0-Rx; +#X obj 419 623 f; +#X obj 607 569 t b f; +#X obj 607 541 inlet float; +#X text 692 540 rho; +#X obj 419 543 inlet vector; +#X text 513 543 R; +#X obj 247 543 inlet vector; +#X text 338 544 A; +#X obj 21 658 outlet vector; +#X text 120 658 V; +#X obj 888 627 s \$0-Rz; +#X obj 832 626 s \$0-Ry; +#X obj 777 626 s \$0-Rx; +#X obj 942 627 s \$0-rho; +#X obj 777 554 loadbang; +#X obj 777 575 t b b b b; +#X text 780 520 INIT; +#X obj 777 600 \$1; +#X obj 832 603 \$2; +#X obj 888 606 \$3; +#X obj 942 606 \$4; +#X obj 247 656 s \$0-Ax; +#X obj 286 634 s \$0-Ay; +#X obj 326 612 s \$0-Az; +#X obj 20 27 r \$0-Ax; +#X obj 19 197 r \$0-Ax; +#X obj 19 368 r \$0-Ax; +#X obj 383 24 r \$0-Ay; +#X obj 383 197 r \$0-Ay; +#X obj 386 367 r \$0-Ay; +#X obj 756 26 r \$0-Az; +#X obj 757 204 r \$0-Az; +#X obj 760 366 r \$0-Az; +#X obj 20 167 s \$0-Vx; +#X obj 21 574 r \$0-Vx; +#X obj 53 594 r \$0-Vy; +#X obj 86 614 r \$0-Vz; +#X obj 19 337 s \$0-Vy; +#X obj 19 507 s \$0-Vz; +#X text 571 692 formula from http://en.wikipedia.org/wiki/Rotation_matrix. +; +#X text 571 662 rotates an incoming vector A around the Axis R by the +angle rho.; +#X text 951 733 Version: 2007-12-09; +#X text 952 752 Author: Roman Haefeli; +#X connect 0 0 9 1; +#X connect 1 0 48 1; +#X connect 2 0 51 1; +#X connect 3 0 46 1; +#X connect 4 0 49 1; +#X connect 5 0 52 1; +#X connect 6 0 47 1; +#X connect 7 0 50 1; +#X connect 8 0 53 1; +#X connect 9 0 54 0; +#X connect 10 0 0 0; +#X connect 11 0 0 1; +#X connect 12 0 0 2; +#X connect 13 0 0 3; +#X connect 14 0 1 0; +#X connect 15 0 1 1; +#X connect 16 0 1 2; +#X connect 17 0 1 3; +#X connect 18 0 2 0; +#X connect 19 0 2 1; +#X connect 20 0 2 2; +#X connect 21 0 2 3; +#X connect 22 0 3 0; +#X connect 23 0 3 1; +#X connect 24 0 3 2; +#X connect 25 0 3 3; +#X connect 26 0 4 0; +#X connect 27 0 4 1; +#X connect 28 0 4 2; +#X connect 29 0 4 3; +#X connect 30 0 5 0; +#X connect 31 0 5 1; +#X connect 32 0 5 2; +#X connect 33 0 5 3; +#X connect 34 0 6 0; +#X connect 35 0 6 1; +#X connect 36 0 6 2; +#X connect 37 0 6 3; +#X connect 38 0 7 0; +#X connect 39 0 7 1; +#X connect 40 0 7 2; +#X connect 41 0 7 3; +#X connect 42 0 8 0; +#X connect 43 0 8 1; +#X connect 44 0 8 2; +#X connect 45 0 8 3; +#X connect 46 0 56 0; +#X connect 47 0 58 0; +#X connect 48 0 54 1; +#X connect 49 0 56 1; +#X connect 50 0 58 1; +#X connect 51 0 55 1; +#X connect 52 0 57 1; +#X connect 53 0 59 1; +#X connect 54 0 55 0; +#X connect 55 0 103 0; +#X connect 56 0 57 0; +#X connect 57 0 107 0; +#X connect 58 0 59 0; +#X connect 59 0 108 0; +#X connect 60 0 78 0; +#X connect 64 0 91 0; +#X connect 64 1 92 0; +#X connect 64 2 93 0; +#X connect 66 0 70 0; +#X connect 66 1 68 0; +#X connect 66 2 67 0; +#X connect 70 0 69 0; +#X connect 71 0 70 0; +#X connect 71 1 63 0; +#X connect 72 0 71 0; +#X connect 74 0 66 0; +#X connect 76 0 64 0; +#X connect 84 0 85 0; +#X connect 85 0 87 0; +#X connect 85 1 88 0; +#X connect 85 2 89 0; +#X connect 85 3 90 0; +#X connect 87 0 82 0; +#X connect 88 0 81 0; +#X connect 89 0 80 0; +#X connect 90 0 83 0; +#X connect 94 0 9 0; +#X connect 95 0 46 0; +#X connect 96 0 47 0; +#X connect 97 0 48 0; +#X connect 98 0 49 0; +#X connect 99 0 50 0; +#X connect 100 0 51 0; +#X connect 101 0 52 0; +#X connect 102 0 53 0; +#X connect 104 0 60 0; +#X connect 105 0 60 1; +#X connect 106 0 60 2; diff --git a/3dScale-help.pd b/3dScale-help.pd new file mode 100644 index 0000000..9289ea1 --- /dev/null +++ b/3dScale-help.pd @@ -0,0 +1,26 @@ +#N canvas 177 132 423 241 10; +#X msg 38 101 2 1 0; +#X obj 24 173 unpack f f f; +#X floatatom 24 196 5 0 0 0 - - -; +#X floatatom 63 196 5 0 0 0 - - -; +#X floatatom 103 197 5 0 0 0 - - -; +#X msg 24 77 1 2 3; +#X text 182 109 1st inlet: accepts list of 3 floats; +#X floatatom 111 115 5 0 0 0 - - -; +#X text 182 129 2nd inlet: accepts floats; +#X text 184 79 args: ; +#X text 183 156 outlet: list of 3 floats; +#X obj 24 139 mtl/3dScale 3; +#X obj 17 8 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 22 50 tags: 3d; +#X text 119 50 Author: Roman Haefeli; +#X text 272 50 Version: 2007-12-09; +#X text 23 13 Description: Scales a vector.; +#X connect 0 0 11 0; +#X connect 1 0 2 0; +#X connect 1 1 3 0; +#X connect 1 2 4 0; +#X connect 5 0 11 0; +#X connect 7 0 11 1; +#X connect 11 0 1 0; diff --git a/3dScale.pd b/3dScale.pd new file mode 100644 index 0000000..04ca9f0 --- /dev/null +++ b/3dScale.pd @@ -0,0 +1,30 @@ +#N canvas 134 72 536 208 10; +#X obj 14 28 inlet vector; +#X text 104 28 A; +#X obj 152 28 inlet float; +#X text 236 28 s; +#X obj 14 60 unpack f f f; +#X obj 14 137 pack f f f; +#X obj 14 168 outlet vector; +#X text 113 168 V; +#X text 175 125 V =; +#X text 206 110 | Ax*s |; +#X text 206 125 | Ay*s |; +#X text 206 140 | Az*s |; +#X obj 14 106 * \$1; +#X obj 53 106 * \$1; +#X obj 93 106 * \$1; +#X text 165 79 scales the incoming vector A by the value s; +#X text 334 166 Version: 2007-12-09; +#X text 335 185 Author: Roman Haefeli; +#X connect 0 0 4 0; +#X connect 2 0 12 1; +#X connect 2 0 13 1; +#X connect 2 0 14 1; +#X connect 4 0 12 0; +#X connect 4 1 13 0; +#X connect 4 2 14 0; +#X connect 5 0 6 0; +#X connect 12 0 5 0; +#X connect 13 0 5 1; +#X connect 14 0 5 2; diff --git a/3dSubtract-help.pd b/3dSubtract-help.pd new file mode 100644 index 0000000..1f0dff0 --- /dev/null +++ b/3dSubtract-help.pd @@ -0,0 +1,26 @@ +#N canvas 146 129 446 252 10; +#X msg 50 116 2 1 0; +#X msg 153 114 3 4 5; +#X obj 24 173 unpack f f f; +#X floatatom 24 196 5 0 0 0 - - -; +#X floatatom 63 196 5 0 0 0 - - -; +#X floatatom 103 197 5 0 0 0 - - -; +#X msg 24 93 1 2 3; +#X text 205 112 args: ; +#X text 203 142 1st inlet: accepts list of 3 floats; +#X text 203 162 2nd inlet: accepts list of 3 floats; +#X text 201 197 outlet: list of 3 floats; +#X obj 24 139 mtl/3dSubtract 0 1 2; +#X obj 24 17 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 29 59 tags: 3d; +#X text 126 59 Author: Roman Haefeli; +#X text 279 59 Version: 2007-12-09; +#X text 29 22 Description: Subtracts a vector from another.; +#X connect 0 0 11 0; +#X connect 1 0 11 1; +#X connect 2 0 3 0; +#X connect 2 1 4 0; +#X connect 2 2 5 0; +#X connect 6 0 11 0; +#X connect 11 0 2 0; diff --git a/3dSubtract.pd b/3dSubtract.pd new file mode 100644 index 0000000..5f01d90 --- /dev/null +++ b/3dSubtract.pd @@ -0,0 +1,32 @@ +#N canvas 151 88 423 267 10; +#X obj 35 48 unpack f f f; +#X obj 35 153 pack f f f; +#X text 211 153 V =; +#X obj 168 49 unpack f f f; +#X text 128 10 A; +#X text 263 12 B; +#X text 135 181 V; +#X obj 35 9 inlet vector; +#X obj 168 12 inlet vector; +#X obj 35 178 outlet vector; +#X text 245 137 | Ax+Bx |; +#X text 245 153 | Ay+By |; +#X text 245 169 | Ay+By |; +#X text 318 154 = A + B; +#X obj 35 121 - \$1; +#X obj 74 122 - \$2; +#X obj 114 122 - \$3; +#X text 242 217 Version: 2007-12-09; +#X text 243 236 Author: Roman Haefeli; +#X connect 0 0 14 0; +#X connect 0 1 15 0; +#X connect 0 2 16 0; +#X connect 1 0 9 0; +#X connect 3 0 14 1; +#X connect 3 1 15 1; +#X connect 3 2 16 1; +#X connect 7 0 0 0; +#X connect 8 0 3 0; +#X connect 14 0 1 0; +#X connect 15 0 1 1; +#X connect 16 0 1 2; diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..5b6e7c6 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/TODO b/TODO new file mode 100644 index 0000000..7a9cf17 --- /dev/null +++ b/TODO @@ -0,0 +1,90 @@ ++: Added +-: Done + +------------------------------------------------------ +PROBLEMS - QUESTIONS - FEATURES + + +- gems-fft~ : readsf~ fonctionne pas - Aha! Tu as sauvegardé le fichier avec lorsque tu avais la mauvaise version de tof/increment! +- gems-sobel_filter fonctionne pas au complet (le video n'est pas affecte pas les differents settings) - La vidéo est changée, je ne comprend pas le problème que tu soulignes +- gemsPolygon 1148-dynamicpatch 0 30 3 31 (route->polygon) connection failed - Aucune erreure ici non plus? +- browser hightlight tags - slider remonte pas +- remove all libs and path from auto-build and check if all mtl are loading correctly +- Add param to tracker4 +- Fix tabread with tabread4~'s second inlet? (bah, I do not think it is so important) +- make a list concatenator +- Option in browser to browse with love or without +- rename soundfileIndexer to sfIndexer +- Class/Abstraction should be sorted alphabetically (by class name, not by folder name) +- param /nopresets? +- Change all "pdmtl" in help files to "mtl" +- gem /antialising: nbx +- flow.inbetweens no more? (What is it for?) +- 3dPantilt - demo need to be fixed (grid, light) +- arpeggio - demo need to be fixed +- I do not think "drone" is really descriptive of the drone.* +- crank~ drone* (mix.pan~) +- conversion - smpToBpm.pd + +------------------------------------------------------ +CATEGORIES TO PORT + +- 2d +- 3d ++ ambi +- anal +- convert +- count +- data +- debug +- dyn: something like this already exists. See mtl/instrument~ +- file +- flow +- fx +- gems +- gui +- hardware: not supported anymore (so the abs of olivier will not be included? korg, lanbox) +- init +- input +- list +- lua: can not add since lua is not part of pd-extended +- midi +- mix +- musical +- net +- number +- param +- random +- sample +- sampler +- scale +- script: see lua above +- seq +- synth +- table +- timing + + +------------------------------------------------------ +INTERESTING STUFF IN PD-EXTENDED + +will readanysf~ be included in the next release of pdextended? +bsaylor/susloop~ +bsaylor/zhzxh~ +cxc/delta~ +moonlib/readsfv~ +moonlib/sfread2~ + +------------------------------------------------------ +INTERESTING STUFF IN PD DOC + +3.audio.examples/ +B15 +H15.phaser +H16.adsr.filter +I03.resynthesis +I05.compressor +I06.timbre stamp +I08.pvoc.reverb +J08.classic.synth + diff --git a/VCR-help.pd b/VCR-help.pd new file mode 100644 index 0000000..4495f52 --- /dev/null +++ b/VCR-help.pd @@ -0,0 +1,65 @@ +#N canvas 1221 0 812 711 10; +#X obj 23 660 pix_texture; +#X msg 327 437 autostart \$1; +#X obj 327 420 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X msg 277 354 play; +#X msg 236 354 stop; +#X msg 182 354 rewind; +#X msg 100 354 fastrewind; +#X msg 318 354 fastforward; +#X obj 19 30 gemhead; +#X obj 424 60 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 1 +1; +#X floatatom 61 167 5 0 0 0 - - -; +#X msg 330 510 smooth \$1; +#X floatatom 330 487 5 0 0 0 - - -; +#X text 69 209 once they are loaded.; +#X text 69 195 Recall movies by their index number; +#X text 328 462 Autostart accepts a boolean (0 or 1) as an argument. +; +#X text 259 579 All these commands are accessible from the Graph-On-Parent. +; +#X obj 488 141 cnv 15 270 180 empty empty VCR 20 12 1 12 -233017 -66577 +0; +#X text 496 211 SUMMARY:; +#X text 496 225 Inlet_1: File management; +#X text 496 297 Outlet_2: Playback speed; +#X text 496 249 Inlet_2: VCR commands; +#X text 496 273 Outlet_1: File management; +#X text 564 284 forwarding; +#X text 425 353 You may send the following messages:; +#X floatatom 236 611 10 0 0 1 Playback_rate - -; +#X text 501 195 Author: oli44 Sept. 2007; +#X text 426 391 and fastforward; +#X text 426 374 fastrewind \, rewind \, stop \, play; +#X text 495 171 Description: Old-school VCR commands; +#X obj 43 527 mtl/VCR; +#X obj 44 123 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 23 684 mtl/gemsFit; +#X obj 25 708 rectangle; +#X obj 424 86 mtl/gemsWin /dimen 320 240; +#X obj 327 399 iemlib/init 1; +#X obj 23 632 mtl/gemsMovies; +#X text 333 533 Smooth: 0-1; +#X connect 0 0 32 0; +#X connect 1 0 30 1; +#X connect 2 0 1 0; +#X connect 3 0 30 1; +#X connect 4 0 30 1; +#X connect 5 0 30 1; +#X connect 6 0 30 1; +#X connect 7 0 30 1; +#X connect 8 0 36 0; +#X connect 9 0 34 0; +#X connect 10 0 30 0; +#X connect 11 0 30 1; +#X connect 12 0 11 0; +#X connect 25 0 36 2; +#X connect 30 0 36 1; +#X connect 30 1 25 0; +#X connect 31 0 30 0; +#X connect 32 0 33 0; +#X connect 35 0 2 0; +#X connect 36 0 0 0; diff --git a/VCR.pd b/VCR.pd new file mode 100644 index 0000000..6de44d3 --- /dev/null +++ b/VCR.pd @@ -0,0 +1,150 @@ +#N canvas 1079 50 947 563 10; +#X obj 101 116 cnv 15 198 58 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X obj 257 133 tgl 15 0 empty empty Autostart -14 -8 1 9 -195568 -1 +-1 1 1; +#X obj 103 132 hradio 15 1 0 9 empty empty empty 4 -8 0 10 -195568 +-1 -1 4; +#X obj -279 366 outlet; +#X obj -279 -82 inlet; +#X obj 195 -108 inlet; +#X text 102 117 FRW -RW -0- Play FF; +#X obj 105 157 hsl 128 15 0 1 0 0 empty empty Smoothing 132 10 1 9 +-195568 -1 -1 11600 0; +#X obj 203 -24 route autostart smooth; +#X obj 344 118 t b; +#X obj 403 87 t b; +#X msg 43 58 4; +#X obj 462 97 t b; +#X obj 521 96 t b; +#X obj 580 115 t b; +#X msg 262 222 autostart \$1; +#X obj -215 364 outlet; +#X msg 29 283 smooth \$1; +#X msg -112 158 speed \$1; +#X obj 444 194 f; +#N canvas 128 137 974 631 VCR 0; +#X obj -269 140 t a b; +#X obj -153 134 r autostart\$0; +#X obj 107 63 s autostart\$0; +#X floatatom -36 469 5 0 0 0 - - -; +#X text 5 468 Playback speed; +#X obj -269 376 outlet; +#X obj -269 -72 inlet; +#X obj 205 -98 inlet; +#X obj -36 493 outlet; +#X text -254 81 catches the new filename and; +#X text -254 98 starts playback (or not); +#X obj 397 111 t b; +#X obj 456 80 t b; +#X msg -28 72 1; +#X obj -28 196 metro 40; +#X obj 515 90 t b; +#X obj 574 89 t b; +#X obj 633 108 t b; +#X obj -36 441 change; +#X obj 196 -15 route autostart smooth speed; +#X obj -20 -23 loadbang; +#X obj 83 405 t f f; +#X obj -34 301 f; +#X msg 397 137 -4; +#X msg 515 134 0; +#X msg 574 129 1; +#X msg 456 106 -1; +#X msg 633 136 4; +#X obj 304 48 - 4; +#X obj 397 55 route fastrewind rewind stop play fastforward; +#X obj 65 295 clip 0 1; +#X obj 64 317 pow 0.3; +#X obj -35 348 expr $f3 + ((1-$f2) * ($f1-$f3)); +#X obj -240 185 zexy/demultiplex 0 1; +#X msg -223 213 0; +#X msg -112 218 1; +#X obj -44 377 maxlib/split -0.01 0.01; +#X msg -41 403 0; +#X connect 0 0 5 0; +#X connect 0 1 33 0; +#X connect 1 0 33 1; +#X connect 3 0 8 0; +#X connect 6 0 0 0; +#X connect 7 0 19 0; +#X connect 11 0 23 0; +#X connect 12 0 26 0; +#X connect 13 0 14 0; +#X connect 14 0 22 0; +#X connect 15 0 24 0; +#X connect 16 0 25 0; +#X connect 17 0 27 0; +#X connect 18 0 3 0; +#X connect 19 0 2 0; +#X connect 19 1 30 0; +#X connect 19 2 28 0; +#X connect 19 3 29 0; +#X connect 20 0 13 0; +#X connect 21 0 18 0; +#X connect 21 1 32 2; +#X connect 22 0 32 0; +#X connect 23 0 22 1; +#X connect 24 0 22 1; +#X connect 25 0 22 1; +#X connect 26 0 22 1; +#X connect 27 0 22 1; +#X connect 28 0 22 1; +#X connect 29 0 11 0; +#X connect 29 1 12 0; +#X connect 29 2 15 0; +#X connect 29 3 16 0; +#X connect 29 4 17 0; +#X connect 30 0 31 0; +#X connect 31 0 32 1; +#X connect 32 0 36 0; +#X connect 33 0 34 0; +#X connect 33 1 35 0; +#X connect 34 0 22 1; +#X connect 35 0 22 1; +#X connect 36 0 37 0; +#X connect 36 1 21 0; +#X connect 37 0 21 0; +#X restore -275 175 pd VCR; +#X obj -13 -94 loadbang; +#X msg 5 58 0.5; +#X obj 344 62 route fastrewind rewind stop play fastforward; +#X msg 344 144 -4; +#X msg 403 113 -1; +#X msg 462 141 0; +#X msg 521 136 1; +#X msg 580 143 4; +#X connect 1 0 15 0; +#X connect 2 0 18 0; +#X connect 4 0 20 0; +#X connect 5 0 8 0; +#X connect 7 0 17 0; +#X connect 8 0 1 0; +#X connect 8 1 7 0; +#X connect 8 2 23 0; +#X connect 9 0 24 0; +#X connect 10 0 25 0; +#X connect 11 0 2 0; +#X connect 12 0 26 0; +#X connect 13 0 27 0; +#X connect 14 0 28 0; +#X connect 15 0 20 1; +#X connect 17 0 20 1; +#X connect 18 0 20 1; +#X connect 19 0 2 0; +#X connect 20 0 3 0; +#X connect 20 1 16 0; +#X connect 21 0 11 0; +#X connect 21 0 22 0; +#X connect 22 0 7 0; +#X connect 23 0 9 0; +#X connect 23 1 10 0; +#X connect 23 2 12 0; +#X connect 23 3 13 0; +#X connect 23 4 14 0; +#X connect 24 0 19 0; +#X connect 25 0 19 0; +#X connect 26 0 19 0; +#X connect 27 0 19 0; +#X connect 28 0 19 0; +#X coords 0 -1 1 1 200 75 1 100 100; diff --git a/additive~-help.pd b/additive~-help.pd new file mode 100644 index 0000000..a11d560 --- /dev/null +++ b/additive~-help.pd @@ -0,0 +1,30 @@ +#N canvas 1072 106 733 447 10; +#X obj 62 90 notein; +#X obj 128 43 mtl/piano 1; +#X obj 36 358 mtl/out~; +#X msg 348 217 0.5 0.2 0 0 0 0.3 0.9; +#X msg 342 261 0 0.9 0 0 0.9 0 0.9; +#X msg 331 296 1 0.9 1 0 0 0 0; +#X msg 310 324 0 1 2 3 4 5 6; +#X msg 226 249 6 5 4 3 2 1 0; +#X obj 66 118 pack; +#X obj 40 301 mtl/additive~ 0.6 0.4 0.7 0.8 0.4 0.2 0.3; +#X text 40 0 Description: Midi instrument using additive synthesis +with an unlimited number of oscillators.; +#X text 147 167 Arguments: The number of arguments determines the number +of oscillators created. The values of the arguments determines the +volume of each oscillator.; +#X text 322 351 The right inlet changes the volumes of each oscillator. +; +#X text 43 23 tags: instrument~; +#X connect 0 0 8 0; +#X connect 0 1 8 1; +#X connect 1 0 9 0; +#X connect 3 0 9 1; +#X connect 4 0 9 1; +#X connect 5 0 9 1; +#X connect 6 0 9 1; +#X connect 7 0 9 1; +#X connect 8 0 9 0; +#X connect 9 0 2 0; +#X connect 9 0 2 1; diff --git a/additive~.pd b/additive~.pd new file mode 100644 index 0000000..e0c0b6c --- /dev/null +++ b/additive~.pd @@ -0,0 +1,109 @@ +#N canvas 0 153 1009 482 10; +#X obj 308 -17 inlet; +#X obj 210 225 unpack f f f f; +#X obj 72 -11 inlet; +#X obj 72 10 unpack f f; +#X obj 64 352 *~; +#X obj 62 418 outlet~; +#X obj 72 40 mtof; +#X obj 201 265 ./adsr~; +#X obj 70 113 s \$0in; +#X obj 309 21 route adsr; +#N canvas 69 154 450 300 \$0dyn 0; +#X restore 640 87 pd \$0dyn; +#X obj 649 469 send pd-\$0dyn; +#X obj 541 115 loadbang; +#X obj 539 166 iemlib/dollarg; +#X obj 539 198 tof/listUnfold; +#X obj 564 141 t b b; +#X obj 730 172 f \$0; +#X obj 561 250 + 1; +#X obj 656 212 * 4; +#X obj 656 233 + 2; +#X obj 660 262 + 1; +#X obj 661 289 + 1; +#X obj 671 317 + 1; +#X obj 539 353 pack f f \$0 f f f f f; +#X msg 535 388 obj 0 20 * \$2 \, obj 50 20 osc~ \, obj 100 20 *~ \$1 +\, obj 100 0 r \$3v\$8 \, connect 0 0 \$4 0 \, connect \$4 0 \$5 0 +\, connect \$5 0 \$6 0 \, connect \$6 0 1 0 \, connect \$7 0 \$6 1 +; +#X obj 63 386 *~; +#X msg 321 334 1 \$1; +#X obj 322 358 /; +#X obj 403 49 tof/listUnfold; +#X obj 402 87 pack f f \$0; +#X msg 402 125 \; \$3v\$2 \$1; +#X obj 366 237 zexy/sum; +#X obj 485 179 t l l; +#X obj 399 26 t l l; +#X obj 731 138 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 593 232 / 2; +#X obj 558 304 moses 1; +#X obj 570 279 -; +#X msg 462 293 1 \$1; +#X obj 459 316 /; +#X obj 51 266 catch~ \$0out; +#X msg 731 205 clear \, obj 0 0 r \$1in \, obj 0 100 throw~ \$1out +; +#X obj 464 265 abs; +#X obj 602 261 int; +#X obj 478 238 - 2; +#X connect 0 0 9 0; +#X connect 1 0 7 1; +#X connect 1 1 7 2; +#X connect 1 2 7 3; +#X connect 1 3 7 4; +#X connect 2 0 3 0; +#X connect 3 0 6 0; +#X connect 3 1 7 0; +#X connect 4 0 25 0; +#X connect 6 0 8 0; +#X connect 7 0 4 1; +#X connect 9 0 1 0; +#X connect 9 1 33 0; +#X connect 12 0 15 0; +#X connect 13 0 32 0; +#X connect 13 1 35 0; +#X connect 14 0 23 0; +#X connect 14 1 17 0; +#X connect 14 1 18 0; +#X connect 14 1 23 7; +#X connect 15 0 13 0; +#X connect 15 1 16 0; +#X connect 16 0 41 0; +#X connect 17 0 37 0; +#X connect 18 0 19 0; +#X connect 19 0 20 0; +#X connect 19 0 23 3; +#X connect 20 0 21 0; +#X connect 20 0 23 4; +#X connect 21 0 22 0; +#X connect 21 0 23 5; +#X connect 22 0 23 6; +#X connect 23 0 24 0; +#X connect 24 0 11 0; +#X connect 25 0 5 0; +#X connect 26 0 27 0; +#X connect 27 0 25 1; +#X connect 28 0 29 0; +#X connect 28 1 29 1; +#X connect 29 0 30 0; +#X connect 31 0 26 0; +#X connect 32 0 31 0; +#X connect 32 1 14 0; +#X connect 33 0 31 0; +#X connect 33 1 28 0; +#X connect 34 0 16 0; +#X connect 35 0 43 0; +#X connect 36 0 44 0; +#X connect 36 1 23 1; +#X connect 37 0 36 0; +#X connect 38 0 39 0; +#X connect 39 0 23 1; +#X connect 40 0 4 0; +#X connect 41 0 11 0; +#X connect 42 0 38 0; +#X connect 43 0 37 1; +#X connect 44 0 42 0; diff --git a/adsr~-help.pd b/adsr~-help.pd new file mode 100644 index 0000000..53e56a4 --- /dev/null +++ b/adsr~-help.pd @@ -0,0 +1,63 @@ +#N canvas 264 25 741 655 10; +#X obj 32 406 osc~ 440; +#X obj 32 435 *~; +#X obj 31 460 *~ 0.3; +#X text 28 -4 Description: Simple ADSR enveloppe generator.; +#X text 28 26 Arguments: Attack time \, Decay time \, Sustain level +\, Release time; +#N canvas 117 168 450 300 (subpatch) 0; +#X array \$0curve 44100 float 2; +#X coords 0 1 44100 -1 200 140 1; +#X restore 504 314 graph; +#X obj 199 537 tabwrite~ \$0curve; +#X obj 146 234 bng 15 250 50 0 empty empty empty 17 7 0 10 -258699 +-1 -1; +#X msg 201 287 127; +#X msg 146 311 0; +#X obj 146 258 t b b b; +#X text 166 231 Click to generate a 700 ms full volume trigger.; +#X obj 146 286 del 700; +#X floatatom 233 319 5 1 1000 1 attack_time - -; +#X floatatom 267 343 5 1 1000 1 decay_time - -; +#X floatatom 301 365 5 0 1 1 sustain_level(0-1) - -; +#X floatatom 335 387 5 1 1000 1 release_time - -; +#X obj 233 288 s \$0draw; +#X obj 229 506 r \$0draw; +#X obj 245 486 print attack_started; +#X obj 335 448 print release_done; +#X obj 290 467 print attack+decay_done; +#X text 320 521 Arguments: attack_time decay_time sustain_level release_time +; +#X text 320 537 Defaults: 250 250 1 250; +#X text 145 193 MODIFY THESE PARAMETERS AND CLICK THE RED BUTTON TO +DISPLAY THE ADSR CURVE.; +#X text 26 56 Inlets: MIDI note velocity \, A \, D \, S \, R; +#X text 26 73 Outlet_1: Line level.; +#X obj 200 417 mtl/adsr~ 70 50 0.5 100; +#X obj 30 485 mtl/out~; +#X text 40 571 synth.adsr~ does not retrigger the ATTACK if it has +not been RELEASed before. This is to ensure better compatibility when +switching between sources or moving the playback head.; +#X text 27 11 Comments: Works best with noteClose; +#X text 26 97 tags: control~; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 28 0; +#X connect 2 0 28 1; +#X connect 7 0 10 0; +#X connect 8 0 27 0; +#X connect 9 0 27 0; +#X connect 10 0 12 0; +#X connect 10 1 8 0; +#X connect 10 2 17 0; +#X connect 12 0 9 0; +#X connect 13 0 27 1; +#X connect 14 0 27 2; +#X connect 15 0 27 3; +#X connect 16 0 27 4; +#X connect 18 0 6 0; +#X connect 27 0 1 1; +#X connect 27 0 6 0; +#X connect 27 1 19 0; +#X connect 27 2 21 0; +#X connect 27 3 20 0; diff --git a/adsr~.pd b/adsr~.pd new file mode 100644 index 0000000..deb06dc --- /dev/null +++ b/adsr~.pd @@ -0,0 +1,71 @@ +#N canvas 4 180 1022 510 10; +#X obj 78 87 sel 0; +#X obj 268 60 / 127; +#X obj 35 20 inlet; +#X obj 372 11 inlet; +#X obj 572 24 loadbang; +#X obj 572 74 unpack f f f f; +#X obj 421 10 inlet; +#X obj 466 10 inlet; +#X obj 513 10 inlet; +#X obj 151 434 outlet~; +#X text 144 42 TODO: handle original velocity better; +#X obj 296 121 * 0.5; +#X obj 86 156 f 250; +#X obj 718 431 outlet release_done; +#X obj 95 119 t b b; +#X msg 502 307 1; +#X obj 268 83 t f f b; +#X msg 478 252 0; +#X obj 252 437 outlet attack_started; +#X obj 447 219 t b b; +#X obj 113 312 vline~; +#X msg 87 236 0 \$1; +#X obj 248 176 pack f f 250 250; +#X msg 270 249 \$3 \$4; +#X obj 275 306 delay; +#X obj 113 188 t f f; +#X obj 273 276 +; +#X obj 481 430 outlet attack+decay_done; +#X msg 133 274 \$1 \$3 \, \$2 \$4 \$3; +#X obj 572 50 iemlib/dollarg; +#X obj 426 360 zexy/demultiplex 0 1; +#X obj 165 369 iemlib/fade~ _sin; +#X connect 0 0 14 0; +#X connect 0 1 1 0; +#X connect 1 0 16 0; +#X connect 2 0 0 0; +#X connect 3 0 22 2; +#X connect 4 0 29 0; +#X connect 5 0 22 2; +#X connect 5 1 22 3; +#X connect 5 2 11 1; +#X connect 5 3 12 1; +#X connect 6 0 22 3; +#X connect 7 0 11 1; +#X connect 8 0 12 1; +#X connect 11 0 22 1; +#X connect 12 0 25 0; +#X connect 14 0 12 0; +#X connect 14 1 15 0; +#X connect 15 0 30 1; +#X connect 16 0 22 0; +#X connect 16 1 11 0; +#X connect 16 2 19 0; +#X connect 17 0 30 1; +#X connect 19 0 18 0; +#X connect 19 1 17 0; +#X connect 20 0 31 0; +#X connect 21 0 20 0; +#X connect 22 0 28 0; +#X connect 22 0 23 0; +#X connect 23 0 26 0; +#X connect 24 0 30 0; +#X connect 25 0 24 0; +#X connect 25 1 21 0; +#X connect 26 0 24 0; +#X connect 28 0 20 0; +#X connect 29 0 5 0; +#X connect 30 0 27 0; +#X connect 30 1 13 0; +#X connect 31 0 9 0; diff --git a/ambient~-help.pd b/ambient~-help.pd new file mode 100644 index 0000000..5507214 --- /dev/null +++ b/ambient~-help.pd @@ -0,0 +1,12 @@ +#N canvas 533 428 346 257 10; +#X text 41 25 Description: Ambient drone.; +#X text 41 44 Author: Chun Lee (sonicvariable.goto10.org); +#X obj 46 170 mtl/out~; +#X text 43 91 delay; +#X obj 49 111 hsl 128 15 1 1000 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X text 44 63 tags: synthesize~; +#X obj 46 135 mtl/ambient~; +#X connect 4 0 6 0; +#X connect 6 0 2 0; +#X connect 6 1 2 1; diff --git a/ambient~.pd b/ambient~.pd new file mode 100644 index 0000000..060edd9 --- /dev/null +++ b/ambient~.pd @@ -0,0 +1,487 @@ +#N canvas 35 93 450 300 10; +#N canvas 293 240 584 408 droneambient 0; +#X obj 60 87 hip~ 200; +#N canvas 235 357 496 538 rand_sig 0; +#X obj 33 382 vline~; +#X msg 33 362 \$1 \$2; +#X obj 287 132 delay; +#X obj 287 112 t b f; +#X obj 264 135 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 +1; +#X obj 32 430 outlet~; +#X obj 33 40 inlet; +#X obj 73 39 inlet; +#X obj 32 407 *~ 0.8; +#X obj 21 111 cnv 15 170 180 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X obj 33 341 pack f f; +#X obj 84 321 + 1; +#X obj 33 91 t b b; +#X obj 33 160 t b; +#X obj 77 160 t b; +#X obj 110 183 random 200; +#X obj 110 208 + 1; +#X obj 110 229 / 100; +#X obj 110 249 - 1; +#X obj 33 183 random 200; +#X obj 33 208 + 1; +#X obj 33 229 / 100; +#X obj 33 249 - 1; +#X obj 110 271 * 0.2; +#X obj 33 138 moses 1; +#X obj 33 116 random 10; +#X obj 84 301 random 20; +#X obj 266 163 spigot; +#X connect 0 0 8 0; +#X connect 1 0 0 0; +#X connect 2 0 27 0; +#X connect 3 0 2 0; +#X connect 3 1 2 1; +#X connect 4 0 27 1; +#X connect 6 0 4 0; +#X connect 7 0 12 0; +#X connect 8 0 5 0; +#X connect 10 0 1 0; +#X connect 11 0 10 1; +#X connect 11 0 3 0; +#X connect 12 0 25 0; +#X connect 12 1 26 0; +#X connect 13 0 19 0; +#X connect 14 0 15 0; +#X connect 15 0 16 0; +#X connect 16 0 17 0; +#X connect 17 0 18 0; +#X connect 18 0 23 0; +#X connect 19 0 20 0; +#X connect 20 0 21 0; +#X connect 21 0 22 0; +#X connect 22 0 10 0; +#X connect 23 0 10 0; +#X connect 24 0 13 0; +#X connect 24 1 14 0; +#X connect 25 0 24 0; +#X connect 26 0 11 0; +#X connect 27 0 12 0; +#X restore 59 56 pd rand_sig; +#N canvas 0 0 858 594 dels 0; +#X floatatom 81 27 5 0 0 0 - - -; +#X obj 89 97 *~ 0.9; +#X obj 46 155 outlet~; +#X obj 26 25 inlet~; +#X obj 146 21 inlet; +#X obj 46 48 delwrite~ sam4 1000; +#X obj 46 71 vd~ sam4; +#X connect 0 0 6 0; +#X connect 1 0 5 0; +#X connect 3 0 5 0; +#X connect 4 0 0 0; +#X connect 6 0 1 0; +#X connect 6 0 2 0; +#X restore 147 207 pd dels; +#X floatatom 191 165 5 0 0 0 - - -; +#N canvas 0 0 858 594 dels 0; +#X floatatom 81 27 5 0 0 0 - - -; +#X obj 89 97 *~ 0.9; +#X obj 46 155 outlet~; +#X obj 26 25 inlet~; +#X obj 146 21 inlet; +#X obj 46 48 delwrite~ sam5 1000; +#X obj 46 71 vd~ sam5; +#X connect 0 0 6 0; +#X connect 1 0 5 0; +#X connect 3 0 5 0; +#X connect 4 0 0 0; +#X connect 6 0 1 0; +#X connect 6 0 2 0; +#X restore 213 205 pd dels; +#X floatatom 257 187 5 0 0 0 - - -; +#N canvas 481 184 829 584 del_bank 0; +#N canvas 0 0 858 594 dels 0; +#X floatatom 81 27 5 0 0 0 - - -; +#X obj 89 97 *~ 0.9; +#X obj 46 48 delwrite~ sam3 1000; +#X obj 46 71 vd~ sam3; +#X obj 46 155 outlet~; +#X obj 26 25 inlet~; +#X obj 146 21 inlet; +#X connect 0 0 3 0; +#X connect 1 0 2 0; +#X connect 3 0 1 0; +#X connect 3 0 4 0; +#X connect 5 0 2 0; +#X connect 6 0 0 0; +#X restore 278 199 pd dels; +#X floatatom 292 177 5 0 0 0 - - -; +#N canvas 0 0 858 594 dels 0; +#X floatatom 81 27 5 0 0 0 - - -; +#X obj 89 97 *~ 0.9; +#X obj 46 155 outlet~; +#X obj 26 25 inlet~; +#X obj 146 21 inlet; +#X obj 46 48 delwrite~ sam1 1000; +#X obj 46 71 vd~ sam1; +#X connect 0 0 6 0; +#X connect 1 0 5 0; +#X connect 3 0 5 0; +#X connect 4 0 0 0; +#X connect 6 0 1 0; +#X connect 6 0 2 0; +#X restore 91 194 pd dels; +#X floatatom 105 172 5 0 0 0 - - -; +#N canvas 0 0 858 594 dels 0; +#X floatatom 81 27 5 0 0 0 - - -; +#X obj 89 97 *~ 0.9; +#X obj 46 155 outlet~; +#X obj 26 25 inlet~; +#X obj 146 21 inlet; +#X obj 46 48 delwrite~ sam2 1000; +#X obj 46 71 vd~ sam2; +#X connect 0 0 6 0; +#X connect 1 0 5 0; +#X connect 3 0 5 0; +#X connect 4 0 0 0; +#X connect 6 0 1 0; +#X connect 6 0 2 0; +#X restore 182 196 pd dels; +#X floatatom 196 174 5 0 0 0 - - -; +#X obj 60 426 outlet~; +#X obj 214 436 outlet~; +#X obj 91 92 inlet~; +#X msg 676 249 35; +#X floatatom 539 293 5 0 0 0 - - -; +#X floatatom 574 328 5 0 0 0 - - -; +#X floatatom 522 273 5 0 0 0 - - -; +#X floatatom 556 311 5 0 0 0 - - -; +#X floatatom 591 345 5 0 0 0 - - -; +#X floatatom 608 364 5 0 0 0 - - -; +#X text 564 272 attack_level; +#X text 581 290 attack_time; +#X text 600 311 dekay_time; +#X text 614 327 sus_level; +#X text 632 344 sus_time; +#X text 646 365 release_time; +#X obj 505 273 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#N canvas 86 0 881 652 A_D_S_R_percent 0; +#X obj 98 377 line~; +#X msg 98 311 0 \, \$1 \$2; +#X obj 98 276 pack f f; +#X floatatom 300 60 5 0 0 0 - - -; +#X floatatom 234 148 5 0 0 0 - - -; +#X msg 98 232 1; +#X msg 98 191 set \$1; +#X floatatom 98 88 5 0 0 0 - - -; +#X obj 14 40 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X msg 182 249 1; +#X msg 182 310 \$1 \, \$2 \$3; +#X obj 182 276 pack f f f; +#X floatatom 449 59 5 0 0 0 - - -; +#X obj 268 209 delay; +#X obj 182 214 delay; +#X floatatom 603 60 5 0 0 0 - - -; +#X obj 275 280 pack f f; +#X msg 275 303 \$1 \, 0 \$2; +#X msg 275 236 set \$1; +#X msg 275 257 0.8; +#X floatatom 715 58 5 0 0 0 - - -; +#X text 140 87 attack_level; +#X text 342 57 attack_time; +#X text 493 59 dekay_time; +#X text 274 147 sus_level; +#X text 644 60 sus_time; +#X text 753 59 release_time; +#X obj 229 379 f; +#X obj 254 379 f; +#X obj 278 379 f; +#X obj 303 379 f; +#X obj 241 405 +; +#X obj 290 404 +; +#X obj 267 431 +; +#X floatatom 272 453 5 0 0 0 - - -; +#X obj 370 330 t b; +#X obj 369 300 t b; +#X obj 372 273 t b; +#X obj 371 243 t b; +#X obj 266 187 +; +#X floatatom 390 390 5 0 0 0 - - -; +#X obj 13 18 inlet; +#X obj 52 18 inlet; +#X obj 91 18 inlet; +#X obj 130 18 inlet; +#X obj 169 18 inlet; +#X obj 208 18 inlet; +#X obj 247 19 inlet; +#X obj 98 438 outlet~; +#X obj 313 491 outlet; +#X obj 770 25 inlet; +#X obj 583 317 *; +#X obj 583 275 / 100; +#X floatatom 583 252 5 0 0 0 - - -; +#X obj 629 316 *; +#X obj 629 274 / 100; +#X floatatom 629 251 5 0 0 0 - - -; +#X obj 679 316 *; +#X obj 679 274 / 100; +#X floatatom 679 251 5 0 0 0 - - -; +#X obj 727 315 *; +#X obj 727 273 / 100; +#X floatatom 727 250 5 0 0 0 - - -; +#X floatatom 777 152 5 0 0 0 - - -; +#X obj 701 107 t b f; +#X floatatom 808 86 5 0 0 0 - - -; +#X obj 613 410 f; +#X obj 638 411 f; +#X obj 662 412 f; +#X obj 687 413 f; +#X connect 0 0 48 0; +#X connect 1 0 0 0; +#X connect 2 0 1 0; +#X connect 3 0 2 1; +#X connect 3 0 14 1; +#X connect 3 0 27 1; +#X connect 3 0 38 0; +#X connect 4 0 11 1; +#X connect 4 0 18 0; +#X connect 5 0 2 0; +#X connect 6 0 5 0; +#X connect 6 0 9 0; +#X connect 7 0 6 0; +#X connect 8 0 5 0; +#X connect 8 0 14 0; +#X connect 9 0 11 0; +#X connect 10 0 0 0; +#X connect 11 0 10 0; +#X connect 12 0 11 2; +#X connect 12 0 28 1; +#X connect 12 0 37 0; +#X connect 12 0 39 1; +#X connect 13 0 19 0; +#X connect 14 0 9 0; +#X connect 14 0 13 0; +#X connect 15 0 29 1; +#X connect 15 0 36 0; +#X connect 15 0 39 0; +#X connect 16 0 17 0; +#X connect 17 0 0 0; +#X connect 18 0 19 0; +#X connect 19 0 16 0; +#X connect 20 0 16 1; +#X connect 20 0 30 1; +#X connect 20 0 35 0; +#X connect 27 0 31 0; +#X connect 28 0 31 1; +#X connect 29 0 32 0; +#X connect 30 0 32 1; +#X connect 31 0 33 0; +#X connect 32 0 33 1; +#X connect 33 0 34 0; +#X connect 34 0 49 0; +#X connect 35 0 30 0; +#X connect 35 0 29 0; +#X connect 35 0 28 0; +#X connect 35 0 27 0; +#X connect 36 0 30 0; +#X connect 36 0 29 0; +#X connect 36 0 28 0; +#X connect 36 0 27 0; +#X connect 37 0 30 0; +#X connect 37 0 29 0; +#X connect 37 0 28 0; +#X connect 37 0 27 0; +#X connect 38 0 30 0; +#X connect 38 0 29 0; +#X connect 38 0 28 0; +#X connect 38 0 27 0; +#X connect 39 0 13 1; +#X connect 39 0 40 0; +#X connect 41 0 8 0; +#X connect 42 0 7 0; +#X connect 43 0 53 0; +#X connect 43 0 66 1; +#X connect 44 0 56 0; +#X connect 44 0 67 1; +#X connect 45 0 4 0; +#X connect 46 0 59 0; +#X connect 46 0 68 1; +#X connect 47 0 62 0; +#X connect 47 0 69 1; +#X connect 50 0 64 0; +#X connect 51 0 3 0; +#X connect 52 0 51 0; +#X connect 53 0 52 0; +#X connect 54 0 12 0; +#X connect 55 0 54 0; +#X connect 56 0 55 0; +#X connect 57 0 15 0; +#X connect 58 0 57 0; +#X connect 59 0 58 0; +#X connect 60 0 20 0; +#X connect 61 0 60 0; +#X connect 62 0 61 0; +#X connect 63 0 51 1; +#X connect 63 0 54 1; +#X connect 63 0 57 1; +#X connect 63 0 60 1; +#X connect 64 0 62 0; +#X connect 64 0 59 0; +#X connect 64 0 56 0; +#X connect 64 0 53 0; +#X connect 64 0 69 0; +#X connect 64 0 68 0; +#X connect 64 0 67 0; +#X connect 64 0 66 0; +#X connect 64 1 63 0; +#X connect 65 0 64 0; +#X connect 66 0 52 0; +#X connect 67 0 55 0; +#X connect 68 0 58 0; +#X connect 69 0 61 0; +#X restore 505 402 pd A_D_S_R_percent; +#X floatatom 626 383 5 0 0 0 - - -; +#X floatatom 628 441 5 0 0 0 - - -; +#X obj 490 424 *~; +#X obj 505 20 metro 5000; +#X obj 528 159 + 1; +#X obj 554 180 + 1; +#X obj 581 204 + 1; +#X obj 505 1 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X obj 554 159 random 10; +#X obj 626 82 random 5000; +#X obj 626 104 + 1; +#X obj 505 104 t b b b; +#X msg 551 249; +#X msg 519 249 1; +#X msg 551 249 15; +#X msg 584 249 15; +#X msg 616 249 0.8; +#X msg 647 249 35; +#X obj 528 138 random 20; +#X obj 579 180 random 50; +#X floatatom 679 50 5 0 0 0 - - -; +#X obj 323 115 loadbang; +#X msg 417 53 1; +#X obj 45 296 motex/pansig~; +#X obj 145 293 motex/pansig~; +#X msg 247 142 -1; +#X msg 276 142 1; +#X msg 217 142 0; +#X obj 240 307 motex/pansig~; +#X connect 0 0 52 0; +#X connect 1 0 0 1; +#X connect 2 0 47 0; +#X connect 3 0 2 1; +#X connect 4 0 48 0; +#X connect 5 0 4 1; +#X connect 8 0 26 0; +#X connect 9 0 15 0; +#X connect 10 0 23 2; +#X connect 11 0 23 4; +#X connect 12 0 23 1; +#X connect 13 0 23 3; +#X connect 14 0 23 5; +#X connect 15 0 23 6; +#X connect 22 0 23 0; +#X connect 23 0 26 1; +#X connect 23 1 25 0; +#X connect 24 0 23 7; +#X connect 26 0 2 0; +#X connect 26 0 4 0; +#X connect 26 0 0 0; +#X connect 27 0 33 0; +#X connect 27 0 35 0; +#X connect 28 0 3 0; +#X connect 29 0 5 0; +#X connect 30 0 1 0; +#X connect 31 0 27 0; +#X connect 32 0 29 0; +#X connect 33 0 34 0; +#X connect 34 0 27 1; +#X connect 34 0 24 0; +#X connect 35 0 22 0; +#X connect 35 1 32 0; +#X connect 35 1 42 0; +#X connect 35 1 43 0; +#X connect 35 2 33 0; +#X connect 37 0 12 0; +#X connect 38 0 10 0; +#X connect 39 0 13 0; +#X connect 40 0 11 0; +#X connect 41 0 14 0; +#X connect 42 0 28 0; +#X connect 43 0 30 0; +#X connect 44 0 33 1; +#X connect 45 0 51 0; +#X connect 45 0 49 0; +#X connect 45 0 50 0; +#X connect 45 0 37 0; +#X connect 45 0 38 0; +#X connect 45 0 39 0; +#X connect 45 0 40 0; +#X connect 45 0 41 0; +#X connect 45 0 9 0; +#X connect 45 0 46 0; +#X connect 46 0 31 0; +#X connect 47 0 6 0; +#X connect 47 1 7 0; +#X connect 48 0 6 0; +#X connect 48 1 7 0; +#X connect 49 0 48 1; +#X connect 50 0 52 1; +#X connect 51 0 47 1; +#X connect 52 0 6 0; +#X connect 52 1 7 0; +#X restore 26 155 pd del_bank; +#X msg 191 143 100; +#X msg 257 165 150; +#X obj 147 229 hip~ 200; +#X obj 213 227 hip~ 200; +#X obj 25 382 outlet~; +#X obj 96 381 outlet~; +#X obj 191 110 loadbang; +#X obj 59 10 loadbang; +#X msg 59 33 1; +#X obj 98 33 t b; +#X obj 198 321 expr~ max(min($v1 \, $f2/10) \, -$f2/10); +#X obj 238 350 expr~ max(min($v1 \, $f2/10) \, -$f2/10); +#X msg 447 293 10; +#X obj 447 273 loadbang; +#X obj 194 42 inlet delay; +#X obj 36 288 *~ 2; +#X obj 97 288 *~ 2; +#X connect 0 0 6 0; +#X connect 1 0 0 0; +#X connect 2 0 9 0; +#X connect 3 0 2 1; +#X connect 4 0 10 0; +#X connect 5 0 4 1; +#X connect 6 0 2 0; +#X connect 6 0 22 0; +#X connect 6 1 4 0; +#X connect 6 1 23 0; +#X connect 7 0 3 0; +#X connect 8 0 5 0; +#X connect 9 0 22 0; +#X connect 10 0 23 0; +#X connect 13 0 8 0; +#X connect 13 0 7 0; +#X connect 14 0 15 0; +#X connect 14 0 16 0; +#X connect 15 0 1 0; +#X connect 16 0 1 1; +#X connect 17 0 11 0; +#X connect 18 0 12 0; +#X connect 19 0 17 1; +#X connect 19 0 18 1; +#X connect 20 0 19 0; +#X connect 21 0 3 0; +#X connect 22 0 17 0; +#X connect 23 0 18 0; +#X restore 88 92 pd droneambient; +#X obj 71 263 outlet~; +#X obj 131 263 outlet~; +#X obj 89 13 inlet delay; +#X connect 0 0 1 0; +#X connect 0 1 2 0; +#X connect 3 0 0 0; diff --git a/applause~-help.pd b/applause~-help.pd new file mode 100644 index 0000000..ca11387 --- /dev/null +++ b/applause~-help.pd @@ -0,0 +1,20 @@ +#N canvas 393 218 305 333 10; +#X obj 49 113 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 12700 1; +#X obj 86 146 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 12700 1; +#X obj 124 177 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 11800 1; +#X text 9 26 Comment: Taken from Andy Farnell's work.; +#X text 9 7 Description: Generates some crunchy clapping.; +#X obj 46 203 mtl/applause~; +#X obj 46 244 mtl/out~; +#X text 118 159 density; +#X text 80 127 grain; +#X text 42 93 applaud; +#X text 10 45 tags: synthesize~; +#X connect 0 0 5 0; +#X connect 1 0 5 1; +#X connect 2 0 5 2; +#X connect 5 0 6 1; +#X connect 5 0 6 0; diff --git a/applause~.pd b/applause~.pd new file mode 100644 index 0000000..12af5c1 --- /dev/null +++ b/applause~.pd @@ -0,0 +1,56 @@ +#N canvas 487 98 979 321 10; +#N canvas 620 191 623 424 applaud 0; +#X obj 147 151 noise~; +#X obj 142 401 outlet~; +#X obj 141 340 hip~ 1800; +#X obj 138 260 *~; +#X obj 139 286 *~; +#X obj 141 361 lop~ 5000; +#X obj 140 317 vcf~ 300 3.939; +#X obj 233 272 loadbang; +#X obj 185 214 bp~ 101.7 0.55; +#X msg 233 295 4.2; +#X obj 170 187 *~; +#X text 152 24 Bravo! Jolly Good show!; +#X obj 259 67 inlet density; +#X obj 186 64 inlet~; +#X obj 186 85 sqrt~; +#X obj 317 188 *~ 10000; +#X obj 359 66 inlet~ grainspectrum; +#X obj 185 243 *~; +#X connect 0 0 10 0; +#X connect 2 0 5 0; +#X connect 3 0 4 0; +#X connect 3 0 4 1; +#X connect 4 0 6 0; +#X connect 5 0 1 0; +#X connect 6 0 2 0; +#X connect 7 0 9 0; +#X connect 8 0 17 0; +#X connect 9 0 6 2; +#X connect 10 0 3 0; +#X connect 10 0 3 1; +#X connect 10 0 8 0; +#X connect 12 0 8 1; +#X connect 13 0 14 0; +#X connect 14 0 10 1; +#X connect 15 0 17 1; +#X connect 16 0 15 0; +#X connect 17 0 6 1; +#X restore 135 184 pd applaud; +#X obj 59 79 clip~ 0 1; +#X obj 137 267 outlet~; +#X obj 186 88 clip~ 0 1; +#X obj 293 95 clip 0 1; +#X obj 292 135 * 500; +#X obj 58 39 inlet; +#X obj 148 39 inlet; +#X obj 298 39 inlet; +#X connect 0 0 2 0; +#X connect 1 0 0 0; +#X connect 3 0 0 2; +#X connect 4 0 5 0; +#X connect 5 0 0 1; +#X connect 6 0 1 0; +#X connect 7 0 3 0; +#X connect 8 0 4 0; diff --git a/arpeggio-help.pd b/arpeggio-help.pd new file mode 100644 index 0000000..5affd0b --- /dev/null +++ b/arpeggio-help.pd @@ -0,0 +1,32 @@ +#N canvas 433 164 459 498 10; +#X text 14 9 Description: Simple arppegiator using a list as a chord +and a note index.; +#X text 22 181 Inlet_1: note index from 0 to infinity; +#X text 214 200 Inlet_2: chord as a list of floats; +#X obj 15 334 mtl/out~; +#X text 14 37 tags: musical; +#X obj 15 307 osc~; +#X obj 15 270 mtof; +#X msg 153 201 0 4 7 11; +#X msg 153 244 0 2 9 7; +#X floatatom 15 166 5 0 0 0 - - -; +#X obj 15 99 loadbang; +#X obj 15 122 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 15 202 mtl/arpeggio 2 4 7 11; +#X msg 154 222 2 4 9 14; +#X obj 138 142 mtl/clkMaster 120; +#X obj 15 142 mtl/clkSlave 4 25; +#X obj 15 235 + 24; +#X connect 5 0 3 0; +#X connect 5 0 3 1; +#X connect 6 0 5 0; +#X connect 7 0 12 1; +#X connect 8 0 12 1; +#X connect 9 0 12 0; +#X connect 10 0 11 0; +#X connect 11 0 15 0; +#X connect 12 0 16 0; +#X connect 13 0 12 1; +#X connect 15 0 9 0; +#X connect 16 0 6 0; diff --git a/arpeggio.pd b/arpeggio.pd new file mode 100644 index 0000000..c680828 --- /dev/null +++ b/arpeggio.pd @@ -0,0 +1,38 @@ +#N canvas 567 137 412 526 10; +#X obj 50 166 list append; +#X obj 239 5 inlet; +#X obj 47 23 inlet; +#X obj 50 287 +; +#X obj 206 215 * 12; +#X obj 213 98 t a a; +#X obj 179 149 t f f; +#X obj 208 191 div; +#X obj 48 487 outlet; +#X obj 304 4 loadbang; +#X obj 51 80 t b f; +#X obj 304 47 list; +#X obj 172 181 mod; +#X obj 171 202 + 1; +#X obj 248 146 list length; +#X obj 50 228 zexy/packel; +#X obj 304 26 iemlib/dollarg; +#X connect 0 0 15 0; +#X connect 1 0 5 0; +#X connect 2 0 10 0; +#X connect 3 0 8 0; +#X connect 4 0 3 1; +#X connect 5 0 0 1; +#X connect 5 1 14 0; +#X connect 6 0 12 0; +#X connect 6 1 7 0; +#X connect 7 0 4 0; +#X connect 9 0 16 0; +#X connect 10 0 0 0; +#X connect 10 1 6 0; +#X connect 11 0 5 0; +#X connect 12 0 13 0; +#X connect 13 0 15 1; +#X connect 14 0 7 1; +#X connect 14 0 12 1; +#X connect 15 0 3 0; +#X connect 16 0 11 0; diff --git a/asciiToPd-help.pd b/asciiToPd-help.pd new file mode 100644 index 0000000..9e7920e --- /dev/null +++ b/asciiToPd-help.pd @@ -0,0 +1,25 @@ +#N canvas 760 121 569 441 10; +#X text 28 38 tags: conversion; +#X obj 54 212 print; +#X msg 54 109 97 32 98 32 99; +#X obj 56 185 mtl/asciiToPd; +#X text 157 130 0 is a special value that forces the end of the message +; +#X msg 69 132 65 0 66 0 67; +#X floatatom 89 153 5 48 126 0 - - -; +#X text 27 17 Description: Converts ASCII bytes to Pd messages.; +#X obj 55 367 print; +#X text 167 340 If you specify an ASCII code argument \, the object +will store all incomming data. The data will be converted and outputed +only when the specified ASCII code is encountered. In this case \, +code 13 (carriage return).; +#X msg 56 285 104 101 108 108 111 32; +#X msg 81 307 119 111 114 108 100 13; +#X obj 56 343 mtl/asciiToPd 13; +#X connect 2 0 3 0; +#X connect 3 0 1 0; +#X connect 5 0 3 0; +#X connect 6 0 3 0; +#X connect 10 0 12 0; +#X connect 11 0 12 0; +#X connect 12 0 8 0; diff --git a/asciiToPd.pd b/asciiToPd.pd new file mode 100644 index 0000000..93cfa49 --- /dev/null +++ b/asciiToPd.pd @@ -0,0 +1,25 @@ +#N canvas 348 447 540 339 10; +#X obj 115 26 inlet; +#X obj 111 314 outlet; +#X obj 251 192 ./listBuild; +#X obj 246 12 loadbang; +#X obj 246 39 iemlib/dollarg; +#X obj 111 99 zexy/demultiplex; +#X obj 251 116 tof/listUnfold; +#X obj 115 56 route bang; +#X obj 283 148 sel 0 \$1 123; +#X text 370 148 123 seems to crash pd; +#X obj 111 252 moocow/bytes2any 0 -1; +#X connect 0 0 7 0; +#X connect 2 0 10 0; +#X connect 3 0 4 0; +#X connect 4 1 5 1; +#X connect 5 0 10 0; +#X connect 5 1 6 0; +#X connect 6 0 8 0; +#X connect 7 0 2 1; +#X connect 7 1 5 0; +#X connect 8 0 2 0; +#X connect 8 1 2 0; +#X connect 8 3 2 1; +#X connect 10 0 1 0; diff --git a/aux~-help.pd b/aux~-help.pd new file mode 100644 index 0000000..81012d5 --- /dev/null +++ b/aux~-help.pd @@ -0,0 +1,7 @@ +#N canvas 195 112 814 528 10; +#X text 67 26 Description: Receives an aux stereo signal routed by +mtl/channel~; +#X text 223 160 Argument: the aux number.; +#X obj 147 160 mtl/aux~ 1; +#X text 67 63 tags: mix~; +#X coords 0 0 1 1 133 33 0; diff --git a/aux~.pd b/aux~.pd new file mode 100644 index 0000000..21c21a6 --- /dev/null +++ b/aux~.pd @@ -0,0 +1,8 @@ +#N canvas 27 128 814 528 10; +#X obj 147 267 outlet~; +#X obj 373 268 outlet~; +#X obj 210 153 common~ MTLAUX\$1L; +#X obj 381 165 common~ MTLAUX\$1R; +#X connect 2 0 0 0; +#X connect 3 0 1 0; +#X coords 0 0 1 1 133 33 0; diff --git a/beep~-help.pd b/beep~-help.pd new file mode 100644 index 0000000..b48356d --- /dev/null +++ b/beep~-help.pd @@ -0,0 +1,25 @@ +#N canvas 1107 279 656 363 10; +#X text 9 66 INLET 1: bang triggers a beep; +#X obj 23 203 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 129 200 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 11 2 Description: A simple beep.; +#X text 10 39 ARGUMENT 1: default midi note; +#X text 64 80 midi note+velocity also triggers a beep; +#X obj 229 137 mtl/piano 1; +#X obj 23 243 mtl/beep~ 60 100; +#X obj 129 243 mtl/beep~ 68 50; +#X text 9 52 ARGUMENT 2: default beep length; +#X obj 23 290 mtl/out~; +#X obj 228 243 mtl/beep~ 67 100; +#X text 13 18 tags: synthesize~; +#X connect 1 0 7 0; +#X connect 2 0 8 0; +#X connect 6 0 11 0; +#X connect 7 0 10 0; +#X connect 7 0 10 1; +#X connect 8 0 10 0; +#X connect 8 0 10 1; +#X connect 11 0 10 0; +#X connect 11 0 10 1; diff --git a/beep~.pd b/beep~.pd new file mode 100644 index 0000000..1595dc5 --- /dev/null +++ b/beep~.pd @@ -0,0 +1,40 @@ +#N canvas 188 49 604 622 10; +#X obj 220 -49 inlet; +#X obj 83 442 *~; +#X obj 83 474 outlet~; +#X obj 22 339 osc~ 880; +#X obj 468 -48 loadbang; +#X obj 22 236 mtof; +#X obj 203 -20 route bang; +#X obj 193 22 t b b b; +#X obj 357 250 f 127; +#X obj 200 244 delay 25; +#X msg 211 282 0; +#X obj 235 149 t a b; +#X obj 65 158 f 60; +#X obj 234 355 ./adsr~ 5 0 1 5; +#X obj 295 35 ./noteSplit; +#X obj 476 31 list split 1; +#X obj 478 -4 iemlib/dollarg; +#X connect 0 0 6 0; +#X connect 1 0 2 0; +#X connect 3 0 1 0; +#X connect 4 0 16 0; +#X connect 5 0 3 0; +#X connect 6 0 7 0; +#X connect 6 1 14 0; +#X connect 7 0 12 0; +#X connect 7 1 9 0; +#X connect 7 2 8 0; +#X connect 8 0 13 0; +#X connect 9 0 10 0; +#X connect 10 0 13 0; +#X connect 11 0 5 0; +#X connect 11 1 9 0; +#X connect 12 0 5 0; +#X connect 13 0 1 1; +#X connect 14 0 11 0; +#X connect 14 1 13 0; +#X connect 15 0 12 1; +#X connect 15 1 9 1; +#X connect 16 0 15 0; diff --git a/bell~-help.pd b/bell~-help.pd new file mode 100644 index 0000000..d2923b8 --- /dev/null +++ b/bell~-help.pd @@ -0,0 +1,22 @@ +#N canvas 511 406 639 339 10; +#X text 14 52 Comment: Taken from Andy Farnell's work.; +#X text 15 8 Description: Generates some bell sounds.; +#X text 14 73 Migh need a bit of "tuning".; +#X text 87 100 Midi note.; +#X msg 136 174 64 54; +#X obj 82 214 mtl/bell~; +#X obj 82 251 mtl/out~; +#X obj 213 132 mtl/piano 1; +#X msg 18 172 30 127; +#X msg 24 129 60 127; +#X msg 89 120 65 127; +#X msg 113 151 80 127; +#X text 15 26 tags: synthesize~; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 5 0 6 1; +#X connect 7 0 5 0; +#X connect 8 0 5 0; +#X connect 9 0 5 0; +#X connect 10 0 5 0; +#X connect 11 0 5 0; diff --git a/bell~.pd b/bell~.pd new file mode 100644 index 0000000..ae4dc91 --- /dev/null +++ b/bell~.pd @@ -0,0 +1,288 @@ +#N canvas 104 88 455 402 10; +#N canvas 444 467 701 290 bell1 0; +#X obj 257 206 clip~ -0.9 0.9; +#N canvas 0 0 350 192 envelopes 0; +#X obj 238 82 / 9; +#X obj 187 82 / 7; +#X obj 71 85 * 0.9; +#X msg 120 58 600; +#X obj 135 83 / 2; +#X obj 12 85 * 1.2; +#X obj 120 33 inlet; +#X obj 12 136 outlet; +#X obj 71 133 outlet; +#X obj 135 132 outlet; +#X obj 187 132 outlet; +#X obj 238 132 outlet; +#X text 98 10 envelope ratios; +#X connect 0 0 11 0; +#X connect 1 0 10 0; +#X connect 2 0 8 0; +#X connect 3 0 0 0; +#X connect 3 0 1 0; +#X connect 3 0 2 0; +#X connect 3 0 4 0; +#X connect 3 0 5 0; +#X connect 4 0 9 0; +#X connect 5 0 7 0; +#X connect 6 0 3 0; +#X restore 251 50 pd envelopes; +#N canvas 0 0 406 316 part_fund+sub 0; +#X obj 156 54 osc~; +#X obj 71 78 osc~; +#X text 6 112 suboctave hum; +#X text 129 105 fundamental; +#X obj 71 52 * 0.5001; +#X obj 197 258 *~; +#X obj 214 179 line~; +#X obj 71 172 *~ 0.1; +#X msg 216 136 1 \, 0 \$1; +#X obj 157 221 *~ 0.02; +#X obj 259 12 inlet; +#X obj 198 289 outlet~; +#X obj 93 10 r \$0-fundamental1; +#X connect 0 0 9 0; +#X connect 1 0 7 0; +#X connect 4 0 1 0; +#X connect 5 0 11 0; +#X connect 6 0 5 1; +#X connect 7 0 9 0; +#X connect 8 0 6 0; +#X connect 9 0 5 0; +#X connect 10 0 8 0; +#X connect 12 0 4 0; +#X connect 12 0 0 0; +#X restore 21 116 pd part_fund+sub; +#N canvas 0 0 327 465 part 0; +#X obj 21 163 osc~; +#X obj 154 165 osc~; +#X obj 79 169 osc~; +#X text 147 192 Nominal; +#X obj 80 140 * 4.8; +#X text 82 192 "Quint"; +#X obj 154 140 * 1.5; +#X obj 160 368 *~; +#X obj 226 277 line~; +#X obj 46 269 *~ 0.2; +#X obj 95 268 *~ 0.5; +#X obj 146 268 *~ 0.1; +#X obj 21 140 * 2.002; +#X obj 133 97 * 2; +#X text 8 194 Octave; +#X msg 228 234 1 \, 0 \$1; +#X obj 95 302 *~ 0.04; +#X obj 246 38 inlet; +#X obj 160 396 outlet~; +#X text 79 11 primary overtones; +#X obj 65 38 r \$0-fundamental1; +#X connect 0 0 9 0; +#X connect 1 0 11 0; +#X connect 2 0 10 0; +#X connect 4 0 2 0; +#X connect 6 0 1 0; +#X connect 7 0 18 0; +#X connect 8 0 7 1; +#X connect 9 0 16 0; +#X connect 10 0 16 0; +#X connect 11 0 16 0; +#X connect 12 0 0 0; +#X connect 13 0 4 0; +#X connect 13 0 6 0; +#X connect 15 0 8 0; +#X connect 16 0 7 0; +#X connect 17 0 15 0; +#X connect 20 0 12 0; +#X connect 20 0 13 0; +#X restore 145 116 pd part primaries; +#N canvas 0 0 289 383 secondaries 0; +#X obj 80 104 osc~; +#X text 19 142 12th overtone; +#X obj 80 79 * 11; +#X obj 151 110 osc~; +#X obj 151 85 * 1.714; +#X text 149 142 12/7; +#X obj 13 105 osc~; +#X obj 13 80 * 1.6666; +#X obj 109 314 *~; +#X obj 173 223 line~; +#X obj 173 255 *~; +#X msg 173 196 1 \, 0 \$1; +#X obj 99 53 * 1.5; +#X obj 172 280 *~; +#X obj 72 254 *~ 0.2; +#X obj 72 210 *~ 0.2; +#X obj 23 210 *~ 0.1; +#X obj 118 209 *~ 0.1; +#X text 203 262 cubic; +#X obj 238 18 inlet; +#X obj 109 347 outlet~; +#X obj 80 19 r \$0-fundamental1; +#X connect 0 0 15 0; +#X connect 2 0 0 0; +#X connect 3 0 17 0; +#X connect 4 0 3 0; +#X connect 6 0 16 0; +#X connect 7 0 6 0; +#X connect 8 0 20 0; +#X connect 9 0 10 1; +#X connect 9 0 10 0; +#X connect 10 0 13 0; +#X connect 10 0 13 1; +#X connect 11 0 9 0; +#X connect 12 0 4 0; +#X connect 12 0 7 0; +#X connect 13 0 8 1; +#X connect 14 0 8 0; +#X connect 15 0 14 0; +#X connect 16 0 14 0; +#X connect 17 0 14 0; +#X connect 19 0 11 0; +#X connect 21 0 2 0; +#X connect 21 0 12 0; +#X restore 275 116 pd secondaries; +#N canvas 0 0 389 416 circulars 0; +#X obj 145 106 osc~; +#X obj 40 103 osc~; +#X text 109 140 1st circular; +#X text 1 139 60 degree mode; +#X obj 40 80 * 3; +#X obj 145 82 * 6.242; +#X text 25 155 "Tierce"; +#X obj 218 105 osc~; +#X obj 218 81 * 12.483; +#X text 220 142 2nd circular; +#X obj 162 325 *~; +#X obj 228 234 line~; +#X obj 227 263 *~; +#X obj 146 237 *~ 0.05; +#X obj 81 189 *~ 0.1; +#X text 262 267 square; +#X msg 228 209 1 \, 0 \$1; +#X obj 313 16 inlet; +#X obj 161 362 outlet~; +#X obj 34 19 r \$0-fundamental1; +#X connect 0 0 13 0; +#X connect 1 0 14 0; +#X connect 4 0 1 0; +#X connect 5 0 0 0; +#X connect 7 0 13 0; +#X connect 8 0 7 0; +#X connect 10 0 18 0; +#X connect 11 0 12 1; +#X connect 11 0 12 0; +#X connect 12 0 10 1; +#X connect 13 0 10 0; +#X connect 14 0 13 0; +#X connect 16 0 11 0; +#X connect 17 0 16 0; +#X connect 19 0 4 0; +#X connect 19 0 5 0; +#X connect 19 0 8 0; +#X restore 384 116 pd circulars; +#N canvas 0 0 357 436 strike 0; +#X obj 107 284 *~ 0.03; +#X obj 67 129 osc~; +#X obj 67 105 * 16; +#X obj 108 129 osc~; +#X obj 108 105 * 24; +#X text 92 72 strikes; +#X obj 144 129 noise~; +#X obj 140 347 *~; +#X obj 205 264 line~; +#X obj 204 288 *~; +#X obj 204 312 *~; +#X text 244 304 cubic; +#X msg 205 242 1 \, 0 \$1; +#X obj 228 25 inlet; +#X obj 140 375 outlet~; +#X obj 77 23 r \$0-fundamental1; +#X connect 0 0 7 0; +#X connect 1 0 0 0; +#X connect 2 0 1 0; +#X connect 3 0 0 0; +#X connect 4 0 3 0; +#X connect 6 0 0 0; +#X connect 7 0 14 0; +#X connect 8 0 9 1; +#X connect 8 0 9 0; +#X connect 9 0 10 0; +#X connect 9 0 10 1; +#X connect 10 0 7 1; +#X connect 12 0 8 0; +#X connect 13 0 12 0; +#X connect 15 0 2 0; +#X connect 15 0 4 0; +#X restore 479 116 pd strike; +#N canvas 0 0 327 216 bodyresonance 0; +#X obj 96 151 delwrite~ \$0-body 400; +#X obj 96 50 clip~ -0.2 0.5; +#X obj 96 123 *~ 0.4; +#X obj 10 87 bp~ 1243 12; +#X obj 95 87 bp~ 287 12; +#X obj 179 87 bp~ 431 12; +#X obj 95 30 delread~ \$0-body 59; +#X obj 57 151 *~ 4; +#X obj 57 191 outlet~; +#X obj 250 29 inlet~; +#X text 91 6 body resonance; +#X connect 1 0 3 0; +#X connect 1 0 4 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 2 0 7 0; +#X connect 3 0 2 0; +#X connect 4 0 2 0; +#X connect 5 0 2 0; +#X connect 6 0 1 0; +#X connect 7 0 8 0; +#X connect 9 0 0 0; +#X restore 479 152 pd bodyresonance; +#X obj 258 227 hip~ 10; +#X obj 257 254 outlet~; +#X obj 251 23 inlet; +#X obj 23 29 s \$0-fundamental1; +#X obj 23 6 inlet; +#X obj 256 183 *~ 0.9; +#X connect 0 0 8 0; +#X connect 1 0 2 0; +#X connect 1 1 3 0; +#X connect 1 2 4 0; +#X connect 1 3 5 0; +#X connect 1 4 6 0; +#X connect 2 0 13 0; +#X connect 3 0 13 0; +#X connect 4 0 13 0; +#X connect 5 0 13 0; +#X connect 6 0 7 0; +#X connect 6 0 13 0; +#X connect 7 0 0 0; +#X connect 8 0 9 0; +#X connect 10 0 1 0; +#X connect 12 0 11 0; +#X connect 13 0 0 0; +#X restore 72 224 pd bell1; +#X obj 60 21 inlet; +#X obj 73 304 outlet~; +#X obj 74 196 t b f; +#X obj 79 168 mtof; +#X obj 60 105 f 80; +#X obj 60 52 route bang; +#X obj 76 263 *~; +#X obj 160 248 line~; +#X msg 162 214 \$1 5; +#X obj 168 146 / 127; +#X obj 122 84 ./noteSplit; +#X connect 0 0 7 0; +#X connect 1 0 6 0; +#X connect 3 0 0 1; +#X connect 3 1 0 0; +#X connect 4 0 3 0; +#X connect 5 0 4 0; +#X connect 6 0 5 0; +#X connect 6 1 11 0; +#X connect 7 0 2 0; +#X connect 8 0 7 1; +#X connect 9 0 8 0; +#X connect 10 0 9 0; +#X connect 11 0 4 0; +#X connect 11 1 10 0; diff --git a/benchmark-help.pd b/benchmark-help.pd new file mode 100644 index 0000000..75ef495 --- /dev/null +++ b/benchmark-help.pd @@ -0,0 +1,34 @@ +#N canvas 42 67 627 480 10; +#X text 82 48 description: measures how much time it takes to make +an operation.; +#X text 87 86 tags: tools; +#X obj 103 351 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 103 413 f; +#X obj 103 437 t f f; +#X obj 146 418 + 1; +#X msg 208 407 0; +#X obj 263 353 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 263 421 tof/increment; +#X text 86 306 This example measure the time it takes for two different +methods to count from 0 to 999; +#X obj 263 384 mtl/benchmark 1000; +#X text 155 157 Inlet: start; +#X text 251 182 Argument: number of bangs to send out outlet 1; +#X text 133 221 Outlet 1: The test bangs.; +#X text 134 241 Outlet 2: Bangs when about to start.; +#X obj 124 182 mtl/benchmark 1000; +#X obj 103 382 mtl/benchmark 1000; +#X text 122 123 The results of the benchmark are printed in the Pd +window.; +#X connect 2 0 16 0; +#X connect 3 0 4 0; +#X connect 4 1 5 0; +#X connect 5 0 3 1; +#X connect 6 0 3 1; +#X connect 7 0 10 0; +#X connect 10 0 8 0; +#X connect 10 1 8 3; +#X connect 16 0 3 0; +#X connect 16 1 6 0; diff --git a/benchmark.pd b/benchmark.pd new file mode 100644 index 0000000..ce8fbdc --- /dev/null +++ b/benchmark.pd @@ -0,0 +1,21 @@ +#N canvas 42 67 944 603 10; +#X obj 132 51 inlet; +#X obj 289 403 realtime; +#X obj 144 553 outlet; +#X obj 304 238 loadbang; +#X obj 294 477 print BENCHMARK; +#X obj 304 272 tof/argument 1 1; +#X obj 467 551 outlet; +#X obj 132 163 t b b b b; +#X obj 144 422 until; +#X obj 141 373 f; +#X connect 0 0 7 0; +#X connect 1 0 4 0; +#X connect 3 0 5 0; +#X connect 5 0 9 1; +#X connect 7 0 1 1; +#X connect 7 1 9 0; +#X connect 7 2 1 0; +#X connect 7 3 6 0; +#X connect 8 0 2 0; +#X connect 9 0 8 0; diff --git a/binaryToByte-help.pd b/binaryToByte-help.pd new file mode 100644 index 0000000..97c93ff --- /dev/null +++ b/binaryToByte-help.pd @@ -0,0 +1,46 @@ +#N canvas 0 25 484 260 10; +#X floatatom 88 197 5 0 0 0 - - -; +#X obj 88 109 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 111 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj 135 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj 159 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj 192 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj 217 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj 241 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj 266 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj 26 135 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 108 106 This is the hot inlet!; +#X text 46 133 Output; +#X floatatom 330 190 5 0 0 0 - - -; +#X msg 330 116 0 1 0 0 1 1 0 1; +#X msg 342 137 1 0 0 0 0 0 0 0; +#X text 327 97 Lists work too!; +#X obj 24 12 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 29 14 Description: Converts an 8 bit binary number into it's +decimal value.; +#X text 29 54 tags: conversion; +#X obj 88 172 mtl/binaryToByte; +#X obj 330 164 mtl/binaryToByte; +#X connect 1 0 19 0; +#X connect 2 0 19 1; +#X connect 3 0 19 2; +#X connect 4 0 19 3; +#X connect 5 0 19 4; +#X connect 6 0 19 5; +#X connect 7 0 19 6; +#X connect 8 0 19 7; +#X connect 9 0 19 0; +#X connect 13 0 20 0; +#X connect 14 0 20 0; +#X connect 19 0 0 0; +#X connect 20 0 12 0; diff --git a/binaryToByte.pd b/binaryToByte.pd new file mode 100644 index 0000000..06b96d2 --- /dev/null +++ b/binaryToByte.pd @@ -0,0 +1,78 @@ +#N canvas 0 0 844 526 10; +#X obj 586 97 & 1; +#X obj 188 60 inlet; +#X obj 257 59 inlet; +#X obj 312 62 inlet; +#X obj 387 64 inlet; +#X obj 455 58 inlet; +#X obj 521 66 inlet; +#X obj 586 66 inlet; +#X obj 517 114 << 1; +#X obj 519 89 & 1; +#X obj 469 96 & 1; +#X obj 402 88 & 1; +#X obj 327 91 & 1; +#X obj 260 83 & 1; +#X obj 196 83 & 1; +#X obj 43 13 inlet; +#X obj 149 114 & 1; +#X obj 446 121 << 2; +#X obj 402 122 << 3; +#X obj 354 122 << 4; +#X obj 292 123 << 5; +#X obj 242 125 << 6; +#X obj 170 167 << 7; +#X obj 179 492 outlet; +#X obj 184 288 pack f f f f f f f f; +#X obj 223 320 t b l b; +#X obj 259 385 +; +#X msg 322 354 0; +#X obj 258 413 t f f; +#X obj 249 440 f; +#X obj 28 47 route bang list; +#X obj 192 10 unpack f f f f f f f f; +#X obj 257 353 zexy/drip; +#X connect 0 0 24 7; +#X connect 1 0 14 0; +#X connect 2 0 13 0; +#X connect 3 0 12 0; +#X connect 4 0 11 0; +#X connect 5 0 10 0; +#X connect 6 0 9 0; +#X connect 7 0 0 0; +#X connect 8 0 24 6; +#X connect 9 0 8 0; +#X connect 10 0 17 0; +#X connect 11 0 18 0; +#X connect 12 0 19 0; +#X connect 13 0 20 0; +#X connect 14 0 21 0; +#X connect 15 0 30 0; +#X connect 16 0 22 0; +#X connect 17 0 24 5; +#X connect 18 0 24 4; +#X connect 19 0 24 3; +#X connect 20 0 24 2; +#X connect 21 0 24 1; +#X connect 22 0 24 0; +#X connect 24 0 25 0; +#X connect 25 0 29 0; +#X connect 25 1 32 0; +#X connect 25 2 27 0; +#X connect 26 0 28 0; +#X connect 27 0 26 1; +#X connect 28 0 29 1; +#X connect 28 1 26 1; +#X connect 29 0 23 0; +#X connect 30 0 24 0; +#X connect 30 1 31 0; +#X connect 30 2 16 0; +#X connect 31 0 16 0; +#X connect 31 1 14 0; +#X connect 31 2 13 0; +#X connect 31 3 12 0; +#X connect 31 4 11 0; +#X connect 31 5 10 0; +#X connect 31 6 9 0; +#X connect 31 7 0 0; +#X connect 32 0 26 0; diff --git a/biorythm~-help.pd b/biorythm~-help.pd new file mode 100644 index 0000000..265d2aa --- /dev/null +++ b/biorythm~-help.pd @@ -0,0 +1,44 @@ +#N canvas 254 114 467 490 10; +#X obj 77 325 *~; +#X obj 62 208 noise~; +#X text 33 134 Arguments : frequency \, minimum \, maximum; +#X floatatom 176 176 5 0 0 0 - - -; +#X obj 62 230 lop~ 1200; +#X text 34 121 Inlets : frequency \, minimum \, maximum \, reset phase +(bang); +#X text 218 174 seconds; +#X obj 38 19 cnv 15 380 100 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 43 19 description: Generates a long lasting cycle that is inspired +by biological rythms. Biological rythms are characterized by a duration +(the period) a minimum and a maximum.; +#X obj 177 311 mtl/biorythm~ 0.1 0 2; +#N canvas 0 0 450 300 seconds2freq 0; +#X obj 163 56 inlet; +#X obj 171 154 /; +#X msg 166 108 1000 \$1; +#X obj 171 214 outlet; +#X obj 166 83 * 1000; +#X connect 0 0 4 0; +#X connect 1 0 3 0; +#X connect 2 0 1 0; +#X connect 4 0 2 0; +#X restore 175 210 pd seconds2freq; +#X floatatom 176 241 5 0 0 1 freq - -; +#X obj 55 388 mtl/out~; +#X floatatom 257 240 5 0 0 1 min - -; +#X floatatom 329 240 5 0 0 1 max - -; +#X obj 345 276 bng 15 250 50 0 empty empty reset 17 7 0 10 -262144 +-1 -1; +#X text 44 85 tags: control~; +#X connect 0 0 12 0; +#X connect 0 0 12 1; +#X connect 1 0 4 0; +#X connect 3 0 10 0; +#X connect 4 0 0 0; +#X connect 9 0 0 1; +#X connect 10 0 11 0; +#X connect 11 0 9 0; +#X connect 13 0 9 1; +#X connect 14 0 9 2; +#X connect 15 0 9 3; diff --git a/biorythm~.pd b/biorythm~.pd new file mode 100644 index 0000000..49373ff --- /dev/null +++ b/biorythm~.pd @@ -0,0 +1,28 @@ +#N canvas 110 102 588 705 10; +#X obj 446 62 t b; +#X obj 45 603 outlet~; +#X obj 383 241 loadbang; +#X obj 375 303 f \$2; +#X obj 458 294 f \$3; +#X obj 447 38 inlet; +#X text 450 12 reset phase; +#X text 58 11 freq; +#X obj 56 252 osc~ \$1; +#X text 244 8 min max; +#X obj 231 28 inlet; +#X obj 302 30 inlet; +#X obj 58 32 inlet; +#X obj 42 473 expr~ ((($v1+1)/2)*($f3-$f2))+$f2; +#X obj 385 268 t b b; +#X connect 0 0 8 1; +#X connect 2 0 14 0; +#X connect 3 0 13 1; +#X connect 4 0 13 2; +#X connect 5 0 0 0; +#X connect 8 0 13 0; +#X connect 10 0 13 1; +#X connect 11 0 13 2; +#X connect 12 0 8 0; +#X connect 13 0 1 0; +#X connect 14 0 3 0; +#X connect 14 1 4 0; diff --git a/blip~-help.pd b/blip~-help.pd new file mode 100644 index 0000000..1b61d8e --- /dev/null +++ b/blip~-help.pd @@ -0,0 +1,20 @@ +#N canvas 594 40 392 321 10; +#X obj 157 128 hsl 128 15 5 10 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 0 1; +#X text 27 79 Useful for percussion; +#X text 27 11 Description: Self scaling time/amplitude blips without +redundancy.; +#X text 25 61 Comment: By ajf2006.; +#X obj 29 203 mtl/blip~; +#X obj 30 255 mtl/out~; +#X text 128 106 decay; +#X msg 29 127 55 127; +#X msg 87 156 76 127; +#X msg 84 129 60 127; +#X text 26 39 tags: synthesize~; +#X connect 0 0 4 1; +#X connect 4 0 5 0; +#X connect 4 0 5 1; +#X connect 7 0 4 0; +#X connect 8 0 4 0; +#X connect 9 0 4 0; diff --git a/blip~.pd b/blip~.pd new file mode 100644 index 0000000..5ef8850 --- /dev/null +++ b/blip~.pd @@ -0,0 +1,63 @@ +#N canvas 646 109 794 607 10; +#N canvas 0 0 528 439 blip 0; +#X obj 153 236 osc~; +#X obj 190 236 vline~; +#X obj 189 262 *~; +#X obj 172 285 *~; +#X obj 153 26 inlet; +#X obj 172 331 outlet~; +#X msg 190 202 1 2 0 \, 0 \$1 3; +#X obj 190 108 log; +#X obj 190 85 pow 4; +#X obj 190 151 * 1e+06; +#X obj 190 130 pow -3; +#X obj 190 174 * 2; +#X obj 259 25 inlet; +#X obj 265 87 pow -1; +#X obj 265 112 * 1000; +#X obj 153 56 t f f f; +#X obj 265 136 log; +#X obj 265 159 min 3; +#X obj 173 307 *~; +#X connect 0 0 3 0; +#X connect 1 0 2 0; +#X connect 1 0 2 1; +#X connect 2 0 3 1; +#X connect 3 0 18 0; +#X connect 4 0 15 0; +#X connect 6 0 1 0; +#X connect 7 0 10 0; +#X connect 8 0 7 0; +#X connect 9 0 11 0; +#X connect 10 0 9 0; +#X connect 11 0 6 0; +#X connect 12 0 11 1; +#X connect 13 0 14 0; +#X connect 14 0 16 0; +#X connect 15 0 0 0; +#X connect 15 1 8 0; +#X connect 15 2 13 0; +#X connect 16 0 17 0; +#X connect 17 0 18 1; +#X connect 18 0 5 0; +#X restore 122 217 pd blip; +#X obj 124 277 outlet~; +#X text 388 306 Self scaling time/amplitude blips; +#X text 388 324 without redundancy \, ajf2006; +#X text 387 341 Useful for percussion; +#X obj 122 136 mtof; +#X obj 164 151 inlet decay; +#X obj 164 173 clip 5 1000; +#X obj 122 42 inlet note; +#X obj 123 250 *~ 0; +#X obj 122 64 unpack f f; +#X obj 178 94 / 127; +#X connect 0 0 9 0; +#X connect 5 0 0 0; +#X connect 6 0 7 0; +#X connect 7 0 0 1; +#X connect 8 0 10 0; +#X connect 9 0 1 0; +#X connect 10 0 5 0; +#X connect 10 1 11 0; +#X connect 11 0 9 1; diff --git a/bounce~-help.pd b/bounce~-help.pd new file mode 100644 index 0000000..fe7851b --- /dev/null +++ b/bounce~-help.pd @@ -0,0 +1,16 @@ +#N canvas 548 176 381 256 10; +#X text 41 25 Description: Drone with rand~ control and delay.; +#X text 40 44 Author: Chun Lee (sonicvariable.goto10.org); +#X obj 41 173 mtl/out~; +#X obj 44 97 hsl 128 15 1 40 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X obj 137 121 hsl 128 15 10 2000 0 0 empty empty empty -2 -8 0 10 +-262144 -1 -1 0 1; +#X text 273 119 delay; +#X text 180 94 random; +#X text 41 63 tags: synthesize~; +#X obj 41 146 mtl/bounce~; +#X connect 3 0 8 0; +#X connect 4 0 8 1; +#X connect 8 0 2 0; +#X connect 8 0 2 1; diff --git a/bounce~.pd b/bounce~.pd new file mode 100644 index 0000000..a4369b4 --- /dev/null +++ b/bounce~.pd @@ -0,0 +1,143 @@ +#N canvas 761 540 450 300 10; +#N canvas 468 81 363 423 drone 0; +#X obj 10 150 *~; +#X floatatom 25 58 5 0 0 0 - - -; +#X obj 71 151 *~; +#X floatatom 143 65 5 0 0 0 - - -; +#X obj 131 16 loadbang; +#X msg 25 33 100; +#X msg 143 44 0.98; +#X obj 9 365 outlet~; +#X obj 63 365 outlet~; +#N canvas 116 388 450 300 delay_1 0; +#X obj 113 183 *~ 0.9; +#X obj 249 182 *~ 0.9; +#X obj 108 130 *~ 50; +#X obj 248 136 *~ 50; +#X floatatom 187 38 5 0 0 0 - - -; +#X msg 187 19 10; +#X obj 33 60 delwrite~ noi1+ 1000; +#X obj 175 61 delwrite~ noi2+ 1000; +#X obj 248 159 vd~ noi2+; +#X obj 109 155 vd~ noi1+; +#X obj 266 27 loadbang; +#X obj 33 18 inlet~; +#X obj 79 18 inlet~; +#X obj 29 258 outlet~; +#X obj 82 258 outlet~; +#X obj 371 34 inlet rand; +#X obj 108 108 abs~; +#X obj 248 114 abs~; +#X obj 107 83 cyclone/rand~; +#X obj 247 89 cyclone/rand~; +#X connect 0 0 6 0; +#X connect 1 0 7 0; +#X connect 2 0 9 0; +#X connect 3 0 8 0; +#X connect 4 0 18 0; +#X connect 4 0 19 0; +#X connect 5 0 4 0; +#X connect 8 0 1 0; +#X connect 8 0 14 0; +#X connect 9 0 0 0; +#X connect 9 0 13 0; +#X connect 10 0 5 0; +#X connect 11 0 6 0; +#X connect 12 0 7 0; +#X connect 15 0 4 0; +#X connect 16 0 2 0; +#X connect 17 0 3 0; +#X connect 18 0 16 0; +#X connect 19 0 17 0; +#X restore 22 184 pd delay_1; +#N canvas 110 155 765 479 delay_2 0; +#X floatatom 151 44 5 0 0 0 - - -; +#X obj 89 124 *~ 0.4; +#X obj 262 122 *~ 0.4; +#X obj 236 99 + 2; +#X msg 151 24 50; +#X obj 11 80 delwrite~ noi3+ 1000; +#X obj 184 78 delwrite~ noi4+ 1000; +#X obj 261 99 vd~ noi4+; +#X obj 88 101 vd~ noi3+; +#X obj 12 10 inlet~; +#X obj 59 10 inlet~; +#X obj 15 196 outlet~; +#X obj 69 196 outlet~; +#X obj 151 3 loadbang; +#X obj 366 9 inlet delay; +#X connect 0 0 3 0; +#X connect 0 0 8 0; +#X connect 1 0 5 0; +#X connect 2 0 6 0; +#X connect 3 0 7 0; +#X connect 4 0 0 0; +#X connect 7 0 2 0; +#X connect 7 0 12 0; +#X connect 8 0 1 0; +#X connect 8 0 11 0; +#X connect 9 0 5 0; +#X connect 10 0 6 0; +#X connect 13 0 4 0; +#X connect 14 0 0 0; +#X restore 31 211 pd delay_2; +#X obj 142 129 expr~ $v1 > $v2; +#X obj 25 129 expr~ $v1 > $v2; +#X obj 9 11 noise~; +#X obj 10 255 *~ 1; +#X obj 63 255 *~ 1; +#X obj 14 301 expr~ max(min($v1 \, $f2/10) \, -$f2/10); +#X obj 54 330 expr~ max(min($v1 \, $f2/10) \, -$f2/10); +#X msg 263 273 10; +#X obj 263 253 loadbang; +#X text 20 285 limiter; +#X obj 171 165 inlet; +#X obj 221 165 inlet; +#X obj 88 108 abs~; +#X obj 25 106 abs~; +#X obj 118 86 cyclone/rand~; +#X obj 25 81 cyclone/rand~; +#X connect 0 0 9 0; +#X connect 0 0 14 0; +#X connect 1 0 25 0; +#X connect 1 0 26 0; +#X connect 2 0 9 1; +#X connect 2 0 15 0; +#X connect 3 0 11 1; +#X connect 3 0 12 1; +#X connect 4 0 5 0; +#X connect 4 0 6 0; +#X connect 5 0 1 0; +#X connect 6 0 3 0; +#X connect 9 0 10 0; +#X connect 9 0 14 0; +#X connect 9 1 10 1; +#X connect 9 1 15 0; +#X connect 10 0 14 0; +#X connect 10 1 15 0; +#X connect 11 0 2 1; +#X connect 12 0 0 1; +#X connect 13 0 0 0; +#X connect 13 0 2 0; +#X connect 14 0 16 0; +#X connect 15 0 17 0; +#X connect 16 0 7 0; +#X connect 17 0 8 0; +#X connect 18 0 16 1; +#X connect 18 0 17 1; +#X connect 19 0 18 0; +#X connect 21 0 9 2; +#X connect 22 0 10 2; +#X connect 23 0 11 0; +#X connect 24 0 12 0; +#X connect 25 0 23 0; +#X connect 26 0 24 0; +#X restore 75 114 pd drone; +#X obj 71 263 outlet~; +#X obj 131 263 outlet~; +#X obj 83 64 inlet; +#X obj 123 64 inlet; +#X connect 0 0 1 0; +#X connect 0 1 2 0; +#X connect 3 0 0 0; +#X connect 4 0 0 1; diff --git a/bpmToFreq-help.pd b/bpmToFreq-help.pd new file mode 100644 index 0000000..37e032d --- /dev/null +++ b/bpmToFreq-help.pd @@ -0,0 +1,23 @@ +#N canvas 428 216 445 383 12; +#X floatatom 65 124 5 0 0 0 - - -; +#X floatatom 65 176 5 0 0 0 - - -; +#X msg 202 121 120; +#X floatatom 202 174 5 0 0 0 - - -; +#X text 251 174 Frequency; +#X obj 202 199 phasor~; +#X obj 203 226 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X text 107 175 Frequency; +#X obj 14 12 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 19 54 tags: conversion; +#X text 20 13 Description: Converts beats per minute to a frequency +(times per second).; +#X obj 65 149 mtl/bpmToFreq; +#X obj 202 147 mtl/bpmToFreq; +#X connect 0 0 11 0; +#X connect 2 0 12 0; +#X connect 3 0 5 0; +#X connect 5 0 6 0; +#X connect 11 0 1 0; +#X connect 12 0 3 0; diff --git a/bpmToFreq.pd b/bpmToFreq.pd new file mode 100644 index 0000000..9861229 --- /dev/null +++ b/bpmToFreq.pd @@ -0,0 +1,8 @@ +#N canvas 0 0 454 304 10; +#X obj 103 15 inlet; +#X obj 107 244 outlet; +#X obj 136 66 / 60; +#X text 154 247 beat freq; +#X text 143 13 bpm; +#X connect 0 0 2 0; +#X connect 2 0 1 0; diff --git a/bpmToMs-help.pd b/bpmToMs-help.pd new file mode 100644 index 0000000..33d4621 --- /dev/null +++ b/bpmToMs-help.pd @@ -0,0 +1,19 @@ +#N canvas 0 25 485 257 12; +#X msg 197 101 120; +#X obj 197 155 t b f; +#X obj 197 181 metro; +#X obj 197 207 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X msg 230 101 60; +#X obj 20 11 cnv 15 440 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 26 49 tags: conversion; +#X text 28 13 Description: Converts beats per minute to an interval +in milliseconds.; +#X obj 197 130 mtl/bpmToMs; +#X connect 0 0 8 0; +#X connect 1 0 2 0; +#X connect 1 1 2 1; +#X connect 2 0 3 0; +#X connect 4 0 8 0; +#X connect 8 0 1 0; diff --git a/bpmToMs.pd b/bpmToMs.pd new file mode 100644 index 0000000..ba6d15c --- /dev/null +++ b/bpmToMs.pd @@ -0,0 +1,10 @@ +#N canvas 609 320 452 302 10; +#X obj 130 52 inlet; +#X obj 130 112 /; +#X obj 130 138 * 60; +#X msg 130 89 1000 \$1; +#X obj 129 191 outlet; +#X connect 0 0 3 0; +#X connect 1 0 2 0; +#X connect 2 0 4 0; +#X connect 3 0 1 0; diff --git a/browser-help.pd b/browser-help.pd new file mode 100644 index 0000000..5619d96 --- /dev/null +++ b/browser-help.pd @@ -0,0 +1,5 @@ +#N canvas 452 446 455 155 10; +#X obj 37 -6 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 41 -3 description: A browser to make your life easier.; +#X obj 188 76 mtl/browser; diff --git a/browser.pd b/browser.pd new file mode 100644 index 0000000..48259d8 --- /dev/null +++ b/browser.pd @@ -0,0 +1,694 @@ +#N canvas 184 399 401 173 10; +#X obj 137 17 vsl 15 115 0 175 0 0 \$0_slider_s0 \$0_slider_r0 empty +0 -8 0 8 -1 -228856 -228856 11400 0; +#X obj -45 45 hradio 15 1 0 12 \$0_hr_2_s0 \$0_hr_2_r0 behavior 2 8 +1 9 -1 -1 -262140 0; +#X obj -45 60 hradio 15 1 0 12 \$0_hr_3_s0 \$0_hr_3_r0 control~ 2 8 +1 9 -1 -1 -262140 0; +#X obj -45 75 hradio 15 1 0 12 \$0_hr_4_s0 \$0_hr_4_r0 conversion 2 +8 1 9 -1 -1 -262140 0; +#X obj -45 90 hradio 15 1 0 12 \$0_hr_5_s0 \$0_hr_5_r0 counter 2 8 +1 9 -1 -1 -262140 0; +#X obj -45 105 hradio 15 1 0 12 \$0_hr_6_s0 \$0_hr_6_r0 data 2 8 1 +9 -1 -1 -262140 0; +#X obj -45 120 hradio 15 1 0 12 \$0_hr_7_s0 \$0_hr_7_r0 examples 2 +8 1 9 -1 -1 -262140 0; +#X obj 336 17 vsl 15 115 0 175 0 0 \$0_slider_s \$0_slider_r empty +0 -8 0 8 -1 -228856 -1 11400 0; +#X obj 154 15 hradio 15 1 0 12 \$0_hr_0_s \$0_hr_0_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 30 hradio 15 1 0 12 \$0_hr_1_s \$0_hr_1_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 45 hradio 15 1 0 12 \$0_hr_2_s \$0_hr_2_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 60 hradio 15 1 0 12 \$0_hr_3_s \$0_hr_3_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 75 hradio 15 1 0 12 \$0_hr_4_s \$0_hr_4_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 90 hradio 15 1 0 12 \$0_hr_5_s \$0_hr_5_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 105 hradio 15 1 0 12 \$0_hr_6_s \$0_hr_6_r empty 2 8 1 9 +-1 -1 -262140 0; +#X obj 154 120 hradio 15 1 0 12 \$0_hr_7_s \$0_hr_7_r empty 2 8 1 9 +-1 -1 -262140 0; +#N canvas 1058 43 723 396 ./browser 0; +#N canvas 1069 45 887 645 coll 0; +#X obj 23 -42 inlet; +#X obj 247 -40 inlet; +#X obj 141 321 zexy/demultiplex 0 1; +#X obj 114 224 cyclone/coll; +#C restore; +#X obj 32 99 unpack f f; +#X obj 32 53 zexy/demultiplex 0 1; +#X obj 36 507 maxlib/remote; +#X obj 36 451 list prepend \$0; +#X msg 36 480 \$1_hr_\$2_r label \$3; +#X msg 678 40 clear; +#X msg 635 83 0; +#X obj 573 148 value \$0count; +#X obj 532 50 t f f; +#X obj 450 134 list prepend; +#X obj 452 176 list trim; +#X msg 270 75 open; +#X obj 36 426 list append; +#X msg 70 357 symbol; +#X obj 33 77 t a b; +#X obj 133 371 cyclone/tosymbol; +#X obj 653 4 t b b b; +#X obj 405 -85 inlet add; +#X obj 694 -43 inlet; +#X obj 522 11 tof/increment; +#X obj 565 377 zexy/symbol2list /; +#X obj 565 397 list trim; +#X obj 343 344 cyclone/tosymbol; +#X obj 447 544 tof/openHelp; +#X msg 630 471 1; +#N canvas 0 0 988 652 pdmtl-help 0; +#X obj 380 252 pack s s; +#X obj 378 191 t a b; +#X msg 283 312 \; pd open \$1 \$2; +#X msg 296 230 \$1-help.pd; +#X obj 379 277 t a a; +#X obj 360 77 inlet; +#X obj 357 388 print browser; +#X msg 407 334 Trying to open \$1 in folder \$2; +#X obj 427 225 tof/path current; +#X obj 393 118 symbol; +#X connect 0 0 4 0; +#X connect 1 0 3 0; +#X connect 1 1 8 0; +#X connect 2 0 6 0; +#X connect 3 0 0 0; +#X connect 4 0 2 0; +#X connect 4 1 7 0; +#X connect 5 0 9 0; +#X connect 7 0 6 0; +#X connect 8 0 0 1; +#X connect 9 0 1 0; +#X restore 555 510 pd pdmtl-help; +#X obj 447 505 spigot; +#X obj 447 396 t a a; +#X obj 555 443 t a b; +#X msg 584 469 0; +#X obj 565 420 route mtl; +#X obj 393 -62 route bang; +#X obj 367 10 zexy/symbol2list /; +#X obj 334 -15 t s s; +#X obj 442 -37 t s b; +#X obj 104 251 unpack s s; +#X obj 434 63 list split 1; +#X obj 358 127 list; +#X obj 382 31 route symbol; +#X obj 377 59 t s s; +#X text 178 251 long name \, short name; +#X msg 381 256 sort -1 2 \, renumber; +#X obj 796 -48 inlet tag; +#X obj 564 248 sel examples; +#X obj 370 368 zexy/demultiplex; +#X msg 600 297 0; +#N canvas 0 0 716 536 examples 0; +#X obj 56 28 inlet; +#X obj 225 262 pack s s; +#X msg 128 322 \; pd open \$1 \$2; +#X obj 224 287 t a a; +#X obj 202 398 print browser; +#X msg 252 344 Trying to open \$1 in folder \$2; +#X obj 172 139 t s b; +#X obj 272 235 tof/path current absolute; +#X msg 280 202 symbol examples; +#X connect 0 0 6 0; +#X connect 1 0 3 0; +#X connect 2 0 4 0; +#X connect 3 0 2 0; +#X connect 3 1 5 0; +#X connect 5 0 4 0; +#X connect 6 0 1 0; +#X connect 6 1 8 0; +#X connect 7 0 1 1; +#X connect 8 0 7 0; +#X restore 658 332 pd examples; +#X msg 531 289 1; +#X connect 0 0 5 0; +#X connect 1 0 5 1; +#X connect 1 0 2 1; +#X connect 2 0 19 0; +#X connect 2 1 26 0; +#X connect 3 0 39 0; +#X connect 4 0 16 0; +#X connect 4 1 3 0; +#X connect 5 0 18 0; +#X connect 5 1 3 0; +#X connect 7 0 8 0; +#X connect 8 0 6 0; +#X connect 9 0 3 0; +#X connect 10 0 11 0; +#X connect 12 0 13 1; +#X connect 12 1 11 0; +#X connect 13 0 14 0; +#X connect 14 0 3 0; +#X connect 15 0 3 0; +#X connect 16 0 7 0; +#X connect 17 0 16 1; +#X connect 18 0 4 0; +#X connect 18 1 17 0; +#X connect 19 0 16 1; +#X connect 20 0 23 1; +#X connect 20 1 10 0; +#X connect 20 2 9 0; +#X connect 21 0 35 0; +#X connect 22 0 20 0; +#X connect 23 0 12 0; +#X connect 24 0 25 0; +#X connect 25 0 34 0; +#X connect 26 0 48 0; +#X connect 28 0 30 1; +#X connect 30 0 27 0; +#X connect 31 0 30 0; +#X connect 31 1 24 0; +#X connect 32 0 29 0; +#X connect 32 1 33 0; +#X connect 33 0 30 1; +#X connect 34 0 32 0; +#X connect 34 1 28 0; +#X connect 35 0 45 0; +#X connect 35 1 38 0; +#X connect 36 0 42 0; +#X connect 37 0 41 0; +#X connect 37 1 36 0; +#X connect 38 0 37 0; +#X connect 38 1 23 0; +#X connect 39 0 2 0; +#X connect 40 1 41 1; +#X connect 41 0 13 0; +#X connect 42 0 43 0; +#X connect 42 1 40 0; +#X connect 43 0 41 0; +#X connect 43 1 41 1; +#X connect 45 0 3 0; +#X connect 46 0 47 0; +#X connect 47 0 51 0; +#X connect 47 1 49 0; +#X connect 48 0 31 0; +#X connect 48 1 50 0; +#X connect 49 0 48 1; +#X connect 51 0 48 1; +#X restore 259 269 pd coll; +#N canvas 986 52 946 631 scroll 0; +#X obj 147 75 int; +#X msg 178 155 8; +#X obj 125 389 pack; +#X obj 151 310 + 0; +#X obj 138 541 outlet; +#X obj 100 275 t f f; +#X obj 306 542 outlet; +#X msg 232 359 0; +#X obj 130 4 r \$0_slider_s; +#X obj 235 201 value \$0off; +#X obj 413 82 value \$0count; +#X obj 134 27 t f b; +#X msg 515 43 12; +#X obj 421 142 max 0; +#X obj 416 108 - 7; +#X obj 137 50 expr (175-$f1)/175 * $f2; +#X obj 98 250 tof/iterate; +#X obj 580 261 f -1; +#X text 616 271 previous; +#X obj 614 472 list prepend \$0; +#X msg 614 498 \; \$1_hr_\$2_r color -1 -1 \$3; +#X obj 428 410 list append -1.67177e+07; +#X obj 638 351 list append -1.67772e+07; +#X obj 789 130 r \$0reset; +#X obj 771 273 tof/iterate; +#X msg 768 252 8; +#X obj 410 179 r \$0query; +#X obj 354 328 -; +#X obj 473 296 t f f f b; +#X obj 353 272 pack; +#X msg 355 298 \$2 \$1; +#X obj 412 205 +; +#X obj 184 122 t b f b f f f; +#X obj 582 303 maxlib/split 0 7; +#X obj 427 375 maxlib/split 0 7; +#X msg 698 233 -1; +#X obj 410 228 t b f; +#X obj 686 23 inlet; +#X obj 712 174 t b b b; +#X msg 652 195 -1; +#X connect 0 0 32 0; +#X connect 1 0 16 0; +#X connect 2 0 4 0; +#X connect 3 0 2 1; +#X connect 5 0 2 0; +#X connect 5 1 3 0; +#X connect 7 0 6 0; +#X connect 8 0 11 0; +#X connect 10 0 14 0; +#X connect 11 0 15 0; +#X connect 11 1 10 0; +#X connect 12 0 10 0; +#X connect 13 0 15 1; +#X connect 14 0 13 0; +#X connect 15 0 0 0; +#X connect 16 0 5 0; +#X connect 17 0 33 0; +#X connect 19 0 20 0; +#X connect 21 0 19 0; +#X connect 22 0 19 0; +#X connect 23 0 38 0; +#X connect 24 0 22 0; +#X connect 25 0 24 0; +#X connect 26 0 31 0; +#X connect 27 0 28 0; +#X connect 28 1 34 0; +#X connect 28 2 17 1; +#X connect 28 3 17 0; +#X connect 29 0 30 0; +#X connect 30 0 27 0; +#X connect 31 0 36 0; +#X connect 32 0 1 0; +#X connect 32 1 3 1; +#X connect 32 2 7 0; +#X connect 32 3 9 0; +#X connect 32 4 29 0; +#X connect 32 5 31 1; +#X connect 33 0 22 0; +#X connect 34 0 21 0; +#X connect 35 0 17 1; +#X connect 36 0 29 0; +#X connect 36 1 29 1; +#X connect 37 0 38 0; +#X connect 38 0 39 0; +#X connect 38 1 35 0; +#X connect 38 2 25 0; +#X connect 39 0 29 1; +#X restore 131 203 pd scroll; +#N canvas 1173 127 770 510 query 0; +#X obj 23 285 outlet; +#X obj 107 310 outlet; +#X obj 71 59 r \$0_hr_0_s; +#X obj 153 61 r \$0_hr_1_s; +#X obj 232 56 r \$0_hr_2_s; +#X obj 304 60 r \$0_hr_3_s; +#X obj 382 63 r \$0_hr_4_s; +#X obj 460 62 r \$0_hr_5_s; +#X obj 545 60 r \$0_hr_6_s; +#X obj 630 63 r \$0_hr_7_s; +#X msg 107 255 1; +#X msg 77 112 0; +#X msg 154 107 1; +#X msg 221 112 2; +#X msg 265 100 3; +#X msg 315 101 4; +#X msg 369 106 5; +#X msg 415 106 6; +#X msg 479 109 7; +#X obj 33 229 +; +#X obj 83 201 value \$0off; +#X obj 211 242 s \$0query; +#X obj 97 150 t f b b f; +#X connect 2 0 11 0; +#X connect 3 0 12 0; +#X connect 4 0 13 0; +#X connect 5 0 14 0; +#X connect 6 0 15 0; +#X connect 7 0 16 0; +#X connect 8 0 17 0; +#X connect 9 0 18 0; +#X connect 10 0 1 0; +#X connect 11 0 22 0; +#X connect 12 0 22 0; +#X connect 13 0 22 0; +#X connect 14 0 22 0; +#X connect 15 0 22 0; +#X connect 16 0 22 0; +#X connect 17 0 22 0; +#X connect 18 0 22 0; +#X connect 19 0 0 0; +#X connect 20 0 19 1; +#X connect 22 0 19 0; +#X connect 22 1 20 0; +#X connect 22 2 10 0; +#X connect 22 3 21 0; +#X restore 229 202 pd query; +#N canvas 0 25 1018 673 readTags 0; +#X msg 390 384 clear; +#X obj 310 -25 inlet read; +#X msg 388 405 open; +#X obj 19 212 t b b b; +#X msg 330 472 0; +#X msg 291 465 1; +#X obj 374 636 outlet patches; +#X msg 196 382 merge \$1 \$2; +#X msg 48 417 dump; +#X obj 320 524 == 0; +#X obj 100 623 outlet tags; +#X obj 96 -14 inlet select_tag; +#X obj 115 37 list trim; +#X obj 463 269 tof/listUnfold; +#X obj 511 124 zexy/msgfile; +#X obj 508 154 list split 1; +#X msg 475 84 read core.txt cr \, flush \, read love.txt cr \, flush +; +#X obj 499 227 list; +#X obj 496 177 t b a; +#X obj 503 349 list append; +#X obj 405 -26 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X msg 327 206 sort -1 -1; +#X obj 185 467 cyclone/coll; +#C restore; +#X obj 149 587 tof/listUnfold; +#X obj 488 583 tof/listUnfold; +#X obj 168 515 zexy/multiplex 0 1; +#X obj 169 543 zexy/demultiplex 0 1; +#X obj 96 207 t b a b; +#X obj 473 542 t b a; +#X obj 884 154 hcs/folder_list; +#X obj 884 124 tof/path current absolute; +#X msg 884 95 symbol examples/*; +#X obj 884 190 hcs/split_path; +#X obj 959 235 list prepend examples; +#X obj 381 -2 t b b f b b; +#X obj 502 49 sel 1 0; +#X msg 618 120 read core.txt cr \, flush; +#X connect 0 0 22 0; +#X connect 1 0 34 0; +#X connect 2 0 22 0; +#X connect 3 0 8 0; +#X connect 3 1 5 0; +#X connect 4 0 9 0; +#X connect 4 0 25 2; +#X connect 5 0 9 0; +#X connect 5 0 25 2; +#X connect 7 0 22 0; +#X connect 8 0 22 0; +#X connect 9 0 26 1; +#X connect 11 0 12 0; +#X connect 12 0 27 0; +#X connect 13 0 19 0; +#X connect 14 0 15 0; +#X connect 15 0 18 0; +#X connect 15 1 17 1; +#X connect 16 0 14 0; +#X connect 17 0 13 0; +#X connect 18 0 17 0; +#X connect 18 1 19 1; +#X connect 19 0 7 0; +#X connect 20 0 34 0; +#X connect 21 0 22 0; +#X connect 22 0 25 0; +#X connect 22 1 25 1; +#X connect 23 0 10 0; +#X connect 24 0 6 0; +#X connect 25 0 26 0; +#X connect 26 0 23 0; +#X connect 26 1 28 0; +#X connect 27 1 22 0; +#X connect 27 2 4 0; +#X connect 28 0 6 0; +#X connect 28 1 24 0; +#X connect 29 0 32 0; +#X connect 30 0 29 0; +#X connect 31 0 30 0; +#X connect 32 1 33 0; +#X connect 33 0 7 0; +#X connect 34 0 3 0; +#X connect 34 1 21 0; +#X connect 34 2 35 0; +#X connect 34 3 31 0; +#X connect 34 4 0 0; +#X connect 35 0 16 0; +#X connect 35 1 36 0; +#X connect 36 0 14 0; +#X restore 321 63 pd readTags; +#N canvas 178 252 827 449 coll 0; +#X obj 23 -42 inlet; +#X obj 247 -40 inlet; +#X obj 129 177 zexy/demultiplex 0 1; +#X obj 93 130 cyclone/coll; +#C restore; +#X obj 32 99 unpack f f; +#X obj 32 53 zexy/demultiplex 0 1; +#X obj 66 364 maxlib/remote; +#X obj 55 293 list prepend \$0; +#X obj 259 348 outlet; +#X msg 678 40 clear; +#X msg 635 83 0; +#X obj 494 46 t f f; +#X obj 441 101 list prepend; +#X obj 411 142 list trim; +#X msg 270 75 open; +#X obj 52 265 list append; +#X msg 66 197 symbol; +#X obj 33 77 t a b; +#X obj 129 211 cyclone/tosymbol; +#X obj 653 4 t b b b; +#X obj 459 -25 t a b; +#X msg 555 -16 0; +#X obj 435 -55 inlet add; +#X obj 521 11 tof/increment; +#X msg 61 327 \$1_hr_\$2_r0 label \$3; +#X obj 573 148 value \$0count0; +#X obj 670 -29 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 221 33 r \$0reset; +#X msg 224 54 clear; +#X obj 666 -49 r \$0reset; +#X connect 0 0 5 0; +#X connect 1 0 5 1; +#X connect 1 0 2 1; +#X connect 2 0 18 0; +#X connect 2 1 8 0; +#X connect 3 0 2 0; +#X connect 4 0 15 0; +#X connect 4 1 3 0; +#X connect 5 0 17 0; +#X connect 5 1 3 0; +#X connect 7 0 24 0; +#X connect 9 0 3 0; +#X connect 10 0 25 0; +#X connect 11 0 12 1; +#X connect 11 1 25 0; +#X connect 12 0 13 0; +#X connect 13 0 3 0; +#X connect 14 0 3 0; +#X connect 15 0 7 0; +#X connect 16 0 15 1; +#X connect 17 0 4 0; +#X connect 17 1 16 0; +#X connect 18 0 15 1; +#X connect 19 0 21 0; +#X connect 19 1 10 0; +#X connect 19 2 9 0; +#X connect 20 0 12 0; +#X connect 20 1 23 0; +#X connect 21 0 23 1; +#X connect 22 0 20 0; +#X connect 23 0 11 0; +#X connect 24 0 6 0; +#X connect 26 0 19 0; +#X connect 27 0 28 0; +#X connect 28 0 3 0; +#X connect 29 0 26 0; +#X restore 240 54 pd coll; +#N canvas 12 100 1010 606 scroll 0; +#X obj 147 75 int; +#X msg 178 155 8; +#X obj 194 306 pack; +#X obj 231 269 + 0; +#X obj 174 521 outlet; +#X obj 180 234 t f f; +#X obj 342 522 outlet; +#X msg 311 319 0; +#X obj 134 27 t f b; +#X msg 515 43 12; +#X obj 421 142 max 0; +#X obj 416 108 - 7; +#X obj 137 50 expr (175-$f1)/175 * $f2; +#X obj 130 4 r \$0_slider_s0; +#X obj 413 82 value \$0count0; +#X obj 307 285 value \$0off0; +#X obj 178 209 tof/iterate; +#X obj 651 352 f -1; +#X text 687 362 previous; +#X obj 587 508 list prepend \$0; +#X obj 513 444 list append -1.67177e+07; +#X obj 734 469 list append -1.67772e+07; +#X obj 874 164 r \$0reset; +#X obj 856 307 tof/iterate; +#X msg 853 286 8; +#X obj 547 278 -; +#X obj 587 306 t f f f b; +#X obj 549 216 pack; +#X msg 548 248 \$2 \$1; +#X obj 573 150 +; +#X obj 653 394 maxlib/split 0 7; +#X obj 512 409 maxlib/split 0 7; +#X msg 783 267 -1; +#X obj 571 173 t b f; +#X obj 829 41 inlet; +#X obj 786 184 t b b b; +#X msg 737 229 -1; +#X obj 571 124 r \$0query0; +#X obj 183 122 t b f b f f f; +#X msg 588 534 \; \$1_hr_\$2_r0 color -1 -1 \$3; +#X connect 0 0 38 0; +#X connect 1 0 16 0; +#X connect 2 0 4 0; +#X connect 3 0 2 1; +#X connect 5 0 2 0; +#X connect 5 1 3 0; +#X connect 7 0 6 0; +#X connect 8 0 12 0; +#X connect 8 1 14 0; +#X connect 9 0 14 0; +#X connect 10 0 12 1; +#X connect 11 0 10 0; +#X connect 12 0 0 0; +#X connect 13 0 8 0; +#X connect 14 0 11 0; +#X connect 16 0 5 0; +#X connect 17 0 30 0; +#X connect 19 0 39 0; +#X connect 20 0 19 0; +#X connect 21 0 19 0; +#X connect 22 0 35 0; +#X connect 23 0 21 0; +#X connect 24 0 23 0; +#X connect 25 0 26 0; +#X connect 26 1 31 0; +#X connect 26 2 17 1; +#X connect 26 3 17 0; +#X connect 27 0 28 0; +#X connect 28 0 25 0; +#X connect 29 0 33 0; +#X connect 30 0 21 0; +#X connect 31 0 20 0; +#X connect 32 0 17 1; +#X connect 33 0 27 0; +#X connect 33 1 27 1; +#X connect 34 0 35 0; +#X connect 35 0 36 0; +#X connect 35 1 32 0; +#X connect 35 2 24 0; +#X connect 36 0 27 1; +#X connect 37 0 29 0; +#X connect 38 0 1 0; +#X connect 38 1 3 1; +#X connect 38 2 7 0; +#X connect 38 3 15 0; +#X connect 38 4 27 0; +#X connect 38 5 29 1; +#X restore 196 -33 pd scroll; +#N canvas 277 192 744 361 query 0; +#X obj 39 239 outlet; +#X obj 235 243 outlet; +#X msg 241 200 1; +#X msg 77 112 0; +#X msg 154 107 1; +#X msg 221 112 2; +#X msg 265 100 3; +#X msg 315 101 4; +#X msg 369 106 5; +#X msg 415 106 6; +#X msg 479 109 7; +#X obj 96 211 +; +#X obj 116 180 value \$0off0; +#X obj 71 59 r \$0_hr_0_s0; +#X obj 153 61 r \$0_hr_1_s0; +#X obj 232 56 r \$0_hr_2_s0; +#X obj 304 60 r \$0_hr_3_s0; +#X obj 382 63 r \$0_hr_4_s0; +#X obj 460 62 r \$0_hr_5_s0; +#X obj 545 60 r \$0_hr_6_s0; +#X obj 630 63 r \$0_hr_7_s0; +#X obj 324 193 s \$0query0; +#X obj 97 150 t f b b f; +#X connect 2 0 1 0; +#X connect 3 0 22 0; +#X connect 4 0 22 0; +#X connect 5 0 22 0; +#X connect 6 0 22 0; +#X connect 7 0 22 0; +#X connect 8 0 22 0; +#X connect 9 0 22 0; +#X connect 10 0 22 0; +#X connect 11 0 0 0; +#X connect 12 0 11 1; +#X connect 13 0 3 0; +#X connect 14 0 4 0; +#X connect 15 0 5 0; +#X connect 16 0 6 0; +#X connect 17 0 7 0; +#X connect 18 0 8 0; +#X connect 19 0 9 0; +#X connect 20 0 10 0; +#X connect 22 0 11 0; +#X connect 22 1 12 0; +#X connect 22 2 2 0; +#X connect 22 3 21 0; +#X restore 263 -36 pd query; +#X obj 399 -64 loadbang; +#X msg 437 154 175; +#X msg 256 115 175; +#X msg 459 43 175; +#X obj 461 65 s \$0_slider_r; +#X obj 405 182 s \$0_slider_r0; +#X obj 587 293 outlet; +#X obj 490 31 s \$0reset; +#X text 186 53 TAGS->; +#X text 160 265 ABSTRACTIONS->; +#X obj 254 82 t b a b a; +#X obj 473 -69 r \$0love; +#X obj 605 -25 loadbang; +#X msg 605 2 set 1; +#X obj 604 33 s \$0lover; +#X obj 412 -34 f 1; +#X obj 411 -9 t b f b b; +#X obj 258 137 s \$0_slider_r; +#X obj 435 97 t b b b; +#X connect 1 0 0 0; +#X connect 1 1 0 1; +#X connect 2 0 0 0; +#X connect 2 1 0 1; +#X connect 3 0 4 2; +#X connect 3 1 0 2; +#X connect 4 0 17 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 4 0; +#X connect 6 1 4 1; +#X connect 7 0 22 0; +#X connect 8 0 12 0; +#X connect 9 0 24 0; +#X connect 10 0 11 0; +#X connect 17 0 9 0; +#X connect 17 1 3 0; +#X connect 17 2 0 3; +#X connect 17 2 1 0; +#X connect 17 3 0 4; +#X connect 18 0 22 0; +#X connect 19 0 20 0; +#X connect 20 0 21 0; +#X connect 22 0 23 0; +#X connect 23 0 25 0; +#X connect 23 1 3 1; +#X connect 23 2 10 0; +#X connect 23 3 0 3; +#X connect 23 3 14 0; +#X connect 25 0 8 0; +#X connect 25 1 5 0; +#X connect 25 2 13 0; +#X restore 229 -9 pd ./browser; +#X obj -45 15 hradio 15 1 0 12 \$0_hr_0_s0 \$0_hr_0_r0 2d 2 8 1 9 -1 +-1 -262140 0; +#X obj -45 31 hradio 15 1 0 12 \$0_hr_1_s0 \$0_hr_1_r0 3d 2 8 1 9 -1 +-1 -262140 0; +#X obj -45 -9 cnv 15 198 22 empty empty TAG 1 12 1 12 -16645 -228856 +0; +#X obj 154 -9 cnv 15 197 22 empty empty CLASS/ABSTRACTION 0 12 1 12 +-16645 -228856 0; +#X obj -45 137 cnv 15 396 20 empty empty empty 20 12 0 14 -16645 -258401 +0; +#X obj -41 141 tgl 11 0 \$0love \$0lover with:love 17 6 0 8 -162280 +-262144 -258401 1 1; diff --git a/bubbles~-help.pd b/bubbles~-help.pd new file mode 100644 index 0000000..2d4fbee --- /dev/null +++ b/bubbles~-help.pd @@ -0,0 +1,8 @@ +#N canvas 2 89 332 258 10; +#X text 19 28 Author: Chun Lee (sonicvariable.goto10.org); +#X text 19 9 Description: Bubbles drone.; +#X obj 21 151 mtl/out~; +#X text 19 46 tags: synthesize~; +#X obj 22 117 mtl/bubbles~; +#X connect 4 0 2 0; +#X connect 4 1 2 1; diff --git a/bubbles~.pd b/bubbles~.pd new file mode 100644 index 0000000..0213928 --- /dev/null +++ b/bubbles~.pd @@ -0,0 +1,191 @@ +#N canvas 1 57 450 300 10; +#X obj 71 263 outlet~; +#X obj 131 263 outlet~; +#N canvas 225 283 713 556 dronebubbles 0; +#X obj 78 83 hip~ 200; +#N canvas 236 302 496 538 rand_sig 0; +#X obj 33 382 vline~; +#X msg 33 362 \$1 \$2; +#X obj 287 132 delay; +#X obj 287 112 t b f; +#X obj 264 135 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 +1; +#X obj 32 430 outlet~; +#X obj 33 40 inlet; +#X obj 73 39 inlet; +#X obj 32 407 *~ 0.8; +#X obj 21 111 cnv 15 170 180 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X obj 33 341 pack f f; +#X obj 84 321 + 1; +#X obj 33 91 t b b; +#X obj 33 160 t b; +#X obj 77 160 t b; +#X obj 110 183 random 200; +#X obj 110 208 + 1; +#X obj 110 229 / 100; +#X obj 110 249 - 1; +#X obj 33 183 random 200; +#X obj 33 208 + 1; +#X obj 33 229 / 100; +#X obj 33 249 - 1; +#X obj 110 271 * 0.2; +#X obj 33 138 moses 1; +#X obj 33 116 random 10; +#X obj 84 301 random 20; +#X obj 266 163 spigot; +#X connect 0 0 8 0; +#X connect 1 0 0 0; +#X connect 2 0 27 0; +#X connect 3 0 2 0; +#X connect 3 1 2 1; +#X connect 4 0 27 1; +#X connect 6 0 4 0; +#X connect 7 0 12 0; +#X connect 8 0 5 0; +#X connect 10 0 1 0; +#X connect 11 0 10 1; +#X connect 11 0 3 0; +#X connect 12 0 25 0; +#X connect 12 1 26 0; +#X connect 13 0 19 0; +#X connect 14 0 15 0; +#X connect 15 0 16 0; +#X connect 16 0 17 0; +#X connect 17 0 18 0; +#X connect 18 0 23 0; +#X connect 19 0 20 0; +#X connect 20 0 21 0; +#X connect 21 0 22 0; +#X connect 22 0 10 0; +#X connect 23 0 10 0; +#X connect 24 0 13 0; +#X connect 24 1 14 0; +#X connect 25 0 24 0; +#X connect 26 0 11 0; +#X connect 27 0 12 0; +#X restore 59 56 pd rand_sig; +#X obj 66 509 outlet~; +#X obj 137 508 outlet~; +#X obj 59 10 loadbang; +#X msg 59 33 1; +#X obj 98 33 t b; +#X obj 239 448 expr~ max(min($v1 \, $f2/10) \, -$f2/10); +#X obj 279 477 expr~ max(min($v1 \, $f2/10) \, -$f2/10); +#X msg 488 420 10; +#X obj 488 400 loadbang; +#X obj 83 169 *~ 10000; +#X obj 62 214 *~ 5; +#X obj 194 184 loadbang; +#X floatatom 162 152 5 0 0 0 - - -; +#N canvas 572 221 496 538 rand_sig 0; +#X obj 33 419 vline~; +#X msg 33 399 \$1 \$2; +#X obj 33 374 pack f f; +#X obj 84 350 + 1; +#X obj 33 91 t b b; +#X obj 246 161 delay; +#X obj 246 129 t b f; +#X obj 228 165 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 +1; +#X floatatom 183 282 5 0 0 0 - - -; +#X obj 33 175 t b; +#X obj 77 175 t b; +#X obj 110 206 random 200; +#X obj 110 231 + 1; +#X obj 110 252 / 100; +#X obj 110 272 - 1; +#X obj 33 206 random 200; +#X obj 33 231 + 1; +#X obj 33 252 / 100; +#X obj 33 272 - 1; +#X obj 113 294 * 0.2; +#X obj 33 153 moses 1; +#X obj 33 116 random 10; +#X obj 32 467 outlet~; +#X obj 32 16 inlet; +#X obj 97 17 inlet; +#X obj 28 51 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 32 444 *~ 0.8; +#X obj 84 330 random 2; +#X obj 231 205 spigot; +#X connect 0 0 26 0; +#X connect 1 0 0 0; +#X connect 2 0 1 0; +#X connect 3 0 2 1; +#X connect 3 0 6 0; +#X connect 4 0 21 0; +#X connect 4 1 27 0; +#X connect 5 0 28 0; +#X connect 6 0 5 0; +#X connect 6 1 5 1; +#X connect 7 0 28 1; +#X connect 8 0 27 1; +#X connect 9 0 15 0; +#X connect 10 0 11 0; +#X connect 11 0 12 0; +#X connect 12 0 13 0; +#X connect 13 0 14 0; +#X connect 14 0 19 0; +#X connect 15 0 16 0; +#X connect 16 0 17 0; +#X connect 17 0 18 0; +#X connect 18 0 2 0; +#X connect 19 0 2 0; +#X connect 20 0 9 0; +#X connect 20 1 10 0; +#X connect 21 0 20 0; +#X connect 23 0 7 0; +#X connect 24 0 4 0; +#X connect 25 0 4 0; +#X connect 26 0 22 0; +#X connect 27 0 3 0; +#X connect 28 0 4 0; +#X restore 61 117 pd rand_sig; +#X obj 60 144 *~ 2; +#X obj 61 189 vcf~ 99; +#X floatatom 194 225 5 0 0 0 - - -; +#X obj 222 291 sig~ 1; +#X obj 221 332 -~; +#X obj 178 375 *~; +#X obj 206 376 *~; +#X msg 194 205 5; +#X msg 226 269 1; +#X obj 149 270 abs~; +#X obj 194 243 cyclone/rand~; +#X connect 0 0 11 0; +#X connect 1 0 0 0; +#X connect 4 0 5 0; +#X connect 4 0 6 0; +#X connect 5 0 1 0; +#X connect 5 0 15 0; +#X connect 6 0 1 1; +#X connect 6 0 15 1; +#X connect 7 0 2 0; +#X connect 8 0 3 0; +#X connect 9 0 7 1; +#X connect 9 0 8 1; +#X connect 10 0 9 0; +#X connect 11 0 17 1; +#X connect 12 0 21 0; +#X connect 12 0 22 0; +#X connect 13 0 23 0; +#X connect 13 0 24 0; +#X connect 14 0 17 2; +#X connect 15 0 16 0; +#X connect 16 0 17 0; +#X connect 17 0 12 0; +#X connect 18 0 26 0; +#X connect 19 0 20 0; +#X connect 20 0 22 1; +#X connect 21 0 7 0; +#X connect 22 0 8 0; +#X connect 23 0 18 0; +#X connect 24 0 19 0; +#X connect 25 0 20 1; +#X connect 25 0 21 1; +#X connect 26 0 25 0; +#X restore 91 109 pd dronebubbles; +#X connect 2 0 0 0; +#X connect 2 1 1 0; diff --git a/buttonColor-help.pd b/buttonColor-help.pd new file mode 100644 index 0000000..5f78282 --- /dev/null +++ b/buttonColor-help.pd @@ -0,0 +1,30 @@ +#N canvas 78 109 637 527 10; +#X obj 46 156 hradio 15 1 0 3 \$0bs \$0br button 3 7 0 9 -1 -1 -261684 +0; +#X obj 47 59 hradio 15 1 0 3 \$0rs \$0rr empty 3 7 0 10 -1 -13184 -1 +0; +#X text 39 -21 description: colorize a custom button on presses.; +#X floatatom 143 183 5 0 0 0 - - -; +#X floatatom 145 129 5 0 0 0 - - -; +#X obj 150 56 buttonColor \$0rs \$0rr -1 -800000 -1 -1.67117e+07 -1 +-1 250; +#X floatatom 148 36 5 0 0 0 - - -; +#X floatatom 150 79 5 0 0 0 - - -; +#X text 52 228 Argument 1: GUI element's send symbol; +#X text 52 244 Argument 2: GUI element's receive symbol; +#X text 52 260 Argument 3: color of background when unpressed; +#X text 52 276 Argument 4: color of front when unpressed; +#X text 52 292 Argument 5: color of label when unpressed; +#X text 52 308 Argument 6: color of background when pressed; +#X text 52 324 Argument 7: color of front when pressed; +#X text 52 340 Argument 8: color of label when pressed; +#X text 52 356 Argument 9: release time; +#X text 186 107 For the color coding conversion \, see:; +#X obj 422 110 mtl/rgbToNum; +#X obj 144 158 buttonColor \$0bs \$0br -1 -1 -1.677e+07 -1 -1 -1 250 +; +#X text 44 -1 tags: ui; +#X connect 4 0 19 0; +#X connect 5 0 7 0; +#X connect 6 0 5 0; +#X connect 19 0 3 0; diff --git a/buttonColor.pd b/buttonColor.pd new file mode 100644 index 0000000..48e7d81 --- /dev/null +++ b/buttonColor.pd @@ -0,0 +1,20 @@ +#N canvas 0 0 891 585 10; +#X obj 60 60 inlet; +#X msg 171 456 color \$1 \$2 \$3; +#X obj 147 85 r \$1; +#X obj 245 192 delay \$9; +#X obj 166 366 pack \$6 \$7 \$8; +#X obj 393 397 pack \$3 \$4 \$5; +#X obj 59 119 s \$2; +#X obj 124 504 s \$2; +#X obj 166 154 t a b b; +#X obj 50 545 outlet; +#X connect 0 0 6 0; +#X connect 1 0 7 0; +#X connect 2 0 8 0; +#X connect 3 0 5 0; +#X connect 4 0 1 0; +#X connect 5 0 1 0; +#X connect 8 0 9 0; +#X connect 8 1 3 0; +#X connect 8 2 4 0; diff --git a/byteToBinary-help.pd b/byteToBinary-help.pd new file mode 100644 index 0000000..5b535dc --- /dev/null +++ b/byteToBinary-help.pd @@ -0,0 +1,60 @@ +#N canvas 14 367 789 332 10; +#X floatatom 14 206 5 0 0 0 - - -; +#X obj 14 136 metro 250; +#X obj 14 115 tgl 15 0 empty empty empty 20 7 0 8 -33289 -262144 -1 +1 1; +#X obj 14 93 loadbang; +#X obj 14 159 f 0; +#X obj 40 159 + 1; +#X obj 14 182 % 256; +#X text 12 287 A classical binary counter !; +#X obj 101 207 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X text 121 205 Endianess (1 = big endian \, defaults to 0 : little +endian) Can be the 1st arg as well.; +#X floatatom 547 213 0 0 0 0 - - -; +#X floatatom 530 236 0 0 0 0 - - -; +#X floatatom 513 262 0 0 0 0 - - -; +#X text 577 214 sec; +#X text 556 235 min; +#X obj 513 164 metro 1000; +#X obj 513 145 tgl 15 0 empty empty empty 20 7 0 8 -33289 -262144 -1 +1 1; +#X obj 513 120 loadbang; +#X text 511 103 A binary clock.; +#X obj 513 188 zexy/time; +#X text 539 262 hour; +#X obj 12 10 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 17 52 tags: conversion; +#X text 17 14 Description: Converts a byte into a list of 8 bits; +#X obj 14 250 mtl/seq1x8; +#X obj 606 165 mtl/seq1x8; +#X obj 605 227 mtl/seq1x8; +#X obj 606 289 mtl/seq1x8; +#X obj 14 228 mtl/byteToBinary; +#X obj 606 143 mtl/byteToBinary; +#X obj 605 205 mtl/byteToBinary; +#X obj 606 267 mtl/byteToBinary; +#X connect 0 0 28 0; +#X connect 1 0 4 0; +#X connect 2 0 1 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 4 0 6 0; +#X connect 5 0 4 1; +#X connect 6 0 0 0; +#X connect 8 0 28 1; +#X connect 15 0 19 0; +#X connect 16 0 15 0; +#X connect 17 0 16 0; +#X connect 19 0 12 0; +#X connect 19 0 31 0; +#X connect 19 1 11 0; +#X connect 19 1 30 0; +#X connect 19 2 10 0; +#X connect 19 2 29 0; +#X connect 28 0 24 0; +#X connect 29 0 25 0; +#X connect 30 0 26 0; +#X connect 31 0 27 0; diff --git a/byteToBinary.pd b/byteToBinary.pd new file mode 100644 index 0000000..e148e03 --- /dev/null +++ b/byteToBinary.pd @@ -0,0 +1,96 @@ +#N canvas 416 190 1024 516 10; +#X obj 335 120 & 1; +#X obj 466 263 pack f f f f f f f f; +#X obj 399 110 & 2; +#X obj 446 109 & 4; +#X obj 498 106 & 8; +#X obj 563 109 & 16; +#X obj 639 116 & 32; +#X obj 709 114 & 64; +#X obj 763 116 & 128; +#X obj 188 338 outlet; +#X obj 168 -42 inlet; +#X obj 397 135 >> 1; +#X obj 445 134 >> 2; +#X obj 498 132 >> 3; +#X obj 566 140 >> 4; +#X obj 642 152 >> 5; +#X obj 712 147 >> 6; +#X obj 767 149 >> 7; +#X obj 583 -21 inlet; +#X obj 274 203 & 1; +#X obj -92 250 pack f f f f f f f f; +#X obj 189 184 & 2; +#X obj 141 183 & 4; +#X obj 92 184 & 8; +#X obj 48 179 & 16; +#X obj 3 173 & 32; +#X obj -45 171 & 64; +#X obj -97 171 & 128; +#X obj 187 209 >> 1; +#X obj 140 208 >> 2; +#X obj 92 210 >> 3; +#X obj 51 210 >> 4; +#X obj 6 209 >> 5; +#X obj -42 204 >> 6; +#X obj -93 204 >> 7; +#X obj 290 -47 loadbang; +#X obj -92 134 t f f f f f f f f; +#X obj 437 53 t f f f f f f f f; +#X obj 290 -25 f \$1; +#X text 329 -25 Defaults to 0; +#X obj 168 10 zexy/demultiplex 0 1; +#X connect 0 0 1 0; +#X connect 1 0 9 0; +#X connect 2 0 11 0; +#X connect 3 0 12 0; +#X connect 4 0 13 0; +#X connect 5 0 14 0; +#X connect 6 0 15 0; +#X connect 7 0 16 0; +#X connect 8 0 17 0; +#X connect 10 0 40 0; +#X connect 11 0 1 1; +#X connect 12 0 1 2; +#X connect 13 0 1 3; +#X connect 14 0 1 4; +#X connect 15 0 1 5; +#X connect 16 0 1 6; +#X connect 17 0 1 7; +#X connect 18 0 40 1; +#X connect 19 0 20 7; +#X connect 20 0 9 0; +#X connect 21 0 28 0; +#X connect 22 0 29 0; +#X connect 23 0 30 0; +#X connect 24 0 31 0; +#X connect 25 0 32 0; +#X connect 26 0 33 0; +#X connect 27 0 34 0; +#X connect 28 0 20 6; +#X connect 29 0 20 5; +#X connect 30 0 20 4; +#X connect 31 0 20 3; +#X connect 32 0 20 2; +#X connect 33 0 20 1; +#X connect 34 0 20 0; +#X connect 35 0 38 0; +#X connect 36 0 27 0; +#X connect 36 1 26 0; +#X connect 36 2 25 0; +#X connect 36 3 24 0; +#X connect 36 4 23 0; +#X connect 36 5 22 0; +#X connect 36 6 21 0; +#X connect 36 7 19 0; +#X connect 37 0 0 0; +#X connect 37 1 2 0; +#X connect 37 2 3 0; +#X connect 37 3 4 0; +#X connect 37 4 5 0; +#X connect 37 5 6 0; +#X connect 37 6 7 0; +#X connect 37 7 8 0; +#X connect 38 0 40 1; +#X connect 40 0 36 0; +#X connect 40 1 37 0; diff --git a/bytesToIntSigned-help.pd b/bytesToIntSigned-help.pd new file mode 100644 index 0000000..72e9f47 --- /dev/null +++ b/bytesToIntSigned-help.pd @@ -0,0 +1,23 @@ +#N canvas 662 106 422 373 10; +#X obj 104 312 print; +#X msg 104 105 0 0; +#X msg 158 106 0 1; +#X msg 231 108 255 255; +#X msg 242 134 0 255; +#X msg 254 162 130 255; +#X msg 268 216 127 255; +#X msg 274 243 126 255; +#X msg 262 188 128 0; +#X text 31 15 Description: Converts a high byte and low byte pair to +a signed integer using two's compliment.; +#X obj 104 289 mtl/bytesToIntSigned; +#X text 31 50 tags: conversion; +#X connect 1 0 10 0; +#X connect 2 0 10 0; +#X connect 3 0 10 0; +#X connect 4 0 10 0; +#X connect 5 0 10 0; +#X connect 6 0 10 0; +#X connect 7 0 10 0; +#X connect 8 0 10 0; +#X connect 10 0 0 0; diff --git a/bytesToIntSigned.pd b/bytesToIntSigned.pd new file mode 100644 index 0000000..71a3f55 --- /dev/null +++ b/bytesToIntSigned.pd @@ -0,0 +1,29 @@ +#N canvas 0 0 521 475 10; +#X obj 136 300 t f b; +#X obj 131 91 unpack f f; +#X obj 130 17 inlet bytes; +#X obj 316 207 f; +#X obj 376 207 f; +#X obj 125 206 t f b; +#X obj 217 368 +; +#X obj 211 410 outlet; +#X obj 379 245 - 256; +#X obj 130 150 moses 128; +#X obj 98 340 * 256; +#X obj 190 182 - 255; +#X connect 0 0 10 0; +#X connect 0 1 4 0; +#X connect 1 0 9 0; +#X connect 1 1 3 1; +#X connect 1 1 4 1; +#X connect 2 0 1 0; +#X connect 3 0 6 1; +#X connect 4 0 8 0; +#X connect 5 0 10 0; +#X connect 5 1 3 0; +#X connect 6 0 7 0; +#X connect 8 0 6 1; +#X connect 9 0 5 0; +#X connect 9 1 11 0; +#X connect 10 0 6 0; +#X connect 11 0 0 0; diff --git a/center-help.pd b/center-help.pd new file mode 100644 index 0000000..b07721d --- /dev/null +++ b/center-help.pd @@ -0,0 +1,13 @@ +#N canvas 316 339 409 209 10; +#X floatatom 127 109 5 0 0 0 - - -; +#X floatatom 127 160 5 0 0 0 - - -; +#X text 25 9 Description: returns the center value between the minimum +and maximum received values.; +#X msg 184 114 bang; +#X text 125 88 Inlet_1 : stream of floats.; +#X text 217 113 Inlet_2 : reset; +#X obj 127 137 mtl/center; +#X text 27 44 tags: math; +#X connect 0 0 6 0; +#X connect 3 0 6 1; +#X connect 6 0 1 0; diff --git a/center.pd b/center.pd new file mode 100644 index 0000000..50e6a26 --- /dev/null +++ b/center.pd @@ -0,0 +1,48 @@ +#N canvas 0 0 663 431 10; +#X obj 261 52 inlet; +#X text 262 34 reset; +#X obj 114 46 inlet; +#X text 114 28 values; +#X obj 139 106 t f f; +#X obj 41 67 loadbang; +#X obj 71 155 spigot; +#X msg 41 89 1; +#X obj 115 243 moses; +#X obj 178 255 moses; +#X obj 169 335 +; +#X obj 170 286 t b f; +#X obj 166 361 / 2; +#X obj 134 394 outlet; +#X msg 37 200 0; +#X obj 105 322 float; +#X msg 131 281 bang; +#X text 352 132 lpn_middle :; +#X text 351 188 INLET 2 :; +#X text 354 165 INLET 1 : series of individual values to be compared +; +#X text 408 189 reset internal memory; +#X text 360 257 OUTLET 1: the lpn_middle value between the minimum and +maximum values received by inlet 1; +#X connect 0 0 7 0; +#X connect 2 0 4 0; +#X connect 4 0 8 0; +#X connect 4 1 6 0; +#X connect 5 0 7 0; +#X connect 6 0 8 1; +#X connect 6 0 9 1; +#X connect 6 0 14 0; +#X connect 6 0 15 1; +#X connect 7 0 6 1; +#X connect 8 0 15 0; +#X connect 8 1 9 0; +#X connect 9 0 16 0; +#X connect 9 1 11 0; +#X connect 10 0 12 0; +#X connect 11 0 15 0; +#X connect 11 1 10 1; +#X connect 11 1 9 1; +#X connect 12 0 13 0; +#X connect 14 0 6 1; +#X connect 15 0 10 0; +#X connect 15 0 8 1; +#X connect 16 0 15 0; diff --git a/channel~-help.pd b/channel~-help.pd new file mode 100644 index 0000000..ccbe7c6 --- /dev/null +++ b/channel~-help.pd @@ -0,0 +1,34 @@ +#N canvas 1063 163 829 470 10; +#X text 35 22 Description: Controls the panning and volume of a stereo +signal.; +#X obj 41 88 adc~; +#X text 38 54 tags: mix~; +#X obj 39 122 mtl/channel~ /id chan0; +#X obj 221 261 mtl/aux~ 0; +#X obj 221 303 mtl/vu~; +#X obj 380 302 mtl/vu~; +#X obj 380 260 mtl/aux~ 1; +#X obj 42 227 mtl/main~; +#X obj 42 271 mtl/out~; +#X obj 277 91 hsl 100 15 -20 20 0 0 \$0/chan0/hi \$0/chan0/hi_ /chan0/hi +105 7 0 10 -262144 -1 -1 8900 1; +#X obj 277 111 hsl 100 15 -20 20 0 0 \$0/chan0/mid \$0/chan0/mid_ /chan0/mid +105 7 0 10 -262144 -1 -1 7900 1; +#X obj 277 131 hsl 100 15 -20 20 0 0 \$0/chan0/low \$0/chan0/low_ /chan0/low +105 7 0 10 -262144 -1 -1 9900 1; +#X obj 277 151 hsl 100 15 -1 1 0 0 \$0/chan0/pan \$0/chan0/pan_ /chan0/pan +105 7 0 10 -262144 -1 -1 0 1; +#X obj 277 171 hradio 15 1 0 7 \$0/chan0/num \$0/chan0/num_ /chan0/num +107 7 0 10 -262144 -1 -1 0; +#X obj 277 191 hsl 100 15 0 1 0 0 \$0/chan0/aux \$0/chan0/aux_ /chan0/aux +105 7 0 10 -262144 -1 -1 0 1; +#X obj 277 211 hsl 100 15 0 1 0 0 \$0/chan0/main \$0/chan0/main_ /chan0/main +105 7 0 10 -262144 -1 -1 0 1; +#X connect 1 0 3 0; +#X connect 1 1 3 1; +#X connect 4 0 5 0; +#X connect 4 1 5 1; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 8 1 9 1; diff --git a/channel~.pd b/channel~.pd new file mode 100644 index 0000000..e58a7c3 --- /dev/null +++ b/channel~.pd @@ -0,0 +1,94 @@ +#N canvas 1079 16 948 682 10; +#X obj 240 66 inlet~; +#X obj 424 66 inlet~; +#X obj 598 288 min 0; +#X obj 368 279 max 0; +#X obj 268 379 *~; +#X obj 370 376 line~; +#X msg 370 356 \$1 10; +#X obj 371 333 -; +#X msg 373 305 1 \$1; +#X obj 612 320 + 1; +#X obj 615 371 line~; +#X msg 615 351 \$1 10; +#X obj 541 385 *~; +#X msg 606 426 set MTLAUX\$1L; +#X obj 177 484 *~; +#X obj 213 571 *~; +#X obj 388 450 line~; +#X msg 384 433 \$1 10; +#X obj 622 526 *~; +#X obj 474 583 *~; +#X obj 345 548 line~; +#X msg 345 528 \$1 10; +#X msg 724 419 set MTLAUX\$1R; +#X obj 236 185 iemlib/hml_shelf~ 0 200 0 4000 0 50; +#X obj 466 181 iemlib/hml_shelf~ 0 200 0 4000 0 50; +#X obj 534 116 tof/param /hi 0 /g knob -20 20; +#X obj 485 78 tof/param /mid 0 /g knob -20 20; +#X obj 276 101 tof/param /low 0 /g knob -20 20; +#X obj 597 242 tof/param /pan 0 /g slider -1 1; +#X obj 313 405 tof/param /aux 0 /g slider 0 1; +#X obj 254 489 tof/param /main 0 /g slider 0 1; +#X obj 699 337 tof/param /auxn 0 /g nbx; +#X obj 12 181 hsl 64 13 0 127 0 0 empty empty hi 10 7 0 9 -262144 -1 +-1 0 1; +#X obj 12 196 hsl 64 13 0 127 0 0 empty empty mid 10 7 0 9 -262144 +-1 -1 0 1; +#X obj 12 211 hsl 64 13 0 127 0 0 empty empty low 10 7 0 9 -262144 +-1 -1 0 1; +#X obj 89 181 hsl 69 15 0 127 0 0 empty empty pan 10 7 0 9 -262144 +-1 -1 0 1; +#X obj 117 199 hsl 40 13 0 127 0 0 empty empty aux 10 7 0 9 -262144 +-1 -1 0 1; +#X obj 86 198 nbx 2 14 -1e+37 1e+37 0 0 empty empty empty 30 7 0 9 +-262144 -1 -1 0 256; +#X obj 89 215 hsl 69 15 0 127 0 0 empty empty main 10 7 0 9 -262144 +-1 -1 0 1; +#X obj 15 258 cnv 15 100 16 empty \$0c synth 5 7 0 9 -1 -262144 0; +#X obj 723 547 tof/common~; +#X obj 476 624 tof/common~ MTLMAINR; +#X obj 200 611 tof/common~ MTLMAINL; +#X obj 93 560 tof/common~; +#X connect 0 0 23 0; +#X connect 1 0 24 0; +#X connect 2 0 9 0; +#X connect 3 0 8 0; +#X connect 4 0 15 0; +#X connect 4 0 14 0; +#X connect 5 0 4 1; +#X connect 6 0 5 0; +#X connect 7 0 6 0; +#X connect 8 0 7 0; +#X connect 9 0 11 0; +#X connect 10 0 12 1; +#X connect 11 0 10 0; +#X connect 12 0 19 1; +#X connect 12 0 18 1; +#X connect 13 0 43 0; +#X connect 14 0 43 0; +#X connect 15 0 42 0; +#X connect 16 0 18 0; +#X connect 16 0 14 1; +#X connect 17 0 16 0; +#X connect 18 0 40 0; +#X connect 19 0 41 0; +#X connect 20 0 15 1; +#X connect 20 0 19 0; +#X connect 21 0 20 0; +#X connect 22 0 40 0; +#X connect 23 0 4 0; +#X connect 24 0 12 0; +#X connect 25 0 23 5; +#X connect 25 0 24 5; +#X connect 26 0 23 3; +#X connect 26 0 24 3; +#X connect 27 0 23 1; +#X connect 27 0 24 1; +#X connect 28 0 3 0; +#X connect 28 0 2 0; +#X connect 29 0 17 0; +#X connect 30 0 21 0; +#X connect 31 0 22 0; +#X connect 31 0 13 0; +#X coords 0 0 1 1 160 74 0; diff --git a/chordGuess-help.pd b/chordGuess-help.pd new file mode 100644 index 0000000..c4f3747 --- /dev/null +++ b/chordGuess-help.pd @@ -0,0 +1,27 @@ +#N canvas 359 54 555 376 10; +#X obj 39 105 notein; +#X obj 39 141 pack f f; +#X obj 120 233 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 137 231 clear notes that might be stuck on.; +#X obj 39 277 route none; +#X obj 39 305 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 16 3 Description: Processes a stream of midi notes so that +we only keep the notes that are currently on. Furthermore \, it rounds +them all to the same octave so that we can use them as a chord in musical +computations.; +#X obj 116 105 mtl/piano 1; +#X text 16 63 tags: midi; +#X obj 39 252 mtl/chordGuess; +#X obj 96 301 cyclone/prepend set; +#X msg 96 326; +#X connect 0 0 1 0; +#X connect 0 1 1 1; +#X connect 1 0 9 0; +#X connect 2 0 9 1; +#X connect 4 0 5 0; +#X connect 4 1 10 0; +#X connect 7 0 1 0; +#X connect 9 0 4 0; +#X connect 10 0 11 0; diff --git a/chordGuess.pd b/chordGuess.pd new file mode 100644 index 0000000..1894caf --- /dev/null +++ b/chordGuess.pd @@ -0,0 +1,92 @@ +#N canvas 489 38 525 783 10; +#X obj 105 84 inlet stream of midi notes; +#X obj 135 278 route 0; +#X obj 105 226 t b l; +#X msg 135 253 \$3 \$1 \$2; +#X msg 179 303 \$2 \$3; +#X msg 135 327 remove \$1; +#X msg 84 329 dump; +#X obj 105 168 poly 24; +#X msg 135 454; +#X msg 38 369 set; +#X obj 135 400 % 12; +#X msg 135 424 add2 \$1; +#X obj 105 200 pack f f f; +#X text 208 252 velocity \, index \, note; +#X text 227 299 index \, note; +#X text 190 199 voice \, note \, velocity; +#X msg 178 135 61 80; +#X msg 168 107 61 0; +#X msg 44 102 62 34; +#X msg 45 129 62 0; +#X obj 433 91 inlet clear; +#X msg 433 117 clear; +#X msg 135 703; +#X msg 248 668 add2 \$1; +#X msg 211 593 -1; +#X obj 211 623 change; +#X obj 135 552 t b l b; +#X obj 211 645 sel -1; +#X obj 26 287 t b b b; +#X obj 135 482 t l b; +#X text 244 593 resets the change; +#X text 172 704 uniques notes; +#X obj 135 795 outlet; +#X msg 35 730; +#X text 101 728 There is still a little delay where we get "none" but +there is actually a set of notes being processed. It happens on every +chord. This should be ignored by some way.; +#X obj 307 781 cnv 15 200 35 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 319 798 MUZAQ - GNU Public License; +#X text 316 783 (c) 2006 Alexandre Quessy; +#X obj 433 144 t b a a; +#X text 171 455 all notes on \, in one octave; +#X obj 135 378 cyclone/coll; +#C restore; +#X obj 135 526 zexy/sort; +#X obj 154 574 zexy/drip; +#X connect 0 0 7 0; +#X connect 1 0 5 0; +#X connect 1 1 4 0; +#X connect 2 0 28 0; +#X connect 2 1 3 0; +#X connect 3 0 1 0; +#X connect 4 0 40 0; +#X connect 5 0 40 0; +#X connect 6 0 40 0; +#X connect 7 0 12 0; +#X connect 7 1 12 1; +#X connect 7 2 12 2; +#X connect 8 0 29 0; +#X connect 9 0 8 0; +#X connect 9 0 22 0; +#X connect 9 0 33 0; +#X connect 10 0 11 0; +#X connect 11 0 8 0; +#X connect 12 0 2 0; +#X connect 16 0 7 0; +#X connect 17 0 7 0; +#X connect 18 0 7 0; +#X connect 19 0 7 0; +#X connect 20 0 21 0; +#X connect 21 0 38 0; +#X connect 22 0 32 0; +#X connect 23 0 22 0; +#X connect 24 0 25 0; +#X connect 25 0 27 0; +#X connect 26 0 22 0; +#X connect 26 1 42 0; +#X connect 27 1 23 0; +#X connect 28 0 8 0; +#X connect 28 1 6 0; +#X connect 28 2 9 0; +#X connect 29 0 41 0; +#X connect 29 1 24 0; +#X connect 33 0 32 0; +#X connect 38 0 9 0; +#X connect 38 1 40 0; +#X connect 38 2 7 0; +#X connect 40 0 10 0; +#X connect 41 0 26 0; +#X connect 42 0 25 0; diff --git a/chronometer-help.pd b/chronometer-help.pd new file mode 100644 index 0000000..f1aab3f --- /dev/null +++ b/chronometer-help.pd @@ -0,0 +1,7 @@ +#N canvas 247 316 405 199 10; +#X text 95 152 know when you have to stop your gig; +#X obj 133 91 mtl/chronometer; +#X obj 15 8 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 20 12 description: a very basic gop chronometer; +#X text 20 49 tags: timing; diff --git a/chronometer.pd b/chronometer.pd new file mode 100644 index 0000000..ebaf57a --- /dev/null +++ b/chronometer.pd @@ -0,0 +1,71 @@ +#N canvas 204 160 505 418 10; +#X obj 238 264 metro 1000; +#X obj 238 312 +; +#X msg 238 288 1; +#X msg 275 221 0; +#X obj 173 264 sel 0; +#X obj 173 313 +; +#X msg 173 289 1; +#X obj 267 311 % 60; +#X obj 173 244 spigot; +#X obj 253 113 t b b b; +#X msg 297 146 0; +#X msg 253 144 1; +#X obj 110 265 sel 0; +#X obj 110 314 +; +#X msg 110 290 1; +#X obj 202 312 % 60; +#X obj 139 313 % 24; +#X obj 253 89 inlet reset; +#X obj 139 341 outlet hour; +#X obj 222 341 outlet minute; +#X obj 319 341 outlet second; +#X obj 238 236 inlet start_stop; +#X obj 191 119 bng 11 250 50 0 empty empty reset 14 5 0 8 -228856 -33289 +-33289; +#X floatatom 195 135 5 0 0 0 : #0s #; +#X floatatom 148 135 5 0 0 0 : #0m #; +#X floatatom 102 135 5 0 0 0 - #0h #; +#X obj 101 118 tgl 14 0 empty empty start/stop 17 7 0 9 -66577 -262144 +-1 0 1; +#X obj 100 340 s \$0h; +#X obj 200 289 s \$0m; +#X obj 309 312 s \$0s; +#X obj 110 245 spigot 1; +#X connect 0 0 2 0; +#X connect 1 0 7 0; +#X connect 2 0 1 0; +#X connect 3 0 7 0; +#X connect 3 0 15 0; +#X connect 3 0 16 0; +#X connect 4 0 6 0; +#X connect 5 0 15 0; +#X connect 6 0 5 0; +#X connect 7 0 1 1; +#X connect 7 0 8 0; +#X connect 7 0 20 0; +#X connect 7 0 29 0; +#X connect 8 0 4 0; +#X connect 9 0 11 0; +#X connect 9 1 3 0; +#X connect 9 2 10 0; +#X connect 10 0 8 1; +#X connect 10 0 30 1; +#X connect 11 0 8 1; +#X connect 11 0 30 1; +#X connect 12 0 14 0; +#X connect 13 0 16 0; +#X connect 14 0 13 0; +#X connect 15 0 5 1; +#X connect 15 0 19 0; +#X connect 15 0 28 0; +#X connect 15 0 30 0; +#X connect 16 0 13 1; +#X connect 16 0 18 0; +#X connect 16 0 27 0; +#X connect 17 0 9 0; +#X connect 21 0 0 0; +#X connect 22 0 9 0; +#X connect 26 0 0 0; +#X connect 30 0 12 0; +#X coords 0 -1 1 1 135 54 1 100 100; diff --git a/clap808~-help.pd b/clap808~-help.pd new file mode 100644 index 0000000..06333b9 --- /dev/null +++ b/clap808~-help.pd @@ -0,0 +1,26 @@ +#N canvas 1126 234 738 360 10; +#X obj 82 180 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 13 66 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X text 44 66 <- play it; +#X text 349 285 Author: Roman Haefeli; +#X text 109 180 <- can be used to switch~ dsp off; +#X text 348 307 Version: 2007-09-13; +#X text 12 3 Description: Emulation of the clap from the fancy tr808 +beatmachine; +#X obj 335 64 cnv 15 370 130 empty empty empty 20 12 0 14 -24198 -66577 +0; +#X text 341 68 SYNOPSIS; +#X text 340 91 inlet0: accepts methods 'bang' \, 'trigger' and 'gain' +; +#X text 338 110 outlet0: signal; +#X text 339 130 outlet1: float (0/1) \, switch~ outlet; +#X text 340 161 arg1: gain (0-127) / default = 100; +#X obj 13 159 mtl/clap808~; +#X obj 13 264 mtl/out~; +#X text 17 36 tags: synthesize~; +#X connect 1 0 13 0; +#X connect 13 0 14 0; +#X connect 13 0 14 1; +#X connect 13 1 0 0; diff --git a/clap808~.pd b/clap808~.pd new file mode 100644 index 0000000..c369b8d --- /dev/null +++ b/clap808~.pd @@ -0,0 +1,81 @@ +#N canvas 582 246 724 451 10; +#X obj 222 259 vline~; +#X obj 222 281 dbtorms~; +#X obj 31 255 noise~; +#X obj 32 329 *~; +#X obj 160 201 t b b; +#X obj 103 195 t b b; +#X obj 103 175 del 30; +#X obj 33 352 hip~ 800; +#X obj 103 218 1.5; +#X obj 128 219 50; +#X obj 160 223 0.7; +#X obj 185 223 0; +#X obj 103 152 t b b f; +#X obj 119 82 t f f; +#X obj 119 103 *; +#X obj 103 125 f; +#X obj 222 201 rmstodb; +#X msg 222 223 \$1 \, 0 34 \, \$1 0.5 10.5 \, 0 34 11 \, \$1 0 23 \, +0 34 23 \, \$1 0 31 \, 0 34 31 \, \$1 0 36 \, 0 230 36.5 \, 0 500 65 +\, 0 2000 120; +#X obj 34 381 outlet~; +#X text 459 368 Author: Roman Haefeli; +#X obj 17 3 inlet; +#X obj 17 52 b; +#X obj 339 300 del 2122; +#X obj 309 278 t b b; +#X obj 339 322 0; +#X obj 309 320 1; +#X obj 309 356 t a; +#X obj 324 383 switch~; +#X obj 309 404 outlet; +#X text 328 80 externals:; +#X text 326 98 [bpq2~] from the iemabs (uses [filter~] from iemlib1) +; +#X text 457 389 Version: 2007-09-13; +#X obj 17 31 route bang trigger gain; +#X obj 119 61 / 127; +#X obj 175 31 loadbang; +#X obj 178 59 tof/argument 1 100; +#X obj 31 279 iemlib/bpq2~ 1000 1 3000; +#X connect 0 0 1 0; +#X connect 1 0 3 1; +#X connect 2 0 36 0; +#X connect 3 0 7 0; +#X connect 4 0 10 0; +#X connect 4 1 11 0; +#X connect 5 0 8 0; +#X connect 5 1 9 0; +#X connect 6 0 5 0; +#X connect 7 0 18 0; +#X connect 8 0 36 2; +#X connect 9 0 36 3; +#X connect 10 0 36 2; +#X connect 11 0 36 3; +#X connect 12 0 6 0; +#X connect 12 1 4 0; +#X connect 12 2 16 0; +#X connect 13 0 14 0; +#X connect 13 1 14 1; +#X connect 14 0 15 1; +#X connect 15 0 12 0; +#X connect 16 0 17 0; +#X connect 17 0 0 0; +#X connect 20 0 32 0; +#X connect 21 0 15 0; +#X connect 21 0 23 0; +#X connect 22 0 24 0; +#X connect 23 0 25 0; +#X connect 23 1 22 0; +#X connect 24 0 26 0; +#X connect 25 0 26 0; +#X connect 26 0 27 0; +#X connect 26 0 28 0; +#X connect 32 0 21 0; +#X connect 32 1 21 0; +#X connect 32 2 33 0; +#X connect 33 0 13 0; +#X connect 34 0 35 0; +#X connect 35 0 33 0; +#X connect 36 0 3 0; diff --git a/clap~-help.pd b/clap~-help.pd new file mode 100644 index 0000000..1c3ca7a --- /dev/null +++ b/clap~-help.pd @@ -0,0 +1,15 @@ +#N canvas 591 70 317 220 10; +#X text 18 10 Description: Generates a kind of clap sound.; +#X text 18 26 Comment: Based on Andy Farnell's work.; +#X obj 26 143 mtl/out~; +#X obj 26 111 mtl/clap~; +#X obj 26 87 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 113 74 hsl 128 15 0 5000 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X text 73 72 decay; +#X text 19 45 tags: synthesize~; +#X connect 3 0 2 0; +#X connect 3 0 2 1; +#X connect 4 0 3 0; +#X connect 5 0 3 1; diff --git a/clap~.pd b/clap~.pd new file mode 100644 index 0000000..5a2ff01 --- /dev/null +++ b/clap~.pd @@ -0,0 +1,60 @@ +#N canvas 320 485 757 381 10; +#N canvas 501 95 533 593 clap 0; +#X obj 180 12 noise~; +#X obj 208 314 *~; +#X obj 144 228 *~; +#X obj 160 168 *~ 0.8; +#X obj 152 315 *~ 0.2; +#X obj 7 123 *~ 0.1; +#X obj 76 93 bp~ 1300 10; +#X obj 236 93 bp~ 700 10; +#X obj 159 93 bp~ 2500 4; +#X obj 7 93 lop~ 8000; +#X obj 162 402 outlet~; +#X obj 246 12 inlet; +#X obj 246 51 t b b b; +#X text 50 23 clap; +#X obj 370 3 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 179 52 hip~ 500; +#X obj 396 26 inlet; +#X obj 379 118 bp~ 5000 10; +#X obj 366 185 *~ 0.5; +#X obj 145 202 creb/ead~ 1 800; +#X obj 308 269 creb/ead~ 3 50; +#X connect 0 0 9 0; +#X connect 0 0 15 0; +#X connect 0 0 17 0; +#X connect 1 0 10 0; +#X connect 2 0 1 1; +#X connect 2 0 4 0; +#X connect 3 0 2 1; +#X connect 4 0 10 0; +#X connect 5 0 3 0; +#X connect 6 0 3 0; +#X connect 7 0 3 0; +#X connect 8 0 3 0; +#X connect 9 0 5 0; +#X connect 11 0 12 0; +#X connect 12 0 19 0; +#X connect 12 1 20 0; +#X connect 14 0 12 0; +#X connect 15 0 6 0; +#X connect 15 0 7 0; +#X connect 15 0 8 0; +#X connect 16 0 19 2; +#X connect 17 0 18 0; +#X connect 18 0 1 1; +#X connect 19 0 2 0; +#X connect 20 0 1 0; +#X restore 357 265 pd clap; +#X obj 356 336 outlet~; +#X obj 396 238 inlet; +#X obj 358 237 inlet; +#X obj 460 238 loadbang; +#X obj 460 260 tof/argument 1 600; +#X connect 0 0 1 0; +#X connect 2 0 0 1; +#X connect 3 0 0 0; +#X connect 4 0 5 0; +#X connect 5 0 0 1; diff --git a/clk-quantization-help.pd b/clk-quantization-help.pd new file mode 100644 index 0000000..ee26148 --- /dev/null +++ b/clk-quantization-help.pd @@ -0,0 +1,33 @@ +#N canvas 0 0 773 540 10; +#X obj 52 509 outlet; +#X text 166 155 That means that the abstraction can start playing on +each beat (every 24 steps).; +#X text 237 234 If you set seq.timing.slave's events/beat to 4 \, the +abstraction can start playing at any quarter beat.; +#X text 285 323 If you set seq.timing.slave's length to 16 events and +the events/beat to 4 \, the abstraction can start playing every 4 beats. +; +#X text 166 113 Next time you press play \, the abstraction will start +playing from event 0 (restarts the pattern) once it receives a new +beat.; +#X text 290 394 The abstraction will start playing immediatly the next +time you press play. It will try to match seq.timing.master's current +event (does not restart the pattern).; +#X text 290 462 Triggers right away; +#X text 238 207 Waits for the next master event then starts playing. +; +#X text 300 305 Waits for the next master loop then starts playing. +; +#X text 44 47 There are four methods of synchronizing a clkSlave to +its clkMaster:; +#X msg 50 113 quantization beat; +#X msg 107 207 quantization event; +#X msg 146 311 quantization loop; +#X msg 150 403 quantization match; +#X msg 165 464 quantization none; +#X text 284 379 -- default --; +#X connect 10 0 0 0; +#X connect 11 0 0 0; +#X connect 12 0 0 0; +#X connect 13 0 0 0; +#X connect 14 0 0 0; diff --git a/clkMaster-help.pd b/clkMaster-help.pd new file mode 100644 index 0000000..ba4264b --- /dev/null +++ b/clkMaster-help.pd @@ -0,0 +1,37 @@ +#N canvas 1066 151 868 436 10; +#X obj 270 225 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X text 288 224 Beat indicator; +#X floatatom 46 164 5 0 0 0 - - -; +#X text 87 163 Bpm (minimum of 30 \, defaults to 120); +#X floatatom 46 262 8 0 0 1 step - -; +#X floatatom 104 237 5 0 0 1 beat_interval(ms) - -; +#X text 27 59 tags: timing; +#X msg 379 163 external 1; +#X text 45 282 24 steps ber beat (as in MIDI); +#X text 453 163 You can then send the external sync signal to [clkMaster]'s +right inlet. See [clkUPDin]'s help for an example.; +#X text 376 128 You use an external sync signal by sending an "external +1" message to [clkMaster]'s left inlet.; +#X text 24 31 Description: synchronizes all [clkSlave] abstractions +that share the same "top" patch.; +#X obj 46 208 mtl/clkMaster 120; +#X floatatom 56 393 5 0 0 0 - - -; +#X obj 56 330 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X floatatom 362 394 5 0 0 0 - - -; +#X obj 362 331 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 57 360 mtl/clkSlave 4 16; +#X text 74 328 <- Bang to start playing a 4/4 16 beat loop; +#X text 387 326 <- Bang to start playing a 4/4 32 beat loop; +#X obj 362 358 mtl/clkSlave 4 32; +#X connect 2 0 12 0; +#X connect 7 0 12 0; +#X connect 12 0 4 0; +#X connect 12 1 5 0; +#X connect 12 2 0 0; +#X connect 14 0 17 0; +#X connect 16 0 20 0; +#X connect 17 0 13 0; +#X connect 20 0 15 0; diff --git a/clkMaster.pd b/clkMaster.pd new file mode 100644 index 0000000..d50607c --- /dev/null +++ b/clkMaster.pd @@ -0,0 +1,140 @@ +#N canvas 440 71 999 659 10; +#X msg 362 169 60000; +#X obj 361 203 /; +#X obj 528 163 * 24; +#X obj 231 249 metro 20; +#N canvas 279 182 470 320 step.counter 0; +#X obj 156 66 t f f; +#X obj 157 40 r \$0step; +#X obj 262 38 r \$0iter; +#X obj 237 114 f; +#X obj 250 75 t b f; +#X obj 249 142 +; +#X obj 241 183 max 0; +#X obj 44 -7 inlet; +#X obj 55 249 outlet; +#X obj 68 189 t f f; +#X obj 139 185 t f f; +#X obj 239 257 outlet; +#X msg 186 220 seek \$1; +#X obj 34 128 tof/increment; +#X connect 0 0 10 0; +#X connect 0 1 13 1; +#X connect 1 0 0 0; +#X connect 2 0 4 0; +#X connect 3 0 5 0; +#X connect 4 0 3 0; +#X connect 4 1 5 1; +#X connect 5 0 6 0; +#X connect 6 0 0 0; +#X connect 7 0 13 0; +#X connect 9 0 8 0; +#X connect 9 1 3 1; +#X connect 10 0 12 0; +#X connect 10 1 3 1; +#X connect 12 0 11 0; +#X connect 13 0 9 0; +#X restore 227 292 pd step.counter; +#X obj -15 -141 inlet bpm; +#X obj 263 -143 loadbang; +#X obj 157 61 max 30; +#X obj 728 533 outlet heart_beat; +#X obj 768 424 mod 24; +#X obj 757 461 sel 0; +#X obj 157 92 t f b f f; +#X obj 623 -135 inlet external; +#X obj 109 31 t f f; +#X obj 459 2 spigot; +#X obj 184 -19 == 0; +#X obj 85 -44 sel 0; +#X obj 81 -18 f; +#X obj 140 -47 t f f; +#X obj 107 5 spigot 1; +#X obj 339 542 outlet step; +#X obj 479 537 outlet beat_interval; +#X obj 337 38 f; +#X obj 12 -115 route bang float external; +#X obj 367 -116 tof/getdollarzero root; +#X obj 366 502 send; +#X msg 367 -91 symbol \$1CLK; +#X text -10 -90 would like to add a bpm bang; +#N canvas 0 0 450 300 bpm2ms 0; +#X obj 140 62 inlet; +#X obj 140 122 /; +#X obj 140 148 * 60; +#X msg 140 99 1000 \$1; +#X obj 139 201 outlet; +#X connect 0 0 3 0; +#X connect 1 0 2 0; +#X connect 2 0 4 0; +#X connect 3 0 1 0; +#X restore 478 496 pd bpm2ms; +#X obj -55 -59 tof/argument 1 120; +#X obj 55 328 f; +#X obj 240 360 t f f f; +#X msg 66 390 bpm \$1; +#X obj 16 280 b; +#X obj 263 -73 t b b b b; +#X obj 623 -111 route bpm; +#X obj -8 228 r _NEWCLK; +#X obj 367 -27 tof/onlyone; +#X obj 617 91 symbol; +#X obj 367 -68 t s s; +#X obj 629 -5 print Warning; +#X msg 629 -33 There is alreaday a [clkMaster] linked to this root +patch!; +#X msg 367 -47 set \$1; +#X obj 249 326 zexy/multiplex 0 1; +#X connect 0 0 1 0; +#X connect 1 0 3 1; +#X connect 2 0 1 1; +#X connect 3 0 4 0; +#X connect 4 0 43 0; +#X connect 5 0 23 0; +#X connect 6 0 24 0; +#X connect 7 0 11 0; +#X connect 9 0 10 0; +#X connect 10 0 8 0; +#X connect 11 0 30 0; +#X connect 11 1 0 0; +#X connect 11 2 2 0; +#X connect 11 3 28 0; +#X connect 12 0 35 0; +#X connect 13 1 7 0; +#X connect 14 0 13 0; +#X connect 15 0 19 1; +#X connect 16 0 17 0; +#X connect 17 0 19 0; +#X connect 18 0 16 0; +#X connect 18 1 15 0; +#X connect 19 0 13 0; +#X connect 22 0 14 1; +#X connect 22 0 18 0; +#X connect 22 0 43 2; +#X connect 23 1 17 0; +#X connect 23 2 22 0; +#X connect 24 0 26 0; +#X connect 26 0 39 0; +#X connect 28 0 21 0; +#X connect 29 0 17 0; +#X connect 30 0 32 0; +#X connect 31 0 20 0; +#X connect 31 1 25 0; +#X connect 31 2 9 0; +#X connect 32 0 25 0; +#X connect 33 0 30 0; +#X connect 34 0 33 0; +#X connect 34 1 3 0; +#X connect 34 2 29 0; +#X connect 34 3 38 0; +#X connect 35 0 14 0; +#X connect 35 1 43 1; +#X connect 36 0 33 0; +#X connect 37 0 34 0; +#X connect 37 1 41 0; +#X connect 38 0 25 1; +#X connect 39 0 42 0; +#X connect 39 1 38 1; +#X connect 41 0 40 0; +#X connect 42 0 37 0; +#X connect 43 0 31 0; diff --git a/clkSlave-help.pd b/clkSlave-help.pd new file mode 100644 index 0000000..3e4e37b --- /dev/null +++ b/clkSlave-help.pd @@ -0,0 +1,36 @@ +#N canvas 1176 114 708 495 10; +#X text 56 41 Description: Follows the timing of seq.timing.master. +; +#X msg 59 187 play; +#X msg 103 186 stop; +#X floatatom 77 384 5 0 0 1 bpm - -; +#X floatatom 60 409 5 0 0 1 event - -; +#X obj 95 364 tgl 15 0 empty empty play_state 17 7 0 10 -262144 -1 +-1 0 1; +#X obj 111 336 bng 15 250 50 0 empty empty loop 17 7 0 10 -262144 -1 +-1; +#X obj 129 311 bng 15 250 50 0 empty empty play_triggered 17 7 0 10 +-262144 -1 -1; +#X floatatom 171 223 5 0 0 0 - - -; +#X floatatom 242 249 5 0 0 0 - - -; +#X text 284 249 events in a loop (disable with 0 \, defaults to 0) +; +#X text 56 61 tags: timing; +#X obj 60 273 mtl/clkSlave; +#X obj 474 68 mtl/clkMaster 120; +#X text 148 166 Open(click) to read about quantization:; +#X obj 152 187 mtl/clk-quantization-help; +#X text 214 221 steps per event (minimum of 1 \, maximum of 24 \, defaults +to 4); +#X floatatom 474 92 7 0 0 1 step - -; +#X connect 1 0 12 0; +#X connect 2 0 12 0; +#X connect 8 0 12 1; +#X connect 9 0 12 2; +#X connect 12 0 4 0; +#X connect 12 1 3 0; +#X connect 12 2 5 0; +#X connect 12 3 6 0; +#X connect 12 4 7 0; +#X connect 13 0 17 0; +#X connect 15 0 12 0; diff --git a/clkSlave.pd b/clkSlave.pd new file mode 100644 index 0000000..ffd151d --- /dev/null +++ b/clkSlave.pd @@ -0,0 +1,265 @@ +#N canvas 1028 38 1005 673 10; +#X obj 188 724 change; +#X obj 21 365 b; +#X obj 426 632 moses 16; +#X obj 255 486 t b b; +#X obj 18 -82 inlet commands; +#X obj 186 760 outlet; +#X obj 694 288 s \$0events; +#X obj 569 -102 inlet length; +#X obj 684 230 expr 24/$f1; +#X obj 692 256 int; +#X msg 46 18 0; +#X msg 537 243 1; +#X obj 53 361 r \$0events; +#X obj 185 658 r \$0change; +#N canvas 447 378 577 388 initial_sync 0; +#X obj 64 10 inlet; +#X obj 360 16 inlet; +#X obj 93 105 spigot 1; +#X msg 176 114 0; +#X obj 110 132 t b b; +#X obj 124 205 s \$0trig; +#X msg 119 167 5; +#X connect 0 0 2 0; +#X connect 1 0 2 1; +#X connect 2 0 4 0; +#X connect 3 0 2 1; +#X connect 4 0 6 0; +#X connect 4 1 3 0; +#X connect 6 0 5 0; +#X restore 453 265 pd initial_sync; +#X obj 541 19 s \$0length; +#X obj 684 205 clip 1 24; +#X obj 552 524 r \$0length; +#X obj 461 562 > 0; +#X obj 552 -22 max 0; +#X obj 420 200 t b f f b; +#X obj 668 755 outlet loop; +#X obj 478 666 t b b; +#X obj 365 492 r \$0event; +#X obj 163 365 r \$0step; +#X obj 92 15 s \$0state; +#X obj 257 143 f 1; +#X obj 534 220 delay 250; +#X obj 38 297 spigot; +#X obj 121 280 r \$0state; +#N canvas 1094 69 926 668 triggers 0; +#X obj 261 17 inlet; +#X obj 52 302 sel 0; +#X obj 150 251 r \$0events; +#X obj 120 302 sel 0; +#X obj 263 217 r \$0events; +#X obj 233 244 div 6; +#X obj 233 288 mod 16; +#X obj 280 257 r \$0length; +#X obj 120 278 mod 6; +#X obj 233 311 sel 0; +#X obj 46 618 s \$0state; +#X obj 240 593 s \$0step; +#X obj 311 592 s \$0event; +#X obj 439 385 pack f f; +#X obj 52 268 mod 24; +#X obj 504 304 mod 16; +#X obj 532 241 r \$0length; +#X obj 355 208 t f f; +#X obj 476 244 div 6; +#X obj 755 405 pack f f; +#X obj 719 277 mod 16; +#X obj 755 248 r \$0length; +#X obj 671 228 t f f; +#X obj 699 251 div 6; +#X obj 671 280 mod 6; +#X obj 671 308 sel 0; +#X obj 782 330 +; +#X obj 831 367 t f f; +#X obj 693 334 t f b; +#X msg 736 318 1; +#X msg 756 431 \$1 \$2 0; +#X obj 96 568 s \$0play_triggered; +#X obj 27 23 inlet TRIGGER_NOW; +#X obj 233 141 zexy/demultiplex 0 1 2 3 4 5; +#X obj 461 9 inlet trig; +#X text 671 198 -- unknown mode --; +#X obj 463 203 r \$0events; +#X obj 382 336 mod 6; +#X msg 52 335 0 0 0; +#X msg 120 332 0 0 0; +#X msg 231 336 0 0 0; +#X msg 440 411 \$1 \$2 0; +#X msg 27 130 0 0 0; +#X obj 44 533 t b b; +#X msg 46 589 1; +#X obj 251 529 unpack f f f; +#X obj 274 71 t f f; +#X obj 175 480 t b l b; +#X connect 0 0 46 0; +#X connect 1 0 38 0; +#X connect 2 0 8 1; +#X connect 3 0 39 0; +#X connect 4 0 5 1; +#X connect 5 0 6 0; +#X connect 6 0 9 0; +#X connect 7 0 6 1; +#X connect 8 0 3 0; +#X connect 9 0 40 0; +#X connect 13 0 41 0; +#X connect 14 0 1 0; +#X connect 15 0 13 1; +#X connect 16 0 15 1; +#X connect 17 0 37 0; +#X connect 17 1 18 0; +#X connect 18 0 15 0; +#X connect 19 0 30 0; +#X connect 20 0 26 1; +#X connect 21 0 20 1; +#X connect 22 0 24 0; +#X connect 22 1 23 0; +#X connect 23 0 20 0; +#X connect 24 0 25 0; +#X connect 25 1 28 0; +#X connect 26 0 19 1; +#X connect 27 0 19 0; +#X connect 27 1 26 0; +#X connect 28 0 19 0; +#X connect 28 1 29 0; +#X connect 29 0 26 0; +#X connect 30 0 47 0; +#X connect 32 0 42 0; +#X connect 33 1 14 0; +#X connect 33 2 8 0; +#X connect 33 3 5 0; +#X connect 33 4 17 0; +#X connect 33 5 22 0; +#X connect 34 0 33 1; +#X connect 36 0 18 1; +#X connect 36 0 37 1; +#X connect 37 0 13 0; +#X connect 38 0 47 0; +#X connect 39 0 47 0; +#X connect 40 0 47 0; +#X connect 41 0 47 0; +#X connect 42 0 47 0; +#X connect 43 0 44 0; +#X connect 43 1 31 0; +#X connect 44 0 10 0; +#X connect 45 0 11 0; +#X connect 45 1 12 0; +#X connect 45 2 33 1; +#X connect 46 0 33 0; +#X connect 47 0 43 0; +#X connect 47 1 45 0; +#X restore 269 300 pd triggers; +#X obj 411 755 outlet bpm; +#X obj 540 760 outlet state; +#X obj 540 713 r \$0state; +#X obj 371 -56 inlet events; +#X obj 556 -56 int; +#X obj 803 714 r \$0play_triggered; +#X obj 803 755 outlet play_triggered; +#X obj 144 84 unpack f f; +#X msg 156 43 0 1; +#X msg 202 45 0 2; +#X msg 247 44 0 3; +#X msg 292 43 0 4; +#X obj 19 109 t b b; +#X obj 70 160 spigot; +#X msg 338 44 1 0; +#X obj 19 414 iemlib/modulo_counter; +#X obj 243 558 tof/increment; +#X obj 710 -35 loadbang; +#X msg 358 96 set \$1CLK; +#X obj 358 70 tof/getdollarzero root; +#X obj 399 121 iemlib/iem_receive; +#X obj 357 144 route bpm; +#X obj 216 -25 sel 0 1; +#X obj 698 95 s _NEWCLK; +#X obj 157 17 route beat event loop match none; +#X obj 723 56 tof/argument 1 4; +#X obj 579 -77 tof/argument 2 0; +#X obj 704 7 t b b b b b; +#X obj 19 -54 route play stop quantization bang; +#X obj 851 112 list trim; +#X obj 267 598 zexy/demultiplex 0 1; +#X obj 20 464 sel 0; +#X obj 11 300 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 852 86 tof/argument 3 match; +#X connect 0 0 5 0; +#X connect 1 0 46 0; +#X connect 2 0 0 0; +#X connect 2 1 22 0; +#X connect 3 0 47 0; +#X connect 3 1 47 1; +#X connect 4 0 59 0; +#X connect 7 0 35 0; +#X connect 8 0 9 0; +#X connect 9 0 6 0; +#X connect 10 0 25 0; +#X connect 11 0 14 1; +#X connect 12 0 46 0; +#X connect 13 0 0 0; +#X connect 16 0 8 0; +#X connect 17 0 18 0; +#X connect 17 0 2 1; +#X connect 18 0 61 1; +#X connect 19 0 15 0; +#X connect 20 0 28 0; +#X connect 20 1 30 1; +#X connect 20 2 14 0; +#X connect 20 3 27 0; +#X connect 22 0 3 0; +#X connect 22 1 21 0; +#X connect 23 0 47 1; +#X connect 24 0 46 1; +#X connect 26 0 30 2; +#X connect 27 0 11 0; +#X connect 28 0 1 0; +#X connect 29 0 28 1; +#X connect 33 0 32 0; +#X connect 34 0 16 0; +#X connect 35 0 19 0; +#X connect 36 0 37 0; +#X connect 38 0 44 1; +#X connect 38 1 26 1; +#X connect 39 0 38 0; +#X connect 40 0 38 0; +#X connect 41 0 38 0; +#X connect 42 0 38 0; +#X connect 43 0 44 0; +#X connect 43 1 26 0; +#X connect 44 0 30 0; +#X connect 45 0 38 0; +#X connect 46 0 62 0; +#X connect 47 0 61 0; +#X connect 48 0 58 0; +#X connect 49 0 51 0; +#X connect 50 0 49 0; +#X connect 51 0 52 0; +#X connect 52 0 31 0; +#X connect 52 1 20 0; +#X connect 53 0 10 0; +#X connect 53 1 43 0; +#X connect 55 0 39 0; +#X connect 55 1 40 0; +#X connect 55 2 41 0; +#X connect 55 3 42 0; +#X connect 55 4 45 0; +#X connect 56 0 16 0; +#X connect 57 0 35 0; +#X connect 58 0 54 0; +#X connect 58 1 56 0; +#X connect 58 2 57 0; +#X connect 58 3 50 0; +#X connect 58 4 64 0; +#X connect 59 0 43 0; +#X connect 59 1 10 0; +#X connect 59 2 55 0; +#X connect 59 3 43 0; +#X connect 59 4 53 0; +#X connect 60 0 55 0; +#X connect 61 0 0 0; +#X connect 61 1 2 0; +#X connect 62 0 47 0; +#X connect 63 0 1 0; +#X connect 64 0 60 0; diff --git a/clkUDPIn-help.pd b/clkUDPIn-help.pd new file mode 100644 index 0000000..4ea349b --- /dev/null +++ b/clkUDPIn-help.pd @@ -0,0 +1,15 @@ +#N canvas 1361 372 628 323 10; +#X text 41 32 Description: Receive a timing flow through UDP; +#X obj 106 127 loadbang; +#X msg 106 154 external 1; +#X text 211 123 Argument: port to listen to; +#X obj 106 185 mtl/clkMaster; +#X obj 193 213 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 212 147 mtl/clkUDPIn 8247; +#X text 51 245 open clkUDPOut's help for a working example.; +#X text 41 53 tags: timing network; +#X connect 1 0 2 0; +#X connect 2 0 4 0; +#X connect 4 2 5 0; +#X connect 6 0 4 1; diff --git a/clkUDPIn.pd b/clkUDPIn.pd new file mode 100644 index 0000000..9769ad9 --- /dev/null +++ b/clkUDPIn.pd @@ -0,0 +1,4 @@ +#N canvas 447 194 450 300 10; +#X obj 147 141 netreceive \$1 1; +#X obj 147 250 outlet; +#X connect 0 0 1 0; diff --git a/clkUDPOut-help.pd b/clkUDPOut-help.pd new file mode 100644 index 0000000..ac4bf50 --- /dev/null +++ b/clkUDPOut-help.pd @@ -0,0 +1,11 @@ +#N canvas 1087 85 450 300 10; +#X text 16 86 Description: Send a timing flow through UDP; +#X floatatom 300 102 5 0 0 0 - - -; +#X obj 387 151 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 27 203 mtl/clkUDPOut localhost 8247; +#X obj 300 126 mtl/clkMaster; +#X text 18 158 open clkUDPIn's help for a working example.; +#X text 15 102 tags: timing network; +#X connect 1 0 4 0; +#X connect 4 2 2 0; diff --git a/clkUDPOut.pd b/clkUDPOut.pd new file mode 100644 index 0000000..f0c3dc9 --- /dev/null +++ b/clkUDPOut.pd @@ -0,0 +1,34 @@ +#N canvas 322 55 650 439 10; +#X obj 348 72 loadbang; +#X obj 35 168 spigot; +#X obj 35 317 netsend 1; +#X obj 35 207 list prepend send; +#X obj 35 237 list trim; +#X msg 164 279 connect \$1 \$2; +#X obj 164 256 pack s f; +#X obj 44 348 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 35 47 tof/getdollarzero root; +#X obj 240 179 tof/argument 1 localhost; +#X obj 303 214 tof/argument 2 8247; +#X obj 35 139 iemlib/iem_receive; +#X msg 35 112 set \$1CLK; +#X obj 226 122 s NEWCLK; +#X obj 336 121 t b b b b; +#X connect 0 0 14 0; +#X connect 1 0 3 0; +#X connect 2 0 1 1; +#X connect 2 0 7 0; +#X connect 3 0 4 0; +#X connect 4 0 2 0; +#X connect 5 0 2 0; +#X connect 6 0 5 0; +#X connect 8 0 12 0; +#X connect 9 0 6 0; +#X connect 10 0 6 1; +#X connect 11 0 1 0; +#X connect 12 0 11 0; +#X connect 14 0 13 0; +#X connect 14 1 9 0; +#X connect 14 2 10 0; +#X connect 14 3 8 0; diff --git a/clocker-help.pd b/clocker-help.pd new file mode 100644 index 0000000..4eb07dd --- /dev/null +++ b/clocker-help.pd @@ -0,0 +1,23 @@ +#N canvas 478 217 416 259 10; +#X obj 148 114 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X floatatom 128 186 5 0 0 0 - - -; +#X obj 128 207 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 167 112 Start(1)/stop(0); +#X floatatom 233 142 5 0 0 0 - - -; +#X text 269 140 Interval; +#X obj 128 92 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 146 91 Reset+start; +#X obj 128 165 mtl/clocker 1000; +#X obj 12 8 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 17 12 description: Metronome that reports time since it was +started.; +#X text 17 50 tags: timing; +#X connect 0 0 8 0; +#X connect 1 0 2 0; +#X connect 4 0 8 1; +#X connect 6 0 8 0; +#X connect 8 0 1 0; diff --git a/clocker.pd b/clocker.pd new file mode 100644 index 0000000..8396a11 --- /dev/null +++ b/clocker.pd @@ -0,0 +1,24 @@ +#N canvas 0 0 450 300 10; +#X obj 112 35 inlet; +#X obj 111 171 metro \$1; +#X obj 97 224 timer; +#X obj 75 132 t b b; +#X obj 97 256 outlet; +#X obj 303 61 inlet; +#X obj 93 87 sel 1 0; +#X msg 140 120 0; +#X obj 113 60 route float; +#X msg 176 86 bang; +#X connect 0 0 8 0; +#X connect 1 0 2 1; +#X connect 2 0 4 0; +#X connect 3 0 1 0; +#X connect 3 1 2 0; +#X connect 5 0 1 1; +#X connect 6 0 3 0; +#X connect 6 1 7 0; +#X connect 6 2 3 0; +#X connect 7 0 1 0; +#X connect 8 0 6 0; +#X connect 8 1 9 0; +#X connect 9 0 3 0; diff --git a/closestNote-help.pd b/closestNote-help.pd new file mode 100644 index 0000000..95e9404 --- /dev/null +++ b/closestNote-help.pd @@ -0,0 +1,89 @@ +#N canvas 515 25 670 581 10; +#X obj 10 361 mtof; +#X msg 240 51 0 2 4 5 7 9 11; +#X text 337 52 major; +#X msg 251 74 0 1 4 5 7 8 11; +#X msg 263 97 0 2 4 6 7 9 10; +#X msg 274 119 0 2 3 5 7 8 11; +#X msg 297 164 0 2 4 6 8 10; +#X msg 307 186 0 2 3 5 6 8 9 11; +#X msg 327 252 0 0.5 1 1.5 2 2.5 3 3.5 4; +#X text 349 74 middle-east-like minor; +#X text 360 98 lydian-dominant (jazzy); +#X text 372 121 harmonic minor; +#X msg 285 142 0 2 3 4 5 6 7 9 10 11; +#X text 423 142 chromatic blues; +#X text 383 166 whole-tones scale; +#X text 415 187 diminished scale; +#X msg 315 208 0 2 4 7 9; +#X text 383 209 pentatonic; +#X text 415 229 pentatonic blues; +#X msg 323 230 0 2 3 4 7 8 9; +#X msg 332 274 0 0.33 0.66 1 1.33 1.66 2; +#X msg 374 421 60 61 62 63 64 65 66 67 68 69 70 71 72; +#X obj 373 443 t a b; +#X msg 425 509 set; +#X msg 373 531 60 62 62 63.1 65 65 67 67 69 69 70 72 72; +#X msg 373 508 add2 \$1; +#X obj 373 465 zexy/drip; +#X msg 520 465 0 2 3.1 5 7 9 10; +#X msg 338 297 0 1.5 3 4.5 6 7.5 9 10.5; +#X text 53 375 Argument: the list of the current chord.; +#X text 7 8 Description: Rounds an incoming MIDI note to a note listed +in a given chord or scale.; +#X text 53 361 inlets: note offset to play \, scale/chord list (any +length); +#X text 5 61 Author: Alexandre Quessy (c) 2006; +#X text 494 250 tests; +#X floatatom 339 322 5 0 0 0 - - -; +#X obj 10 383 osc~; +#X obj 10 314 + 60; +#X obj 9 409 mtl/out~; +#X text 9 479 Of course \, if you use several [closestNote] objects +at a time with the same scale and key \, you will be able to compose +a realtime symphony. It will always be continuous if you use scales +with the same number of notes. Also \, it will prevent the notes from +being too high.; +#X text 7 40 tags: musical; +#X obj 240 341 mtl/transpose; +#X obj 10 337 mtl/closestNote 0 2 4 7 9; +#X obj 373 487 mtl/closestNote 0 2 4 7 9; +#X obj 10 270 t b; +#X obj 10 292 iemlib/modulo_counter 14 0; +#X obj 11 96 mtl/clkMaster 120; +#X obj 10 178 loadbang; +#X obj 10 232 mtl/clkSlave; +#X obj 10 207 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X connect 0 0 35 0; +#X connect 1 0 40 0; +#X connect 3 0 40 0; +#X connect 4 0 40 0; +#X connect 5 0 40 0; +#X connect 6 0 40 0; +#X connect 7 0 40 0; +#X connect 8 0 40 0; +#X connect 12 0 40 0; +#X connect 16 0 40 0; +#X connect 19 0 40 0; +#X connect 20 0 40 0; +#X connect 21 0 22 0; +#X connect 22 0 26 0; +#X connect 22 1 23 0; +#X connect 23 0 24 0; +#X connect 25 0 24 0; +#X connect 26 0 42 0; +#X connect 27 0 42 1; +#X connect 28 0 40 0; +#X connect 34 0 40 1; +#X connect 35 0 37 0; +#X connect 35 0 37 1; +#X connect 36 0 41 0; +#X connect 40 0 41 1; +#X connect 41 0 0 0; +#X connect 42 0 25 0; +#X connect 43 0 44 0; +#X connect 44 0 36 0; +#X connect 46 0 48 0; +#X connect 47 0 43 0; +#X connect 48 0 47 0; diff --git a/closestNote.pd b/closestNote.pd new file mode 100644 index 0000000..f113c86 --- /dev/null +++ b/closestNote.pd @@ -0,0 +1,53 @@ +#N canvas 314 224 742 589 10; +#X obj 173 244 + 12; +#X obj 173 275 -; +#X obj 141 179 t b a; +#X obj 141 154 list append; +#X obj 122 108 t f b f b; +#X obj 359 20 inlet; +#X obj 297 163 f; +#X obj 177 326 min; +#X obj 207 350 f; +#X obj 143 385 f; +#X obj 122 60 inlet; +#X obj 122 417 +; +#X obj 122 449 outlet; +#X obj 301 263 f 12; +#X text 390 105 minimum ( Each of the notes in the scale - the current +input note ); +#X text 239 417 + the current input note; +#X text 47 491 Need abs() to make it more accurate (such as rint() +but for floats); +#X text 317 298 Differences; +#X obj 218 449 outlet; +#X obj 361 46 loadbang; +#X obj 173 223 expr fmod($f1 \, 12); +#X obj 171 299 expr fmod($f1 \, 12); +#X obj 297 186 expr fmod($f1 \, 12); +#X obj 365 69 iemlib/dollarg; +#X obj 171 200 zexy/drip; +#X connect 0 0 1 0; +#X connect 1 0 21 0; +#X connect 2 0 9 0; +#X connect 2 1 24 0; +#X connect 3 0 2 0; +#X connect 4 0 11 0; +#X connect 4 1 3 0; +#X connect 4 2 6 0; +#X connect 4 3 13 0; +#X connect 5 0 3 1; +#X connect 6 0 22 0; +#X connect 7 0 8 0; +#X connect 8 0 7 1; +#X connect 8 0 9 1; +#X connect 9 0 11 1; +#X connect 9 0 18 0; +#X connect 10 0 4 0; +#X connect 11 0 12 0; +#X connect 13 0 7 1; +#X connect 19 0 23 0; +#X connect 20 0 0 0; +#X connect 21 0 7 0; +#X connect 22 0 1 1; +#X connect 23 0 3 1; +#X connect 24 0 20 0; diff --git a/colorGrid-help.pd b/colorGrid-help.pd new file mode 100644 index 0000000..70d91eb --- /dev/null +++ b/colorGrid-help.pd @@ -0,0 +1,9 @@ +#N canvas 334 399 317 222 10; +#X text 20 14 Description: A color selector.; +#X obj 20 181 print float_RGB; +#X obj 200 180 print pd_color; +#X obj 20 86 mtl/colorGrid; +#X text 18 65 Click and drag!; +#X text 20 32 tags: ui; +#X connect 3 0 1 0; +#X connect 3 1 2 0; diff --git a/colorGrid.pd b/colorGrid.pd new file mode 100644 index 0000000..92ce17e --- /dev/null +++ b/colorGrid.pd @@ -0,0 +1,140 @@ +#N canvas 356 25 814 683 10; +#X obj 101 101 cnv 15 185 20 empty \$0label colorGrid 4 11 0 8 -1 -262144 +0; +#X obj 105 143 hsl 179 20 0 1 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 0 0; +#X obj 105 122 hsl 179 20 0 1 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 0 0; +#X msg 719 273 nopoll; +#X obj 725 233 sel 0; +#X msg 610 260 zero \, poll; +#X msg 769 260 1; +#X obj 607 162 spigot 1; +#X msg 692 192 0; +#X obj 625 386 +; +#X obj 608 227 t b b f; +#X obj 450 706 s \$0label; +#X obj 101 143 cnv 15 20 20 empty empty empty 20 12 0 14 -258049 -66577 +0; +#X obj 101 122 cnv 15 20 20 \$0cnv_s \$0cnv_r empty 20 12 0 14 -131073 +-66577 0; +#X obj 158 143 cnv 15 35 20 empty empty empty 20 12 0 14 -24198 -66577 +0; +#X obj 158 122 cnv 15 35 20 empty empty empty 20 12 0 14 -22726 -66577 +0; +#X obj 266 143 cnv 15 20 20 empty empty empty 20 12 0 14 -258049 -66577 +0; +#X obj 266 122 cnv 15 20 20 empty empty empty 20 12 0 14 -131073 -66577 +0; +#X obj 122 143 cnv 15 35 20 empty empty empty 20 12 0 14 -241291 -66577 +0; +#X obj 122 122 cnv 15 35 20 empty empty empty 20 12 0 14 -166411 -66577 +0; +#X obj 194 122 cnv 15 35 20 empty empty empty 20 12 0 14 -32 -66577 +0; +#X obj 194 143 cnv 15 35 20 empty empty empty 20 12 0 14 -64 -66577 +0; +#X obj 230 143 cnv 15 35 20 empty empty empty 20 12 0 14 -258112 -66577 +0; +#X obj 230 122 cnv 15 35 20 empty empty empty 20 12 0 14 -135202 -66577 +0; +#X obj 511 349 f; +#X obj 481 126 t f b f; +#X obj 446 195 t f b f; +#X msg 563 165 20; +#X obj 104 164 hsl 179 20 0 1 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 0 0; +#X obj 101 164 cnv 15 20 20 empty empty empty 20 12 0 14 -261689 -66577 +0; +#X obj 158 164 cnv 15 35 20 empty empty empty 20 12 0 14 -225271 -66577 +0; +#X obj 266 164 cnv 15 20 20 empty empty empty 20 12 0 14 -261689 -66577 +0; +#X obj 122 164 cnv 15 35 20 empty empty empty 20 12 0 14 -262131 -66577 +0; +#X obj 194 164 cnv 15 35 20 empty empty empty 20 12 0 14 -228992 -66577 +0; +#X obj 230 164 cnv 15 35 20 empty empty empty 20 12 0 14 -257472 -66577 +0; +#X msg 544 258 30; +#X obj 332 264 t b f; +#X obj 628 429 moses 30; +#X obj 623 470 / 30; +#X obj 511 375 pack f f f; +#X obj 552 336 unpack; +#X obj 542 308 t b a; +#X obj 680 489 / 30; +#X obj 627 407 clip 0 60; +#X msg 621 498 1 \$1; +#X msg 681 522 \$1 1; +#X obj 720 560 -; +#X msg 752 562 2 \$1; +#X obj 431 653 pack; +#X msg 424 681 color \$1 \$2; +#X obj 468 536 * -1; +#X msg 392 325 50; +#X obj 11 708 outlet float_RGB; +#X obj 319 705 outlet pd_color; +#X obj 302 629 t a a; +#X obj 146 496 t a a a a; +#X obj 468 510 - 1; +#X obj 689 299 cyclone/MouseState; +#X obj 396 513 ./listOp; +#X obj 397 588 ./rgbToNum; +#X obj 234 574 ./rgbToNum; +#X obj 94 430 ./hsvToRgb; +#X connect 1 0 26 0; +#X connect 2 0 25 0; +#X connect 3 0 57 0; +#X connect 4 0 3 0; +#X connect 4 0 6 0; +#X connect 5 0 57 0; +#X connect 6 0 7 1; +#X connect 7 0 10 0; +#X connect 8 0 7 1; +#X connect 9 0 43 0; +#X connect 10 0 5 0; +#X connect 10 1 8 0; +#X connect 10 2 9 1; +#X connect 24 0 39 0; +#X connect 25 1 27 0; +#X connect 25 2 24 1; +#X connect 26 1 35 0; +#X connect 26 2 24 1; +#X connect 27 0 7 0; +#X connect 28 0 36 0; +#X connect 35 0 7 0; +#X connect 36 0 51 0; +#X connect 36 1 24 1; +#X connect 37 0 38 0; +#X connect 37 1 42 0; +#X connect 38 0 44 0; +#X connect 39 0 61 0; +#X connect 40 0 39 1; +#X connect 40 1 39 2; +#X connect 41 0 24 0; +#X connect 41 1 40 0; +#X connect 42 0 47 0; +#X connect 43 0 37 0; +#X connect 44 0 41 0; +#X connect 45 0 41 0; +#X connect 46 0 45 0; +#X connect 47 0 46 0; +#X connect 48 0 49 0; +#X connect 49 0 11 0; +#X connect 50 0 58 1; +#X connect 51 0 7 0; +#X connect 54 0 53 0; +#X connect 54 1 48 0; +#X connect 55 0 52 0; +#X connect 55 2 60 0; +#X connect 55 3 58 0; +#X connect 56 0 50 0; +#X connect 57 0 4 0; +#X connect 57 2 9 0; +#X connect 58 0 59 0; +#X connect 58 1 56 0; +#X connect 59 0 48 1; +#X connect 60 0 54 0; +#X connect 61 0 55 0; +#X coords 0 -1 1 1 187 85 1 100 100; diff --git a/coloredNoise~-help.pd b/coloredNoise~-help.pd new file mode 100644 index 0000000..8cbe3d7 --- /dev/null +++ b/coloredNoise~-help.pd @@ -0,0 +1,37 @@ +#N canvas 524 25 703 543 10; +#X text 56 72 Comment: Taken from Andy Farnell's work.; +#X text 58 52 Description: Generates different colored noises.; +#X obj 57 143 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -33289 +-262144 -1 0 1; +#X obj 122 142 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -90881 +-262144 -1 0 1; +#X obj 195 141 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -258699 +-262144 -1 0 1; +#X obj 299 140 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -260818 +-262144 -1 0 1; +#X obj 381 138 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -241291 +-262144 -1 0 1; +#X obj 463 138 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -24198 +-262144 -1 0 1; +#X obj 544 137 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -62784 +-262144 -1 0 1; +#X obj 641 133 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -250685 +-262144 -1 0 1; +#X text 56 85 Version: 2; +#X text 330 345 All inputs are 0-127; +#X obj 218 347 mtl/coloredNoise~; +#X obj 218 384 mtl/out~; +#X obj 381 384 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X text 70 105 tags: synthesize~; +#X connect 2 0 12 0; +#X connect 3 0 12 1; +#X connect 4 0 12 2; +#X connect 5 0 12 3; +#X connect 6 0 12 4; +#X connect 7 0 12 5; +#X connect 8 0 12 6; +#X connect 9 0 12 7; +#X connect 12 0 13 0; +#X connect 12 0 13 1; +#X connect 12 0 14 0; diff --git a/coloredNoise~.pd b/coloredNoise~.pd new file mode 100644 index 0000000..a6decf2 --- /dev/null +++ b/coloredNoise~.pd @@ -0,0 +1,182 @@ +#N canvas 307 271 890 629 10; +#X obj 469 42 noise~; +#X obj 134 119 lop~ 50; +#X obj 132 141 lop~ 50; +#X obj 133 165 lop~ 50; +#X obj 132 188 lop~ 50; +#X obj 199 121 hip~ 50; +#X obj 199 143 hip~ 50; +#X obj 199 165 hip~ 50; +#X obj 199 187 hip~ 50; +#X obj 200 210 lop~ 250; +#X obj 199 232 lop~ 250; +#X obj 200 256 lop~ 250; +#X obj 199 279 lop~ 250; +#X obj 270 122 hip~ 250; +#X obj 270 144 hip~ 250; +#X obj 270 166 hip~ 250; +#X obj 270 188 hip~ 250; +#X obj 271 211 lop~ 500; +#X obj 270 233 lop~ 500; +#X obj 271 257 lop~ 500; +#X obj 270 281 lop~ 500; +#X obj 362 121 hip~ 500; +#X obj 362 143 hip~ 500; +#X obj 362 165 hip~ 500; +#X obj 362 187 hip~ 500; +#X obj 362 210 lop~ 1000; +#X obj 362 232 lop~ 1000; +#X obj 363 256 lop~ 1000; +#X obj 362 280 lop~ 1000; +#X obj 444 118 hip~ 1000; +#X obj 444 140 hip~ 1000; +#X obj 444 162 hip~ 1000; +#X obj 444 184 hip~ 1000; +#X obj 444 207 lop~ 3000; +#X obj 444 229 lop~ 3000; +#X obj 445 253 lop~ 3000; +#X obj 444 277 lop~ 3000; +#X obj 524 118 hip~ 3000; +#X obj 524 140 hip~ 3000; +#X obj 524 161 hip~ 3000; +#X obj 524 184 hip~ 3000; +#X obj 524 207 lop~ 7000; +#X obj 524 229 lop~ 7000; +#X obj 525 253 lop~ 7000; +#X obj 524 277 lop~ 7000; +#X obj 604 117 hip~ 7000; +#X obj 604 139 hip~ 7000; +#X obj 604 160 hip~ 7000; +#X obj 604 183 hip~ 7000; +#X obj 604 206 lop~ 15000; +#X obj 604 228 lop~ 15000; +#X obj 604 252 lop~ 15000; +#X obj 604 276 lop~ 15000; +#X obj 697 115 hip~ 15000; +#X obj 697 137 hip~ 15000; +#X obj 697 158 hip~ 15000; +#X obj 697 181 hip~ 15000; +#X obj 697 204 lop~ 20000; +#X obj 697 226 lop~ 20000; +#X obj 697 250 lop~ 20000; +#X obj 697 274 lop~ 20000; +#X obj 442 527 *~ 0.5; +#X obj 133 459 *~; +#X obj 198 458 *~; +#X obj 271 457 *~; +#X obj 443 454 *~; +#X obj 361 456 *~; +#X obj 525 454 *~; +#X obj 605 453 *~; +#X obj 696 449 *~; +#X text 443 12 Noise colours; +#X obj 440 561 outlet~; +#X obj 150 60 inlet~; +#X obj 255 53 inlet~; +#X obj 325 56 inlet~; +#X obj 379 66 inlet~; +#X obj 484 59 inlet~; +#X obj 554 62 inlet~; +#X obj 649 50 inlet~; +#X obj 719 53 inlet~; +#X obj 729 400 *~ 0.001; +#X obj 147 377 *~ 0.2; +#X obj 296 402 *~ 0.2; +#X obj 232 397 *~ 0.15; +#X obj 385 402 *~ 0.1; +#X obj 458 401 *~ 0.05; +#X obj 613 404 *~ 0.001; +#X obj 530 407 *~ 0.005; +#X connect 0 0 1 0; +#X connect 0 0 5 0; +#X connect 0 0 13 0; +#X connect 0 0 21 0; +#X connect 0 0 29 0; +#X connect 0 0 37 0; +#X connect 0 0 45 0; +#X connect 0 0 53 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X connect 4 0 62 0; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 7 0 8 0; +#X connect 8 0 9 0; +#X connect 9 0 10 0; +#X connect 10 0 11 0; +#X connect 11 0 12 0; +#X connect 12 0 63 0; +#X connect 13 0 14 0; +#X connect 14 0 15 0; +#X connect 15 0 16 0; +#X connect 16 0 17 0; +#X connect 17 0 18 0; +#X connect 18 0 19 0; +#X connect 19 0 20 0; +#X connect 20 0 64 0; +#X connect 21 0 22 0; +#X connect 22 0 23 0; +#X connect 23 0 24 0; +#X connect 24 0 25 0; +#X connect 25 0 26 0; +#X connect 26 0 27 0; +#X connect 27 0 28 0; +#X connect 28 0 66 0; +#X connect 29 0 30 0; +#X connect 30 0 31 0; +#X connect 31 0 32 0; +#X connect 32 0 33 0; +#X connect 33 0 34 0; +#X connect 34 0 35 0; +#X connect 35 0 36 0; +#X connect 36 0 65 0; +#X connect 37 0 38 0; +#X connect 38 0 39 0; +#X connect 39 0 40 0; +#X connect 40 0 41 0; +#X connect 41 0 42 0; +#X connect 42 0 43 0; +#X connect 43 0 44 0; +#X connect 44 0 67 0; +#X connect 45 0 46 0; +#X connect 46 0 47 0; +#X connect 47 0 48 0; +#X connect 48 0 49 0; +#X connect 49 0 50 0; +#X connect 50 0 51 0; +#X connect 51 0 52 0; +#X connect 52 0 68 0; +#X connect 53 0 54 0; +#X connect 54 0 55 0; +#X connect 55 0 56 0; +#X connect 56 0 57 0; +#X connect 57 0 58 0; +#X connect 58 0 59 0; +#X connect 59 0 60 0; +#X connect 60 0 69 0; +#X connect 61 0 71 0; +#X connect 62 0 61 0; +#X connect 63 0 61 0; +#X connect 64 0 61 0; +#X connect 65 0 61 0; +#X connect 66 0 61 0; +#X connect 67 0 61 0; +#X connect 68 0 61 0; +#X connect 69 0 61 0; +#X connect 72 0 81 0; +#X connect 73 0 83 0; +#X connect 74 0 82 0; +#X connect 75 0 84 0; +#X connect 76 0 85 0; +#X connect 77 0 87 0; +#X connect 78 0 86 0; +#X connect 79 0 80 0; +#X connect 80 0 69 1; +#X connect 81 0 62 1; +#X connect 82 0 64 1; +#X connect 83 0 63 1; +#X connect 84 0 66 1; +#X connect 85 0 65 1; +#X connect 86 0 68 1; +#X connect 87 0 67 1; diff --git a/compress~-help.pd b/compress~-help.pd new file mode 100644 index 0000000..f99513f --- /dev/null +++ b/compress~-help.pd @@ -0,0 +1,59 @@ +#N canvas 643 527 448 238 10; +#X text 16 39 From www.netpd.org; +#X text 15 8 Description: rcomp is a basic downward compressor. its +control chain is processed in audio rate.; +#X obj 18 141 mtl/compress~; +#X obj 18 170 mtl/out~; +#X obj 18 95 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 +; +#X text 16 60 tags: mix~; +#X obj 189 137 hsl 100 15 1 10 0 0 \$0/compress~/ratio \$0/compress~/ratio_ +/compress~/ratio 105 7 0 8 -262144 -1 -1 0 1; +#X obj 189 157 hsl 100 15 -60 0 0 0 \$0/compress~/threshold \$0/compress~/threshold_ +/compress~/threshold 105 7 0 8 -262144 -1 -1 9900 1; +#X obj 189 177 hsl 100 15 1 300 0 0 \$0/compress~/attack \$0/compress~/attack_ +/compress~/attack 105 7 0 8 -262144 -1 -1 298 1; +#X obj 189 197 hsl 100 15 5 3000 0 0 \$0/compress~/release \$0/compress~/release_ +/compress~/release 105 7 0 8 -262144 -1 -1 512 1; +#X obj 186 97 tgl 15 0 \$0/compress~/switch \$0/compress~/switch_ /compress~/switch +17 7 0 8 -262144 -1 -1 0 1; +#X obj 189 117 hsl 100 15 -20 30 0 0 \$0/compress~/gain \$0/compress~/gain_ +/compress~/gain 105 7 0 8 -262144 -1 -1 3960 1; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 18 120 pd generate~; +#X connect 2 0 3 0; +#X connect 2 1 3 1; +#X connect 4 0 12 0; +#X connect 12 0 2 0; +#X connect 12 1 2 1; diff --git a/compress~.pd b/compress~.pd new file mode 100644 index 0000000..338f24e --- /dev/null +++ b/compress~.pd @@ -0,0 +1,203 @@ +#N canvas 678 217 640 350 10; +#N canvas 233 421 588 419 processing 0; +#X obj 7 271 *~; +#N canvas 284 416 336 370 amp-factor 0; +#X obj 19 22 inlet~; +#X obj 84 23 inlet; +#X text 120 23 Ratio; +#X obj 168 26 inlet; +#X text 204 26 Threshold; +#X obj 200 54 loadbang; +#X msg 200 78 100; +#X obj 200 102 sig~; +#X obj 168 102 sig~; +#X obj 168 134 +~; +#X obj 155 161 -~; +#X obj 155 206 /~; +#X obj 155 184 max~ 0; +#X obj 142 262 -~; +#X obj 142 286 dbtorms~; +#X obj 142 311 outlet~; +#X obj 84 179 sig~; +#X obj 97 129 - 1; +#X obj 84 156 /; +#X obj 19 68 rmstodb~; +#X obj 19 45 abs~; +#X text 18 4 Signal; +#X text 189 310 Factor in RMS; +#X connect 0 0 20 0; +#X connect 1 0 17 0; +#X connect 1 0 18 0; +#X connect 3 0 8 0; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 7 0 9 1; +#X connect 7 0 13 0; +#X connect 8 0 9 0; +#X connect 9 0 10 1; +#X connect 10 0 12 0; +#X connect 11 0 13 1; +#X connect 12 0 11 0; +#X connect 13 0 14 0; +#X connect 14 0 15 0; +#X connect 16 0 11 1; +#X connect 17 0 18 1; +#X connect 18 0 16 0; +#X connect 19 0 10 0; +#X connect 20 0 19 0; +#X restore 143 109 pd amp-factor; +#X obj 294 112 /; +#X obj 294 91 57; +#X obj 294 70 t b f; +#X obj 333 112 /; +#X obj 333 91 57; +#X obj 333 70 t b f; +#X obj 7 31 inlet~; +#X obj 7 350 outlet~; +#X obj 179 24 inlet ratio; +#X obj 216 50 inlet threshold; +#X obj 294 25 inlet attack; +#X obj 333 47 inlet release; +#X obj 120 232 inlet gain; +#X obj 120 253 + 100; +#X obj 120 275 dbtorms; +#X obj 200 212 loadbang; +#X obj 64 271 *~; +#X obj 78 230 *~; +#X obj 63 34 inlet~; +#X obj 64 350 outlet~; +#X obj 101 73 *~ 0.707946; +#X text 119 55 -3dB; +#N canvas 597 484 506 356 att-rel-filtering 0; +#N canvas 386 426 585 414 a-r-det 0; +#X obj 43 51 inlet~; +#X obj 43 200 outlet~; +#X obj 94 200 outlet~; +#X obj 43 145 max~ 0; +#X obj 94 171 -~; +#X obj 94 121 loadbang; +#X msg 94 146 1; +#X obj 105 50 inlet~; +#X obj 43 97 -~; +#X text 7 33 vgl.: "soll" mit "ist"; +#X text 33 218 Attack / Release; +#X obj 43 121 zexy/sgn~; +#X connect 0 0 8 1; +#X connect 3 0 4 1; +#X connect 3 0 1 0; +#X connect 4 0 2 0; +#X connect 5 0 6 0; +#X connect 6 0 4 0; +#X connect 7 0 8 0; +#X connect 8 0 11 0; +#X connect 11 0 3 0; +#X restore 50 86 pd a-r-det; +#X text 26 99 att; +#X text 111 101 rel; +#X obj 22 195 vcf~; +#X msg 134 162 0.4; +#X obj 50 126 *~; +#X obj 105 128 *~; +#X obj 75 163 +~; +#X obj 134 138 loadbang; +#X obj 22 26 inlet~; +#X text 67 26 amp-factor; +#X obj 164 84 inlet; +#X text 200 85 attack; +#X text 237 104 release; +#X obj 196 106 inlet; +#X obj 22 272 outlet~; +#X obj 290 47 block~ 2; +#N canvas 0 0 450 300 (subpatch) 0; +#X array \$0-factor 16 float 0; +#X coords 0 100 15 0 20 20 1; +#X restore 287 169 graph; +#X obj 22 239 *~ 0.971042; +#X obj 109 233 tabsend~ \$0-factor; +#X obj 105 62 tabreceive~ \$0-factor; +#X connect 0 0 5 0; +#X connect 0 1 6 0; +#X connect 3 0 18 0; +#X connect 3 0 19 0; +#X connect 4 0 3 2; +#X connect 5 0 7 0; +#X connect 6 0 7 1; +#X connect 7 0 3 1; +#X connect 8 0 4 0; +#X connect 9 0 3 0; +#X connect 9 0 0 0; +#X connect 11 0 5 1; +#X connect 14 0 6 1; +#X connect 18 0 15 0; +#X connect 20 0 0 1; +#X restore 143 148 pd att-rel-filtering; +#X obj 200 232 0; +#X obj 306 309 env~ 6000; +#X obj 306 334 outlet; +#X connect 0 0 9 0; +#X connect 1 0 24 0; +#X connect 2 0 24 1; +#X connect 3 0 2 0; +#X connect 4 0 3 0; +#X connect 4 1 2 1; +#X connect 5 0 24 2; +#X connect 6 0 5 0; +#X connect 7 0 6 0; +#X connect 7 1 5 1; +#X connect 8 0 0 0; +#X connect 8 0 22 0; +#X connect 10 0 1 1; +#X connect 11 0 1 2; +#X connect 12 0 4 0; +#X connect 13 0 7 0; +#X connect 14 0 15 0; +#X connect 15 0 16 0; +#X connect 16 0 19 1; +#X connect 17 0 25 0; +#X connect 18 0 21 0; +#X connect 19 0 0 1; +#X connect 19 0 18 1; +#X connect 20 0 18 0; +#X connect 20 0 22 0; +#X connect 22 0 1 0; +#X connect 24 0 19 0; +#X connect 24 0 26 0; +#X connect 25 0 15 0; +#X connect 26 0 27 0; +#X restore 119 164 pd processing; +#X obj 66 71 inlet~; +#X obj 116 71 inlet~; +#X obj 64 239 outlet~; +#X obj 158 239 outlet~; +#X obj 445 37 inlet params; +#X obj 445 59 tof/paramRoute; +#X obj 445 83 print PARAM_NOTFOUND; +#X obj 154 96 tof/param /ratio 1 /g slider 1 10; +#X obj 164 76 tof/param /threshold 0 /g slider -60 0; +#X obj 174 56 tof/param /attack 10 /g slider 1 300; +#X obj 185 35 tof/param /release 160 /g slider 5 3000; +#X obj 64 211 tof/crossfade~ 2; +#X obj 217 145 tof/param /switch 0 /g tgl; +#X obj 217 166 != 0; +#X msg 217 190 \$1 200; +#X obj 144 116 tof/param /gain 0 /g slider -20 30; +#X obj 217 212 line~; +#X connect 0 0 12 2; +#X connect 0 1 12 3; +#X connect 1 0 0 0; +#X connect 1 0 12 0; +#X connect 2 0 0 1; +#X connect 2 0 12 1; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 8 0 0 3; +#X connect 9 0 0 4; +#X connect 10 0 0 5; +#X connect 11 0 0 6; +#X connect 12 0 3 0; +#X connect 12 1 4 0; +#X connect 13 0 14 0; +#X connect 14 0 15 0; +#X connect 15 0 17 0; +#X connect 16 0 0 2; +#X connect 17 0 12 4; diff --git a/concat-help.pd b/concat-help.pd new file mode 100644 index 0000000..307fb0a --- /dev/null +++ b/concat-help.pd @@ -0,0 +1,10 @@ +#N canvas 301 154 450 300 10; +#X obj 104 145 mtl/concat; +#X msg 104 105 a b c d; +#X text 29 32 tags: lists; +#X text 35 10 description: concatenates the elements of a list.; +#X msg 177 112 1 2 3 4; +#X obj 105 179 print; +#X connect 0 0 5 0; +#X connect 1 0 0 0; +#X connect 4 0 0 0; diff --git a/concat.pd b/concat.pd new file mode 100644 index 0000000..f9e1ae3 --- /dev/null +++ b/concat.pd @@ -0,0 +1,12 @@ +#N canvas 301 154 450 300 10; +#X msg 233 110 symbol; +#X obj 234 88 loadbang; +#X obj 159 37 inlet; +#X obj 170 138 zexy/list2symbol; +#X obj 162 217 outlet; +#X obj 164 173 cyclone/fromsymbol; +#X connect 0 0 3 1; +#X connect 1 0 0 0; +#X connect 2 0 3 0; +#X connect 3 0 5 0; +#X connect 5 0 4 0; diff --git a/core.txt b/core.txt new file mode 100644 index 0000000..5a946bc --- /dev/null +++ b/core.txt @@ -0,0 +1,199 @@ +mtl/2dAngle 2d +mtl/2dAngleLine 2d +mtl/2dDistance 2d +mtl/2dRatio 2d +mtl/3dAdd 3d +mtl/3dAngle 3d +mtl/3dCross 3d +mtl/3dDistance 3d +mtl/3dDot 3d +mtl/3dMagnitude 3d +mtl/3dMove 3d +mtl/3dNormalize 3d +mtl/3dPanTilt 3d +mtl/3dRotate 3d +mtl/3dScale 3d +mtl/3dSubtract 3d +mtl/additive~ instrument~ +mtl/adsr~ control~ +mtl/ambient~ synthesize~ +mtl/applause~ synthesize~ +mtl/arpeggio musical +mtl/asciiToPd conversion +mtl/aux~ mix~ +mtl/beep~ synthesize~ +mtl/bell~ synthesize~ +mtl/benchmark tools +mtl/binaryToByte conversion +mtl/biorythm~ control~ +mtl/blip~ synthesize~ +mtl/bounce~ synthesize~ +mtl/bpmToFreq conversion +mtl/bpmToMs conversion +mtl/bubbles~ synthesize~ +mtl/buttonColor ui +mtl/byteToBinary conversion +mtl/bytesToIntSigned conversion +mtl/center math +mtl/channel~ mix~ +mtl/chordGuess midi +mtl/chronometer timing +mtl/clap808~ synthesize~ +mtl/clap~ synthesize~ +mtl/clkMaster timing +mtl/clkSlave timing +mtl/clkUDPIn timing network +mtl/clkUDPOut timing network +mtl/clocker timing +mtl/closestNote musical +mtl/colorGrid ui +mtl/coloredNoise~ synthesize~ +mtl/compress~ mix~ +mtl/concat lists +mtl/crackles~ synthesize~ +mtl/cranks~ synthesize~ +mtl/cues timing +mtl/cues~ timing +mtl/cycle5 musical +mtl/degreeToChord musical +mtl/degreeToRadian conversion +mtl/delayPhasor~ fx~ +mtl/distoAp~ fx~ +mtl/distoCrusher~ fx~ +mtl/distoFuzz~ fx~ +mtl/distoLofi~ fx~ +mtl/distoNonmonotone~ fx~ +mtl/distoSign~ fx~ +mtl/distoTanh~ fx~ +mtl/dodeca musical +mtl/doubleClick ui +mtl/drips~ synthesize~ +mtl/dtmfBusy~ synthesize~ +mtl/dtmfHandUp~ synthesize~ +mtl/dtmfHurryUp~ synthesize~ +mtl/dtmfNumber~ synthesize~ +mtl/dtmfRing~ synthesize~ +mtl/echoRobot~ fx~ +mtl/echoVd~ fx~ +mtl/eq~ mix~ +mtl/every sequencing +mtl/fibonacci math +mtl/fileBrowser ui file +mtl/fit musical +mtl/form musical behavior +mtl/fpsToMs conversion +mtl/framesToSmpte conversion +mtl/frying~ synthesize~ +mtl/gBrowser ui +mtl/gateNoise~ mix~ +mtl/gemsAlpha gems +mtl/gemsAverageColor gems +mtl/gemsCropMap gems +mtl/gemsCuber gems +mtl/gemsDuplicate gems +mtl/gemsFeedback gems +mtl/gemsFit gems +mtl/gemsLines gems +mtl/gemsLoop gems +mtl/gemsMouse gems +mtl/gemsMovies gems +mtl/gemsPolygon gems +mtl/gemsWheel gems +mtl/gemsWin gems +mtl/granularLive~ fx~ +mtl/gunGas~ synthesize~ +mtl/gunShot~ synthesize~ +mtl/hexToDec conversion +mtl/hissing~ synthesize~ +mtl/hold~ control~ +mtl/hsv ui +mtl/hsvToRgb conversion +mtl/inBetweens math +mtl/indexer data +mtl/instrument~ instrument~ +mtl/intToDigits conversion +mtl/in~ mix~ +mtl/keyNameLearn ui +mtl/keyR ui +mtl/keyText ui symbols +mtl/kick808~ synthesize~ +mtl/lightFreqToWave conversion +mtl/lightWaveToFreq conversion +mtl/lightning~ synthesize~ +mtl/limit~ mix~ +mtl/listBoolToPos lists +mtl/listBuild lists +mtl/listCutUp lists +mtl/listDelay lists timing +mtl/listJump lists musical +mtl/listOp lists math +mtl/mToHarm +mtl/mToSpeed conversion +mtl/main~ mix~ +mtl/makeLabel ui +mtl/material~ fx~ +mtl/modf math +mtl/msToBpm conversion +mtl/msToFps conversion +mtl/msToFreq conversion +mtl/msToSmp conversion +mtl/msToTime conversion +mtl/nbx~ info~ +mtl/noteClose midi +mtl/noteFloat midi +mtl/noteSplit midi +mtl/noteToName musical +mtl/numToRgb conversion +mtl/octava musical +mtl/oldRecord~ synthesize~ +mtl/out~ mix~ +mtl/pdToAscii conversion +mtl/phi math +mtl/piano ui midi +mtl/pitchShift~ fx~ +mtl/player~ tables play~ +mtl/punch~ mix~ +mtl/qtrack sequencing +mtl/radianToDegree conversion +mtl/rain~ synthesize~ +mtl/randomFloat random +mtl/reverbCm~ fx~ +mtl/reverbFdn~ fx~ +mtl/reverbFree~ fx~ +mtl/rgbToHsv conversion +mtl/rgbToNum conversion +mtl/round math +mtl/roundUp math +mtl/rumble~ synthesize~ +mtl/sawor~ instrument~ +mtl/scaleSmart math +mtl/seq1x8 sequencing +mtl/seq8x8 sequencing +mtl/sfIndexer tables file~ +mtl/shrinkSymbol symbols +mtl/sigToFloat~ conversion +mtl/sign math +mtl/sl8 ui +mtl/smpToBpm conversion musical +mtl/smpToFreq conversion +mtl/smpToMem conversion +mtl/smpToMs conversion +mtl/smpToTime conversion +mtl/smpteToFrames conversion +mtl/sometimes random +mtl/soundFreqToWave conversion +mtl/soundWaveToFreq conversion +mtl/spectrum~ info~ +mtl/speedToM conversion +mtl/splitExtension file +mtl/tabwriteAuto tables +mtl/tempo timing +mtl/theMatrix data math +mtl/timeToMs conversion +mtl/tracker4 sequencing +mtl/transpose musical +mtl/valueChange routing +mtl/vdirac~ synthesize~ +mtl/vocoder~ fx~ +mtl/vu~ info~ +mtl/wind~ synthesize~ diff --git a/crackles~-help.pd b/crackles~-help.pd new file mode 100644 index 0000000..812fc00 --- /dev/null +++ b/crackles~-help.pd @@ -0,0 +1,11 @@ +#N canvas 607 109 316 236 10; +#X text 40 43 Comment: Taken from Andy Farnell's work.; +#X text 41 26 Description: Generates crackles.; +#X obj 44 130 mtl/crackles~; +#X obj 44 162 mtl/out~; +#X obj 47 110 hsl 128 15 5 20000 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X text 40 62 tags: synthesize~; +#X connect 2 0 3 0; +#X connect 2 0 3 1; +#X connect 4 0 2 0; diff --git a/crackles~.pd b/crackles~.pd new file mode 100644 index 0000000..86b72fd --- /dev/null +++ b/crackles~.pd @@ -0,0 +1,45 @@ +#N canvas 732 120 583 535 10; +#N canvas 0 0 610 502 crackles 0; +#X obj 64 394 *~; +#X obj 77 104 env~; +#X msg 128 170 bang; +#X obj 77 127 moses 50; +#X obj 128 148 moses 51; +#X obj 128 237 line~; +#X msg 128 216 1 \, 0 \$1; +#X obj 128 265 *~; +#X obj 96 325 + 1500; +#X obj 64 349 bp~ 4000 1; +#X obj 95 303 * 500; +#X obj 65 490 outlet~; +#X obj 63 52 inlet~; +#X obj 77 80 lop~ 1; +#X obj 128 193 random 30; +#X obj 64 445 lop~ 2000; +#X obj 150 390 inlet; +#X connect 0 0 15 0; +#X connect 1 0 3 0; +#X connect 2 0 14 0; +#X connect 3 1 4 0; +#X connect 4 0 2 0; +#X connect 5 0 7 0; +#X connect 5 0 7 1; +#X connect 6 0 5 0; +#X connect 7 0 0 1; +#X connect 8 0 9 1; +#X connect 9 0 0 0; +#X connect 10 0 8 0; +#X connect 12 0 9 0; +#X connect 12 0 13 0; +#X connect 13 0 1 0; +#X connect 14 0 6 0; +#X connect 14 0 10 0; +#X connect 15 0 11 0; +#X connect 16 0 15 1; +#X restore 127 146 pd crackles; +#X obj 128 110 noise~; +#X obj 128 364 outlet~; +#X obj 189 110 inlet; +#X connect 0 0 2 0; +#X connect 1 0 0 0; +#X connect 3 0 0 1; diff --git a/cranks~-help.pd b/cranks~-help.pd new file mode 100644 index 0000000..1449e22 --- /dev/null +++ b/cranks~-help.pd @@ -0,0 +1,16 @@ +#N canvas 240 512 341 248 10; +#X obj 47 67 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 62 112 hradio 15 1 0 6 empty empty empty 0 -6 0 8 -262144 -1 +-1 0; +#X text 64 68 random; +#X text 59 92 select 1 of 6; +#X text 9 2 Description: Generates six different crank sounds.; +#X text 9 20 Comment: Taken from Andy Farnell's work.; +#X obj 47 138 mtl/cranks~; +#X obj 47 174 mtl/out~; +#X text 12 37 tags: synthesize~; +#X connect 0 0 6 0; +#X connect 1 0 6 0; +#X connect 6 0 7 0; +#X connect 6 0 7 1; diff --git a/cranks~.pd b/cranks~.pd new file mode 100644 index 0000000..dd8edbe --- /dev/null +++ b/cranks~.pd @@ -0,0 +1,210 @@ +#N canvas 0 0 611 565 10; +#X obj 120 72 inlet; +#X obj 184 484 outlet~; +#N canvas 0 0 991 658 3cogs 0; +#X obj 100 328 *~; +#X obj 187 325 *~; +#X obj 320 325 *~; +#X obj 408 325 *~; +#X obj 508 327 *~; +#X obj 651 324 *~; +#X obj 751 326 *~; +#X obj 351 143 noise~; +#X obj 351 164 hip~ 300; +#X obj 12 326 *~; +#X obj 407 518 outlet~; +#X obj 27 224 bp~ 6666 40; +#X obj 115 223 bp~ 7012 40; +#X obj 202 222 bp~ 1500 35; +#X obj 335 222 bp~ 4535 45; +#X obj 423 223 bp~ 8325 40; +#X obj 524 223 bp~ 11023 46; +#X obj 668 223 bp~ 3567 40; +#X obj 100 389 *~ 0.33; +#X obj 855 327 *~; +#X obj 408 385 *~ 0.33; +#X obj 750 379 *~ 0.33; +#X obj 767 224 bp~ 4290 20; +#X obj 871 225 bp~ 6470 20; +#X obj 422 11 inlet; +#X obj 422 37 sel 1 2 3; +#X obj 407 477 *~ 1; +#X obj 12 121 creb/ead~ 1 30; +#X obj 100 121 creb/ead~ 1 10; +#X obj 187 118 creb/ead~ 1 10; +#X obj 320 118 creb/ead~ 1 70; +#X obj 408 118 creb/ead~ 1 45; +#X obj 508 120 creb/ead~ 1 11; +#X obj 651 117 creb/ead~ 1 40; +#X obj 751 119 creb/ead~ 1 22; +#X obj 855 120 creb/ead~ 1 8; +#X connect 0 0 18 0; +#X connect 1 0 18 0; +#X connect 2 0 20 0; +#X connect 3 0 20 0; +#X connect 4 0 20 0; +#X connect 5 0 21 0; +#X connect 6 0 21 0; +#X connect 7 0 8 0; +#X connect 8 0 11 0; +#X connect 8 0 12 0; +#X connect 8 0 13 0; +#X connect 8 0 14 0; +#X connect 8 0 15 0; +#X connect 8 0 16 0; +#X connect 8 0 17 0; +#X connect 8 0 22 0; +#X connect 8 0 23 0; +#X connect 9 0 18 0; +#X connect 11 0 9 1; +#X connect 12 0 0 1; +#X connect 13 0 1 1; +#X connect 14 0 2 1; +#X connect 15 0 3 1; +#X connect 16 0 4 1; +#X connect 17 0 5 1; +#X connect 18 0 26 0; +#X connect 19 0 21 0; +#X connect 20 0 26 0; +#X connect 21 0 26 0; +#X connect 22 0 6 1; +#X connect 23 0 19 1; +#X connect 24 0 25 0; +#X connect 25 0 27 0; +#X connect 25 0 28 0; +#X connect 25 0 29 0; +#X connect 25 1 30 0; +#X connect 25 1 31 0; +#X connect 25 1 32 0; +#X connect 25 2 33 0; +#X connect 25 2 34 0; +#X connect 25 2 35 0; +#X connect 26 0 10 0; +#X connect 27 0 9 0; +#X connect 28 0 0 0; +#X connect 29 0 1 0; +#X connect 30 0 2 0; +#X connect 31 0 3 0; +#X connect 32 0 4 0; +#X connect 33 0 5 0; +#X connect 34 0 6 0; +#X connect 35 0 19 0; +#X restore 85 304 pd 3cogs; +#N canvas 0 0 1255 783 clickfactory 0; +#X obj 100 328 *~; +#X obj 187 325 *~; +#X obj 320 325 *~; +#X obj 408 325 *~; +#X obj 508 327 *~; +#X obj 651 324 *~; +#X obj 751 326 *~; +#X obj 752 77 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 351 143 noise~; +#X obj 351 164 hip~ 300; +#X obj 12 326 *~; +#X obj 407 518 outlet~; +#X obj 407 477 *~ 0.33; +#X obj 524 223 bp~ 11023 46; +#X obj 100 389 *~ 0.33; +#X obj 855 327 *~; +#X obj 408 385 *~ 0.33; +#X obj 750 379 *~ 0.33; +#X obj 408 75 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 100 76 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 58 75 cog1; +#X text 368 73 cog2; +#X text 705 78 cog3; +#X obj 422 11 inlet; +#X obj 422 37 sel 1 2 3; +#X obj 871 225 bp~ 2470 20; +#X obj 27 224 bp~ 4564 3; +#X obj 115 223 bp~ 4237 14; +#X obj 199 222 bp~ 4876 12; +#X obj 335 222 bp~ 345 22; +#X obj 422 223 bp~ 256 3; +#X obj 767 224 bp~ 6290 20; +#X obj 668 223 bp~ 5432 40; +#X obj 10 120 creb/ead~ 1 50; +#X obj 100 121 creb/ead~ 1 10; +#X obj 187 118 creb/ead~ 1 10; +#X obj 320 118 creb/ead~ 1 70; +#X obj 408 118 creb/ead~ 1 45; +#X obj 508 120 creb/ead~ 1 11; +#X obj 651 117 creb/ead~ 1 40; +#X obj 751 119 creb/ead~ 1 22; +#X obj 855 120 creb/ead~ 1 8; +#X connect 0 0 14 0; +#X connect 1 0 14 0; +#X connect 2 0 16 0; +#X connect 3 0 16 0; +#X connect 4 0 16 0; +#X connect 5 0 17 0; +#X connect 6 0 17 0; +#X connect 7 0 39 0; +#X connect 7 0 40 0; +#X connect 7 0 41 0; +#X connect 8 0 9 0; +#X connect 9 0 13 0; +#X connect 9 0 25 0; +#X connect 9 0 26 0; +#X connect 9 0 27 0; +#X connect 9 0 28 0; +#X connect 9 0 29 0; +#X connect 9 0 30 0; +#X connect 9 0 31 0; +#X connect 9 0 32 0; +#X connect 10 0 14 0; +#X connect 12 0 11 0; +#X connect 13 0 4 1; +#X connect 14 0 12 0; +#X connect 15 0 17 0; +#X connect 16 0 12 0; +#X connect 17 0 12 0; +#X connect 18 0 36 0; +#X connect 18 0 37 0; +#X connect 18 0 38 0; +#X connect 19 0 33 0; +#X connect 19 0 34 0; +#X connect 19 0 35 0; +#X connect 23 0 24 0; +#X connect 24 0 19 0; +#X connect 24 1 18 0; +#X connect 24 2 7 0; +#X connect 25 0 15 1; +#X connect 26 0 10 1; +#X connect 27 0 0 1; +#X connect 28 0 1 1; +#X connect 29 0 2 1; +#X connect 30 0 3 1; +#X connect 31 0 6 1; +#X connect 32 0 5 1; +#X connect 33 0 10 0; +#X connect 34 0 0 0; +#X connect 35 0 1 0; +#X connect 36 0 2 0; +#X connect 37 0 3 0; +#X connect 38 0 4 0; +#X connect 39 0 5 0; +#X connect 40 0 6 0; +#X connect 41 0 15 0; +#X restore 206 337 pd clickfactory; +#X obj 184 243 moses 4; +#X obj 190 214 + 1; +#X obj 225 153 mod 6; +#X obj 228 300 - 3; +#X obj 93 165 random 6; +#X obj 127 121 route bang; +#X connect 0 0 9 0; +#X connect 2 0 1 0; +#X connect 3 0 1 0; +#X connect 4 0 2 0; +#X connect 4 1 7 0; +#X connect 5 0 4 0; +#X connect 6 0 5 0; +#X connect 7 0 3 0; +#X connect 8 0 5 0; +#X connect 9 0 8 0; +#X connect 9 1 6 0; diff --git a/cues-help.pd b/cues-help.pd new file mode 100644 index 0000000..cc98870 --- /dev/null +++ b/cues-help.pd @@ -0,0 +1,41 @@ +#N canvas 335 357 568 303 10; +#X obj 20 -53 bng 15 250 50 0 empty empty empty 0 -6 0 10 -262144 -1 +-1; +#X msg 122 20 read \$1; +#X obj 20 -3 metro 1; +#X floatatom 20 44 5 0 0 0 - - -; +#X obj 20 -31 t b b b; +#X text 200 19 You can also add messages manually; +#X obj 20 65 mtl/cues; +#X msg 204 57 clear \, add 10 AYE AYE \, add 3750 POPEYE \, add 6000 +is a sailor man; +#X obj 122 -3 openpanel; +#X obj 122 -23 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 204 35 loadbang; +#X obj 20 90 print index; +#X obj 99 89 print cue; +#X text 373 113 Example: 10 AYE AYE; +#X text 427 126 3750 POPEYE; +#X text 427 138 6000 IS A SAILOR MAN; +#X text 18 113 You can provide a cue file. Each line can contain one +cue and must end with a carriage return.; +#X obj 10 -123 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 15 -120 description: Cues events to a number stream.; +#X text 15 -81 tags: timing; +#X obj 20 21 tof/increment; +#X connect 0 0 4 0; +#X connect 1 0 6 1; +#X connect 2 0 20 0; +#X connect 3 0 6 0; +#X connect 4 0 2 0; +#X connect 4 1 20 1; +#X connect 4 2 6 1; +#X connect 6 0 11 0; +#X connect 6 1 12 0; +#X connect 7 0 6 1; +#X connect 8 0 1 0; +#X connect 9 0 8 0; +#X connect 10 0 7 0; +#X connect 20 0 3 0; diff --git a/cues.pd b/cues.pd new file mode 100644 index 0000000..b1ba45c --- /dev/null +++ b/cues.pd @@ -0,0 +1,61 @@ +#N canvas 141 142 868 556 10; +#X obj 145 381 outlet cue_number; +#X obj 400 -249 inlet reset; +#X obj 584 247 textfile; +#X obj 122 152 spigot; +#X msg 194 92 1; +#X msg 234 93 0; +#X msg 658 317 0; +#X obj 122 196 t b b b; +#X obj 391 17 t b b b; +#X obj 145 274 t a b; +#X obj 214 346 outlet cue_time; +#X msg 691 255 print; +#X obj 102 27 t b a a b; +#X obj 500 -68 route read; +#X obj 703 49 symbol; +#X obj 757 -51 loadbang; +#X msg 391 117 rewind \, bang; +#X obj 214 311 list; +#X obj 90 118 moses; +#X obj 90 -118 inlet; +#X obj 122 91 unpack f; +#X text 814 138 write one; +#X obj 757 -15 iemlib/dollarg; +#X msg 695 212 read \$1 cr \, rewind \, bang; +#X obj 141 237 tof/increment; +#X obj 414 -106 zexy/relay add clear; +#X connect 1 0 25 0; +#X connect 2 0 12 0; +#X connect 2 1 6 0; +#X connect 3 0 7 0; +#X connect 4 0 3 1; +#X connect 5 0 3 1; +#X connect 6 0 3 1; +#X connect 7 0 2 0; +#X connect 7 1 24 0; +#X connect 7 2 5 0; +#X connect 8 0 16 0; +#X connect 8 1 24 1; +#X connect 8 2 5 0; +#X connect 9 0 0 0; +#X connect 9 1 17 0; +#X connect 11 0 2 0; +#X connect 12 1 20 0; +#X connect 12 2 17 1; +#X connect 12 3 4 0; +#X connect 13 0 14 0; +#X connect 13 1 8 0; +#X connect 14 0 23 0; +#X connect 15 0 22 0; +#X connect 16 0 2 0; +#X connect 17 0 10 0; +#X connect 18 1 3 0; +#X connect 19 0 18 0; +#X connect 20 0 18 1; +#X connect 22 0 14 0; +#X connect 23 0 2 0; +#X connect 24 0 9 0; +#X connect 25 0 2 0; +#X connect 25 1 2 0; +#X connect 25 2 13 0; diff --git a/cues~-help.pd b/cues~-help.pd new file mode 100644 index 0000000..d8b3e99 --- /dev/null +++ b/cues~-help.pd @@ -0,0 +1,41 @@ +#N canvas 417 217 626 315 10; +#X obj 25 1 bng 15 250 50 0 empty empty empty 0 -6 0 10 -262144 -1 +-1; +#X msg 123 64 read \$1; +#X text 190 7 You can also add messages manually; +#X msg 193 48 clear \, add 10 AYE AYE \, add 3750 POPEYE \, add 6000 +is a sailor man; +#X obj 123 41 openpanel; +#X obj 123 19 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 193 26 loadbang; +#X obj 25 122 print index; +#X obj 105 123 print cue; +#X text 385 151 Example: 10 AYE AYE; +#X text 439 167 3750 POPEYE; +#X text 439 182 6000 IS A SAILOR MAN; +#X text 23 151 You can provide a cue file. Each line can contain one +cue and must end with a carriage return.; +#X obj 25 91 mtl/cues~; +#X obj 25 64 line~; +#X obj 25 21 t b b; +#X obj 144 99 bng 15 250 50 0 empty empty Reset 0 -6 0 10 -262144 -1 +-1; +#X msg 25 42 0 \, 10000 10000; +#X obj 17 -70 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 22 -28 tags: timing; +#X text 23 -68 description: Cues events to a number stream.; +#X connect 0 0 15 0; +#X connect 1 0 13 1; +#X connect 3 0 13 1; +#X connect 4 0 1 0; +#X connect 5 0 4 0; +#X connect 6 0 3 0; +#X connect 13 0 7 0; +#X connect 13 1 8 0; +#X connect 14 0 13 0; +#X connect 15 0 17 0; +#X connect 15 1 13 1; +#X connect 16 0 13 1; +#X connect 17 0 14 0; diff --git a/cues~.pd b/cues~.pd new file mode 100644 index 0000000..ea5f74d --- /dev/null +++ b/cues~.pd @@ -0,0 +1,78 @@ +#N canvas 559 76 1005 692 10; +#X obj 56 -121 inlet~; +#X obj 108 507 outlet cue_number; +#X obj 560 -181 inlet reset; +#X obj 81 160 bng 15 250 50 0 empty empty empty 0 -6 0 10 -262144 -1 +-1; +#X obj 277 140 bng 15 250 50 0 empty empty empty 0 -6 0 10 -262144 +-1 -1; +#X obj 121 109 threshold~ 0 0 0 0; +#X obj 613 220 textfile; +#X msg 136 47 set \$1 0 0.001 0; +#X msg 251 80 0; +#X obj 266 214 spigot; +#X obj 751 9 t a b; +#X msg 808 29 symbol; +#X obj 751 61 sel symbol; +#X msg 703 145 read \$1 cr \, rewind \, bang; +#X msg 373 165 1; +#X msg 419 165 0; +#X msg 709 280 0; +#X obj 287 272 t b b b; +#X obj 496 -32 t b b b; +#X obj 213 403 t a b; +#X obj 477 507 outlet cue_time; +#X msg 708 203 print; +#X obj 271 -12 t b a a b; +#X obj 751 -45 symbol; +#X obj 805 -143 loadbang; +#X msg 616 53 rewind \, bang; +#X obj 282 440 list; +#X obj 136 22 list split 1; +#X obj 800 -109 iemlib/dollarg; +#X obj 653 -98 route read; +#X obj 205 367 tof/increment; +#X obj 566 -143 zexy/relay add clear; +#X connect 0 0 5 0; +#X connect 2 0 31 0; +#X connect 5 0 3 0; +#X connect 5 0 9 0; +#X connect 5 1 4 0; +#X connect 6 0 22 0; +#X connect 6 1 16 0; +#X connect 7 0 5 0; +#X connect 8 0 5 1; +#X connect 9 0 17 0; +#X connect 10 0 12 0; +#X connect 10 1 11 0; +#X connect 11 0 12 1; +#X connect 12 1 13 0; +#X connect 13 0 6 0; +#X connect 14 0 9 1; +#X connect 15 0 9 1; +#X connect 16 0 9 1; +#X connect 17 0 6 0; +#X connect 17 1 30 0; +#X connect 17 2 15 0; +#X connect 18 0 25 0; +#X connect 18 1 30 1; +#X connect 18 2 15 0; +#X connect 19 0 1 0; +#X connect 19 1 26 0; +#X connect 21 0 6 0; +#X connect 22 0 8 0; +#X connect 22 1 27 0; +#X connect 22 2 26 1; +#X connect 22 3 14 0; +#X connect 23 0 10 0; +#X connect 24 0 28 0; +#X connect 25 0 6 0; +#X connect 26 0 20 0; +#X connect 27 0 7 0; +#X connect 28 0 23 0; +#X connect 29 0 23 0; +#X connect 29 1 18 0; +#X connect 30 0 19 0; +#X connect 31 0 6 0; +#X connect 31 1 6 0; +#X connect 31 2 29 0; diff --git a/cycle5-help.pd b/cycle5-help.pd new file mode 100644 index 0000000..e463877 --- /dev/null +++ b/cycle5-help.pd @@ -0,0 +1,8 @@ +#N canvas 0 0 350 147 10; +#X floatatom 26 56 5 0 0 0 - - -; +#X floatatom 26 103 5 0 0 0 - - -; +#X obj 26 80 mtl/cycle5; +#X text 24 29 tags: musical; +#X text 25 11 Description: Cycles through the serie of fifths; +#X connect 0 0 2 0; +#X connect 2 0 1 0; diff --git a/cycle5.pd b/cycle5.pd new file mode 100644 index 0000000..aa0a9fd --- /dev/null +++ b/cycle5.pd @@ -0,0 +1,10 @@ +#N canvas 0 0 450 300 10; +#X obj 55 68 inlet; +#X obj 260 71 loadbang; +#X obj 69 226 expr ((abs($f1+12)%12)*7)%12; +#X obj 21 277 outlet; +#X obj 251 111 tof/argument 1 0; +#X connect 0 0 2 0; +#X connect 1 0 4 0; +#X connect 2 0 3 0; +#X connect 4 0 2 0; diff --git a/degreeToChord-help.pd b/degreeToChord-help.pd new file mode 100644 index 0000000..d303b6e --- /dev/null +++ b/degreeToChord-help.pd @@ -0,0 +1,25 @@ +#N canvas 550 235 380 315 10; +#X floatatom 76 118 5 0 0 0 - - -; +#X text 115 117 Number of notes in the chord; +#X floatatom 27 84 5 0 0 0 - - -; +#X text 63 79 Degree of the chord in the major scale; +#X floatatom 172 202 5 0 0 0 - - -; +#X text 42 169 You might want to transpose as well; +#X floatatom 172 249 5 0 0 0 - - -; +#X text 23 12 Description: Cycles through the chords of n notes in +a scale \, the major scale by default; +#X text 64 92 1 is the first degree \, not 0; +#X obj 27 146 mtl/degreeToChord; +#X obj 27 215 mtl/transpose; +#X obj 172 225 mtl/cycle5; +#X obj 27 248 cyclone/prepend set; +#X text 24 44 tags: musical; +#X msg 27 275; +#X connect 0 0 9 1; +#X connect 2 0 9 0; +#X connect 4 0 11 0; +#X connect 9 0 10 0; +#X connect 10 0 12 0; +#X connect 11 0 6 0; +#X connect 11 0 10 1; +#X connect 12 0 14 0; diff --git a/degreeToChord.pd b/degreeToChord.pd new file mode 100644 index 0000000..9591073 --- /dev/null +++ b/degreeToChord.pd @@ -0,0 +1,46 @@ +#N canvas 369 115 1071 783 10; +#X obj 191 419 list; +#X msg 733 559 1 0 1 0 1 1 0 1 0 1 0 1; +#X obj 736 535 loadbang; +#X obj 716 510 inlet; +#X obj 146 87 inlet; +#X text 759 590 The major; +#X obj 849 650 - 1; +#X text 713 484 Scale; +#X obj 224 174 t b f; +#X text 94 54 Offset (degree) of the chord to get; +#X obj 412 179 inlet; +#X text 418 153 Number of notes in the chord; +#X obj 415 224 f; +#X obj 183 694 outlet; +#X obj 226 130 - 1; +#X text 199 89 In music \, index 1 is the first degree. In computer +sciences \, it is index 0; +#X obj 218 464 expr 0-$f1; +#X text 302 464 The offset are the inverse (negative) than those in +list-rot; +#X obj 459 192 tof/argument 1 3; +#X obj 459 172 loadbang; +#X obj 716 620 ./listBoolToPos; +#X obj 716 653 ./listOp; +#X obj 156 524 cyclone/zl rot; +#X obj 183 639 ./listJump 2 3; +#X connect 0 0 22 0; +#X connect 1 0 20 0; +#X connect 2 0 1 0; +#X connect 3 0 20 0; +#X connect 4 0 14 0; +#X connect 6 0 21 1; +#X connect 8 0 0 0; +#X connect 8 1 16 0; +#X connect 10 0 12 0; +#X connect 12 0 23 2; +#X connect 14 0 8 0; +#X connect 16 0 22 1; +#X connect 18 0 12 0; +#X connect 19 0 18 0; +#X connect 20 0 21 0; +#X connect 21 0 0 1; +#X connect 21 1 6 0; +#X connect 22 0 23 0; +#X connect 23 0 13 0; diff --git a/degreeToRadian-help.pd b/degreeToRadian-help.pd new file mode 100644 index 0000000..66784ca --- /dev/null +++ b/degreeToRadian-help.pd @@ -0,0 +1,14 @@ +#N canvas 242 154 426 192 10; +#X floatatom 144 91 5 0 0 0 - - -; +#X floatatom 144 147 0 0 0 0 - - -; +#X msg 191 92 180; +#X obj 13 9 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 125 51 Author: Roman Haefeli; +#X text 268 51 Version: 2007-12-09; +#X text 18 12 Description: Converts degrees into radians.; +#X obj 144 123 mtl/degreeToRadian; +#X text 18 51 tags: conversion; +#X connect 0 0 7 0; +#X connect 2 0 7 0; +#X connect 7 0 1 0; diff --git a/degreeToRadian.pd b/degreeToRadian.pd new file mode 100644 index 0000000..0e0ca1c --- /dev/null +++ b/degreeToRadian.pd @@ -0,0 +1,17 @@ +#N canvas 426 297 448 298 10; +#X obj 79 86 inlet; +#X obj 79 172 outlet; +#X obj 151 121 / 45; +#X obj 151 55 loadbang; +#X obj 79 120 f; +#X obj 151 98 atan; +#X msg 151 77 1; +#X text 73 27 taken from zexy; +#X obj 79 144 *; +#X connect 0 0 4 0; +#X connect 2 0 8 1; +#X connect 3 0 6 0; +#X connect 4 0 8 0; +#X connect 5 0 2 0; +#X connect 6 0 5 0; +#X connect 8 0 1 0; diff --git a/delayPhasor~-help.pd b/delayPhasor~-help.pd new file mode 100644 index 0000000..6d53c0e --- /dev/null +++ b/delayPhasor~-help.pd @@ -0,0 +1,54 @@ +#N canvas 584 57 499 243 10; +#X text 14 29 Author: Chun Lee (sonicvariable.goto10.org); +#X text 15 8 Description: Delay controlled by a phasor; +#X obj 20 171 mtl/out~; +#X obj 20 138 mtl/delayPhasor~ /id delayPhasor; +#X text 15 50 tags: fx~; +#X obj 19 90 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 +; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 19 115 pd generate~; +#X obj 238 138 hsl 100 15 0 1 0 0 \$0/delayPhasor/wet \$0/delayPhasor/wet_ +/delayPhasor/wet 105 7 0 8 -262144 -1 -1 0 1; +#X obj 238 178 hsl 100 15 1 20000 0 0 \$0/delayPhasor/delay2 \$0/delayPhasor/delay2_ +/delayPhasor/delay2 105 7 0 8 -262144 -1 -1 4 1; +#X obj 238 158 hsl 100 15 1 20000 0 0 \$0/delayPhasor/delay1 \$0/delayPhasor/delay1_ +/delayPhasor/delay1 105 7 0 8 -262144 -1 -1 49 1; +#X obj 238 198 hsl 100 15 0.01 10 0 0 \$0/delayPhasor/phasor \$0/delayPhasor/phasor_ +/delayPhasor/phasor 105 7 0 8 -262144 -1 -1 287 1; +#X connect 3 0 2 0; +#X connect 3 1 2 1; +#X connect 5 0 6 0; +#X connect 6 0 3 0; +#X connect 6 1 3 1; diff --git a/delayPhasor~.pd b/delayPhasor~.pd new file mode 100644 index 0000000..92b0d89 --- /dev/null +++ b/delayPhasor~.pd @@ -0,0 +1,97 @@ +#N canvas 362 310 740 458 10; +#N canvas 460 241 627 300 delayphasor 0; +#X obj 311 292 *~ 0.8; +#X obj 310 249 /~ 44.1; +#X obj 310 226 +~ 100; +#X obj 310 204 *~ 50; +#X obj 308 132 -~ 0.5; +#X obj 309 158 abs~; +#X obj 310 183 *~ 2; +#X obj 84 247 /~ 44.1; +#X obj 84 224 +~ 100; +#X obj 84 202 *~ 50; +#X obj 82 130 -~ 0.5; +#X obj 83 156 abs~; +#X obj 84 181 *~ 2; +#X floatatom 169 91 5 0 0 0 - - -; +#X obj 84 290 *~ 0.8; +#X obj 9 4 inlet~; +#X obj 169 50 loadbang; +#X msg 169 69 0.5; +#X floatatom 380 36 5 0 0 0 - - -; +#X floatatom 422 34 5 0 0 0 - - -; +#X obj 380 12 inlet; +#X obj 422 11 inlet; +#X obj 253 68 inlet~; +#X obj 83 110 phasor~ 0.033; +#X obj 309 112 phasor~ 0.033; +#X obj 83 317 outlet~; +#X obj 312 319 outlet~; +#X obj 9 26 delwrite~ dpdelay11 1000; +#X obj 253 90 delwrite~ dpdelay22 1000; +#X obj 309 271 vd~ dpdelay22; +#X obj 82 269 vd~ dpdelay11; +#X obj 488 13 inlet phasor; +#X connect 0 0 26 0; +#X connect 0 0 28 0; +#X connect 1 0 29 0; +#X connect 2 0 1 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 6 0 3 0; +#X connect 7 0 30 0; +#X connect 8 0 7 0; +#X connect 9 0 8 0; +#X connect 10 0 11 0; +#X connect 11 0 12 0; +#X connect 12 0 9 0; +#X connect 13 0 23 1; +#X connect 14 0 25 0; +#X connect 14 0 27 0; +#X connect 15 0 27 0; +#X connect 16 0 17 0; +#X connect 17 0 13 0; +#X connect 18 0 9 1; +#X connect 18 0 3 1; +#X connect 19 0 8 1; +#X connect 19 0 2 1; +#X connect 20 0 18 0; +#X connect 21 0 19 0; +#X connect 22 0 28 0; +#X connect 23 0 10 0; +#X connect 24 0 4 0; +#X connect 29 0 0 0; +#X connect 30 0 14 0; +#X connect 31 0 13 0; +#X restore 27 86 pd delayphasor; +#X obj 135 309 outlet~; +#X obj 227 308 outlet~; +#X obj 27 47 inlet~; +#X obj 87 47 inlet~; +#X obj 590 32 inlet params; +#X obj 590 78 print PARAM_NOTFOUND; +#X obj 135 273 tof/crossfade~ 2; +#X obj 253 176 tof/param /wet 0 /g slider 0 1; +#X obj 307 48 tof/param /delay2 10 /g slider 1 20000; +#X obj 307 18 tof/param /delay1 100 /g slider 1 20000; +#X obj 317 98 tof/param /phasor 0.3 /g slider 0.01 10; +#X obj 253 219 line~; +#X msg 253 198 \$1 5; +#X obj 590 54 tof/param route; +#X connect 0 0 7 2; +#X connect 0 1 7 3; +#X connect 3 0 0 0; +#X connect 3 0 7 0; +#X connect 4 0 0 1; +#X connect 4 0 7 1; +#X connect 5 0 14 0; +#X connect 7 0 1 0; +#X connect 7 1 2 0; +#X connect 8 0 13 0; +#X connect 9 0 0 3; +#X connect 10 0 0 2; +#X connect 11 0 0 4; +#X connect 12 0 7 4; +#X connect 13 0 12 0; +#X connect 14 0 6 0; diff --git a/distoAp~-help.pd b/distoAp~-help.pd new file mode 100644 index 0000000..47f9428 --- /dev/null +++ b/distoAp~-help.pd @@ -0,0 +1,65 @@ +#N canvas 631 397 563 270 10; +#X text 10 50 See: http://www.acoustics.hut.fi/~jpekonen/Papers/dafx08/ +; +#X text 11 5 Description: "Coefficient Modulated Allpass Filter as +Distortion Effect" as in the DAFx 2008 paper by Jussi Pekonen; +#X obj 15 125 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 15 211 mtl/out~; +#X text 9 68 Author: Frank Barknecht \, 2008; +#X text 10 85 tags: fx~; +#X obj 243 132 hsl 100 15 0 127 0 0 \$0/disAp/lop \$0/disAp/lop_ /disAp/lop +105 7 0 8 -262144 -1 -1 0 1; +#X obj 243 152 hsl 100 15 0 500 0 0 \$0/disAp/drive \$0/disAp/drive_ +/disAp/drive 105 7 0 8 -262144 -1 -1 0 1; +#X obj 243 112 hsl 100 15 0 1 0 0 \$0/disAp/wet \$0/disAp/wet_ /disAp/wet +105 7 0 8 -262144 -1 -1 0 1; +#X text 239 173 presets; +#X msg 252 214 /disAp/lop 30 \, /disAp/drive 110 \, /disAp/wet 1; +#X msg 175 164 /wet \$1; +#X floatatom 175 143 5 0 1 0 - - -; +#X msg 241 194 /disAp/lop 80 \, /disAp/drive 10 \, /disAp/wet 1; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 15 150 pd generate~; +#X obj 16 187 mtl/distoAp~ /id disAp; +#X obj 241 235 tof/param route; +#X connect 2 0 14 0; +#X connect 10 0 16 0; +#X connect 11 0 15 2; +#X connect 12 0 11 0; +#X connect 13 0 16 0; +#X connect 14 0 15 0; +#X connect 14 1 15 1; +#X connect 15 0 3 0; +#X connect 15 1 3 1; diff --git a/distoAp~.pd b/distoAp~.pd new file mode 100644 index 0000000..1393660 --- /dev/null +++ b/distoAp~.pd @@ -0,0 +1,79 @@ +#N canvas 612 363 767 304 10; +#X obj 33 21 inlet~; +#X obj 31 231 outlet~; +#X obj 125 213 outlet~; +#X obj 95 22 inlet~; +#X obj 402 19 inlet params; +#N canvas 275 202 786 441 lofidisto 0; +#X obj -213 210 rpole~; +#X obj -213 185 rzero_rev~; +#X obj -213 -60 inlet~; +#X obj -213 235 outlet~; +#X obj -147 2 lop~ 500; +#X obj -146 143 clip~ -0.9999 0.9999; +#X obj 202 -110 inlet; +#X obj 265 -111 inlet; +#X obj -31 41 pack 0 10; +#X obj -31 63 line~; +#X obj -147 115 *~; +#X text 202 -132 lop; +#X text 265 -131 drive; +#X obj 202 -85 mtof; +#X obj 47 210 rpole~; +#X obj 47 185 rzero_rev~; +#X obj 47 -60 inlet~; +#X obj 47 235 outlet~; +#X obj 113 2 lop~ 500; +#X obj 114 143 clip~ -0.9999 0.9999; +#X obj 229 41 pack 0 10; +#X obj 229 63 line~; +#X obj 113 115 *~; +#X connect 0 0 3 0; +#X connect 1 0 0 0; +#X connect 2 0 1 0; +#X connect 2 0 4 0; +#X connect 4 0 10 0; +#X connect 5 0 0 1; +#X connect 5 0 1 1; +#X connect 6 0 13 0; +#X connect 7 0 8 0; +#X connect 7 0 20 0; +#X connect 8 0 9 0; +#X connect 9 0 10 1; +#X connect 10 0 5 0; +#X connect 13 0 4 1; +#X connect 13 0 18 1; +#X connect 14 0 17 0; +#X connect 15 0 14 0; +#X connect 16 0 15 0; +#X connect 16 0 18 0; +#X connect 18 0 22 0; +#X connect 19 0 14 1; +#X connect 19 0 15 1; +#X connect 20 0 21 0; +#X connect 21 0 22 1; +#X connect 22 0 19 0; +#X restore 81 107 pd lofidisto; +#X obj 32 179 tof/crossfade~ 2; +#X obj 161 18 tof/param /lop 0 /g slider 0 127; +#X obj 164 48 tof/param /drive 0 /g slider 0 500; +#X obj 187 76 tof/param /wet 0 /g slider 0 1; +#X obj 402 65 print PARAM_NOTFOUND; +#X msg 187 100 \$1 5; +#X obj 187 122 line~; +#X obj 402 41 tof/param route; +#X connect 0 0 5 0; +#X connect 0 0 6 0; +#X connect 3 0 5 1; +#X connect 3 0 6 1; +#X connect 4 0 13 0; +#X connect 5 0 6 2; +#X connect 5 1 6 3; +#X connect 6 0 1 0; +#X connect 6 1 2 0; +#X connect 7 0 5 2; +#X connect 8 0 5 3; +#X connect 9 0 11 0; +#X connect 11 0 12 0; +#X connect 12 0 6 4; +#X connect 13 0 10 0; diff --git a/distoCrusher~-help.pd b/distoCrusher~-help.pd new file mode 100644 index 0000000..7269141 --- /dev/null +++ b/distoCrusher~-help.pd @@ -0,0 +1,26 @@ +#N canvas 526 221 476 401 10; +#X text 15 32 Author: Enrique Erne; +#X text 15 14 Description: a bit crusher; +#X obj 46 112 *~ 0.5; +#X obj 141 112 *~ 0.5; +#X obj 47 188 mtl/out~; +#X obj 235 250 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X obj 20 249 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X text 16 51 tags: fx~; +#X obj 259 136 hsl 100 15 0 1 0 0 \$0/crush/wet \$0/crush/wet_ /crush/wet +105 7 0 8 -262144 -1 -1 0 1; +#X obj 259 156 hsl 100 15 0 1 0 0 \$0/crush/gain \$0/crush/gain_ /crush/gain +105 7 0 8 -262144 -1 -1 0 1; +#X obj 47 88 osc~ 110; +#X obj 141 88 osc~ 110; +#X obj 47 154 mtl/distoCrusher~ /id crush; +#X connect 2 0 6 0; +#X connect 2 0 12 0; +#X connect 3 0 12 1; +#X connect 10 0 2 0; +#X connect 11 0 3 0; +#X connect 12 0 4 0; +#X connect 12 1 4 1; +#X connect 12 1 5 0; diff --git a/distoCrusher~.pd b/distoCrusher~.pd new file mode 100644 index 0000000..3c7e2f2 --- /dev/null +++ b/distoCrusher~.pd @@ -0,0 +1,75 @@ +#N canvas 318 244 673 261 10; +#X obj 36 32 inlet~; +#X obj 86 32 inlet~; +#X obj 35 196 outlet~; +#X obj 127 197 outlet~; +#N canvas 663 330 575 300 bitcrusher 0; +#X obj 164 163 wrap~; +#X obj 148 204 -~; +#X obj 164 143 +~ 0.1; +#X obj 164 184 -~ 0.1; +#X obj 57 163 wrap~; +#X obj 41 204 -~; +#X obj 57 143 +~ 0.1; +#X obj 57 184 -~ 0.1; +#X obj 41 123 *~ 127; +#X obj 148 123 *~ 127; +#X obj 148 224 /~ 127; +#X obj 41 224 /~ 127; +#X obj 223 123 t f f; +#X obj 223 143 *; +#X obj 223 183 + 1; +#X obj 223 163 * 127; +#X obj 46 52 inlet~; +#X obj 136 52 inlet~; +#X obj 40 266 outlet~; +#X obj 149 266 outlet~; +#X obj 223 86 inlet; +#X connect 0 0 3 0; +#X connect 1 0 10 0; +#X connect 2 0 0 0; +#X connect 3 0 1 1; +#X connect 4 0 7 0; +#X connect 5 0 11 0; +#X connect 6 0 4 0; +#X connect 7 0 5 1; +#X connect 8 0 6 0; +#X connect 8 0 5 0; +#X connect 9 0 2 0; +#X connect 9 0 1 0; +#X connect 10 0 19 0; +#X connect 11 0 18 0; +#X connect 12 0 13 0; +#X connect 12 1 13 1; +#X connect 13 0 15 0; +#X connect 14 0 8 1; +#X connect 14 0 9 1; +#X connect 14 0 10 1; +#X connect 14 0 11 1; +#X connect 15 0 14 0; +#X connect 16 0 8 0; +#X connect 17 0 9 0; +#X connect 20 0 12 0; +#X restore 77 114 pd bitcrusher; +#X obj 532 27 inlet params; +#X obj 180 108 tof/param /wet 0 /g slider 0 1; +#X obj 532 73 print PARAM_NOTFOUND; +#X obj 35 168 tof/crossfade~ 2; +#X obj 152 80 tof/param /gain 0 /g slider 0 1; +#X msg 180 129 \$1 5; +#X obj 180 150 line~; +#X obj 532 49 tof/param route; +#X connect 0 0 4 0; +#X connect 0 0 8 0; +#X connect 1 0 4 1; +#X connect 1 0 8 1; +#X connect 4 0 8 2; +#X connect 4 1 8 3; +#X connect 5 0 12 0; +#X connect 6 0 10 0; +#X connect 8 0 2 0; +#X connect 8 1 3 0; +#X connect 9 0 4 2; +#X connect 10 0 11 0; +#X connect 11 0 8 4; +#X connect 12 0 7 0; diff --git a/distoFuzz~-help.pd b/distoFuzz~-help.pd new file mode 100644 index 0000000..253a745 --- /dev/null +++ b/distoFuzz~-help.pd @@ -0,0 +1,37 @@ +#N canvas 526 221 495 395 10; +#X obj 50 109 *~ 0.5; +#X obj 134 110 *~ 0.5; +#X text 10 28 Author: netpd; +#X text 10 13 Description: a lofi distortion with frequency control +; +#X obj 51 179 mtl/out~; +#X obj 51 85 osc~ 110; +#X obj 134 85 osc~ 110; +#X obj 24 233 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X obj 215 233 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X text 11 43 tags: fx~; +#X obj 255 98 hsl 100 15 0 1 0 0 \$0/fuzz/wet \$0/fuzz/wet_ /fuzz/wet +105 7 0 8 -262144 -1 -1 0 1; +#X obj 255 118 hsl 100 15 0 1 0 0 \$0/fuzz/pregain \$0/fuzz/pregain_ +/fuzz/pregain 105 7 0 8 -262144 -1 -1 4950 1; +#X obj 255 138 hsl 100 15 0 1 0 0 \$0/fuzz/clip \$0/fuzz/clip_ /fuzz/clip +105 7 0 8 -262144 -1 -1 4950 1; +#X obj 252 78 tgl 15 0 \$0/fuzz/difference \$0/fuzz/difference_ /fuzz/difference +17 7 0 8 -262144 -1 -1 0 1; +#X obj 255 158 hsl 100 15 0 1 0 0 \$0/fuzz/fuzz \$0/fuzz/fuzz_ /fuzz/fuzz +105 7 0 8 -262144 -1 -1 4950 1; +#X obj 255 178 hsl 100 15 0 1 0 0 \$0/fuzz/lowpass \$0/fuzz/lowpass_ +/fuzz/lowpass 105 7 0 8 -262144 -1 -1 4950 1; +#X obj 255 198 hsl 100 15 0 1 0 0 \$0/fuzz/postgain \$0/fuzz/postgain_ +/fuzz/postgain 105 7 0 8 -262144 -1 -1 4950 1; +#X obj 51 146 mtl/distoFuzz~ /id fuzz; +#X connect 0 0 7 0; +#X connect 0 0 17 0; +#X connect 1 0 17 1; +#X connect 5 0 0 0; +#X connect 6 0 1 0; +#X connect 17 0 4 0; +#X connect 17 1 4 1; +#X connect 17 1 8 0; diff --git a/distoFuzz~.pd b/distoFuzz~.pd new file mode 100644 index 0000000..5caead2 --- /dev/null +++ b/distoFuzz~.pd @@ -0,0 +1,170 @@ +#N canvas 167 262 577 373 10; +#X obj 33 51 inlet~; +#X obj 31 260 outlet~; +#X obj 126 236 outlet~; +#X obj 95 52 inlet~; +#N canvas 153 152 944 688 distortionfuzz 0; +#X obj 89 464 outlet~; +#X obj 227 462 outlet~; +#X obj 97 -116 inlet~; +#X obj 148 -117 inlet~; +#X obj 479 105 * -1; +#X obj 513 58 * 0.99; +#X obj 475 69 + 0.01; +#X obj 575 260 t f f; +#X obj 577 283 *; +#X obj 571 307 * 20000; +#X obj 141 62 -~; +#X obj 610 394 * 10; +#X obj 146 137 clip~ -1 1; +#X obj 135 172 -~; +#X obj 334 66 -~; +#X obj 339 141 clip~ -1 1; +#X obj 328 176 -~; +#X obj 377 238 * 4; +#X obj 513 -49 * 8; +#X obj 215 325 -~; +#X obj 71 319 -~; +#X obj 612 476 != 1; +#X obj 230 408 lop~ 16000; +#X obj 98 395 lop~ 16000; +#X obj 241 -41 *~ 3.2; +#X obj 99 -52 *~ 3.2; +#X obj 108 2 clip~ -0.307 0.307; +#X obj 304 2 clip~ -0.307 0.307; +#X obj 345 105 *~ 1; +#X obj 152 101 *~ 1; +#X obj 306 346 *~ 0; +#X obj 274 341 *~ 1; +#X obj 148 345 *~ 0; +#X obj 111 350 *~ 1; +#X obj 269 276 *~ 1; +#X obj 218 259 *~ 1; +#X obj 100 287 *~ 1; +#X obj 67 276 *~ 1; +#X obj 509 -87 hsl 75 15 0 1 0 0 \$2-bon-distort-pregain \$2-bon-distort-pregainr +pregain 12 8 0 8 -228864 -62784 -355 0 1; +#X obj 517 32 hsl 75 15 0 1 0 0 \$2-bon-distort-clip \$2-bon-distort-clipr +clip 12 8 0 8 -237184 -62784 -355 0 1; +#X obj 379 209 hsl 75 15 0 1 0 0 \$2-bon-distort-postgain \$2-bon-distort-postgainr +postgain 12 8 0 8 -241344 -62784 -355 0 1; +#X obj 575 230 hsl 75 15 0 1 0 0 \$2-bon-distort-lopass \$2-bon-distort-lopassr +lopass 12 8 0 8 -199744 -62784 -355 0 1; +#X obj 616 367 hsl 60 15 0 1 0 0 \$2-bon-distort-fuzz \$2-bon-distort-fuzzr +fuzz 12 8 0 8 -249664 -62784 -355 0 1; +#X obj 614 432 tgl 15 0 \$2-bon-distort-difference \$2-bon-distort-differencer +d 4 8 0 8 -228992 -62784 -62784 0 1; +#X obj 284 -127 inlet; +#X obj 324 -127 inlet; +#X obj 364 -127 inlet; +#X obj 404 -127 inlet; +#X obj 454 -127 inlet; +#X obj 494 -127 inlet; +#X connect 2 0 25 0; +#X connect 3 0 24 0; +#X connect 4 0 12 1; +#X connect 4 0 15 1; +#X connect 4 0 26 1; +#X connect 4 0 27 1; +#X connect 5 0 6 0; +#X connect 6 0 4 0; +#X connect 6 0 12 2; +#X connect 6 0 15 2; +#X connect 6 0 26 2; +#X connect 6 0 27 2; +#X connect 7 0 8 0; +#X connect 7 1 8 1; +#X connect 8 0 9 0; +#X connect 9 0 22 1; +#X connect 9 0 23 1; +#X connect 10 0 29 0; +#X connect 11 0 28 1; +#X connect 11 0 29 1; +#X connect 12 0 13 1; +#X connect 13 0 36 0; +#X connect 14 0 28 0; +#X connect 15 0 16 1; +#X connect 16 0 34 0; +#X connect 17 0 34 1; +#X connect 17 0 35 1; +#X connect 17 0 36 1; +#X connect 17 0 37 1; +#X connect 18 0 24 1; +#X connect 18 0 25 1; +#X connect 19 0 30 0; +#X connect 20 0 32 0; +#X connect 21 0 31 1; +#X connect 21 0 33 1; +#X connect 22 0 1 0; +#X connect 23 0 0 0; +#X connect 24 0 14 0; +#X connect 24 0 27 0; +#X connect 24 0 35 0; +#X connect 25 0 10 0; +#X connect 25 0 26 0; +#X connect 25 0 37 0; +#X connect 26 0 10 1; +#X connect 26 0 13 0; +#X connect 27 0 14 1; +#X connect 27 0 16 0; +#X connect 28 0 15 0; +#X connect 29 0 12 0; +#X connect 30 0 22 0; +#X connect 31 0 22 0; +#X connect 32 0 23 0; +#X connect 33 0 23 0; +#X connect 34 0 19 1; +#X connect 34 0 31 0; +#X connect 35 0 19 0; +#X connect 36 0 20 1; +#X connect 36 0 33 0; +#X connect 37 0 20 0; +#X connect 38 0 18 0; +#X connect 39 0 5 0; +#X connect 40 0 17 0; +#X connect 41 0 7 0; +#X connect 42 0 11 0; +#X connect 43 0 30 1; +#X connect 43 0 32 1; +#X connect 43 0 21 0; +#X connect 44 0 18 0; +#X connect 45 0 5 0; +#X connect 46 0 17 0; +#X connect 47 0 7 0; +#X connect 48 0 11 0; +#X connect 49 0 21 0; +#X connect 49 0 30 1; +#X connect 49 0 32 1; +#X restore 81 137 pd distortionfuzz; +#X obj 400 7 inlet params; +#X obj 205 167 tof/param /wet 0 /g slider 0 1; +#X obj 400 53 print PARAM_NOTFOUND; +#X obj 32 209 tof/crossfade~ 2; +#X obj 133 -78 tof/param /pregain 0.5 /g slider 0 1; +#X obj 148 -57 tof/param /clip 0.5 /g slider 0 1; +#X obj 194 23 tof/param /difference 0 /g tgl; +#X obj 183 3 tof/param /fuzz 0.5 /g slider 0 1; +#X obj 174 -16 tof/param /lowpass 0.5 /g slider 0 1; +#X obj 158 -37 tof/param /postgain 0.5 /g slider 0 1; +#X msg 205 190 \$1 5; +#X obj 205 214 line~; +#X obj 400 29 tof/param route; +#X connect 0 0 4 0; +#X connect 0 0 8 0; +#X connect 3 0 4 1; +#X connect 3 0 8 1; +#X connect 4 0 8 2; +#X connect 4 1 8 3; +#X connect 5 0 17 0; +#X connect 6 0 15 0; +#X connect 8 0 1 0; +#X connect 8 1 2 0; +#X connect 9 0 4 2; +#X connect 10 0 4 3; +#X connect 11 0 4 7; +#X connect 12 0 4 6; +#X connect 13 0 4 5; +#X connect 14 0 4 4; +#X connect 15 0 16 0; +#X connect 16 0 8 4; +#X connect 17 0 7 0; diff --git a/distoLofi~-help.pd b/distoLofi~-help.pd new file mode 100644 index 0000000..fa8ffc5 --- /dev/null +++ b/distoLofi~-help.pd @@ -0,0 +1,29 @@ +#N canvas 526 221 452 396 10; +#X obj 45 102 *~ 0.5; +#X obj 126 101 *~ 0.5; +#X text 14 29 Author: netpd; +#X text 15 12 Description: a lofi distortion with frequency control +; +#X obj 44 167 mtl/out~; +#X text 15 45 tags: fx~; +#X obj 22 223 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X obj 213 223 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X obj 234 95 hsl 100 15 0 1 0 0 \$0/lofi/wet \$0/lofi/wet_ /lofi/wet +105 7 0 8 -262144 -1 -1 0 1; +#X obj 234 115 hsl 100 15 0 1 0 0 \$0/lofi/freq \$0/lofi/freq_ /lofi/freq +105 7 0 8 -262144 -1 -1 4950 1; +#X obj 234 135 hsl 100 15 0 1 0 0 \$0/lofi/bits \$0/lofi/bits_ /lofi/bits +105 7 0 8 -262144 -1 -1 3960 1; +#X obj 46 78 osc~ 110; +#X obj 126 77 osc~ 110; +#X obj 44 134 mtl/distoLofi~ /id lofi; +#X connect 0 0 6 0; +#X connect 0 0 13 0; +#X connect 1 0 13 1; +#X connect 11 0 0 0; +#X connect 12 0 1 0; +#X connect 13 0 4 0; +#X connect 13 1 4 1; +#X connect 13 1 7 0; diff --git a/distoLofi~.pd b/distoLofi~.pd new file mode 100644 index 0000000..f8b2502 --- /dev/null +++ b/distoLofi~.pd @@ -0,0 +1,88 @@ +#N canvas 101 162 539 284 10; +#X obj 33 21 inlet~; +#X obj 31 231 outlet~; +#X obj 125 208 outlet~; +#X obj 95 22 inlet~; +#N canvas 289 236 786 441 lofidisto 0; +#X obj 80 261 outlet~; +#X obj 130 261 outlet~; +#X obj 97 -116 inlet~; +#X obj 148 -117 inlet~; +#X obj 246 -117 inlet; +#X obj 205 48 samphold~; +#X obj 126 45 samphold~; +#X obj 231 171 wrap~; +#X obj 296 142 pow; +#X obj 284 98 t b f; +#X msg 286 120 2; +#X obj 93 175 wrap~; +#X obj 248 -87 * 21550; +#X obj 248 -65 + 500; +#X obj 287 15 * 15; +#X obj 195 118 +~ 1e-11; +#X obj 78 122 +~ 1e-11; +#X obj 207 -14 phasor~ 5877.5; +#X obj 212 145 *~ 128; +#X obj 77 149 *~ 128; +#X obj 83 201 -~; +#X obj 80 224 /~ 128; +#X obj 211 222 /~ 128; +#X obj 218 197 -~; +#X text 249 -135 freq; +#X text 298 -133 bits; +#X obj 296 -117 inlet; +#X connect 2 0 6 0; +#X connect 3 0 5 0; +#X connect 4 0 12 0; +#X connect 5 0 15 0; +#X connect 6 0 16 0; +#X connect 7 0 23 1; +#X connect 8 0 18 1; +#X connect 8 0 19 1; +#X connect 8 0 21 1; +#X connect 8 0 22 1; +#X connect 9 0 10 0; +#X connect 9 1 8 1; +#X connect 10 0 8 0; +#X connect 11 0 20 1; +#X connect 12 0 13 0; +#X connect 13 0 17 0; +#X connect 14 0 9 0; +#X connect 15 0 18 0; +#X connect 16 0 19 0; +#X connect 17 0 5 1; +#X connect 17 0 6 1; +#X connect 18 0 7 0; +#X connect 18 0 23 0; +#X connect 19 0 11 0; +#X connect 19 0 20 0; +#X connect 20 0 21 0; +#X connect 21 0 0 0; +#X connect 22 0 1 0; +#X connect 23 0 22 0; +#X connect 26 0 14 0; +#X restore 81 107 pd lofidisto; +#X obj 414 -13 inlet params; +#X obj 165 130 tof/param /wet 0 /g slider 0 1; +#X obj 414 33 print PARAM_NOTFOUND; +#X obj 32 179 tof/crossfade~ 2; +#X obj 167 -5 tof/param /freq 0.5 /g slider 0 1; +#X obj 182 16 tof/param /bits 0.4 /g slider 0 1; +#X msg 215 200 \$1 5; +#X obj 215 224 line~; +#X obj 414 9 tof/param route; +#X connect 0 0 4 0; +#X connect 0 0 8 0; +#X connect 3 0 4 1; +#X connect 3 0 8 1; +#X connect 4 0 8 2; +#X connect 4 1 8 3; +#X connect 5 0 13 0; +#X connect 6 0 11 0; +#X connect 8 0 1 0; +#X connect 8 1 2 0; +#X connect 9 0 4 2; +#X connect 10 0 4 3; +#X connect 11 0 12 0; +#X connect 12 0 8 4; +#X connect 13 0 7 0; diff --git a/distoNonmonotone~-help.pd b/distoNonmonotone~-help.pd new file mode 100644 index 0000000..8af67d7 --- /dev/null +++ b/distoNonmonotone~-help.pd @@ -0,0 +1,52 @@ +#N canvas 494 278 763 356 10; +#X obj 405 5 cnv 15 320 90 empty empty empty 20 12 0 14 -261682 -66577 +0; +#X text 408 29 le 16 septembre 2009; +#X text 407 64 Copyright © 2009 par Mathieu Bouchard; +#X text 408 52 Fabriqué à Villeray \, avec amour; +#X text 408 17 Tel que presenté au club PureData de Montréal; +#X text 408 6 Patch de distorsion nonmonotone qui suit l'enveloppe +; +#X text 407 79 Publié sous licence Standard Improved BSD; +#X obj 243 186 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X obj 16 186 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X obj 31 121 mtl/out~; +#X text 26 -2 Description: distortion nonmonotone; +#X text 28 14 tags: fx~; +#X obj 31 71 *~ 0.5; +#X obj 136 72 *~ 0.5; +#X obj 32 47 osc~ 110; +#X obj 136 47 osc~ 110; +#X obj 407 108 hsl 100 15 0 1 0 0 \$0/matju/wet \$0/matju/wet_ /matju/wet +105 7 0 8 -262144 -1 -1 0 1; +#X obj 407 128 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/freq1 \$0/matju/freq1_ +/matju/freq1 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 148 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/amp1 \$0/matju/amp1_ +/matju/amp1 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 168 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/base1 \$0/matju/base1_ +/matju/base1 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 188 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/freq2 \$0/matju/freq2_ +/matju/freq2 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 208 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/amp2 \$0/matju/amp2_ +/matju/amp2 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 228 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/base2 \$0/matju/base2_ +/matju/base2 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 248 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/freqfeed \$0/matju/freqfeed_ +/matju/freqfeed 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 268 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/ampfeed \$0/matju/ampfeed_ +/matju/ampfeed 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 288 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/basefeed \$0/matju/basefeed_ +/matju/basefeed 48 7 0 8 -262144 -1 -1 0 256; +#X obj 407 308 nbx 5 14 -1e+37 1e+37 0 0 \$0/matju/feedback \$0/matju/feedback_ +/matju/feedback 48 7 0 8 -262144 -1 -1 0 256; +#X obj 31 96 mtl/distoNonmonotone~ /id matju; +#X connect 12 0 8 0; +#X connect 12 0 27 0; +#X connect 13 0 27 1; +#X connect 14 0 12 0; +#X connect 15 0 13 0; +#X connect 27 0 9 0; +#X connect 27 1 7 0; +#X connect 27 1 9 1; diff --git a/distoNonmonotone~.pd b/distoNonmonotone~.pd new file mode 100644 index 0000000..a1a106a --- /dev/null +++ b/distoNonmonotone~.pd @@ -0,0 +1,160 @@ +#N canvas 2 363 639 371 10; +#X obj 65 238 outlet~ left; +#X obj 148 238 outlet~ right; +#X obj 67 86 inlet~ left; +#X obj 146 86 inlet~ right; +#N canvas 300 102 1068 724 distortionnonmonotone 0; +#X obj 54 20 inlet~; +#X obj 513 17 inlet~; +#X obj 42 527 outlet~; +#X obj 504 518 outlet~; +#X obj 111 228 dbtorms; +#X floatatom 271 265 5 0 0 0 - - -; +#X obj 54 226 +~; +#X obj 54 51 hip~ 5; +#X obj 229 167 phasor~; +#X obj 229 223 phasor~; +#X obj 111 210 env~; +#X obj 54 375 +~; +#X obj 69 428 phasor~; +#X obj 69 447 expr~ sin($v1*3.1416*2)*$f2+$f3; +#X obj 53 502 +~; +#X obj 229 185 expr~ sin($v1*3.141593*2)*$f2+$f3; +#X obj 229 241 expr~ sin($v1*3.141593*2)*$f2+$f3; +#X obj 67 483 *~; +#X obj 70 267 expr~ sin($v1*$v2/$f3)*$f3*0.35; +#X obj 70 287 expr~ sin($v1*$v2/$f3)*$f3*0.35; +#X text 93 194 calcul du volume; +#X text 306 265 volume; +#X obj 571 218 dbtorms; +#X floatatom 731 255 5 0 0 0 - - -; +#X obj 514 216 +~; +#X obj 514 41 hip~ 5; +#X obj 689 157 phasor~; +#X obj 689 213 phasor~; +#X obj 571 200 env~; +#X obj 514 365 +~; +#X obj 529 418 phasor~; +#X obj 529 437 expr~ sin($v1*3.1416*2)*$f2+$f3; +#X obj 513 492 +~; +#X obj 689 175 expr~ sin($v1*3.141593*2)*$f2+$f3; +#X obj 689 231 expr~ sin($v1*3.141593*2)*$f2+$f3; +#X obj 529 474 *~; +#X obj 530 257 expr~ sin($v1*$v2/$f3)*$f3*0.35; +#X obj 530 277 expr~ sin($v1*$v2/$f3)*$f3*0.35; +#X text 553 184 calcul du volume; +#X text 766 255 volume; +#X obj 71 464 vd~ \$0bar1; +#X obj 95 527 delwrite~ \$0bar1 50; +#X obj 555 517 delwrite~ \$0bar2 50; +#X obj 529 455 vd~ \$0bar2; +#X floatatom 245 514 5 0 0 0 - - -; +#X floatatom 142 420 5 0 0 0 - - -; +#X text 110 4 distorsion non-monotone (deux copies); +#X text 111 68 mix avec le son original pcq l'effet tout seul sonne +trop aigu (il élimine les graves); +#X text 111 16 l'effet est conjugué par un compresseur total de volume +\,; +#X text 111 28 c'est-à-dire qu'on annule le volume avant l'effet; +#X text 111 40 et qu'on le restitue ensuite \, pour que la distorsion +ait; +#X text 111 52 un impact à peu près constant \, quel que soit le +volume.; +#X obj 723 -83 tof/param /freq1 0 /g nbx; +#X obj 723 -63 tof/param /amp1 0 /g nbx; +#X obj 723 -43 tof/param /base1 0 /g nbx; +#X obj 723 -23 tof/param /freq2 0 /g nbx; +#X obj 723 -3 tof/param /amp2 0 /g nbx; +#X obj 723 17 tof/param /base2 0 /g nbx; +#X obj 723 37 tof/param /freqfeed 0 /g nbx; +#X obj 724 57 tof/param /ampfeed 0 /g nbx; +#X obj 724 79 tof/param /basefeed 0 /g nbx; +#X obj 724 99 tof/param /feedback 0 /g nbx; +#X connect 0 0 7 0; +#X connect 1 0 25 0; +#X connect 4 0 5 0; +#X connect 4 0 18 2; +#X connect 4 0 19 2; +#X connect 6 0 10 0; +#X connect 6 0 11 0; +#X connect 6 0 18 0; +#X connect 6 0 19 0; +#X connect 7 0 6 0; +#X connect 8 0 15 0; +#X connect 9 0 16 0; +#X connect 10 0 4 0; +#X connect 11 0 14 0; +#X connect 12 0 13 0; +#X connect 13 0 40 0; +#X connect 14 0 2 0; +#X connect 14 0 41 0; +#X connect 15 0 18 1; +#X connect 16 0 19 1; +#X connect 17 0 14 1; +#X connect 18 0 11 0; +#X connect 19 0 11 0; +#X connect 22 0 23 0; +#X connect 22 0 36 2; +#X connect 22 0 37 2; +#X connect 24 0 28 0; +#X connect 24 0 29 0; +#X connect 24 0 36 0; +#X connect 24 0 37 0; +#X connect 25 0 24 0; +#X connect 26 0 33 0; +#X connect 27 0 34 0; +#X connect 28 0 22 0; +#X connect 29 0 32 0; +#X connect 30 0 31 0; +#X connect 31 0 43 0; +#X connect 32 0 3 0; +#X connect 32 0 42 0; +#X connect 33 0 36 1; +#X connect 34 0 37 1; +#X connect 35 0 32 1; +#X connect 36 0 29 0; +#X connect 37 0 29 0; +#X connect 40 0 17 0; +#X connect 43 0 35 0; +#X connect 44 0 17 1; +#X connect 44 0 35 1; +#X connect 52 0 8 0; +#X connect 52 0 26 0; +#X connect 53 0 15 1; +#X connect 53 0 33 1; +#X connect 54 0 33 2; +#X connect 54 0 15 2; +#X connect 55 0 9 0; +#X connect 55 0 27 0; +#X connect 56 0 16 1; +#X connect 56 0 34 1; +#X connect 57 0 16 2; +#X connect 57 0 34 2; +#X connect 58 0 30 0; +#X connect 58 0 12 0; +#X connect 59 0 31 1; +#X connect 59 0 13 1; +#X connect 60 0 31 2; +#X connect 60 0 13 2; +#X connect 61 0 44 0; +#X restore 98 134 pd distortionnonmonotone; +#X obj 438 70 inlet params; +#X obj 214 177 tof/param /wet 0 /g slider 0 1; +#X obj 438 116 print PARAM_NOTFOUND; +#X obj 67 191 tof/crossfade~ 2; +#X msg 255 213 \$1 5; +#X obj 255 237 line~; +#X obj 438 92 tof/param route; +#X connect 2 0 4 0; +#X connect 2 0 8 0; +#X connect 3 0 4 1; +#X connect 3 0 8 1; +#X connect 4 0 8 2; +#X connect 4 1 8 3; +#X connect 5 0 11 0; +#X connect 6 0 9 0; +#X connect 8 0 0 0; +#X connect 8 1 1 0; +#X connect 9 0 10 0; +#X connect 10 0 8 4; +#X connect 11 0 7 0; diff --git a/distoSign~-help.pd b/distoSign~-help.pd new file mode 100644 index 0000000..fb4a311 --- /dev/null +++ b/distoSign~-help.pd @@ -0,0 +1,22 @@ +#N canvas 610 186 462 238 10; +#X obj -25 118 *~ 0.5; +#X obj 71 117 *~ 0.5; +#X obj -25 177 mtl/out~; +#X text -29 46 tags: fx~; +#X obj -25 94 osc~ 110; +#X obj 71 93 osc~ 110; +#X obj 193 106 hsl 100 15 0 1 0 0 \$0/distoSign/wet \$0/distoSign/wet_ +/distoSign/wet 105 7 0 8 -262144 -1 -1 0 1; +#X obj 193 126 hsl 100 15 0 1 0 0 \$0/distoSign/positive \$0/distoSign/positive_ +/distoSign/positive 105 7 0 8 -262144 -1 -1 0 1; +#X obj 193 146 hsl 100 15 0 1 0 0 \$0/distoSign/negative \$0/distoSign/negative_ +/distoSign/negative 105 7 0 8 -262144 -1 -1 0 1; +#X text -29 12 Description: A simple distortion. Positive and negative +distortion can be set independently.; +#X obj -26 146 mtl/distoSign~ /id distoSign; +#X connect 0 0 10 0; +#X connect 1 0 10 1; +#X connect 4 0 0 0; +#X connect 5 0 1 0; +#X connect 10 0 2 0; +#X connect 10 1 2 1; diff --git a/distoSign~.pd b/distoSign~.pd new file mode 100644 index 0000000..5996b69 --- /dev/null +++ b/distoSign~.pd @@ -0,0 +1,146 @@ +#N canvas 238 397 726 371 10; +#X obj 54 279 outlet~; +#X text 52 141 NEEDS ZEXY; +#X obj 53 164 inlet~; +#N canvas 501 275 730 557 disto 0; +#X obj -189 264 * -1; +#X msg -47 372 1 \$1; +#X obj -47 401 /; +#X obj 146 65 inlet; +#X obj -215 497 outlet~; +#X obj 117 169 -; +#X text 170 208 CLIPS AND THEN BOOSTS THE SIGNAL; +#X text -213 39 NEEDS ZEXY; +#X obj -217 359 clip~ -1 1; +#X obj -210 113 inlet~; +#X obj -133 59 inlet; +#X obj -123 177 -; +#X obj -52 289 t b f; +#X obj -215 418 *~ 1; +#X obj -43 316 -; +#X obj -47 348 / 2; +#X obj -216 391 +~ 0; +#X obj 116 381 t b f; +#X obj 125 436 +; +#X obj -215 460 +~ 0; +#X obj -6 456 / -2; +#X text -90 57 positive distort level (0-1); +#X text 194 63 negative distort level (0-1); +#X obj -123 218 / 1; +#X obj -13 227 / 1; +#X msg -122 148 1.00001 \$1; +#X msg 118 140 1.00001 \$1; +#X connect 0 0 8 1; +#X connect 0 0 12 0; +#X connect 0 0 18 0; +#X connect 1 0 2 0; +#X connect 2 0 13 1; +#X connect 3 0 25 0; +#X connect 5 0 24 0; +#X connect 8 0 16 0; +#X connect 9 0 8 0; +#X connect 10 0 26 0; +#X connect 11 0 23 0; +#X connect 12 0 14 0; +#X connect 12 1 14 1; +#X connect 13 0 19 0; +#X connect 14 0 15 0; +#X connect 15 0 1 0; +#X connect 16 0 13 0; +#X connect 17 0 18 0; +#X connect 17 1 18 1; +#X connect 18 0 20 0; +#X connect 19 0 4 0; +#X connect 20 0 16 1; +#X connect 23 0 0 0; +#X connect 24 0 8 2; +#X connect 24 0 14 0; +#X connect 24 0 17 0; +#X connect 25 0 11 0; +#X connect 26 0 5 0; +#X restore 182 227 pd disto; +#N canvas 652 186 730 557 disto 0; +#X obj -189 264 * -1; +#X msg -47 372 1 \$1; +#X obj -47 401 /; +#X obj 146 65 inlet; +#X obj -215 497 outlet~; +#X obj 117 169 -; +#X text 170 208 CLIPS AND THEN BOOSTS THE SIGNAL; +#X text -213 39 NEEDS ZEXY; +#X obj -217 359 clip~ -1 1; +#X obj -210 113 inlet~; +#X obj -133 59 inlet; +#X obj -123 177 -; +#X obj -52 289 t b f; +#X obj -215 418 *~ 1; +#X obj -43 316 -; +#X obj -47 348 / 2; +#X obj -216 391 +~ 0; +#X obj 116 381 t b f; +#X obj 125 436 +; +#X obj -215 460 +~ 0; +#X obj -6 456 / -2; +#X text -90 57 positive distort level (0-1); +#X text 195 59 negative distort level (0-1); +#X obj -123 218 / 1; +#X obj -13 227 / 1; +#X msg -122 148 1.00001 \$1; +#X msg 118 140 1.00001 \$1; +#X connect 0 0 8 1; +#X connect 0 0 12 0; +#X connect 0 0 18 0; +#X connect 1 0 2 0; +#X connect 2 0 13 1; +#X connect 3 0 25 0; +#X connect 5 0 24 0; +#X connect 8 0 16 0; +#X connect 9 0 8 0; +#X connect 10 0 26 0; +#X connect 11 0 23 0; +#X connect 12 0 14 0; +#X connect 12 1 14 1; +#X connect 13 0 19 0; +#X connect 14 0 15 0; +#X connect 15 0 1 0; +#X connect 16 0 13 0; +#X connect 17 0 18 0; +#X connect 17 1 18 1; +#X connect 18 0 20 0; +#X connect 19 0 4 0; +#X connect 20 0 16 1; +#X connect 23 0 0 0; +#X connect 24 0 8 2; +#X connect 24 0 14 0; +#X connect 24 0 17 0; +#X connect 25 0 11 0; +#X connect 26 0 5 0; +#X restore 67 225 pd disto; +#X obj 113 164 inlet~; +#X obj 114 279 outlet~; +#X obj 477 83 inlet params; +#X obj 181 253 tof/param /wet 0 /g slider 0 1; +#X obj 477 129 print PARAM_NOTFOUND; +#X obj 54 254 tof/crossfade~ 2; +#X obj 197 100 tof/param /positive 0 /g slider 0 1; +#X obj 218 119 tof/param /negative 0 /g slider 0 1; +#X msg 218 283 \$1 5; +#X obj 218 307 line~; +#X obj 477 105 tof/param route; +#X connect 2 0 4 0; +#X connect 2 0 10 0; +#X connect 3 0 10 3; +#X connect 4 0 10 2; +#X connect 5 0 3 0; +#X connect 5 0 10 1; +#X connect 7 0 15 0; +#X connect 8 0 13 0; +#X connect 10 0 0 0; +#X connect 10 1 6 0; +#X connect 11 0 4 1; +#X connect 11 0 3 1; +#X connect 12 0 4 2; +#X connect 12 0 3 2; +#X connect 13 0 14 0; +#X connect 14 0 10 4; +#X connect 15 0 9 0; diff --git a/distoTanh~-help.pd b/distoTanh~-help.pd new file mode 100644 index 0000000..a2fc55d --- /dev/null +++ b/distoTanh~-help.pd @@ -0,0 +1,19 @@ +#N canvas 509 200 434 220 10; +#X obj -35 88 *~ 0.5; +#X obj 46 88 *~ 0.5; +#X text -38 9 Description: A distortion using expr~ tanh; +#X obj -36 155 mtl/out~; +#X obj -36 64 osc~ 110; +#X obj 47 63 osc~ 110; +#X text -37 27 tags: fx~; +#X obj 149 94 hsl 100 15 0 1 0 0 \$0/tanh/wet \$0/tanh/wet_ /tanh/wet +105 7 0 8 -262144 -1 -1 0 1; +#X obj 149 114 hsl 100 15 1 100 0 0 \$0/tanh/amount \$0/tanh/amount_ +/tanh/amount 105 7 0 8 -262144 -1 -1 0 1; +#X obj -35 113 mtl/distoTanh~ /id tanh; +#X connect 0 0 9 0; +#X connect 1 0 9 1; +#X connect 4 0 0 0; +#X connect 5 0 1 0; +#X connect 9 0 3 0; +#X connect 9 1 3 1; diff --git a/distoTanh~.pd b/distoTanh~.pd new file mode 100644 index 0000000..557d187 --- /dev/null +++ b/distoTanh~.pd @@ -0,0 +1,42 @@ +#N canvas 105 155 539 284 10; +#X obj 33 21 inlet~; +#X obj 31 231 outlet~; +#X obj 82 209 outlet~; +#X obj 95 22 inlet~; +#N canvas 1 57 450 300 fx 0; +#X obj 83 182 outlet~; +#X obj 133 182 outlet~; +#X obj 83 42 inlet~; +#X obj 133 42 inlet~; +#X obj 83 102 expr~ tanh($v1*$f2); +#X obj 134 125 expr~ tanh($v1*$f2); +#X obj 231 42 inlet; +#X connect 2 0 4 0; +#X connect 3 0 5 0; +#X connect 4 0 0 0; +#X connect 5 0 1 0; +#X connect 6 0 5 1; +#X connect 6 0 4 1; +#X restore 81 107 pd fx; +#X obj 393 81 inlet params; +#X obj 126 131 tof/param /wet 0 /g slider 0 1; +#X obj 393 127 print PARAM_NOTFOUND; +#X obj 32 179 tof/crossfade~ 2; +#X obj 152 84 tof/param /amount 1 /g slider 1 100; +#X msg 235 220 \$1 5; +#X obj 235 244 line~; +#X obj 393 103 tof/param route; +#X connect 0 0 4 0; +#X connect 0 0 8 0; +#X connect 3 0 4 1; +#X connect 3 0 8 1; +#X connect 4 0 8 2; +#X connect 4 1 8 3; +#X connect 5 0 12 0; +#X connect 6 0 10 0; +#X connect 8 0 1 0; +#X connect 8 1 2 0; +#X connect 9 0 4 2; +#X connect 10 0 11 0; +#X connect 11 0 8 4; +#X connect 12 0 7 0; diff --git a/dodeca-help.pd b/dodeca-help.pd new file mode 100644 index 0000000..79615dc --- /dev/null +++ b/dodeca-help.pd @@ -0,0 +1,38 @@ +#N canvas 669 81 385 377 10; +#X floatatom 72 198 5 0 0 0 - - -; +#X floatatom 34 251 5 0 0 0 - - -; +#X floatatom 153 201 5 0 0 0 - - -; +#X obj 72 252 mtof; +#X obj 72 274 osc~; +#X obj 33 152 f; +#X obj 62 152 + 1; +#X obj 33 174 % 60; +#X obj 33 196 + 60; +#X floatatom 84 79 5 0 0 0 - - -; +#X obj 33 121 metro 150; +#X obj 33 100 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X text 150 182 change the seed \, resynths the serie; +#X text 21 -4 Description: Given a seed \, the serie will always be +the same.; +#X text 21 24 Comments: gets a note from the serie; +#X obj 84 98 mtl/bpmToMs; +#X obj 72 223 mtl/dodeca; +#X obj 72 304 mtl/out~; +#X text 22 39 tags: musical; +#X connect 0 0 16 0; +#X connect 2 0 16 1; +#X connect 3 0 4 0; +#X connect 4 0 17 0; +#X connect 4 0 17 1; +#X connect 5 0 6 0; +#X connect 5 0 7 0; +#X connect 6 0 5 1; +#X connect 7 0 8 0; +#X connect 8 0 16 0; +#X connect 9 0 15 0; +#X connect 10 0 5 0; +#X connect 11 0 10 0; +#X connect 15 0 10 1; +#X connect 16 0 1 0; +#X connect 16 0 3 0; diff --git a/dodeca.pd b/dodeca.pd new file mode 100644 index 0000000..f4850a4 --- /dev/null +++ b/dodeca.pd @@ -0,0 +1,66 @@ +#N canvas 43 71 721 504 10; +#X obj 353 190 until; +#X msg 510 123 clear; +#X obj 383 319 pack f f; +#X obj 384 368 tabwrite \$0-serie; +#N canvas 0 0 450 300 (subpatch) 0; +#X array \$0-serie 12 float 2; +#X coords 0 11 11 0 120 120 1; +#X restore 105 273 graph; +#X obj 62 45 inlet; +#X obj 28 133 tabread \$0-serie; +#X obj 35 199 outlet; +#X floatatom 590 289 5 0 0 0 - - -; +#X obj 498 233 f 0; +#X obj 533 232 + 1; +#X obj 353 149 t b f b; +#X obj 328 113 inlet; +#X obj 399 54 loadbang; +#X obj 403 87 f \$1; +#X text 337 8 seed (resets it); +#X text 67 11 offset; +#X msg 512 156 0; +#X obj 367 219 t b b; +#X floatatom 331 56 5 0 0 0 - - -; +#X msg 503 191 seed \$1; +#X floatatom 135 48 5 0 0 0 - - -; +#X floatatom 103 196 5 0 0 0 - - -; +#X obj 70 75 t f f; +#X text 189 -28 serial music abstraction; +#X msg 353 168 12; +#X obj 205 124 div 12; +#X obj 32 112 % 12; +#X text 110 248 this is a permutation; +#X text 690 -18 @uses zexy; +#X obj 32 170 expr $f1+12*$f2; +#X obj 384 256 cyclone/urn 12; +#X connect 0 0 18 0; +#X connect 1 0 31 0; +#X connect 2 0 3 0; +#X connect 5 0 23 0; +#X connect 6 0 30 0; +#X connect 9 0 10 0; +#X connect 9 0 8 0; +#X connect 9 0 2 1; +#X connect 10 0 9 1; +#X connect 11 0 25 0; +#X connect 11 1 20 0; +#X connect 11 2 1 0; +#X connect 11 2 17 0; +#X connect 12 0 11 0; +#X connect 13 0 14 0; +#X connect 14 0 11 0; +#X connect 17 0 9 1; +#X connect 18 0 31 0; +#X connect 18 1 9 0; +#X connect 19 0 11 0; +#X connect 20 0 31 0; +#X connect 21 0 23 0; +#X connect 23 0 27 0; +#X connect 23 1 26 0; +#X connect 25 0 0 0; +#X connect 26 0 30 1; +#X connect 27 0 6 0; +#X connect 30 0 22 0; +#X connect 30 0 7 0; +#X connect 31 0 2 0; diff --git a/doubleClick-help.pd b/doubleClick-help.pd new file mode 100644 index 0000000..169433f --- /dev/null +++ b/doubleClick-help.pd @@ -0,0 +1,24 @@ +#N canvas 282 79 541 436 10; +#X obj 31 214 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 31 260 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 20 9 Description: Detects double clicks.; +#X msg 142 208 175; +#X msg 187 207 300; +#X obj 31 235 mtl/doubleClick 300; +#X obj 33 126 cyclone/MouseState; +#X obj 32 56 loadbang; +#X obj 35 156 sel 1; +#X msg 31 87 poll; +#X text 49 258 Argument 1 and right inlet : Determines the double click +interval (defaults to 175).; +#X text 20 27 tags: ui; +#X connect 0 0 5 0; +#X connect 3 0 5 1; +#X connect 4 0 5 1; +#X connect 5 0 1 0; +#X connect 6 0 8 0; +#X connect 7 0 9 0; +#X connect 8 0 0 0; +#X connect 9 0 6 0; diff --git a/doubleClick.pd b/doubleClick.pd new file mode 100644 index 0000000..05e3fae --- /dev/null +++ b/doubleClick.pd @@ -0,0 +1,19 @@ +#N canvas 0 0 450 300 10; +#X obj 125 104 timer; +#X obj 125 148 b; +#X obj 126 48 inlet; +#X obj 126 72 t b b; +#X obj 125 172 outlet; +#X obj 125 128 moses 175; +#X obj 241 34 loadbang; +#X obj 334 89 inlet; +#X obj 241 55 tof/argument 1 175; +#X connect 0 0 5 0; +#X connect 1 0 4 0; +#X connect 2 0 3 0; +#X connect 3 0 0 0; +#X connect 3 1 0 1; +#X connect 5 0 1 0; +#X connect 6 0 8 0; +#X connect 7 0 5 1; +#X connect 8 0 5 1; diff --git a/drips~-help.pd b/drips~-help.pd new file mode 100644 index 0000000..aea4b60 --- /dev/null +++ b/drips~-help.pd @@ -0,0 +1,10 @@ +#N canvas 539 355 309 233 10; +#X text 18 8 Description: Generates a dripping sound.; +#X text 16 27 Comment: Taken from Andy Farnell's work.; +#X obj 22 85 mtl/drips~; +#X obj 23 143 mtl/out~; +#X obj 22 114 mtl/punch~; +#X text 24 52 tags: synthesize~; +#X connect 2 0 4 0; +#X connect 4 0 3 0; +#X connect 4 0 3 1; diff --git a/drips~.pd b/drips~.pd new file mode 100644 index 0000000..c531584 --- /dev/null +++ b/drips~.pd @@ -0,0 +1,37 @@ +#N canvas 0 0 812 584 10; +#N canvas 0 0 946 675 drip 0; +#X obj 167 72 noise~; +#X obj 53 72 noise~; +#X obj 281 71 noise~; +#X obj 65 105 lop~ 16; +#X obj 429 208 /~; +#X obj 428 315 clip~ 0 0.9; +#X obj 181 98 lop~ 0.01; +#X obj 428 233 hip~ 10000; +#X obj 359 100 lop~ 1900; +#X obj 429 294 *~; +#X obj 430 269 *~ 0.03; +#X obj 467 358 +~ 1000; +#X obj 66 131 *~ 300000; +#X obj 466 394 clip~ 1000 10000; +#X obj 424 493 outlet~; +#X obj 429 426 vcf~ 20; +#X connect 0 0 6 0; +#X connect 1 0 3 0; +#X connect 2 0 8 0; +#X connect 3 0 12 0; +#X connect 4 0 7 0; +#X connect 5 0 15 0; +#X connect 6 0 4 0; +#X connect 7 0 10 0; +#X connect 8 0 4 1; +#X connect 9 0 5 0; +#X connect 10 0 9 0; +#X connect 10 0 9 1; +#X connect 11 0 13 0; +#X connect 12 0 11 0; +#X connect 13 0 15 1; +#X connect 15 0 14 0; +#X restore 335 162 pd drip; +#X obj 333 341 outlet~; +#X connect 0 0 1 0; diff --git a/dtmfBusy~-help.pd b/dtmfBusy~-help.pd new file mode 100644 index 0000000..a22f385 --- /dev/null +++ b/dtmfBusy~-help.pd @@ -0,0 +1,12 @@ +#N canvas 337 122 290 232 10; +#X text 20 9 Description: DTMF telephone sound; +#X text 18 29 Author: Alexandre Quessy; +#X text 18 46 Version: 1; +#X obj 20 100 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 20 121 mtl/dtmfBusy~; +#X obj 21 143 mtl/out~; +#X text 19 63 tags: synthesize~; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 4 1 5 1; diff --git a/dtmfBusy~.pd b/dtmfBusy~.pd new file mode 100644 index 0000000..3238992 --- /dev/null +++ b/dtmfBusy~.pd @@ -0,0 +1,45 @@ +#N canvas 0 22 454 304 10; +#X obj 48 103 t b b b; +#X obj 53 165 osc~; +#X obj 95 165 osc~; +#X msg 187 141 bang; +#X msg 197 182 0; +#X obj 185 161 t b b; +#X msg 59 144 480; +#X msg 100 146 620; +#X obj 277 154 delay 500; +#X obj 264 113 delay 500; +#X msg 161 78 stop; +#X obj 126 55 select 1 0; +#X obj 49 254 outlet~; +#X obj 127 28 inlet; +#X text 198 34 expects 0 or 1; +#X msg 165 180 1; +#X obj 52 198 *~ 1; +#X obj 122 270 outlet~; +#X obj 125 214 *~ 1; +#X connect 0 0 6 0; +#X connect 0 1 7 0; +#X connect 0 2 3 0; +#X connect 1 0 16 0; +#X connect 2 0 18 0; +#X connect 3 0 5 0; +#X connect 4 0 16 1; +#X connect 4 0 18 1; +#X connect 5 0 15 0; +#X connect 5 1 8 0; +#X connect 6 0 1 0; +#X connect 7 0 2 0; +#X connect 8 0 4 0; +#X connect 8 0 9 0; +#X connect 9 0 3 0; +#X connect 10 0 9 0; +#X connect 10 0 8 0; +#X connect 10 0 4 0; +#X connect 11 0 0 0; +#X connect 11 1 10 0; +#X connect 13 0 11 0; +#X connect 15 0 16 1; +#X connect 15 0 18 1; +#X connect 16 0 12 0; +#X connect 18 0 17 0; diff --git a/dtmfHandUp~-help.pd b/dtmfHandUp~-help.pd new file mode 100644 index 0000000..abf9395 --- /dev/null +++ b/dtmfHandUp~-help.pd @@ -0,0 +1,12 @@ +#N canvas 1 57 279 246 10; +#X text 17 9 Description: DTMF telephone sound; +#X text 16 24 Author: Alexandre Quessy; +#X text 16 42 Version: 1; +#X obj 25 99 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 25 120 mtl/dtmfHandUp~; +#X obj 26 145 mtl/out~; +#X text 17 57 tags: synthesize~; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 4 1 5 1; diff --git a/dtmfHandUp~.pd b/dtmfHandUp~.pd new file mode 100644 index 0000000..dbfdd77 --- /dev/null +++ b/dtmfHandUp~.pd @@ -0,0 +1,38 @@ +#N canvas 0 22 506 445 10; +#X msg 176 96 bang; +#X msg 230 190 0; +#X obj 201 129 t b b; +#X obj 261 159 delay 250; +#X obj 298 114 delay 250; +#X msg 250 68 stop; +#X obj 30 201 *~; +#X obj 67 42 select 1 0; +#X obj 31 242 outlet~; +#X text 303 66 triggers the sound; +#X obj 70 3 inlet; +#X text 122 4 expects 0 or 1; +#X msg 179 167 1; +#X obj 116 218 *~; +#X obj 117 259 outlet~; +#X obj 25 147 osc~ 480; +#X obj 97 147 osc~ 620; +#X connect 0 0 2 0; +#X connect 1 0 6 1; +#X connect 1 0 13 1; +#X connect 2 0 12 0; +#X connect 2 1 3 0; +#X connect 3 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 0 0; +#X connect 5 0 4 0; +#X connect 5 0 3 0; +#X connect 5 0 1 0; +#X connect 6 0 8 0; +#X connect 7 0 0 0; +#X connect 7 1 5 0; +#X connect 10 0 7 0; +#X connect 12 0 6 1; +#X connect 12 0 13 1; +#X connect 13 0 14 0; +#X connect 15 0 6 0; +#X connect 16 0 13 0; diff --git a/dtmfHurryUp~-help.pd b/dtmfHurryUp~-help.pd new file mode 100644 index 0000000..e6c5e45 --- /dev/null +++ b/dtmfHurryUp~-help.pd @@ -0,0 +1,12 @@ +#N canvas 175 225 414 240 10; +#X text 14 9 Description: DTMF telephone sound; +#X text 13 26 Author: Alexandre Quessy; +#X text 13 42 Version: 1; +#X obj 19 104 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 19 124 mtl/dtmfHurryUp~; +#X obj 18 147 mtl/out~; +#X text 16 62 tags: synthesize~; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 4 1 5 1; diff --git a/dtmfHurryUp~.pd b/dtmfHurryUp~.pd new file mode 100644 index 0000000..52ef746 --- /dev/null +++ b/dtmfHurryUp~.pd @@ -0,0 +1,65 @@ +#N canvas 174 193 463 399 10; +#X obj 3 159 osc~; +#X obj 45 159 osc~; +#X msg 197 96 bang; +#X msg 254 187 0; +#X obj 218 130 t b b; +#X obj 78 161 osc~; +#X obj 113 161 osc~; +#X obj 31 92 t b b b b b; +#X msg 1 138 1400; +#X msg 42 140 2060; +#X msg 75 142 2450; +#X msg 110 142 2600; +#X obj 285 103 delay 100; +#X obj 281 156 delay 100; +#X msg 229 73 stop; +#X obj 8 208 *~; +#X obj 126 46 select 1 0; +#X obj 8 292 outlet~; +#X obj 129 12 inlet; +#X msg 206 164 1; +#X text 184 11 0 or 1; +#X obj 71 211 *~; +#X obj 71 295 outlet~; +#X obj 133 217 *~; +#X obj 133 301 outlet~; +#X obj 195 219 *~; +#X obj 195 303 outlet~; +#X connect 0 0 15 0; +#X connect 1 0 21 0; +#X connect 2 0 4 0; +#X connect 3 0 15 1; +#X connect 3 0 25 1; +#X connect 3 0 23 1; +#X connect 3 0 21 1; +#X connect 4 0 19 0; +#X connect 4 1 13 0; +#X connect 5 0 23 0; +#X connect 6 0 25 0; +#X connect 7 0 8 0; +#X connect 7 1 9 0; +#X connect 7 2 2 0; +#X connect 7 3 10 0; +#X connect 7 4 11 0; +#X connect 8 0 0 0; +#X connect 9 0 1 0; +#X connect 10 0 5 0; +#X connect 11 0 6 0; +#X connect 12 0 2 0; +#X connect 13 0 3 0; +#X connect 13 0 12 0; +#X connect 14 0 12 0; +#X connect 14 0 13 0; +#X connect 14 0 3 0; +#X connect 15 0 17 0; +#X connect 16 0 7 0; +#X connect 16 1 14 0; +#X connect 18 0 16 0; +#X connect 19 0 15 1; +#X connect 19 0 25 1; +#X connect 19 0 23 1; +#X connect 19 0 21 1; +#X connect 21 0 22 0; +#X connect 23 0 24 0; +#X connect 25 0 26 0; diff --git a/dtmfNumber~-help.pd b/dtmfNumber~-help.pd new file mode 100644 index 0000000..f94a7ba --- /dev/null +++ b/dtmfNumber~-help.pd @@ -0,0 +1,11 @@ +#N canvas 236 89 236 288 10; +#X text 13 12 Description: DTMF telephone sound; +#X text 12 30 Author: Alexandre Quessy; +#X text 12 47 Version: 1; +#X floatatom 17 111 5 0 0 0 - - -; +#X obj 17 155 mtl/dtmfNumber~; +#X obj 18 185 mtl/out~; +#X text 13 68 tags: synthesize~; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 4 1 5 1; diff --git a/dtmfNumber~.pd b/dtmfNumber~.pd new file mode 100644 index 0000000..48dbf27 --- /dev/null +++ b/dtmfNumber~.pd @@ -0,0 +1,112 @@ +#N canvas 0 22 792 718 10; +#X msg 130 333 770; +#X msg 133 368 852; +#X msg 311 458 1209; +#X msg 358 457 1336; +#X msg 404 457 1477; +#X msg 463 456 1633; +#X msg 228 224 1; +#X msg 308 226 2; +#X msg 378 227 3; +#X msg 233 280 4; +#X msg 309 280 5; +#X msg 374 280 6; +#X msg 233 342 7; +#X msg 309 335 8; +#X msg 371 335 9; +#X msg 304 398 0; +#X msg 238 402 *; +#X msg 362 401 #; +#X obj 40 484 osc~; +#X obj 299 563 osc~; +#X msg 438 225 A; +#X msg 437 285 B; +#X msg 438 335 C; +#X msg 439 396 D; +#X obj 168 138 select 0 1 2 3 4 5 6 7 8 9 # * A B C D; +#X msg 143 401 941; +#X msg 131 295 697; +#X obj 298 664 outlet~; +#X obj 39 655 outlet~; +#X obj 228 49 inlet; +#X text 221 23 phone key; +#X obj 68 453 t f; +#X obj 312 534 t f; +#X obj 250 91 t a b; +#X obj 61 564 *~; +#X obj 282 596 *~; +#X obj 191 523 *~ 1; +#X msg 182 482 1; +#X msg 223 487 0; +#X obj 214 450 delay 100; +#X connect 0 0 31 0; +#X connect 1 0 31 0; +#X connect 2 0 32 0; +#X connect 3 0 32 0; +#X connect 4 0 32 0; +#X connect 5 0 32 0; +#X connect 6 0 26 0; +#X connect 6 0 2 0; +#X connect 7 0 26 0; +#X connect 7 0 3 0; +#X connect 8 0 26 0; +#X connect 8 0 4 0; +#X connect 9 0 0 0; +#X connect 9 0 2 0; +#X connect 10 0 0 0; +#X connect 10 0 3 0; +#X connect 11 0 4 0; +#X connect 11 0 0 0; +#X connect 12 0 1 0; +#X connect 12 0 2 0; +#X connect 13 0 1 0; +#X connect 13 0 3 0; +#X connect 14 0 1 0; +#X connect 14 0 4 0; +#X connect 15 0 25 0; +#X connect 15 0 3 0; +#X connect 16 0 25 0; +#X connect 16 0 2 0; +#X connect 17 0 25 0; +#X connect 17 0 4 0; +#X connect 18 0 34 0; +#X connect 19 0 35 0; +#X connect 20 0 26 0; +#X connect 20 0 5 0; +#X connect 21 0 0 0; +#X connect 21 0 5 0; +#X connect 22 0 1 0; +#X connect 22 0 5 0; +#X connect 23 0 25 0; +#X connect 23 0 5 0; +#X connect 24 0 15 0; +#X connect 24 1 6 0; +#X connect 24 2 7 0; +#X connect 24 3 8 0; +#X connect 24 4 9 0; +#X connect 24 5 10 0; +#X connect 24 6 11 0; +#X connect 24 7 12 0; +#X connect 24 8 13 0; +#X connect 24 9 14 0; +#X connect 24 10 17 0; +#X connect 24 11 16 0; +#X connect 24 12 20 0; +#X connect 24 13 21 0; +#X connect 24 14 22 0; +#X connect 24 15 23 0; +#X connect 25 0 31 0; +#X connect 26 0 31 0; +#X connect 29 0 33 0; +#X connect 31 0 18 0; +#X connect 32 0 19 0; +#X connect 33 0 24 0; +#X connect 33 1 37 0; +#X connect 33 1 39 0; +#X connect 34 0 28 0; +#X connect 35 0 27 0; +#X connect 36 0 34 1; +#X connect 36 0 35 1; +#X connect 37 0 36 0; +#X connect 38 0 36 0; +#X connect 39 0 38 0; diff --git a/dtmfRing~-help.pd b/dtmfRing~-help.pd new file mode 100644 index 0000000..aac067f --- /dev/null +++ b/dtmfRing~-help.pd @@ -0,0 +1,12 @@ +#N canvas 184 139 265 252 10; +#X text 23 22 Description: DTMF telephone sound; +#X text 22 39 Author: Alexandre Quessy; +#X text 22 56 Version: 1; +#X obj 24 116 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 24 137 mtl/dtmfRing~; +#X obj 24 161 mtl/out~; +#X text 22 75 tags: synthesize~; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 4 1 5 1; diff --git a/dtmfRing~.pd b/dtmfRing~.pd new file mode 100644 index 0000000..82e17f6 --- /dev/null +++ b/dtmfRing~.pd @@ -0,0 +1,39 @@ +#N canvas 496 263 808 507 10; +#X obj 303 267 delay 2000; +#X obj 413 138 delay 4000; +#X msg 158 260 0; +#X obj 118 133 t b b; +#X msg 182 91 stop; +#X obj -49 213 *~; +#X obj 94 33 select 1 0; +#X obj -64 264 outlet~; +#X obj 95 0 inlet; +#X text 148 2 expects 0 or 1; +#X msg 128 176 1; +#X obj 17 265 outlet~; +#X obj 5 239 *~; +#X obj 303 87 t b b b; +#X obj -58 187 osc~ 440; +#X obj 7 192 osc~ 480; +#X msg 413 159 bang; +#X connect 0 0 2 0; +#X connect 0 0 1 0; +#X connect 1 0 16 0; +#X connect 2 0 5 1; +#X connect 2 0 12 1; +#X connect 3 0 10 0; +#X connect 3 1 0 0; +#X connect 4 0 2 0; +#X connect 4 0 1 0; +#X connect 4 0 0 0; +#X connect 5 0 7 0; +#X connect 6 0 3 0; +#X connect 6 1 4 0; +#X connect 6 1 13 0; +#X connect 8 0 6 0; +#X connect 10 0 5 1; +#X connect 10 0 12 1; +#X connect 12 0 11 0; +#X connect 14 0 5 0; +#X connect 15 0 12 0; +#X connect 16 0 3 0; diff --git a/echoBp~-help.pd b/echoBp~-help.pd new file mode 100644 index 0000000..d436297 --- /dev/null +++ b/echoBp~-help.pd @@ -0,0 +1,94 @@ +#N canvas 172 143 499 499 10; +#X obj 323 93 hsl 128 15 0 2000 0 0 empty delay.l empty -2 -8 0 10 +-262144 -1 -1 1900 1; +#X obj 323 141 hsl 128 15 0 2000 0 0 empty delay.r empty -2 -8 0 10 +-262144 -1 -1 4800 1; +#X obj 323 235 hsl 128 15 0 127 0 0 empty frequency empty -2 -8 0 10 +-262144 -1 -1 3800 1; +#X obj 324 189 hsl 128 15 0 127 0 0 empty feedback empty -2 -8 0 10 +-262144 -1 -1 11900 1; +#X obj 323 280 hsl 128 15 0 127 0 0 empty q empty -2 -8 0 10 -262144 +-1 -1 2700 1; +#X obj 320 323 tgl 17 0 empty routing empty 17 7 0 10 -262144 -1 -1 +0 1; +#X text 1 58 Author: Roman Haefeli; +#X text 2 72 Version: 2007-11-04; +#X obj 1 -21 cnv 15 690 30 empty empty echoBp~ 2 12 1 14 -233017 -66577 +0; +#X obj 15 402 cnv 15 400 40 empty empty empty 20 12 0 14 -258699 -66577 +0; +#X text 17 403 warning:; +#X text 17 421 high q and high feedback can show unstable behaviour. +; +#X obj 324 49 hsl 128 15 0 1 0 0 empty frequency empty -2 -8 0 10 -262144 +-1 -1 12700 1; +#X obj 20 258 mtl/out~; +#X msg 320 114 /delayl \$1; +#X msg 320 162 /delayr \$1; +#X msg 321 209 /feedback \$1; +#X msg 320 255 /frequency \$1; +#X msg 320 300 /q \$1; +#X msg 320 345 /routing \$1; +#X msg 321 69 /wet \$1; +#X obj 20 223 mtl/echoBp~ /id fbdel; +#X obj 20 171 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 +1; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 20 196 pd generate~; +#X text 2 41 tag: fx~; +#X text 1 12 Description: stereo delay with a bandpass filter in the +feedback loop.; +#X obj 407 345 tof/paramGui; +#X obj 407 325 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X connect 0 0 14 0; +#X connect 1 0 15 0; +#X connect 2 0 17 0; +#X connect 3 0 16 0; +#X connect 4 0 18 0; +#X connect 5 0 19 0; +#X connect 12 0 20 0; +#X connect 14 0 21 2; +#X connect 15 0 21 2; +#X connect 16 0 21 2; +#X connect 17 0 21 2; +#X connect 18 0 21 2; +#X connect 19 0 21 2; +#X connect 20 0 21 2; +#X connect 21 0 13 0; +#X connect 21 1 13 1; +#X connect 22 0 23 0; +#X connect 23 0 21 0; +#X connect 23 1 21 1; +#X connect 27 0 26 0; diff --git a/echoBp~.pd b/echoBp~.pd new file mode 100644 index 0000000..1eab977 --- /dev/null +++ b/echoBp~.pd @@ -0,0 +1,139 @@ +#N canvas 294 281 682 266 10; +#X text 333 81 feedback 0-127; +#X text 334 97 frequency 0-127; +#X text 334 110 q 0-127; +#X text 334 125 routing 0/1; +#X text 337 21 parameters:; +#X text 341 191 Author: Roman Haefeli; +#X text 334 49 delay.l <1-5000ms>; +#X text 334 65 delay.r <1-5000ms>; +#X text 333 140 switch 0/1; +#X text 340 176 Version: 2007-11-04; +#N canvas 20 57 814 783 echobp 0; +#X obj 131 718 delwrite~ \$0-fildelr 5000; +#X obj 33 737 delwrite~ \$0-fildell 5000; +#X obj 32 182 delread~ \$0-fildell; +#X obj 103 153 delread~ \$0-fildelr; +#X obj 32 281 *~; +#X obj 103 283 *~; +#X obj 33 433 *~; +#X obj 60 434 *~; +#X obj 104 432 *~; +#X obj 131 432 *~; +#X obj 312 318 * -1; +#X obj 312 339 + 1; +#X obj 33 680 *~; +#X obj 131 680 *~; +#X obj 131 653 bp~; +#X obj 191 608 mtof; +#X obj 191 587 + 47; +#X obj 272 578 + 1; +#X obj 272 625 +; +#X obj 272 603 * 0.4; +#X obj 53 215 outlet~; +#X obj 130 219 outlet~; +#X obj 59 310 inlet~; +#X obj 131 307 inlet~; +#X obj 290 184 pack f 20; +#X obj 290 205 line~; +#X obj 312 360 pack f 20; +#X obj 312 381 line~; +#X obj 239 361 pack f 20; +#X obj 239 382 line~; +#X obj 33 649 bp~; +#X obj 272 560 * 0.031496; +#X obj 191 543 min 127; +#X obj 191 523 max 0; +#X obj 272 540 min 127; +#X obj 272 520 max 0; +#X obj 290 143 min 127; +#X obj 290 123 max 0; +#X obj 191 567 * 0.62; +#X obj 290 164 / 160; +#X obj 482 35 tof/param /delayl 100 /g slider 1 10000; +#X obj 488 61 tof/param /delayr 100 /g slider 1 10000; +#X obj 484 85 tof/param /feedback 0 /g slider 0 127; +#X obj 499 109 tof/param /routing 0 /g tgl; +#X obj 498 131 tof/param /frequency 100 /g slider 0 127; +#X obj 494 155 tof/param /q 0 /g slider 0 127; +#X connect 2 0 4 0; +#X connect 2 0 20 0; +#X connect 3 0 5 0; +#X connect 3 0 21 0; +#X connect 4 0 6 0; +#X connect 4 0 7 0; +#X connect 5 0 8 0; +#X connect 5 0 9 0; +#X connect 6 0 30 0; +#X connect 7 0 14 0; +#X connect 8 0 30 0; +#X connect 9 0 14 0; +#X connect 10 0 11 0; +#X connect 11 0 26 0; +#X connect 12 0 1 0; +#X connect 13 0 0 0; +#X connect 14 0 13 0; +#X connect 15 0 14 1; +#X connect 15 0 30 1; +#X connect 16 0 15 0; +#X connect 17 0 14 2; +#X connect 17 0 19 0; +#X connect 17 0 30 2; +#X connect 18 0 12 1; +#X connect 18 0 13 1; +#X connect 19 0 18 0; +#X connect 22 0 6 0; +#X connect 22 0 7 0; +#X connect 23 0 8 0; +#X connect 23 0 9 0; +#X connect 24 0 25 0; +#X connect 25 0 5 1; +#X connect 25 0 4 1; +#X connect 26 0 27 0; +#X connect 27 0 9 1; +#X connect 27 0 6 1; +#X connect 28 0 29 0; +#X connect 29 0 7 1; +#X connect 29 0 8 1; +#X connect 30 0 12 0; +#X connect 31 0 17 0; +#X connect 32 0 38 0; +#X connect 33 0 32 0; +#X connect 34 0 31 0; +#X connect 35 0 34 0; +#X connect 36 0 39 0; +#X connect 37 0 36 0; +#X connect 38 0 16 0; +#X connect 39 0 24 0; +#X connect 40 0 2 0; +#X connect 41 0 3 0; +#X connect 42 0 37 0; +#X connect 43 0 28 0; +#X connect 43 0 10 0; +#X connect 44 0 33 0; +#X connect 45 0 35 0; +#X restore 69 39 pd echobp; +#X obj 21 14 inlet~; +#X obj 71 14 inlet~; +#X obj 22 105 outlet~; +#X obj 71 105 outlet~; +#X obj 21 63 tof/crossfade~ 2; +#X obj 499 -8 inlet params; +#X obj 499 14 tof/paramRoute; +#X obj 499 38 print PARAM_NOTFOUND; +#X obj 159 -6 tof/param /wet 0 /g slider 0 1; +#X obj 159 37 line~; +#X msg 159 16 \$1 5; +#X connect 10 0 15 2; +#X connect 10 1 15 3; +#X connect 11 0 10 0; +#X connect 11 0 15 0; +#X connect 12 0 10 1; +#X connect 12 0 15 1; +#X connect 15 0 13 0; +#X connect 15 1 14 0; +#X connect 16 0 17 0; +#X connect 17 0 18 0; +#X connect 19 0 21 0; +#X connect 20 0 15 4; +#X connect 21 0 20 0; diff --git a/echoRobot~-help.pd b/echoRobot~-help.pd new file mode 100644 index 0000000..93e761a --- /dev/null +++ b/echoRobot~-help.pd @@ -0,0 +1,49 @@ +#N canvas 618 57 435 205 10; +#X obj 16 133 mtl/out~; +#X text 15 24 tags: fx~; +#X obj 15 56 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1 +; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 15 81 pd generate~; +#X obj 210 86 hsl 100 15 0 1 0 0 \$0/echorobot/wet \$0/echorobot/wet_ +/echorobot/wet 105 7 0 8 -262144 -1 -1 0 1; +#X obj 210 106 hsl 100 15 1 100 0 0 \$0/echorobot/amount \$0/echorobot/amount_ +/echorobot/amount 105 7 0 8 -262144 -1 -1 1900 1; +#X text 14 8 Description: Basic echo.; +#X obj 16 106 mtl/echoRobot~ /id echorobot; +#X connect 2 0 3 0; +#X connect 3 0 7 0; +#X connect 3 1 7 1; +#X connect 7 0 0 0; +#X connect 7 1 0 1; diff --git a/echoRobot~.pd b/echoRobot~.pd new file mode 100644 index 0000000..150f6ff --- /dev/null +++ b/echoRobot~.pd @@ -0,0 +1,54 @@ +#N canvas 344 463 628 279 10; +#N canvas 457 452 466 316 robotfeedback 0; +#X obj 260 117 *~ 0.9; +#X obj 33 118 *~ 0.9; +#X obj 31 173 *~ 0.5; +#X obj 220 179 *~ 0.5; +#X obj 32 89 delwrite~ \$0-elevate 1000; +#X obj 225 88 delwrite~ \$0-trashed 1000; +#X obj 221 152 delread~ \$0-trashed 1000; +#X obj 336 38 inlet; +#X obj 32 65 inlet~; +#X obj 226 61 inlet~; +#X obj 31 200 outlet~; +#X obj 221 206 outlet~; +#X obj 32 149 delread~ \$0-elevate 1000; +#X connect 0 0 5 0; +#X connect 1 0 4 0; +#X connect 2 0 10 0; +#X connect 3 0 11 0; +#X connect 6 0 0 0; +#X connect 6 0 3 0; +#X connect 7 0 6 0; +#X connect 7 0 12 0; +#X connect 8 0 4 0; +#X connect 9 0 5 0; +#X connect 12 0 1 0; +#X connect 12 0 2 0; +#X restore 54 100 pd robotfeedback; +#X obj 32 40 inlet~; +#X obj 82 30 inlet~; +#X obj 50 220 outlet~; +#X obj 100 220 outlet~; +#X obj 51 172 tof/crossfade~ 2; +#X obj 484 11 inlet params; +#X obj 484 57 print PARAM_NOTFOUND; +#X obj 263 186 tof/param /wet 0 /g slider 0 1; +#X obj 263 229 line~; +#X msg 263 208 \$1 5; +#X obj 147 29 tof/param /amount 20 /g slider 1 100; +#X obj 484 33 tof/param route; +#X connect 0 0 5 2; +#X connect 0 1 5 3; +#X connect 1 0 0 0; +#X connect 1 0 5 0; +#X connect 2 0 0 1; +#X connect 2 0 5 1; +#X connect 5 0 3 0; +#X connect 5 1 4 0; +#X connect 6 0 12 0; +#X connect 8 0 10 0; +#X connect 9 0 5 4; +#X connect 10 0 9 0; +#X connect 11 0 0 2; +#X connect 12 0 7 0; diff --git a/echoVd~-help.pd b/echoVd~-help.pd new file mode 100644 index 0000000..00d70cc --- /dev/null +++ b/echoVd~-help.pd @@ -0,0 +1,51 @@ +#N canvas 499 262 425 194 10; +#X obj 24 101 mtl/echoVd~ /id echovd; +#X obj 25 126 mtl/out~; +#X text 22 4 Description: Echo.; +#X text 22 21 tags: fx~; +#X obj 24 52 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 +; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 24 77 pd generate~; +#X obj 185 62 hsl 100 15 0 1 0 0 \$0/echovd/wet \$0/echovd/wet_ /echovd/wet +105 7 0 8 -262144 -1 -1 0 1; +#X obj 185 82 hsl 100 15 0 5000 0 0 \$0/echovd/delay \$0/echovd/delay_ +/echovd/delay 105 7 0 8 -262144 -1 -1 0 1; +#X obj 185 102 hsl 100 15 0 1 0 0 \$0/echovd/strength \$0/echovd/strength_ +/echovd/strength 105 7 0 8 -262144 -1 -1 0 1; +#X connect 0 0 1 0; +#X connect 0 1 1 1; +#X connect 4 0 5 0; +#X connect 5 0 0 0; +#X connect 5 1 0 1; diff --git a/echoVd~.pd b/echoVd~.pd new file mode 100644 index 0000000..4a1f7be --- /dev/null +++ b/echoVd~.pd @@ -0,0 +1,85 @@ +#N canvas 396 180 626 518 12; +#X obj 31 42 inlet~; +#X obj 81 42 inlet~; +#X obj 31 344 outlet~; +#X obj 101 344 outlet~; +#X obj 40 173 line~; +#X msg 40 147 \$1 5; +#X obj 110 173 line~; +#X msg 110 147 \$1 5; +#N canvas 145 311 597 529 fxecho 0; +#X obj -68 205 inlet~; +#X obj -68 410 outlet~; +#X obj -69 285 +~; +#X obj -6 300 -~; +#X obj 38 85 inlet~; +#X obj 237 91 inlet; +#X obj 176 220 clip 0 1; +#X obj 13 369 *~ 0; +#X text -76 43 Based on a pabstraction in help patch 44; +#X obj 14 239 vd~ \$0fbr; +#X obj 14 395 delwrite~ \$0fbr 1000; +#X connect 0 0 2 0; +#X connect 0 0 3 0; +#X connect 2 0 1 0; +#X connect 3 0 7 0; +#X connect 4 0 9 0; +#X connect 5 0 6 0; +#X connect 6 0 7 1; +#X connect 7 0 10 0; +#X connect 9 0 2 1; +#X connect 9 0 3 1; +#X restore 96 198 pd fxecho; +#N canvas 168 140 597 529 fxecho 0; +#X obj -68 205 inlet~; +#X obj -68 410 outlet~; +#X obj -69 285 +~; +#X obj -6 300 -~; +#X obj 38 85 inlet~; +#X obj 237 91 inlet; +#X obj 176 220 clip 0 1; +#X obj 13 369 *~ 0; +#X text -76 43 Based on a pabstraction in help patch 44; +#X obj 14 239 vd~ \$0fbl; +#X obj 14 395 delwrite~ \$0fbl 1000; +#X connect 0 0 2 0; +#X connect 0 0 3 0; +#X connect 2 0 1 0; +#X connect 3 0 7 0; +#X connect 4 0 9 0; +#X connect 5 0 6 0; +#X connect 6 0 7 1; +#X connect 7 0 10 0; +#X connect 9 0 2 1; +#X connect 9 0 3 1; +#X restore 26 198 pd fxecho; +#X obj 523 61 inlet params; +#X obj 523 107 print PARAM_NOTFOUND; +#X obj 186 205 tof/param /wet 0 /g slider 0 1; +#X obj 186 248 line~; +#X msg 186 227 \$1 5; +#X obj 31 291 tof/crossfade~ 2; +#X obj 184 122 tof/param /delay 100 /g slider 0 5000; +#X obj 194 152 tof/param /strength 0.5 /g slider 0 1; +#X obj 523 83 tof/param route; +#X connect 0 0 9 0; +#X connect 0 0 15 0; +#X connect 1 0 8 0; +#X connect 1 0 15 1; +#X connect 4 0 9 1; +#X connect 5 0 4 0; +#X connect 6 0 8 1; +#X connect 7 0 6 0; +#X connect 8 0 15 3; +#X connect 9 0 15 2; +#X connect 10 0 18 0; +#X connect 12 0 14 0; +#X connect 13 0 15 4; +#X connect 14 0 13 0; +#X connect 15 0 2 0; +#X connect 15 1 3 0; +#X connect 16 0 7 0; +#X connect 16 0 5 0; +#X connect 17 0 8 2; +#X connect 17 0 9 2; +#X connect 18 0 11 0; diff --git a/eq~-help.pd b/eq~-help.pd new file mode 100644 index 0000000..9be71ae --- /dev/null +++ b/eq~-help.pd @@ -0,0 +1,24 @@ +#N canvas 489 464 408 202 10; +#X text 20 1 Description: equalizer using hml_shelf; +#X obj 23 63 noise~; +#X obj 22 131 mtl/out~; +#X obj 23 98 mtl/eq~ /id eq; +#X text 20 18 tags: mix~; +#X obj 191 38 tgl 15 0 \$0/eq/switch \$0/eq/switch_ /eq/switch 17 7 +0 8 -262144 -1 -1 1 1; +#X obj 195 158 hsl 100 15 0 5000 0 0 \$0/eq/release \$0/eq/release_ +/eq/release 105 7 0 8 -262144 -1 -1 5600 1; +#X obj 195 58 hsl 100 15 -40 40 0 0 \$0/eq/low \$0/eq/low_ /eq/low +105 7 0 8 -262144 -1 -1 6000 1; +#X obj 195 78 hsl 100 15 -40 40 0 0 \$0/eq/mid \$0/eq/mid_ /eq/mid +105 7 0 8 -262144 -1 -1 4787 1; +#X obj 195 98 hsl 100 15 -40 40 0 0 \$0/eq/high \$0/eq/high_ /eq/high +105 7 0 8 -262144 -1 -1 3000 1; +#X obj 195 118 hsl 100 15 880 14080 0 0 \$0/eq/hfreq \$0/eq/hfreq_ +/eq/hfreq 105 7 0 8 -262144 -1 -1 7266 1; +#X obj 195 138 hsl 100 15 22.5 440 0 0 \$0/eq/lfreq \$0/eq/lfreq_ /eq/lfreq +105 7 0 8 -262144 -1 -1 5571 1; +#X connect 1 0 3 0; +#X connect 1 0 3 1; +#X connect 3 0 2 0; +#X connect 3 1 2 1; diff --git a/eq~.pd b/eq~.pd new file mode 100644 index 0000000..d149b84 --- /dev/null +++ b/eq~.pd @@ -0,0 +1,179 @@ +#N canvas 387 257 757 453 10; +#X obj 29 109 inlet~; +#X obj 27 246 outlet~; +#X obj 212 102 inlet~; +#X obj 77 247 outlet~; +#N canvas 2 89 732 530 hml_shelf 0; +#X floatatom 288 116 5 2 9999 0 - - -; +#X text 330 116 ms; +#X obj 355 25 vsl 15 49 27.5 440 1 1 empty empty low_freq. -8 -8 0 +8 -262144 -1 -1 1200 1; +#X obj 108 28 vsl 15 81 -40 40 0 1 empty empty low_level -18 -8 0 8 +-262144 -1 -1 3000 1; +#X obj 176 27 vsl 15 81 -40 40 0 1 empty empty mid_level -10 -8 0 8 +-262144 -1 -1 4000 1; +#X obj 244 26 vsl 15 81 -40 40 0 1 empty empty high_level 0 -8 0 8 +-262144 -1 -1 3000 1; +#X text 372 19 -440Hz; +#X text 372 67 -27.5Hz; +#X text 372 43 -110Hz; +#X obj 426 25 vsl 15 49 880 14080 1 1 empty empty high_freq. -8 -8 +0 8 -262144 -1 -1 3800 1; +#X text 443 19 -14080Hz; +#X text 443 67 -880Hz; +#X text 443 43 -3520Hz; +#X floatatom 108 117 4 0 0 0 - - -; +#X floatatom 175 113 4 0 0 0 - - -; +#X floatatom 244 115 4 0 0 0 - - -; +#X floatatom 355 96 8 0 0 0 - - -; +#X floatatom 426 96 8 0 0 0 - - -; +#X text 124 23 +40; +#X text 126 62 0; +#X text 124 102 -40; +#X text 194 61 0; +#X text 192 101 -40; +#X text 192 22 +40; +#X text 260 21 +40; +#X text 262 60 0; +#X text 260 100 -40; +#X text 107 0 dB; +#X text 174 -2 dB; +#X text 243 -2 dB; +#X obj 75 -68 inlet~; +#X obj 175 341 outlet~; +#X obj 116 -41 inlet; +#X obj 165 -41 inlet; +#X obj 217 -41 inlet; +#X obj 358 -40 inlet; +#X obj 263 -41 inlet; +#X obj 309 -41 inlet; +#X obj 74 140 iemlib/hml_shelf~ 6 100 0 4000 -6 200; +#X connect 0 0 38 6; +#X connect 2 0 16 0; +#X connect 3 0 13 0; +#X connect 4 0 14 0; +#X connect 5 0 15 0; +#X connect 9 0 17 0; +#X connect 13 0 38 1; +#X connect 14 0 38 3; +#X connect 15 0 38 5; +#X connect 16 0 38 2; +#X connect 17 0 38 4; +#X connect 30 0 38 0; +#X connect 32 0 38 1; +#X connect 33 0 38 3; +#X connect 34 0 38 5; +#X connect 35 0 38 6; +#X connect 36 0 38 2; +#X connect 37 0 38 4; +#X connect 38 0 31 0; +#X restore 229 137 pd hml_shelf; +#N canvas 308 294 748 546 hml_shelf 0; +#X floatatom 288 116 5 2 9999 0 - - -; +#X text 330 116 ms; +#X obj 355 25 vsl 15 49 27.5 440 1 1 empty empty low_freq. -8 -8 0 +8 -262144 -1 -1 1200 1; +#X obj 108 28 vsl 15 81 -40 40 0 1 empty empty low_level -18 -8 0 8 +-262144 -1 -1 3000 1; +#X obj 176 27 vsl 15 81 -40 40 0 1 empty empty mid_level -10 -8 0 8 +-262144 -1 -1 4000 1; +#X obj 244 26 vsl 15 81 -40 40 0 1 empty empty high_level 0 -8 0 8 +-262144 -1 -1 3500 1; +#X text 372 19 -440Hz; +#X text 372 67 -27.5Hz; +#X text 372 43 -110Hz; +#X obj 426 25 vsl 15 49 880 14080 1 1 empty empty high_freq. -8 -8 +0 8 -262144 -1 -1 3800 1; +#X text 443 19 -14080Hz; +#X text 443 67 -880Hz; +#X text 443 43 -3520Hz; +#X floatatom 108 117 4 0 0 0 - - -; +#X floatatom 175 113 4 0 0 0 - - -; +#X floatatom 244 115 4 0 0 0 - - -; +#X floatatom 355 96 8 0 0 0 - - -; +#X floatatom 426 96 8 0 0 0 - - -; +#X text 124 23 +40; +#X text 126 62 0; +#X text 124 102 -40; +#X text 194 61 0; +#X text 192 101 -40; +#X text 192 22 +40; +#X text 260 21 +40; +#X text 262 60 0; +#X text 260 100 -40; +#X text 107 0 dB; +#X text 174 -2 dB; +#X text 243 -2 dB; +#X obj 75 -68 inlet~; +#X obj 178 327 outlet~; +#X obj 116 -41 inlet; +#X obj 165 -41 inlet; +#X obj 217 -41 inlet; +#X obj 358 -40 inlet; +#X obj 263 -41 inlet; +#X obj 309 -41 inlet; +#X floatatom 336 187 5 0 0 0 - - -; +#X obj 74 140 iemlib/hml_shelf~ 6 100 0 4000 -6 200; +#X connect 0 0 39 6; +#X connect 2 0 16 0; +#X connect 3 0 13 0; +#X connect 4 0 14 0; +#X connect 5 0 15 0; +#X connect 9 0 17 0; +#X connect 13 0 39 1; +#X connect 14 0 39 3; +#X connect 15 0 39 5; +#X connect 16 0 39 2; +#X connect 17 0 39 4; +#X connect 30 0 39 0; +#X connect 32 0 39 1; +#X connect 33 0 39 3; +#X connect 34 0 39 5; +#X connect 35 0 38 0; +#X connect 35 0 39 6; +#X connect 36 0 39 2; +#X connect 37 0 39 4; +#X connect 39 0 31 0; +#X restore 78 144 pd hml_shelf; +#X text 342 -90 TODO: reset?; +#X obj 29 189 tof/crossfade~ 2; +#X obj 602 -65 inlet params; +#X obj 602 -43 tof/paramRoute; +#X obj 602 -19 print PARAM_NOTFOUND; +#X obj 175 216 tof/param /switch 0 /g tgl; +#X obj 175 237 != 0; +#X msg 175 261 \$1 200; +#X obj 175 283 line~; +#X obj 136 -17 tof/param /hfreq 7901.13 /g slider 880 14080; +#X obj 141 4 tof/param /lfreq 55 /g slider 22.5 440; +#X obj 98 -75 tof/param /low 0 /g slider -40 40; +#X obj 115 -57 tof/param /mid 0 /g slider -40 40; +#X obj 127 -37 tof/param /high 0 /g slider -40 40; +#X obj 201 20 tof/param /release 100 /g slider 0 5000; +#X connect 0 0 5 0; +#X connect 0 0 7 0; +#X connect 2 0 4 0; +#X connect 2 0 7 1; +#X connect 4 0 7 3; +#X connect 5 0 7 2; +#X connect 7 0 1 0; +#X connect 7 1 3 0; +#X connect 8 0 9 0; +#X connect 9 0 10 0; +#X connect 11 0 12 0; +#X connect 12 0 13 0; +#X connect 13 0 14 0; +#X connect 14 0 7 4; +#X connect 15 0 5 5; +#X connect 15 0 4 5; +#X connect 16 0 5 4; +#X connect 16 0 4 4; +#X connect 17 0 5 1; +#X connect 17 0 4 1; +#X connect 18 0 5 2; +#X connect 18 0 4 2; +#X connect 19 0 5 3; +#X connect 19 0 4 3; +#X connect 20 0 4 6; +#X connect 20 0 5 6; +#X coords 0 0 1 1 213 69 0; diff --git a/every-help.pd b/every-help.pd new file mode 100644 index 0000000..02d2171 --- /dev/null +++ b/every-help.pd @@ -0,0 +1,23 @@ +#N canvas 0 0 570 364 10; +#X floatatom 245 185 5 0 0 0 - - -; +#X text 243 166 Change the number of required bangs; +#X obj 54 3 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 57 7 description: bangs out every X bang received; +#X obj 150 104 loadbang; +#X obj 174 181 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 195 262 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 300 209 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X text 324 210 Reset; +#X obj 150 132 metro 1000; +#X obj 194 233 mtl/every 3; +#X text 60 23 tags: sequencing; +#X connect 0 0 10 1; +#X connect 4 0 9 0; +#X connect 5 0 10 0; +#X connect 7 0 10 2; +#X connect 9 0 5 0; +#X connect 10 0 6 0; diff --git a/every.pd b/every.pd new file mode 100644 index 0000000..acc197d --- /dev/null +++ b/every.pd @@ -0,0 +1,25 @@ +#N canvas 1215 144 608 403 10; +#X obj 103 205 outlet; +#X obj 274 41 tof/argument 1 1; +#X obj 233 71 max 1; +#X obj 103 164 sel 1; +#X obj 102 76 inlet bang; +#X obj 226 16 inlet bangs; +#X obj 427 21 inlet reset; +#X obj 428 51 b; +#X obj 327 9 loadbang; +#X obj 103 122 iemlib/modulo_counter; +#X msg 337 97 0; +#X obj 202 151 - 1; +#X connect 1 0 2 0; +#X connect 2 0 9 0; +#X connect 2 0 11 0; +#X connect 3 0 0 0; +#X connect 4 0 9 0; +#X connect 5 0 2 0; +#X connect 6 0 7 0; +#X connect 7 0 10 0; +#X connect 8 0 1 0; +#X connect 9 0 3 0; +#X connect 10 0 9 1; +#X connect 11 0 3 1; diff --git a/examples/gems-fft~.pd b/examples/gems-fft~.pd new file mode 100644 index 0000000..ae63fb3 --- /dev/null +++ b/examples/gems-fft~.pd @@ -0,0 +1,107 @@ +#N canvas 353 122 523 473 10; +#X declare -lib Gem; +#X declare -lib Gem; +#X text -7 -41 Description: FFT spectral graphical analysis; +#X obj -4 7 gemhead; +#X obj 57 111 t f f; +#X msg 145 281 \$1 0.5 1; +#X obj 283 -21 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj -4 66 mtl/gemsDuplicate 128; +#X obj 57 90 tof/increment; +#X obj 145 301 mtl/hsvToRgb; +#X obj -4 356 color; +#N canvas 0 63 968 641 fft 0; +#N canvas 997 194 427 326 fft 0; +#X obj 46 64 inlet~; +#X obj 46 94 rfft~; +#X obj 46 127 *~; +#X obj 77 127 *~; +#X obj 46 157 sqrt~; +#X obj 216 60 inlet; +#X obj 278 96 block~ 1024 1; +#X obj 53 204 clip~ 0 500; +#X obj 144 265 tabwrite~ \$0-fft; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 1 0 2 1; +#X connect 1 1 3 0; +#X connect 1 1 3 1; +#X connect 2 0 4 0; +#X connect 3 0 4 0; +#X connect 4 0 7 0; +#X connect 5 0 8 0; +#X connect 7 0 8 0; +#X restore 311 350 pd fft; +#X obj 312 75 inlet~; +#X obj 451 293 metro 20; +#X msg 456 224 1; +#X obj 456 204 loadbang; +#X obj 312 301 hip~ 50; +#X obj 312 321 *~ 1; +#X obj 300 452 table \$0-fft 128; +#X obj 193 196 tabread \$0-fft; +#X obj 194 173 clip 0 127; +#X obj 74 69 inlet tabread.index; +#X obj 125 522 outlet tabread.values; +#X connect 1 0 5 0; +#X connect 2 0 0 1; +#X connect 3 0 2 0; +#X connect 4 0 3 0; +#X connect 5 0 6 0; +#X connect 6 0 0 0; +#X connect 8 0 11 0; +#X connect 9 0 8 0; +#X connect 10 0 9 0; +#X restore 145 160 pd fft; +#X obj 283 1 mtl/gemsWin /dimen 640 480; +#X obj 57 157 - 1; +#X obj 57 134 / 64; +#X obj -4 378 rectangle 0.008 0.008; +#X obj 145 184 clip 0 100; +#X obj 145 236 + 0.5; +#X obj 145 258 maxlib/wrap 0 1; +#X obj 145 214 maxlib/scale 0 100 0 0.5; +#X obj 178 123 readsf~; +#X obj 178 78 openpanel; +#X obj 178 59 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X msg 178 100 open \$1 \, start; +#X obj 284 126 adc~; +#X text 201 56 <- read a soundfile; +#X text 319 124 <- talk into your mic; +#X obj -4 39 mtl/gemsFit fill 0.9; +#X obj -4 331 translateXYZ 0 0 0; +#X obj 249 259 maxlib/scale 0 100 0.001 1; +#X obj 374 -34 import Gem; +#X obj 252 159 mtl/out~; +#X text -9 -24 Authors: Alexandre Quessy and TOF; +#X connect 1 0 25 0; +#X connect 2 0 12 0; +#X connect 2 1 9 0; +#X connect 3 0 7 0; +#X connect 4 0 10 0; +#X connect 5 0 26 0; +#X connect 5 1 6 0; +#X connect 5 2 6 1; +#X connect 6 0 2 0; +#X connect 7 0 8 1; +#X connect 8 0 13 0; +#X connect 9 0 14 0; +#X connect 11 0 26 1; +#X connect 12 0 11 0; +#X connect 14 0 17 0; +#X connect 14 0 27 0; +#X connect 15 0 16 0; +#X connect 16 0 3 0; +#X connect 17 0 15 0; +#X connect 18 0 9 1; +#X connect 18 0 29 0; +#X connect 18 0 29 1; +#X connect 19 0 21 0; +#X connect 20 0 19 0; +#X connect 21 0 18 0; +#X connect 22 0 9 1; +#X connect 25 0 5 0; +#X connect 26 0 8 0; +#X connect 27 0 13 2; diff --git a/examples/gems-movies_with_sound~.pd b/examples/gems-movies_with_sound~.pd new file mode 100644 index 0000000..1ed8495 --- /dev/null +++ b/examples/gems-movies_with_sound~.pd @@ -0,0 +1,43 @@ +#N canvas 804 121 441 494 10; +#X declare -lib Gem; +#X obj 23 59 gemhead; +#X obj 23 398 pix_texture; +#X obj 23 450 square; +#X obj 236 60 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 1 +1; +#X obj 236 84 mtl/gemsWin /dimen 320 320; +#X obj 23 424 mtl/gemsFit window; +#X obj 180 295 mtl/out~; +#X obj 43 91 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 43 175 openpanel; +#X obj 23 362 mtl/gemsMovies; +#X obj 179 131 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 84 309 snapshot~; +#X obj 23 249 t a b; +#X obj 180 175 mtl/sfIndexer; +#X obj 179 154 openpanel; +#X text 63 88 1) Load movie here; +#X text 201 128 2) Load soundfile here; +#X msg 180 199 set \$1 \, bang; +#X text 22 10 How to play a movie synchronized to a soundfile.; +#X obj 180 228 mtl/player~ 1; +#X obj 328 61 import Gem; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 3 0 4 0; +#X connect 5 0 2 0; +#X connect 7 0 8 0; +#X connect 8 0 9 1; +#X connect 9 0 1 0; +#X connect 10 0 14 0; +#X connect 11 0 9 3; +#X connect 12 0 9 0; +#X connect 12 1 11 0; +#X connect 13 0 17 0; +#X connect 14 0 13 0; +#X connect 17 0 19 0; +#X connect 19 0 6 0; +#X connect 19 0 6 1; +#X connect 19 1 11 0; diff --git a/examples/gems-scope~.pd b/examples/gems-scope~.pd new file mode 100644 index 0000000..21391db --- /dev/null +++ b/examples/gems-scope~.pd @@ -0,0 +1,130 @@ +#N canvas 571 140 629 386 10; +#X declare -lib Gem; +#X obj 440 26 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#N canvas 0 0 1009 686 draw_audio_input 0; +#X obj 640 -2 inlet~; +#X obj 219 377 tabread \$0-knots; +#X obj 127 532 pack f f f 0; +#X obj 94 363 t f f; +#X obj 97 240 until; +#X msg 279 113 0; +#X obj 111 305 f 0; +#X obj 203 303 + 1; +#X obj 641 384 table \$0-knots 800; +#X obj 641 358 tabwrite~ \$0-knots; +#X obj 223 -96 inlet; +#X obj 232 33 t b b b; +#X obj 174 600 outlet; +#X msg 92 198 800; +#X obj 105 332 t f f f; +#X obj 133 454 expr (($f1/799)*2)-1; +#X obj 295 280 until; +#X msg 290 238 800; +#X obj 201 165 zexy/demultiplex 0 1; +#X obj 480 411 tabread \$0-knots; +#X obj 384 582 pack f f f 0; +#X obj 365 326 f 0; +#X obj 464 337 + 1; +#X obj 366 366 t f f f; +#X obj 481 512 expr (($f1/799)*2)-1; +#X obj 477 464 *; +#X obj 355 397 t f f f; +#X obj 430 427 mod 2; +#X obj 399 519 f; +#X msg 403 116 -1; +#X obj 373 465 zexy/demultiplex 0 1; +#X obj 388 493 b; +#X obj 444 -30 inlet; +#X connect 0 0 9 0; +#X connect 1 0 2 2; +#X connect 2 0 12 0; +#X connect 3 0 2 0; +#X connect 3 1 15 0; +#X connect 4 0 6 0; +#X connect 5 0 6 1; +#X connect 5 0 21 1; +#X connect 6 0 14 0; +#X connect 7 0 6 1; +#X connect 10 0 11 0; +#X connect 11 0 18 0; +#X connect 11 1 5 0; +#X connect 11 1 29 0; +#X connect 11 2 9 0; +#X connect 13 0 4 0; +#X connect 14 0 3 0; +#X connect 14 1 1 0; +#X connect 14 2 7 0; +#X connect 15 0 2 1; +#X connect 16 0 21 0; +#X connect 17 0 16 0; +#X connect 18 0 13 0; +#X connect 18 1 17 0; +#X connect 19 0 25 1; +#X connect 20 0 12 0; +#X connect 21 0 23 0; +#X connect 22 0 21 1; +#X connect 23 0 26 0; +#X connect 23 1 19 0; +#X connect 23 2 22 0; +#X connect 24 0 20 1; +#X connect 24 0 28 1; +#X connect 25 0 20 2; +#X connect 26 0 20 0; +#X connect 26 1 30 0; +#X connect 26 2 27 0; +#X connect 27 0 25 0; +#X connect 27 0 30 1; +#X connect 28 0 20 1; +#X connect 29 0 28 1; +#X connect 30 0 31 0; +#X connect 30 1 24 0; +#X connect 31 0 28 0; +#X connect 32 0 18 1; +#X restore 279 198 pd draw_audio_input; +#X obj 334 113 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X text 352 111 Draw mode; +#X obj 43 347 mtl/gemsLines 800; +#X obj 42 4 gemhead; +#X obj 42 295 mtl/gemsFit window; +#X obj 441 151 osc~; +#X floatatom 441 127 5 0 0 0 - - -; +#X obj 442 182 *~; +#X obj 494 166 osc~ 1; +#X obj 41 254 rotate 0 1 1 1; +#X obj 41 210 color; +#X obj 57 86 iemlib/modulo_counter 360; +#X obj 221 25 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 58 112 t f f; +#X obj 58 181 mtl/hsvToRgb; +#X obj 57 140 / 360; +#X msg 57 160 \$1 1 1; +#X obj 41 39 t a b b; +#X obj 440 46 mtl/gemsWin /dimen 640 480; +#X obj 221 49 mtl/gemsFeedback 0.9 -0.1; +#X floatatom 497 134 5 0 0 0 - - -; +#X obj 544 11 import Gem; +#X connect 0 0 20 0; +#X connect 1 0 4 1; +#X connect 2 0 1 1; +#X connect 5 0 19 0; +#X connect 6 0 4 0; +#X connect 7 0 9 0; +#X connect 8 0 7 0; +#X connect 9 0 1 2; +#X connect 10 0 9 1; +#X connect 11 0 6 0; +#X connect 12 0 11 0; +#X connect 13 0 15 0; +#X connect 14 0 21 0; +#X connect 15 0 17 0; +#X connect 15 1 11 1; +#X connect 16 0 12 1; +#X connect 17 0 18 0; +#X connect 18 0 16 0; +#X connect 19 0 12 0; +#X connect 19 1 13 0; +#X connect 19 2 1 0; +#X connect 22 0 10 0; diff --git a/examples/gems-sobel_filter.pd b/examples/gems-sobel_filter.pd new file mode 100644 index 0000000..5cf9910 --- /dev/null +++ b/examples/gems-sobel_filter.pd @@ -0,0 +1,359 @@ +#N canvas 325 158 536 531 10; +#X declare -lib Gem; +#X declare -lib Gem; +#X obj 12 87 gemhead 50; +#X obj 14 350 pix_texture; +#X obj 14 316 pix_invert; +#X obj 13 248 pix_gain; +#X floatatom 37 229 5 0 0 0 - - -; +#X obj -11 317 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj 14 272 pix_2grey; +#X obj -15 270 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X obj -6 241 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 369 75 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X obj 14 471 rectangle 5.33333 4; +#X obj 83 230 hsl 50 15 1 100 1 0 empty empty empty -2 -6 0 8 -258699 +-1 -1 2700 1; +#X text 14 16 Description: Applies a sobel filter to an image. Uses +two convolution matrix filters.; +#X obj 14 444 color; +#X obj 368 95 mtl/gemsWin; +#X obj 128 325 mtl/colorGrid; +#N canvas 0 0 469 396 sobel 0; +#X floatatom 134 94 3 -1 2 0 - - -; +#X floatatom 157 94 3 -1 2 0 - - -; +#X floatatom 180 94 3 -1 2 0 - - -; +#X floatatom 134 108 3 -1 2 0 - - -; +#X floatatom 157 108 3 -1 2 0 - - -; +#X floatatom 180 108 3 -1 2 0 - - -; +#X floatatom 134 122 3 -1 2 0 - - -; +#X floatatom 157 122 3 -1 2 0 - - -; +#X floatatom 180 122 3 -1 2 0 - - -; +#N canvas 0 22 454 473 pack 0; +#X obj 69 169 pack 0 0 0 0 0 0 0 0 0; +#X obj 69 139 t b f; +#X obj 106 139 t b f; +#X obj 143 139 t b f; +#X obj 180 139 t b f; +#X obj 217 139 t b f; +#X obj 254 139 t b f; +#X obj 291 139 t b f; +#X obj 328 139 t b f; +#X obj 32 111 inlet; +#X obj 69 111 inlet; +#X obj 106 111 inlet; +#X obj 143 111 inlet; +#X obj 180 111 inlet; +#X obj 217 111 inlet; +#X obj 254 111 inlet; +#X obj 291 111 inlet; +#X obj 328 111 inlet; +#X obj 61 349 outlet; +#X obj 274 355 outlet; +#X obj 71 190 t l l; +#X obj 257 232 unpack 0 0 0 0 0 0 0 0 0; +#X obj 399 256 +; +#X obj 358 256 +; +#X obj 318 256 +; +#X obj 277 256 +; +#X obj 379 286 +; +#X obj 298 286 +; +#X obj 349 316 +; +#X obj 268 316 +; +#X obj 58 294 select 0; +#X msg 48 323 1; +#X obj 132 391 /; +#X msg 132 365 1 \$1; +#X connect 0 0 20 0; +#X connect 1 0 0 0; +#X connect 1 1 0 1; +#X connect 2 0 0 0; +#X connect 2 1 0 2; +#X connect 3 0 0 0; +#X connect 3 1 0 3; +#X connect 4 0 0 0; +#X connect 4 1 0 4; +#X connect 5 0 0 0; +#X connect 5 1 0 5; +#X connect 6 0 0 0; +#X connect 6 1 0 6; +#X connect 7 0 0 0; +#X connect 7 1 0 7; +#X connect 8 0 0 0; +#X connect 8 1 0 8; +#X connect 9 0 0 0; +#X connect 10 0 1 0; +#X connect 11 0 2 0; +#X connect 12 0 3 0; +#X connect 13 0 4 0; +#X connect 14 0 5 0; +#X connect 15 0 6 0; +#X connect 16 0 7 0; +#X connect 17 0 8 0; +#X connect 20 0 21 0; +#X connect 20 1 19 0; +#X connect 21 0 29 0; +#X connect 21 1 25 0; +#X connect 21 2 25 1; +#X connect 21 3 24 0; +#X connect 21 4 24 1; +#X connect 21 5 23 0; +#X connect 21 6 23 1; +#X connect 21 7 22 0; +#X connect 21 8 22 1; +#X connect 22 0 26 1; +#X connect 23 0 26 0; +#X connect 24 0 27 1; +#X connect 25 0 27 0; +#X connect 26 0 28 1; +#X connect 27 0 28 0; +#X connect 28 0 29 1; +#X connect 29 0 30 0; +#X connect 30 0 31 0; +#X connect 30 1 33 0; +#X connect 31 0 18 0; +#X connect 32 0 18 0; +#X connect 33 0 32 0; +#X restore 113 136 pd pack 9 . . .; +#X obj 80 178 pix_convolve 3 3; +#X floatatom 127 157 5 0 0 1 scale - -; +#N canvas 491 349 613 313 unpack 0; +#X obj 60 270 outlet; +#X obj 111 270 outlet; +#X obj 164 270 outlet; +#X obj 215 270 outlet; +#X obj 266 270 outlet; +#X obj 317 270 outlet; +#X obj 370 270 outlet; +#X obj 421 270 outlet; +#X obj 471 271 outlet; +#X obj 179 173 unpack 0 0 0 0 0 0 0 0 0; +#X obj 130 13 inlet; +#X msg 125 83 -1 0 1 -2 0 2 -1 0 1; +#X msg 156 107 1 2 1 0 0 0 -1 -2 -1; +#X obj 130 40 sel sobel1 sobel2; +#X connect 9 0 0 0; +#X connect 9 1 1 0; +#X connect 9 2 2 0; +#X connect 9 3 3 0; +#X connect 9 4 4 0; +#X connect 9 5 5 0; +#X connect 9 6 6 0; +#X connect 9 7 7 0; +#X connect 9 8 8 0; +#X connect 10 0 13 0; +#X connect 11 0 9 0; +#X connect 12 0 9 0; +#X connect 13 0 11 0; +#X connect 13 1 12 0; +#X restore 109 75 pd unpack 9 . . .; +#X floatatom 142 258 3 -1 2 0 - - -; +#X floatatom 165 258 3 -1 2 0 - - -; +#X floatatom 188 258 3 -1 2 0 - - -; +#X floatatom 142 272 3 -1 2 0 - - -; +#X floatatom 165 272 3 -1 2 0 - - -; +#X floatatom 188 272 3 -1 2 0 - - -; +#X floatatom 142 286 3 -1 2 0 - - -; +#X floatatom 165 286 3 -1 2 0 - - -; +#X floatatom 188 286 3 -1 2 0 - - -; +#N canvas 0 22 454 473 pack 0; +#X obj 69 169 pack 0 0 0 0 0 0 0 0 0; +#X obj 69 139 t b f; +#X obj 106 139 t b f; +#X obj 143 139 t b f; +#X obj 180 139 t b f; +#X obj 217 139 t b f; +#X obj 254 139 t b f; +#X obj 291 139 t b f; +#X obj 328 139 t b f; +#X obj 32 111 inlet; +#X obj 69 111 inlet; +#X obj 106 111 inlet; +#X obj 143 111 inlet; +#X obj 180 111 inlet; +#X obj 217 111 inlet; +#X obj 254 111 inlet; +#X obj 291 111 inlet; +#X obj 328 111 inlet; +#X obj 61 349 outlet; +#X obj 274 355 outlet; +#X obj 71 190 t l l; +#X obj 257 232 unpack 0 0 0 0 0 0 0 0 0; +#X obj 399 256 +; +#X obj 358 256 +; +#X obj 318 256 +; +#X obj 277 256 +; +#X obj 379 286 +; +#X obj 298 286 +; +#X obj 349 316 +; +#X obj 268 316 +; +#X obj 58 294 select 0; +#X msg 48 323 1; +#X obj 132 391 /; +#X msg 132 365 1 \$1; +#X connect 0 0 20 0; +#X connect 1 0 0 0; +#X connect 1 1 0 1; +#X connect 2 0 0 0; +#X connect 2 1 0 2; +#X connect 3 0 0 0; +#X connect 3 1 0 3; +#X connect 4 0 0 0; +#X connect 4 1 0 4; +#X connect 5 0 0 0; +#X connect 5 1 0 5; +#X connect 6 0 0 0; +#X connect 6 1 0 6; +#X connect 7 0 0 0; +#X connect 7 1 0 7; +#X connect 8 0 0 0; +#X connect 8 1 0 8; +#X connect 9 0 0 0; +#X connect 10 0 1 0; +#X connect 11 0 2 0; +#X connect 12 0 3 0; +#X connect 13 0 4 0; +#X connect 14 0 5 0; +#X connect 15 0 6 0; +#X connect 16 0 7 0; +#X connect 17 0 8 0; +#X connect 20 0 21 0; +#X connect 20 1 19 0; +#X connect 21 0 29 0; +#X connect 21 1 25 0; +#X connect 21 2 25 1; +#X connect 21 3 24 0; +#X connect 21 4 24 1; +#X connect 21 5 23 0; +#X connect 21 6 23 1; +#X connect 21 7 22 0; +#X connect 21 8 22 1; +#X connect 22 0 26 1; +#X connect 23 0 26 0; +#X connect 24 0 27 1; +#X connect 25 0 27 0; +#X connect 26 0 28 1; +#X connect 27 0 28 0; +#X connect 28 0 29 1; +#X connect 29 0 30 0; +#X connect 30 0 31 0; +#X connect 30 1 33 0; +#X connect 31 0 18 0; +#X connect 32 0 18 0; +#X connect 33 0 32 0; +#X restore 121 300 pd pack 9 . . .; +#X obj 88 342 pix_convolve 3 3; +#X floatatom 135 321 5 0 0 1 scale - -; +#N canvas 411 349 617 317 unpack 0; +#X obj 60 270 outlet; +#X obj 111 270 outlet; +#X obj 164 270 outlet; +#X obj 215 270 outlet; +#X obj 266 270 outlet; +#X obj 317 270 outlet; +#X obj 370 270 outlet; +#X obj 421 270 outlet; +#X obj 471 271 outlet; +#X obj 179 173 unpack 0 0 0 0 0 0 0 0 0; +#X obj 130 13 inlet; +#X msg 125 83 -1 0 1 -2 0 2 -1 0 1; +#X msg 156 107 1 2 1 0 0 0 -1 -2 -1; +#X obj 130 40 sel sobel1 sobel2; +#X connect 9 0 0 0; +#X connect 9 1 1 0; +#X connect 9 2 2 0; +#X connect 9 3 3 0; +#X connect 9 4 4 0; +#X connect 9 5 5 0; +#X connect 9 6 6 0; +#X connect 9 7 7 0; +#X connect 9 8 8 0; +#X connect 10 0 13 0; +#X connect 11 0 9 0; +#X connect 12 0 9 0; +#X connect 13 0 11 0; +#X connect 13 1 12 0; +#X restore 117 239 pd unpack 9 . . .; +#X msg 252 209 symbol sobel2; +#X msg 246 54 symbol sobel1; +#X obj 382 103 loadbang; +#X obj 39 104 inlet; +#X obj 88 374 outlet; +#X connect 0 0 9 0; +#X connect 1 0 9 1; +#X connect 2 0 9 2; +#X connect 3 0 9 3; +#X connect 4 0 9 4; +#X connect 5 0 9 5; +#X connect 6 0 9 6; +#X connect 7 0 9 7; +#X connect 8 0 9 8; +#X connect 9 0 11 0; +#X connect 9 1 10 2; +#X connect 10 0 23 0; +#X connect 11 0 10 1; +#X connect 12 0 0 0; +#X connect 12 1 1 0; +#X connect 12 2 2 0; +#X connect 12 3 3 0; +#X connect 12 4 4 0; +#X connect 12 5 5 0; +#X connect 12 6 6 0; +#X connect 12 7 7 0; +#X connect 12 8 8 0; +#X connect 13 0 22 0; +#X connect 14 0 22 1; +#X connect 15 0 22 2; +#X connect 16 0 22 3; +#X connect 17 0 22 4; +#X connect 18 0 22 5; +#X connect 19 0 22 6; +#X connect 20 0 22 7; +#X connect 21 0 22 8; +#X connect 22 0 24 0; +#X connect 22 1 23 2; +#X connect 23 0 30 0; +#X connect 24 0 23 1; +#X connect 25 0 13 0; +#X connect 25 1 14 0; +#X connect 25 2 15 0; +#X connect 25 3 16 0; +#X connect 25 4 17 0; +#X connect 25 5 18 0; +#X connect 25 6 19 0; +#X connect 25 7 20 0; +#X connect 25 8 21 0; +#X connect 26 0 25 0; +#X connect 27 0 12 0; +#X connect 28 0 27 0; +#X connect 28 0 26 0; +#X connect 29 0 10 0; +#X restore 14 295 pd sobel; +#X obj 18 195 mtl/gemsMovies; +#X obj 91 113 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X text 115 110 Load movie; +#X obj 400 16 import Gem; +#X msg 101 142 1; +#X text 131 140 Play it; +#X connect 0 0 17 0; +#X connect 1 0 13 0; +#X connect 2 0 1 0; +#X connect 3 0 6 0; +#X connect 4 0 3 1; +#X connect 5 0 2 0; +#X connect 6 0 16 0; +#X connect 7 0 6 0; +#X connect 8 0 3 0; +#X connect 9 0 14 0; +#X connect 11 0 4 0; +#X connect 13 0 10 0; +#X connect 15 0 13 1; +#X connect 16 0 2 0; +#X connect 17 0 3 0; +#X connect 18 0 17 1; +#X connect 21 0 17 2; diff --git a/fibonacci-help.pd b/fibonacci-help.pd new file mode 100644 index 0000000..5a54915 --- /dev/null +++ b/fibonacci-help.pd @@ -0,0 +1,8 @@ +#N canvas 0 0 352 182 10; +#X floatatom 106 87 9 0 0 0 - - -; +#X floatatom 106 135 9 0 0 0 - - -; +#X text 17 20 Description: Gets a number in the Fibonacci serie; +#X obj 106 111 mtl/fibonacci; +#X text 18 36 tags: math; +#X connect 0 0 3 0; +#X connect 3 0 1 0; diff --git a/fibonacci.pd b/fibonacci.pd new file mode 100644 index 0000000..8bf3946 --- /dev/null +++ b/fibonacci.pd @@ -0,0 +1,29 @@ +#N canvas 967 369 509 554 10; +#X obj 40 35 inlet; +#X obj 40 81 max 0; +#X obj 65 145 until; +#X obj 40 445 outlet; +#X obj 40 59 i; +#X obj 40 423 f; +#X obj 76 211 f 1; +#X obj 202 199 + 0; +#X obj 200 172 t f f; +#X msg 117 148 1; +#X msg 155 144 0; +#X obj 40 103 t b f b b; +#X connect 0 0 4 0; +#X connect 1 0 11 0; +#X connect 2 0 6 0; +#X connect 4 0 1 0; +#X connect 5 0 3 0; +#X connect 6 0 8 0; +#X connect 6 0 5 1; +#X connect 7 0 6 1; +#X connect 8 0 7 1; +#X connect 8 1 7 0; +#X connect 9 0 6 1; +#X connect 10 0 7 1; +#X connect 11 0 5 0; +#X connect 11 1 2 0; +#X connect 11 2 9 0; +#X connect 11 3 10 0; diff --git a/fileBrowser-help.pd b/fileBrowser-help.pd new file mode 100644 index 0000000..813527d --- /dev/null +++ b/fileBrowser-help.pd @@ -0,0 +1,39 @@ +#N canvas 1145 13 741 557 10; +#X obj 255 113 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X symbolatom 53 479 80 0 0 0 - - -; +#X obj 53 503 print; +#X text 75 24 Description: Nice file browser.; +#X text 262 205 <- Drag the slider to display all the contents of a +folder.; +#X text 271 177 - Files are white \, folders are grey!; +#X floatatom 58 112 5 0 0 0 - - -; +#X text 45 91 You can select files by index.; +#X floatatom 392 273 5 0 0 1 size - -; +#X obj 316 323 pack 0 10; +#X obj 392 293 t b a; +#X floatatom 313 276 5 0 2 1 font - -; +#X msg 316 346 text.font \$1 \$2; +#X msg 318 379 select.colorRGB 125 125 125; +#X text 505 381 Change the select color; +#X msg 318 405 select.colorRGB 0 125 125; +#X msg 204 111 clear; +#X text 287 109 <- click the bang (or click on the grey bar) to select +the folder to be browsed.; +#X text 300 237 You can use any of gBrowser's right inlet options. +See gBrowser's help for more information.; +#X obj 53 160 mtl/fileBrowser; +#X text 75 38 tags: ui file; +#X connect 0 0 19 0; +#X connect 1 0 2 0; +#X connect 6 0 19 0; +#X connect 8 0 10 0; +#X connect 9 0 12 0; +#X connect 10 0 9 0; +#X connect 10 1 9 1; +#X connect 11 0 9 0; +#X connect 12 0 19 1; +#X connect 13 0 19 1; +#X connect 15 0 19 1; +#X connect 16 0 19 0; +#X connect 19 0 1 0; diff --git a/fileBrowser.pd b/fileBrowser.pd new file mode 100644 index 0000000..e1de285 --- /dev/null +++ b/fileBrowser.pd @@ -0,0 +1,142 @@ +#N canvas 1083 26 1009 673 10; +#X obj 112 -52 inlet; +#X obj 227 800 sel folder; +#X msg 226 820 1; +#X obj 53 923 outlet; +#X msg 282 822 0; +#X obj 351 -84 loadbang; +#X msg 590 782 label \$1; +#X msg 339 320 clear; +#X obj 170 860 zexy/demultiplex 0 1; +#X msg 346 806 0; +#X obj 294 900 s \$0top; +#X obj 127 -13 r \$0top; +#X obj 96 376 sel folder; +#X obj 18 326 t s s; +#X obj 757 486 symbol; +#X obj 854 583 s \$0top; +#X obj 420 809 s \$0top; +#X obj 141 165 t a a a b; +#X obj 653 714 makefilename .../%s; +#X obj 283 536 vsl 15 115 0 175 0 0 \$0slider_s \$0slider_r empty 0 +-8 0 8 -1 -262144 -1 11400 0; +#X obj 101 534 hradio 15 1 0 12 \$0hr_0_s \$0hr_0_r empty 2 8 0 10 +-1 -1 -262144 0; +#X obj 101 549 hradio 15 1 0 12 \$0hr_1_s \$0hr_1_r empty 2 8 0 10 +-1 -1 -262144 1; +#X obj 101 564 hradio 15 1 0 12 \$0hr_2_s \$0hr_2_r empty 2 8 0 10 +-1 -1 -262144 1; +#X obj 101 579 hradio 15 1 0 12 \$0hr_3_s \$0hr_3_r empty 2 8 0 10 +-1 -1 -262144 1; +#X obj 101 594 hradio 15 1 0 12 \$0hr_4_s \$0hr_4_r empty 2 8 0 10 +-1 -1 -262144 1; +#X obj 101 609 hradio 15 1 0 12 \$0hr_5_s \$0hr_5_r empty 2 8 0 10 +-1 -1 -262144 2; +#X obj 101 624 hradio 15 1 0 12 \$0hr_6_s \$0hr_6_r empty 2 8 0 10 +-1 -1 -262144 2; +#X obj 101 639 hradio 15 1 0 12 \$0hr_7_s \$0hr_7_r empty 2 8 0 10 +-1 -1 -262144 2; +#X obj 101 517 hradio 15 1 0 13 \$0label_radio_s \$0label_radio_r empty +2 8 0 8 -1 -1 -262144 0; +#X obj 204 752 t a a; +#X msg 141 413 color -1.31586e+07; +#X msg 272 384 color -1.67772e+07; +#X msg 9 405 file \$1; +#X obj 356 -3 t b a; +#X obj 335 68 symbol; +#X obj 260 14 delay 500; +#X obj 120 125 t a b; +#X obj 318 182 t b b; +#X obj 751 -36 inlet; +#X obj 286 110 route clear patterns pattern configure; +#X obj 280 40 spigot 1; +#X msg 342 39 0; +#X obj 502 155 tof/path; +#X obj 87 88 tof/folderpanel; +#X obj 356 -30 tof/path; +#X obj 94 340 hcs/file_type; +#X obj 537 675 zexy/demultiplex 0 1; +#X obj 345 667 ./gBrowser \$0; +#X obj 243 776 hcs/file_type; +#X obj 94 229 zexy/makesymbol %s/*; +#X msg 453 724 clear; +#X obj 40 262 hcs/folder_list .; +#X obj 99 46 route bang float; +#X obj 473 331 hcs/split_path; +#X msg 122 203 symbol ..; +#X obj 477 658 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 62 199 t b a b; +#X obj 282 721 route ..; +#X obj 101 517 cnv 15 197 15 empty \$0hider empty 3 9 0 8 -128992 -262144 +0; +#X obj 511 627 ./shrinkSymbol -20; +#X connect 0 0 52 0; +#X connect 1 0 2 0; +#X connect 1 1 4 0; +#X connect 2 0 8 1; +#X connect 4 0 8 1; +#X connect 5 0 44 0; +#X connect 6 0 47 1; +#X connect 7 0 47 1; +#X connect 8 0 3 0; +#X connect 8 1 10 0; +#X connect 9 0 8 1; +#X connect 11 0 52 0; +#X connect 12 0 30 0; +#X connect 12 1 31 0; +#X connect 13 0 32 0; +#X connect 13 1 45 0; +#X connect 14 0 15 0; +#X connect 17 0 56 0; +#X connect 17 1 53 0; +#X connect 17 2 59 0; +#X connect 17 3 7 0; +#X connect 18 0 6 0; +#X connect 29 0 8 0; +#X connect 29 1 48 0; +#X connect 30 0 47 1; +#X connect 31 0 47 1; +#X connect 32 0 47 1; +#X connect 33 0 35 0; +#X connect 33 1 34 1; +#X connect 34 0 17 0; +#X connect 35 0 40 0; +#X connect 36 0 17 0; +#X connect 36 1 41 0; +#X connect 37 0 7 0; +#X connect 37 1 41 0; +#X connect 38 0 47 1; +#X connect 39 0 37 0; +#X connect 39 3 47 1; +#X connect 39 4 42 0; +#X connect 40 0 34 0; +#X connect 41 0 40 1; +#X connect 42 0 36 0; +#X connect 43 0 36 0; +#X connect 44 0 33 0; +#X connect 45 0 12 0; +#X connect 45 1 31 0; +#X connect 46 0 6 0; +#X connect 46 1 18 0; +#X connect 47 0 57 0; +#X connect 47 1 16 0; +#X connect 48 0 1 0; +#X connect 48 1 9 0; +#X connect 49 0 51 0; +#X connect 50 0 47 1; +#X connect 51 0 13 0; +#X connect 52 0 43 0; +#X connect 52 1 47 0; +#X connect 52 2 39 0; +#X connect 53 0 14 1; +#X connect 54 0 47 1; +#X connect 55 0 47 1; +#X connect 56 0 47 1; +#X connect 56 1 49 0; +#X connect 56 2 54 0; +#X connect 57 0 14 0; +#X connect 57 1 29 0; +#X connect 59 0 46 0; +#X connect 59 1 46 1; +#X coords 0 -1 1 1 198 155 1 100 500; diff --git a/filterPeakSig~-help.pd b/filterPeakSig~-help.pd new file mode 100644 index 0000000..7eb3168 --- /dev/null +++ b/filterPeakSig~-help.pd @@ -0,0 +1,65 @@ +#N canvas 553 188 617 442 10; +#X text 423 2 Version: 2007-09-15; +#X text 423 17 Author: Roman Haefeli; +#X text 26 3 Description: Peakfilter with signal frequency and Q control +; +#X obj 350 50 cnv 15 200 100 empty empty empty 20 12 0 14 -24198 -66577 +0; +#X text 355 55 SYNOPSIS; +#X text 27 395 Comment: modulate q with a pad-synth as input to get +nice sounds; +#X obj 30 247 mtl/out~; +#X obj 31 44 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1 +; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 31 69 pd generate~; +#X obj 199 248 mtl/spectrum~; +#X obj 199 98 mtl/spectrum~; +#X text 354 79 inlet0-1: signal (input); +#X text 354 96 inlet2: param; +#X text 354 113 outlet0-1: signal (output); +#X obj 30 210 mtl/filterPeakSig~ /id fps; +#X obj 353 160 hsl 100 15 0 1 0 0 \$0/fps/wet \$0/fps/wet_ /fps/wet +105 7 0 8 -262144 -1 -1 9900 1; +#X obj 353 180 hsl 100 15 1 1000 0 0 \$0/fps/frequency \$0/fps/frequency_ +/fps/frequency 105 7 0 8 -262144 -1 -1 1900 1; +#X obj 353 200 hsl 100 15 0 100 0 0 \$0/fps/q \$0/fps/q_ /fps/q 105 +7 0 8 -262144 -1 -1 6400 1; +#X connect 7 0 8 0; +#X connect 8 0 14 0; +#X connect 8 1 10 0; +#X connect 8 1 14 1; +#X connect 14 0 6 0; +#X connect 14 1 9 0; +#X connect 14 1 6 1; diff --git a/filterPeakSig~.pd b/filterPeakSig~.pd new file mode 100644 index 0000000..387c9d6 --- /dev/null +++ b/filterPeakSig~.pd @@ -0,0 +1,211 @@ +#N canvas 814 361 667 473 10; +#X text 14 413 Version: 2007-09-15; +#X text 15 430 Author: Roman Haefeli; +#X text 15 394 taken and modified from 3.audio.examples/H12.peaking.pd +; +#N canvas 212 395 643 406 filterl 0; +#X obj 76 246 cpole~; +#X obj 77 291 czero~; +#X obj 343 185 *~ 0.01; +#X obj 398 185 *~ 0.01; +#X obj 361 146 cos~; +#X obj 398 147 cos~; +#X obj 398 125 -~ 0.25; +#X obj 378 42 samplerate~; +#X obj 362 64 /~; +#X obj 378 19 loadbang; +#X obj 76 15 inlet~; +#X obj 77 319 outlet~; +#X obj 147 212 *~; +#X obj 175 213 *~; +#N canvas 497 504 214 352 \$0-lookuptable 0; +#X obj 52 125 *~ -0.1; +#X obj 52 146 expr~ exp($v1); +#X obj 52 167 *~ -1; +#X obj 52 189 +~ 0.9999; +#X obj 52 104 line~; +#X msg 52 83 0.001 \, 100 1000; +#X obj 8 49 t b b b; +#X obj 30 226 tabwrite~ \$0-lookup1; +#X obj 8 272 del 1000; +#X obj 8 317 switch~; +#X obj 8 292 0; +#X obj 8 250 t b b; +#X obj 38 294 1; +#X obj 8 14 loadbang; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 7 0; +#X connect 4 0 0 0; +#X connect 5 0 4 0; +#X connect 6 0 11 0; +#X connect 6 1 7 0; +#X connect 6 2 5 0; +#X connect 8 0 10 0; +#X connect 10 0 9 0; +#X connect 11 0 8 0; +#X connect 11 1 12 0; +#X connect 12 0 9 0; +#X connect 13 0 6 0; +#X restore 305 276 pd \$0-lookuptable; +#X obj 305 298 table \$0-lookup1 44100; +#X obj 191 115 tabread~ \$0-lookup1; +#X obj 192 93 *~ 401; +#X obj 132 -20 mtof~; +#X obj 210 -29 sig~ 30; +#X floatatom 210 -54 5 0 0 0 - - -; +#X obj 134 -87 osc~ 2; +#X obj 134 -64 +~ 4; +#X obj 133 -42 *~ 24; +#X text 209 -73 Q; +#X text 133 -105 peakfreq; +#X obj 180 -85 inlet; +#X obj 223 -85 inlet; +#X connect 0 0 1 0; +#X connect 0 1 1 1; +#X connect 1 0 11 0; +#X connect 2 0 1 2; +#X connect 3 0 1 3; +#X connect 4 0 2 0; +#X connect 4 0 12 0; +#X connect 5 0 3 0; +#X connect 5 0 13 0; +#X connect 6 0 5 0; +#X connect 7 0 8 1; +#X connect 8 0 6 0; +#X connect 8 0 4 0; +#X connect 9 0 7 0; +#X connect 10 0 0 0; +#X connect 12 0 0 2; +#X connect 13 0 0 3; +#X connect 16 0 12 1; +#X connect 16 0 13 1; +#X connect 17 0 16 0; +#X connect 18 0 8 0; +#X connect 19 0 17 0; +#X connect 20 0 19 0; +#X connect 21 0 22 0; +#X connect 22 0 23 0; +#X connect 23 0 18 0; +#X connect 26 0 21 0; +#X connect 27 0 19 0; +#X restore 133 93 pd filterl; +#X obj 88 129 tof/crossfade~ 2; +#X obj 96 195 outlet~; +#X obj 146 195 outlet~; +#X obj 55 12 inlet~; +#X obj 105 12 inlet~; +#X obj 405 72 inlet params; +#X obj 405 94 tof/paramRoute; +#X obj 405 118 print PARAM_NOTFOUND; +#X obj 207 128 tof/param /wet 0 /g slider 0 1; +#X obj 207 171 line~; +#X msg 207 150 \$1 5; +#X obj 165 14 tof/param /frequency 2 /g slider 1 1000; +#X obj 175 34 tof/param /q 0 /g slider 0 100; +#N canvas 213 427 643 406 filterl 0; +#X obj 76 246 cpole~; +#X obj 77 291 czero~; +#X obj 343 185 *~ 0.01; +#X obj 398 185 *~ 0.01; +#X obj 361 146 cos~; +#X obj 398 147 cos~; +#X obj 398 125 -~ 0.25; +#X obj 378 42 samplerate~; +#X obj 362 64 /~; +#X obj 378 19 loadbang; +#X obj 76 15 inlet~; +#X obj 77 319 outlet~; +#X obj 147 212 *~; +#X obj 175 213 *~; +#N canvas 808 267 214 352 \$0-lookuptable 0; +#X obj 52 125 *~ -0.1; +#X obj 52 146 expr~ exp($v1); +#X obj 52 167 *~ -1; +#X obj 52 189 +~ 0.9999; +#X obj 52 104 line~; +#X msg 52 83 0.001 \, 100 1000; +#X obj 8 49 t b b b; +#X obj 8 272 del 1000; +#X obj 8 317 switch~; +#X obj 8 292 0; +#X obj 8 250 t b b; +#X obj 38 294 1; +#X obj 8 14 loadbang; +#X obj 30 226 tabwrite~ \$0-lookup2; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 13 0; +#X connect 4 0 0 0; +#X connect 5 0 4 0; +#X connect 6 0 10 0; +#X connect 6 1 13 0; +#X connect 6 2 5 0; +#X connect 7 0 9 0; +#X connect 9 0 8 0; +#X connect 10 0 7 0; +#X connect 10 1 11 0; +#X connect 11 0 8 0; +#X connect 12 0 6 0; +#X restore 305 276 pd \$0-lookuptable; +#X obj 192 93 *~ 401; +#X obj 132 -20 mtof~; +#X obj 210 -29 sig~ 30; +#X floatatom 210 -54 5 0 0 0 - - -; +#X obj 134 -87 osc~ 2; +#X obj 134 -64 +~ 4; +#X obj 133 -42 *~ 24; +#X text 209 -73 Q; +#X text 133 -105 peakfreq; +#X obj 180 -85 inlet; +#X obj 223 -85 inlet; +#X obj 305 298 table \$0-lookup2 44100; +#X obj 191 115 tabread~ \$0-lookup2; +#X connect 0 0 1 0; +#X connect 0 1 1 1; +#X connect 1 0 11 0; +#X connect 2 0 1 2; +#X connect 3 0 1 3; +#X connect 4 0 2 0; +#X connect 4 0 12 0; +#X connect 5 0 3 0; +#X connect 5 0 13 0; +#X connect 6 0 5 0; +#X connect 7 0 8 1; +#X connect 8 0 6 0; +#X connect 8 0 4 0; +#X connect 9 0 7 0; +#X connect 10 0 0 0; +#X connect 12 0 0 2; +#X connect 13 0 0 3; +#X connect 15 0 27 0; +#X connect 16 0 8 0; +#X connect 17 0 15 0; +#X connect 18 0 17 0; +#X connect 19 0 20 0; +#X connect 20 0 21 0; +#X connect 21 0 16 0; +#X connect 24 0 19 0; +#X connect 25 0 17 0; +#X connect 27 0 12 1; +#X connect 27 0 13 1; +#X restore 203 93 pd filterl; +#X connect 3 0 4 2; +#X connect 4 0 5 0; +#X connect 4 1 6 0; +#X connect 7 0 4 0; +#X connect 7 0 3 0; +#X connect 8 0 4 1; +#X connect 8 0 17 0; +#X connect 9 0 10 0; +#X connect 10 0 11 0; +#X connect 12 0 14 0; +#X connect 13 0 4 4; +#X connect 14 0 13 0; +#X connect 15 0 3 1; +#X connect 15 0 17 1; +#X connect 16 0 3 2; +#X connect 16 0 17 2; +#X connect 17 0 4 3; diff --git a/fit-help.pd b/fit-help.pd new file mode 100644 index 0000000..6ba10fe --- /dev/null +++ b/fit-help.pd @@ -0,0 +1,38 @@ +#N canvas 20 172 541 359 10; +#X floatatom 152 164 5 0 0 0 - - -; +#X floatatom 90 300 5 0 0 0 - - -; +#X msg 188 126 4500; +#X msg 230 126 2500; +#X msg 278 128 2000; +#X msg 150 124 250; +#X floatatom 122 273 5 0 0 0 - - -; +#X floatatom 144 249 5 0 0 0 - - -; +#X text 134 309 Fitted length.; +#X text 223 229 Ratio of fitted length / reference length.; +#X text 195 248 Ratio of reference length / fitted length.; +#X floatatom 174 224 5 0 0 0 - - -; +#X text 176 272 Multiplier of original length to fit reference length. +; +#X text 190 164 Lenght base.; +#X msg 16 104 300; +#X msg 52 103 1000; +#X msg 101 102 3000; +#X text 11 11 Description: Tries to fit a length with an another based +on musical 4/4 divisions.; +#X text 15 81 Length to fit.; +#X obj 150 101 loadbang; +#X obj 90 188 mtl/fit; +#X text 12 43 tags: musical; +#X connect 0 0 20 1; +#X connect 2 0 0 0; +#X connect 3 0 0 0; +#X connect 4 0 0 0; +#X connect 5 0 0 0; +#X connect 14 0 20 0; +#X connect 15 0 20 0; +#X connect 16 0 20 0; +#X connect 19 0 5 0; +#X connect 20 0 1 0; +#X connect 20 1 6 0; +#X connect 20 2 7 0; +#X connect 20 3 11 0; diff --git a/fit.pd b/fit.pd new file mode 100644 index 0000000..e483ccb --- /dev/null +++ b/fit.pd @@ -0,0 +1,113 @@ +#N canvas 0 46 1022 658 10; +#X obj 417 24 inlet; +#X obj 545 573 outlet; +#X obj 750 21 inlet; +#X obj 622 199 /; +#X obj 594 350 *; +#X obj 675 141 t f f; +#X obj 698 425 /; +#X obj 726 573 outlet; +#X obj 813 566 outlet; +#X obj 568 226 t b f; +#N canvas 289 98 991 658 closestmult2 0; +#X msg 403 194 2; +#X obj 407 228 float; +#X obj 465 262 moses; +#X obj 521 193 * 2; +#X obj 506 374 -; +#X obj 406 145 t b f f; +#X obj 517 417 moses; +#X obj 529 339 t f f; +#X obj 564 361 * 0.25; +#X obj 492 480 float; +#X msg 490 448 bang; +#X msg 575 445 bang; +#X obj 581 476 float; +#X obj 606 501 / 2; +#X obj 513 286 t f f f; +#X obj 149 40 inlet; +#X obj 255 610 outlet; +#X obj 190 75 moses 1; +#X obj 66 81 /; +#X msg 75 53 1.125 \$1; +#X obj 301 82 t f b; +#X msg 403 354 1; +#X obj 226 124 t f b; +#X msg 365 355 0; +#X msg 408 578 1 \$1; +#X obj 412 605 /; +#X obj 327 534 zexy/demultiplex 0 1; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 2 1 14 0; +#X connect 3 0 1 0; +#X connect 4 0 6 0; +#X connect 5 0 0 0; +#X connect 5 1 2 1; +#X connect 5 2 4 1; +#X connect 6 0 10 0; +#X connect 6 1 11 0; +#X connect 7 0 4 0; +#X connect 7 1 8 0; +#X connect 8 0 6 1; +#X connect 9 0 26 0; +#X connect 10 0 9 0; +#X connect 11 0 12 0; +#X connect 12 0 13 0; +#X connect 13 0 26 0; +#X connect 14 0 7 0; +#X connect 14 1 9 1; +#X connect 14 2 12 1; +#X connect 15 0 17 0; +#X connect 17 0 19 0; +#X connect 17 1 20 0; +#X connect 18 0 22 0; +#X connect 19 0 18 0; +#X connect 20 0 5 0; +#X connect 20 1 21 0; +#X connect 21 0 26 1; +#X connect 22 0 5 0; +#X connect 22 1 23 0; +#X connect 23 0 26 1; +#X connect 24 0 25 0; +#X connect 25 0 16 0; +#X connect 26 0 24 0; +#X connect 26 1 16 0; +#X restore 658 264 pd closestmult2; +#X obj 653 290 t f f; +#X obj 532 275 f; +#X obj 778 436 t f f; +#X obj 895 569 outlet; +#X obj 873 501 /; +#X msg 847 470 1 \$1; +#X obj 581 152 t f b f f; +#X obj 966 569 outlet; +#X obj 925 407 expr $f2/$f1; +#X obj 833 65 loadbang; +#X obj 705 80 f \$1; +#X connect 0 0 5 0; +#X connect 2 0 21 0; +#X connect 3 0 9 0; +#X connect 4 0 6 0; +#X connect 4 0 1 0; +#X connect 4 0 19 0; +#X connect 5 0 3 0; +#X connect 5 1 6 1; +#X connect 5 1 19 1; +#X connect 6 0 7 0; +#X connect 9 0 12 0; +#X connect 9 1 10 0; +#X connect 10 0 11 0; +#X connect 11 0 13 0; +#X connect 11 1 4 1; +#X connect 12 0 4 0; +#X connect 13 0 8 0; +#X connect 13 1 16 0; +#X connect 15 0 14 0; +#X connect 16 0 15 0; +#X connect 17 0 12 1; +#X connect 17 2 3 1; +#X connect 19 0 18 0; +#X connect 20 0 21 0; +#X connect 21 0 17 0; diff --git a/form-help.pd b/form-help.pd new file mode 100644 index 0000000..a4d60e9 --- /dev/null +++ b/form-help.pd @@ -0,0 +1,52 @@ +#N canvas 391 85 515 557 10; +#X msg 289 125 a a b a; +#X obj 132 98 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 290 99 loadbang; +#X msg 282 212 a b a c a b a; +#X obj 132 124 metro 350; +#X text 64 -40 Mainly for musical forms; +#X text 25 -5 Does not use arguments \, but the right inlet; +#X msg 288 264 a b; +#X text 25 16 2nd inlet : list representing the form; +#X msg 287 289 a a b b; +#X msg 290 149 a b a; +#X msg 285 333 a b a c a d a; +#X text 399 333 Rondo; +#X text 390 125 Ternary; +#X text 391 212 Arch form; +#X text 395 266 Binary; +#X msg 58 134 reset; +#X msg 52 226 behave \$1; +#X obj 50 201 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X text 25 37 behave : (1 0) reset when the moment you change the form. +Defaults to false; +#X text 25 70 reset : resets to the first part of the form (0); +#X text 40 390 For instance \, you could have a set of chords for each +part of the form. You could bang this to get the current part \, looping +through all the parts of the form you set it to use. You might want +to use a sequencer with this \, with a different use of it in each +part.; +#X msg 284 355 1 2 1 3 1 4 1; +#X obj 143 196 mtl/form; +#X text 22 -53 Description: States machine looping through a sequence +of states; +#X obj 143 221 cyclone/prepend set; +#X msg 143 247; +#X text 25 -21 tags: musical behavior; +#X connect 0 0 23 1; +#X connect 1 0 4 0; +#X connect 2 0 0 0; +#X connect 3 0 23 1; +#X connect 4 0 23 0; +#X connect 7 0 23 1; +#X connect 9 0 23 1; +#X connect 10 0 23 1; +#X connect 11 0 23 1; +#X connect 16 0 23 0; +#X connect 17 0 23 0; +#X connect 18 0 17 0; +#X connect 22 0 23 1; +#X connect 23 0 25 0; +#X connect 25 0 26 0; diff --git a/form.pd b/form.pd new file mode 100644 index 0000000..6d332f2 --- /dev/null +++ b/form.pd @@ -0,0 +1,44 @@ +#N canvas 370 173 1069 624 10; +#X obj 37 14 inlet; +#X obj 193 106 bang; +#X obj 68 194 f 0; +#X obj 110 196 + 1; +#X msg -16 143 0; +#X text 523 71 form a a b a; +#X obj 466 25 inlet; +#X obj 181 341 list; +#X obj 213 398 list split 1; +#X obj 181 371 list split; +#X obj 184 280 t b f; +#X obj 193 582 outlet; +#X obj -15 121 bang; +#X text 292 370 get element at; +#X obj 74 236 %; +#X obj 451 82 t a a b; +#X obj 204 173 spigot; +#X msg 203 193 1; +#X obj 54 72 route reset behave; +#X obj 470 231 zexy/length; +#X connect 0 0 18 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 2 0 14 0; +#X connect 3 0 2 1; +#X connect 4 0 2 1; +#X connect 6 0 15 0; +#X connect 7 0 9 0; +#X connect 8 0 11 0; +#X connect 9 1 8 0; +#X connect 10 0 7 0; +#X connect 10 1 9 1; +#X connect 12 0 4 0; +#X connect 14 0 10 0; +#X connect 15 0 7 1; +#X connect 15 1 19 0; +#X connect 15 2 16 0; +#X connect 16 0 17 0; +#X connect 17 0 3 1; +#X connect 18 0 12 0; +#X connect 18 1 16 1; +#X connect 18 2 1 0; +#X connect 19 0 14 1; diff --git a/fpsToMs-help.pd b/fpsToMs-help.pd new file mode 100644 index 0000000..900f348 --- /dev/null +++ b/fpsToMs-help.pd @@ -0,0 +1,11 @@ +#N canvas 30 122 422 224 10; +#X floatatom 144 111 5 0 0 0 - - -; +#X floatatom 144 163 5 0 0 0 - - -; +#X text 198 109 ms; +#X text 195 166 fps; +#X text 34 20 Description: Converts the number frames per seconds into +the number of milliseconds between each frame.; +#X obj 144 137 mtl/fpsToMs; +#X text 34 58 tags: conversion; +#X connect 0 0 5 0; +#X connect 5 0 1 0; diff --git a/fpsToMs.pd b/fpsToMs.pd new file mode 100644 index 0000000..cbdd6e5 --- /dev/null +++ b/fpsToMs.pd @@ -0,0 +1,8 @@ +#N canvas 0 0 450 300 10; +#X obj 137 77 inlet; +#X obj 136 161 /; +#X msg 141 122 1000 \$1; +#X obj 134 197 outlet; +#X connect 0 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 1 0; diff --git a/framesToSmpte-help.pd b/framesToSmpte-help.pd new file mode 100644 index 0000000..fac277f --- /dev/null +++ b/framesToSmpte-help.pd @@ -0,0 +1,41 @@ +#N canvas 234 6 892 300 10; +#X obj 443 9 cnv 15 420 250 empty empty empty 20 12 0 14 -24198 -66577 +0; +#X text 451 58 Left inlet: duration in frames; +#X text 455 117 Outlets from left to right: duration in hours:minutes:seconds:frames +; +#X text 453 88 Right inlet: frame rate (defaults to 25); +#X text 451 24 Description: Converts a duration of frames into smpte +time code.; +#X floatatom 89 48 10 0 0 0 - - -; +#X floatatom 134 122 5 0 0 1 Minutes - -; +#X floatatom 24 123 5 0 0 1 Hours - -; +#X floatatom 240 122 5 0 0 1 Seconds - -; +#X floatatom 335 122 5 0 0 1 Frames - -; +#X symbolatom 155 222 15 0 0 0 - - -; +#X msg 188 33 24; +#X obj 89 27 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 452 163 Author: February 2006 by oli44 (Tulle). Modified by +Tof.; +#X msg 220 33 30; +#X text 451 193 Comments: Only works with integer frame rates for now. +; +#X obj 155 171 pack f f f f; +#X obj 89 69 mtl/framesToSmpte; +#X obj 155 196 zexy/list2symbol; +#X text 455 231 tags: conversion; +#X connect 5 0 17 0; +#X connect 6 0 16 1; +#X connect 7 0 16 0; +#X connect 8 0 16 2; +#X connect 9 0 16 3; +#X connect 11 0 17 1; +#X connect 12 0 5 0; +#X connect 14 0 17 1; +#X connect 16 0 18 0; +#X connect 17 0 7 0; +#X connect 17 1 6 0; +#X connect 17 2 8 0; +#X connect 17 3 9 0; +#X connect 18 0 10 0; diff --git a/framesToSmpte.pd b/framesToSmpte.pd new file mode 100644 index 0000000..d49bc76 --- /dev/null +++ b/framesToSmpte.pd @@ -0,0 +1,33 @@ +#N canvas 522 175 725 591 10; +#X obj 45 48 inlet; +#X obj 314 22 inlet framerate; +#X obj 45 194 / 25; +#X obj 338 343 mod 25; +#X obj 27 444 outlet; +#X obj 137 444 outlet; +#X obj 243 449 outlet; +#X obj 338 439 outlet; +#X obj 65 125 t f f; +#X obj 54 228 t f f; +#X obj 34 295 t f f; +#X obj 245 196 f; +#X obj 243 334 mod 60; +#X obj 139 369 mod 60; +#X obj 48 264 div 60; +#X obj 41 367 div 60; +#X connect 0 0 8 0; +#X connect 1 0 11 0; +#X connect 2 0 9 0; +#X connect 3 0 7 0; +#X connect 8 0 2 0; +#X connect 8 1 3 0; +#X connect 9 0 14 0; +#X connect 9 1 12 0; +#X connect 10 0 15 0; +#X connect 10 1 13 0; +#X connect 11 0 3 1; +#X connect 11 0 2 1; +#X connect 12 0 6 0; +#X connect 13 0 5 0; +#X connect 14 0 10 0; +#X connect 15 0 4 0; diff --git a/frying~-help.pd b/frying~-help.pd new file mode 100644 index 0000000..7d4154b --- /dev/null +++ b/frying~-help.pd @@ -0,0 +1,16 @@ +#N canvas 2 89 334 241 10; +#X text 20 28 Comment: Taken from Andy Farnell's work.; +#X text 21 11 Description: Generates a frying sound.; +#X obj 21 132 mtl/frying~; +#X obj 24 91 hsl 128 15 10 10000 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X obj 87 112 hsl 128 15 10 4000 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 0 1; +#X text 223 110 base; +#X text 159 89 range; +#X obj 20 167 mtl/out~; +#X text 22 44 tags: synthesize~; +#X connect 2 0 7 0; +#X connect 2 0 7 1; +#X connect 3 0 2 0; +#X connect 4 0 2 1; diff --git a/frying~.pd b/frying~.pd new file mode 100644 index 0000000..5223d86 --- /dev/null +++ b/frying~.pd @@ -0,0 +1,52 @@ +#N canvas 240 210 1075 630 10; +#N canvas 283 211 798 609 fry 0; +#X obj 341 264 osc~; +#X obj 351 58 noise~; +#X obj 340 336 *~; +#X obj 307 233 +~ 2000; +#X obj 378 261 *~; +#X obj 378 286 *~; +#X obj 340 440 *~ 0.01; +#X obj 338 463 lop~ 10000; +#X obj 352 122 bp~ 2.064 0.002; +#X obj 379 311 *~; +#X obj 339 370 *~ 0.3; +#X obj 340 395 hip~ 500; +#X obj 341 418 hip~ 500; +#X obj 306 209 *~ 5000; +#X obj 342 548 outlet~; +#X obj 340 493 *~ 0.01; +#X obj 353 177 *~ 3.8; +#X obj 448 59 inlet range; +#X obj 574 59 inlet base; +#X obj 343 518 clip~ -1 1; +#X connect 0 0 2 0; +#X connect 1 0 8 0; +#X connect 2 0 10 0; +#X connect 3 0 0 0; +#X connect 4 0 5 0; +#X connect 4 0 5 1; +#X connect 5 0 9 0; +#X connect 5 0 9 1; +#X connect 6 0 7 0; +#X connect 7 0 15 0; +#X connect 8 0 16 0; +#X connect 9 0 2 1; +#X connect 10 0 11 0; +#X connect 11 0 12 0; +#X connect 12 0 6 0; +#X connect 13 0 3 0; +#X connect 15 0 19 0; +#X connect 16 0 4 0; +#X connect 16 0 4 1; +#X connect 16 0 13 0; +#X connect 17 0 13 1; +#X connect 18 0 3 1; +#X connect 19 0 14 0; +#X restore 151 191 pd fry; +#X obj 149 341 outlet~; +#X obj 136 111 inlet; +#X obj 176 111 inlet; +#X connect 0 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 0 1; diff --git a/gBrowser-help.pd b/gBrowser-help.pd new file mode 100644 index 0000000..01db77c --- /dev/null +++ b/gBrowser-help.pd @@ -0,0 +1,126 @@ +#N canvas 1024 68 1022 700 10; +#X obj 299 97 print; +#X msg 553 -27 clear; +#X msg 543 -127 label put_your_label; +#X msg 543 -98 label labelizer; +#X obj 422 134 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X floatatom 200 18 5 0 0 0 - - -; +#X obj 234 210 vsl 15 115 0 175 0 0 \$0slider_s \$0slider_r empty 0 +-8 0 8 -1 -262144 -1 0 0; +#X obj 52 208 hradio 15 1 0 12 \$0hr_0_s \$0hr_0_r empty 2 8 0 7 -1 +-1 -262144 0; +#X obj 52 223 hradio 15 1 0 12 \$0hr_1_s \$0hr_1_r empty 2 8 0 7 -1 +-1 -262144 0; +#X obj 52 238 hradio 15 1 0 12 \$0hr_2_s \$0hr_2_r empty 2 8 0 7 -1 +-1 -262144 0; +#X obj 52 253 hradio 15 1 0 12 \$0hr_3_s \$0hr_3_r empty 2 8 0 7 -1 +-1 -262144 0; +#X obj 52 268 hradio 15 1 0 12 \$0hr_4_s \$0hr_4_r empty 2 8 0 7 -1 +-1 -262144 0; +#X obj 52 283 hradio 15 1 0 12 \$0hr_5_s \$0hr_5_r empty 2 8 0 7 -1 +-1 -262144 0; +#X obj 52 298 hradio 15 1 0 12 \$0hr_6_s \$0hr_6_r empty 2 8 0 7 -1 +-1 -262144 0; +#X obj 52 313 hradio 15 1 0 12 \$0hr_7_s \$0hr_7_r empty 2 8 0 7 -1 +-1 -262144 0; +#X text 547 -146 Change the label; +#X text 552 -42 Clear the browser; +#X msg 567 -68 will_be_shown will_be_output \, bang; +#X floatatom 655 7 5 0 0 1 size - -; +#X msg 563 134 colorRGB 0 255 0; +#X text 667 110 Change the color of the next entry; +#X msg 560 111 colorRGB 0 0 255; +#X obj 562 51 pack 0 10; +#X obj 616 26 t b a; +#X floatatom 540 24 5 0 2 1 font - -; +#X msg 562 74 text.font \$1 \$2; +#X msg 567 172 select.colorRGB 125 125 125; +#X text 748 170 Change the select color; +#N canvas 57 37 924 659 ADDING_CONTENT 0; +#X msg 34 -68 bob; +#X obj 29 363 bng 15 250 50 0 empty empty empty 0 -6 0 8 -4034 -1 -1 +; +#X msg 75 -66 mom; +#X obj 221 289 openpanel; +#X obj 221 262 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 243 260 Add a file; +#X text 18 -147 There are three modes to adding content:; +#X obj 29 406 cnv 15 400 30 empty empty empty 20 12 0 14 -258113 -66577 +0; +#X text 127 133 FILE MODE; +#X msg 221 319 file \$1; +#X text 42 407 Everytime you change the content \, you must send a +bang to update the display!; +#X text 31 -118 PLAIN MODE; +#X text 118 152 In file mode \, only the name of the file and not the +full path is displayed. BUT \, when you select an item \, it will still +output the full path!; +#X msg 119 -66 tom; +#X text 121 -14 TAG MODE; +#X text 120 189 To use file mode \, prepend the word file to the file +path to be added.; +#X text 32 -99 In plain mode \, the message displayed and outputed +are the same.; +#X text 122 0 In tag mode \, the first element (the tag) is displayed +and the rest is outputed.; +#X msg 127 30 item_displayed items outputed; +#X msg 163 59 shown hidden; +#X obj 72 383 outlet; +#X obj 30 217 t b a; +#X text 497 181 Also \, all file paths will be split. Only the file +name will be displayed BUT the whole path will still be output!; +#X text 499 149 If the file mode is selected \, all spaces in symbols +will be displayed as "_".; +#X connect 0 0 21 0; +#X connect 1 0 20 0; +#X connect 2 0 21 0; +#X connect 3 0 9 0; +#X connect 4 0 3 0; +#X connect 9 0 21 0; +#X connect 13 0 21 0; +#X connect 18 0 21 0; +#X connect 19 0 21 0; +#X connect 21 0 1 0; +#X connect 21 1 20 0; +#X restore 370 -86 pd ADDING_CONTENT; +#X text 16 -13 Select items to be outputed by clicking on the gui or +by selecting by index with the left inlet.; +#X obj 342 -69 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X text 258 239 <- Use the scroll bar when there are too many items +; +#X text 36 -165 description: A little browser GUI (version to include +in your own GOP abstractions).; +#X text 45 335 To include a browser GUI in your own GOP abstraction +\, copy the above graphical objects to your patch. Then create a [mtl/gBrowser +\$0]. You may modify the graphical details \, but do not change the +number of elements or the send and receive symbols.; +#X text 46 409 Clicking on the grey bar will output a bang at mtl/gBrowser's +right outlet.; +#X obj 301 32 mtl/gBrowser \$0; +#X obj 52 192 hradio 15 1 0 11 \$0label_radio_s \$0label_radio_r empty +2 8 0 8 -1 -1 -262144 0; +#X obj 52 192 cnv 15 197 15 empty \$0hider empty 3 9 0 8 -128992 -262144 +0; +#X text 34 -134 tags: ui; +#X connect 1 0 35 1; +#X connect 2 0 35 1; +#X connect 3 0 35 1; +#X connect 5 0 35 0; +#X connect 17 0 35 1; +#X connect 18 0 23 0; +#X connect 19 0 35 1; +#X connect 21 0 35 1; +#X connect 22 0 25 0; +#X connect 23 0 22 0; +#X connect 23 1 22 1; +#X connect 24 0 22 0; +#X connect 25 0 35 1; +#X connect 26 0 35 1; +#X connect 28 0 35 1; +#X connect 30 0 35 1; +#X connect 35 0 0 0; +#X connect 35 1 4 0; +#X coords 0 0 1 1 285 215 0; diff --git a/gBrowser.pd b/gBrowser.pd new file mode 100644 index 0000000..efb3741 --- /dev/null +++ b/gBrowser.pd @@ -0,0 +1,438 @@ +#N canvas 1032 0 1001 666 10; +#X obj 829 775 t f f; +#X obj 267 5 inlet; +#X obj 128 1066 outlet; +#X obj 512 348 t b f; +#X obj 769 838 abs; +#X obj 1069 951 +; +#X obj 240 547 pack s f; +#X msg 240 570 \$2 label \$1; +#X obj 1102 833 t b f f; +#X obj 267 457 -; +#X obj 7 338 spigot; +#X msg 151 330 1; +#X obj 218 475 t s b; +#X msg 234 499 0; +#X obj 34 489 -; +#X msg 40 514 \$1 label; +#X obj 489 167 +; +#X obj 1156 866 s \$0display_offset; +#X obj 652 140 r \$0display_offset; +#X obj 37 454 r \$0display_offset; +#X obj 292 351 r \$0display_offset; +#X obj 841 838 max 0; +#X obj 640 119 r \$0clicked; +#X obj 281 916 s \$0clicked; +#X obj 756 813 - 175; +#X obj 770 871 expr rint(($f1/175)*$f2); +#X msg 512 424 175; +#X obj 757 116 s \$0hradios; +#X obj 289 649 r \$0hradios; +#X msg 757 91 label \, color 112 112 0; +#X obj 644 301 r \$0highlight; +#X obj 561 950 -; +#X obj 598 884 r \$0display_offset; +#X obj 24 544 s \$0hradio; +#X obj 337 534 r \$0hradio; +#X obj 666 437 s \$0hradio; +#X obj 207 297 s \$0selected; +#X obj 477 828 r \$0selected; +#X obj 653 1077 s \$0highlight; +#X obj 214 151 s \$0reset; +#X obj 757 54 r \$0reset; +#X obj 583 916 t b f; +#X obj 511 883 f -1; +#X obj 490 922 moses 0; +#X obj 665 790 r \$0reset; +#X msg 619 839 -1; +#X obj 615 985 moses 0; +#X obj 656 1010 moses 12; +#X obj 659 1037 t f f; +#X msg 716 1046 -1; +#X msg 616 1017 -1; +#X obj 842 810 - 8; +#X msg 1074 867 8; +#N canvas 254 159 774 571 label_man 0; +#X obj 491 8 inlet label; +#X obj 291 93 symbol; +#X obj 408 91 t b b; +#X msg 450 111 symbol; +#X obj 406 70 r \$0reset; +#X obj 310 212 s \$1hider; +#X msg 282 137 label \$1; +#X connect 0 0 1 0; +#X connect 1 0 6 0; +#X connect 2 0 1 0; +#X connect 2 1 3 0; +#X connect 3 0 1 1; +#X connect 4 0 2 0; +#X connect 6 0 5 0; +#X restore 436 532 pd label_man; +#N canvas 1172 48 874 642 coll 0; +#X obj 16 423 outlet selected; +#X obj 733 449 outlet length; +#X obj 579 114 list prepend store; +#X obj 22 13 inlet selected; +#X obj 183 23 inlet query; +#X obj 585 14 inlet add; +#X obj 587 144 list trim; +#X obj 172 419 outlet selected_index; +#X obj 542 436 outlet query_index; +#X obj 361 424 outlet query; +#X msg 116 97 0; +#X obj 277 225 f; +#X msg 255 102 1; +#X msg 395 121 length; +#X obj 492 204 r \$0reset; +#X msg 497 231 clear; +#X obj 31 77 t f b; +#X obj 186 61 t f b; +#X msg 564 233 0; +#X obj 593 85 list prepend 0; +#X msg 74 202 open; +#X obj 505 57 t b b a; +#X msg 462 123 2; +#X obj 607 347 t f f f; +#X obj 32 45 maxlib/wrap; +#X obj 189 208 cyclone/coll; +#C restore; +#X obj 107 281 zexy/demultiplex 0 1 2; +#X obj 269 288 zexy/demultiplex 0 1 2; +#X connect 2 0 6 0; +#X connect 3 0 24 0; +#X connect 4 0 17 0; +#X connect 5 0 21 0; +#X connect 6 0 25 0; +#X connect 10 0 11 0; +#X connect 11 0 26 1; +#X connect 11 0 27 1; +#X connect 12 0 11 0; +#X connect 13 0 25 0; +#X connect 14 0 15 0; +#X connect 14 0 18 0; +#X connect 15 0 25 0; +#X connect 16 0 25 0; +#X connect 16 1 10 0; +#X connect 17 0 25 0; +#X connect 17 1 12 0; +#X connect 18 0 19 1; +#X connect 19 0 2 0; +#X connect 20 0 25 0; +#X connect 21 0 13 0; +#X connect 21 1 22 0; +#X connect 21 2 19 0; +#X connect 22 0 11 0; +#X connect 23 0 1 0; +#X connect 23 1 19 1; +#X connect 23 2 24 2; +#X connect 24 0 16 0; +#X connect 25 0 26 0; +#X connect 25 1 27 0; +#X connect 26 0 0 0; +#X connect 26 1 9 0; +#X connect 26 2 23 0; +#X connect 27 0 7 0; +#X connect 27 1 8 0; +#X restore 196 237 pd coll; +#X obj 181 320 s \$0output; +#X obj 128 972 r \$0output; +#X obj 306 35 route bang; +#X obj 584 723 f; +#X obj 111 267 list split 1; +#X obj 185 342 list split 1; +#X obj 122 517 pack f f; +#X msg 188 80 bang; +#X msg 104 536 \$2 color -1 -1 \$1; +#X obj 368 210 list prepend -1.67772e+07; +#X obj 35 6 inlet; +#X obj 576 646 r \$0redraw; +#X obj 190 913 s \$0redraw; +#X obj 459 877 f; +#X obj 655 947 t f f; +#X obj 589 794 t b f; +#X obj 565 685 bang; +#X obj 381 996 outlet; +#X obj 373 877 b; +#X obj 1043 1014 s \$0get_labels; +#X obj 30 133 r \$0get_labels; +#X obj 44 164 t f f b; +#X obj 24 111 s \$0redraw; +#X obj 984 767 r \$0updated; +#X msg 983 804 set -1; +#X obj 659 843 t b b; +#X obj 370 246 s \$0updated; +#X obj 297 239 t a b; +#X obj 243 865 t b f b; +#X obj 287 888 s \$0updated; +#X obj 901 918 change -1; +#X obj 107 105 s \$0updated; +#X obj 87 81 t b b f; +#N canvas 1213 56 815 508 radio_receives 0; +#X obj 290 32 route 0 1 2 3 4 5 6 7; +#X obj 228 4 inlet; +#X obj 651 7 inlet; +#X obj 123 91 s \$1hr_0_r; +#X obj 200 93 s \$1hr_1_r; +#X obj 274 92 s \$1hr_2_r; +#X obj 351 91 s \$1hr_3_r; +#X obj 431 91 s \$1hr_4_r; +#X obj 507 90 s \$1hr_5_r; +#X obj 581 90 s \$1hr_6_r; +#X obj 659 89 s \$1hr_7_r; +#X connect 0 0 3 0; +#X connect 0 1 4 0; +#X connect 0 2 5 0; +#X connect 0 3 6 0; +#X connect 0 4 7 0; +#X connect 0 5 8 0; +#X connect 0 6 9 0; +#X connect 0 7 10 0; +#X connect 1 0 0 0; +#X connect 2 0 3 0; +#X connect 2 0 4 0; +#X connect 2 0 5 0; +#X connect 2 0 6 0; +#X connect 2 0 7 0; +#X connect 2 0 8 0; +#X connect 2 0 9 0; +#X connect 2 0 10 0; +#X restore 170 682 pd radio_receives; +#N canvas 1233 260 815 508 radio_sends 0; +#X msg 229 133 0; +#X msg 313 133 1; +#X msg 358 129 2; +#X msg 397 131 3; +#X msg 427 129 4; +#X msg 469 128 5; +#X msg 517 145 6; +#X msg 555 155 7; +#X obj 373 232 outlet; +#X obj 123 93 r \$1hr_0_s; +#X obj 199 92 r \$1hr_1_s; +#X obj 274 92 r \$1hr_2_s; +#X obj 351 91 r \$1hr_3_s; +#X obj 431 91 r \$1hr_4_s; +#X obj 507 90 r \$1hr_5_s; +#X obj 583 90 r \$1hr_6_s; +#X obj 659 89 r \$1hr_7_s; +#X connect 0 0 8 0; +#X connect 1 0 8 0; +#X connect 2 0 8 0; +#X connect 3 0 8 0; +#X connect 4 0 8 0; +#X connect 5 0 8 0; +#X connect 6 0 8 0; +#X connect 7 0 8 0; +#X connect 9 0 0 0; +#X connect 10 0 1 0; +#X connect 11 0 2 0; +#X connect 12 0 3 0; +#X connect 13 0 4 0; +#X connect 14 0 5 0; +#X connect 15 0 6 0; +#X connect 16 0 7 0; +#X restore 177 806 pd radio_sends; +#X obj 436 724 r \$1slider_s; +#X obj 439 582 s \$1label_radio_r; +#X obj 598 561 s \$1slider_r; +#X obj 340 847 r \$1label_radio_s; +#N canvas 1482 229 566 539 DISPLAY_MODES 0; +#X obj 98 29 inlet; +#X obj 146 485 outlet; +#X obj 98 147 list trim; +#X obj 98 177 route file; +#X obj 227 301 list split 1; +#X obj 156 363 zexy/symbol2list; +#X obj 141 436 zexy/list2symbol _; +#X obj 30 210 cyclone/tosymbol; +#X obj 27 234 hcs/split_path; +#X connect 0 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 7 0; +#X connect 3 1 4 0; +#X connect 4 0 5 0; +#X connect 4 2 5 0; +#X connect 5 0 6 0; +#X connect 6 0 1 0; +#X connect 7 0 8 0; +#X connect 8 1 5 0; +#X restore 312 416 pd DISPLAY_MODES; +#N canvas 1482 229 566 539 OUTPUT_MODES 0; +#X obj 98 29 inlet; +#X obj 125 488 outlet; +#X obj 98 147 list trim; +#X obj 257 367 list trim; +#X obj 98 177 route file; +#X obj 287 280 route bang; +#X obj 361 305 t a b; +#X obj 211 320 spigot; +#X msg 394 331 0; +#X msg 289 305 1; +#X obj 10 227 zexy/list2symbol; +#X obj 207 218 list split 1; +#X connect 0 0 2 0; +#X connect 2 0 4 0; +#X connect 3 0 1 0; +#X connect 4 0 10 0; +#X connect 4 1 11 0; +#X connect 5 0 9 0; +#X connect 5 1 6 0; +#X connect 6 0 3 0; +#X connect 6 1 8 0; +#X connect 7 0 3 0; +#X connect 8 0 7 1; +#X connect 9 0 7 1; +#X connect 10 0 1 0; +#X connect 11 0 7 0; +#X connect 11 1 5 0; +#X restore 128 1019 pd OUTPUT_MODES; +#N canvas 0 0 812 389 text.size 0; +#X obj 138 208 s \$1hr_0_r; +#X obj 215 210 s \$1hr_1_r; +#X obj 289 209 s \$1hr_2_r; +#X obj 366 208 s \$1hr_3_r; +#X obj 446 208 s \$1hr_4_r; +#X obj 522 207 s \$1hr_5_r; +#X obj 596 207 s \$1hr_6_r; +#X obj 674 206 s \$1hr_7_r; +#X obj 191 26 inlet; +#X obj 233 131 t a; +#X msg 201 71 label_font \$1 \$2; +#X connect 8 0 10 0; +#X connect 9 0 0 0; +#X connect 9 0 1 0; +#X connect 9 0 2 0; +#X connect 9 0 3 0; +#X connect 9 0 4 0; +#X connect 9 0 5 0; +#X connect 9 0 6 0; +#X connect 9 0 7 0; +#X connect 10 0 9 0; +#X restore 592 167 pd text.size; +#X obj 237 62 route clear label color text.font colorRGB select.colorRGB +; +#X obj 695 180 t b a; +#X msg 666 410 \$1 color -1 -1 \$2; +#X obj 764 260 loadbang; +#X msg 763 297 255 0 0; +#X obj 677 373 pack f f; +#X obj 551 208 ./rgbToNum integer; +#X obj 752 343 ./rgbToNum integer; +#X obj 450 761 cyclone/speedlim 100; +#X obj 1062 918 tof/iterate; +#X obj 44 37 route bang float; +#X connect 0 0 51 0; +#X connect 1 0 57 0; +#X connect 3 1 0 0; +#X connect 4 0 25 0; +#X connect 5 0 74 0; +#X connect 6 0 7 0; +#X connect 7 0 88 0; +#X connect 8 0 52 0; +#X connect 8 1 5 1; +#X connect 8 2 17 0; +#X connect 9 0 6 1; +#X connect 9 0 61 1; +#X connect 10 0 14 0; +#X connect 11 0 10 1; +#X connect 12 0 6 0; +#X connect 12 1 13 0; +#X connect 13 0 10 1; +#X connect 14 0 15 0; +#X connect 15 0 33 0; +#X connect 16 0 54 0; +#X connect 18 0 16 1; +#X connect 19 0 14 1; +#X connect 20 0 9 1; +#X connect 21 0 25 1; +#X connect 22 0 16 0; +#X connect 24 0 4 0; +#X connect 25 0 85 0; +#X connect 26 0 92 0; +#X connect 28 0 88 1; +#X connect 29 0 27 0; +#X connect 30 0 102 0; +#X connect 31 0 69 0; +#X connect 32 0 41 0; +#X connect 34 0 88 0; +#X connect 37 0 68 1; +#X connect 40 0 29 0; +#X connect 41 0 42 0; +#X connect 41 1 31 1; +#X connect 42 0 43 0; +#X connect 43 1 31 0; +#X connect 44 0 80 0; +#X connect 45 0 42 1; +#X connect 45 0 68 1; +#X connect 46 0 50 0; +#X connect 46 1 47 0; +#X connect 47 0 48 0; +#X connect 47 1 49 0; +#X connect 48 0 38 0; +#X connect 51 0 21 0; +#X connect 52 0 106 0; +#X connect 54 0 59 0; +#X connect 54 1 36 0; +#X connect 54 2 60 0; +#X connect 54 3 9 0; +#X connect 54 4 3 0; +#X connect 56 0 95 0; +#X connect 57 0 26 0; +#X connect 57 1 97 0; +#X connect 58 0 70 0; +#X connect 59 1 55 0; +#X connect 60 0 61 0; +#X connect 60 1 94 0; +#X connect 61 0 63 0; +#X connect 62 0 39 0; +#X connect 63 0 88 0; +#X connect 64 0 82 0; +#X connect 65 0 107 0; +#X connect 66 0 71 0; +#X connect 68 0 42 0; +#X connect 69 0 46 0; +#X connect 70 0 68 0; +#X connect 70 1 24 0; +#X connect 71 0 58 0; +#X connect 73 0 72 0; +#X connect 75 0 76 0; +#X connect 76 0 10 0; +#X connect 76 1 54 1; +#X connect 76 2 11 0; +#X connect 78 0 79 0; +#X connect 79 0 85 0; +#X connect 80 0 45 0; +#X connect 80 1 79 0; +#X connect 82 0 54 2; +#X connect 82 1 81 0; +#X connect 83 0 67 0; +#X connect 83 1 23 0; +#X connect 83 2 84 0; +#X connect 85 0 8 0; +#X connect 87 0 77 0; +#X connect 87 1 86 0; +#X connect 87 2 54 0; +#X connect 89 0 83 0; +#X connect 90 0 105 0; +#X connect 93 0 73 0; +#X connect 94 0 12 0; +#X connect 95 0 2 0; +#X connect 97 0 39 0; +#X connect 97 1 53 0; +#X connect 97 2 64 1; +#X connect 97 3 96 0; +#X connect 97 4 103 0; +#X connect 97 5 98 0; +#X connect 97 6 64 0; +#X connect 98 0 26 0; +#X connect 98 1 104 0; +#X connect 99 0 35 0; +#X connect 100 0 101 0; +#X connect 101 0 104 0; +#X connect 102 0 99 0; +#X connect 103 0 64 1; +#X connect 104 0 102 1; +#X connect 105 0 58 0; +#X connect 106 0 5 0; +#X connect 107 1 87 0; +#X coords 0 0 1 1 198 138 0; diff --git a/gateNoise~-help.pd b/gateNoise~-help.pd new file mode 100644 index 0000000..faff14c --- /dev/null +++ b/gateNoise~-help.pd @@ -0,0 +1,83 @@ +#N canvas 463 121 588 450 10; +#X obj 128 196 nbx 5 14 -1e+37 1e+37 0 0 empty empty right 0 -8 0 10 +-262144 -1 -1 96.9235 256; +#X obj 16 135 *~; +#X obj 33 114 osc~ 2; +#X obj 104 135 *~; +#X obj 104 92 osc~ 240; +#X obj 121 114 osc~ 4; +#N canvas 172 333 450 300 env 0; +#X obj 279 93 env~ 16384 8192; +#X obj 279 49 inlet~; +#X obj 279 177 outlet; +#X text 294 123 don't know why; +#X obj 279 144 + 2.94; +#X connect 0 0 4 0; +#X connect 1 0 0 0; +#X connect 4 0 2 0; +#X restore 114 161 pd env; +#N canvas 173 365 450 300 env 0; +#X obj 279 93 env~ 16384 8192; +#X obj 279 49 inlet~; +#X obj 279 177 outlet; +#X text 294 123 don't know why; +#X obj 279 144 + 2.4; +#X connect 0 0 4 0; +#X connect 1 0 0 0; +#X connect 4 0 2 0; +#X restore 28 163 pd env; +#X obj 40 197 nbx 5 14 -1e+37 1e+37 0 0 empty empty left 0 -8 0 10 +-262144 -1 -1 96.6015 256; +#X obj 43 256 bonk~; +#X obj 143 255 bonk~; +#X text 189 255 only an idea; +#X msg 70 279 trigger; +#X msg 170 278 trigger; +#X obj 15 92 osc~ 160; +#X obj 16 223 mtl/gateNoise~ /id gatenoise; +#X obj 170 299 mtl/clap~; +#X obj 70 299 mtl/clap~; +#X obj 16 380 mtl/out~; +#X text 13 10 Description: a noise gate (cut off volume below the threshold). +useful for removing noise from an incoming signal or making breakbeat. +; +#X text 13 53 tags: mix~; +#X obj 299 88 hsl 100 15 0 1 0 0 \$0/gatenoise/wet \$0/gatenoise/wet_ +/gatenoise/wet 105 7 0 8 -262144 -1 -1 9900 1; +#X obj 299 118 hsl 100 15 0 100 0 0 \$0/gatenoise/thresholdleft \$0/gatenoise/thresholdleft_ +/gatenoise/thresholdleft 105 7 0 8 -262144 -1 -1 0 1; +#X obj 299 138 hsl 100 15 0 100 0 0 \$0/gatenoise/thresholdright \$0/gatenoise/thresholdright_ +/gatenoise/thresholdright 105 7 0 8 -262144 -1 -1 0 1; +#X obj 299 158 hsl 100 15 0 500 0 0 \$0/gatenoise/attackleft \$0/gatenoise/attackleft_ +/gatenoise/attackleft 105 7 0 8 -262144 -1 -1 20 1; +#X obj 299 178 hsl 100 15 0 500 0 0 \$0/gatenoise/attackright \$0/gatenoise/attackright_ +/gatenoise/attackright 105 7 0 8 -262144 -1 -1 20 1; +#X obj 299 198 hsl 100 15 0 5000 0 0 \$0/gatenoise/releaseleft \$0/gatenoise/releaseleft_ +/gatenoise/releaseleft 105 7 0 8 -262144 -1 -1 396 1; +#X obj 299 218 hsl 100 15 0 5000 0 0 \$0/gatenoise/releaseright \$0/gatenoise/releaseright_ +/gatenoise/releaseright 105 7 0 8 -262144 -1 -1 396 1; +#X obj 289 298 tgl 15 0 \$0/gatenoise/automatic \$0/gatenoise/automatic_ +/gatenoise/automatic 17 7 0 8 -262144 -1 -1 1 1; +#X obj 299 268 hsl 100 15 0 100 0 0 \$0/gatenoise/automatic+- \$0/gatenoise/automatic+-_ +/gatenoise/automatic+- 105 7 0 8 -262144 -1 -1 9900 1; +#X obj 69 320 mtl/out~ 30; +#X connect 1 0 7 0; +#X connect 1 0 15 0; +#X connect 2 0 1 1; +#X connect 3 0 6 0; +#X connect 3 0 15 1; +#X connect 4 0 3 0; +#X connect 5 0 3 1; +#X connect 6 0 0 0; +#X connect 7 0 8 0; +#X connect 9 1 12 0; +#X connect 10 1 13 0; +#X connect 12 0 17 0; +#X connect 13 0 16 0; +#X connect 14 0 1 0; +#X connect 15 0 9 0; +#X connect 15 0 18 0; +#X connect 15 1 10 0; +#X connect 15 1 18 1; +#X connect 16 0 30 1; +#X connect 17 0 30 0; diff --git a/gateNoise~.pd b/gateNoise~.pd new file mode 100644 index 0000000..8eee243 --- /dev/null +++ b/gateNoise~.pd @@ -0,0 +1,161 @@ +#N canvas 385 148 1054 304 10; +#N canvas 437 219 602 401 noisegate~ 0; +#X obj 114 112 env~; +#X obj 78 282 *~; +#X obj 114 260 line~; +#X obj 78 74 inlet~; +#X obj 78 303 outlet~; +#X obj 133 73 inlet; +#X obj 173 170 inlet; +#X obj 215 169 inlet; +#X obj 114 151 change; +#X obj 114 172 sel 1 0; +#X obj 258 112 inlet; +#X obj 313 136 spigot; +#X obj 376 183 t b; +#X floatatom 285 210 5 0 0 0 - - -; +#X floatatom 364 212 5 0 0 0 - - -; +#X obj 376 158 sel 1; +#X obj 376 136 == 20; +#X obj 310 112 inlet; +#X obj 114 131 > 0; +#X obj 114 200 f 0; +#X obj 157 199 f 0; +#X msg 114 225 1 \$1; +#X msg 157 224 0 \$1; +#X obj 285 159 ./listBuild; +#X obj 285 183 zexy/minmax; +#X obj 283 249 maxlib/scale 0 100 -1 1; +#X connect 0 0 11 0; +#X connect 0 0 18 0; +#X connect 1 0 4 0; +#X connect 2 0 1 1; +#X connect 3 0 0 0; +#X connect 3 0 1 0; +#X connect 5 0 18 1; +#X connect 6 0 19 1; +#X connect 7 0 20 1; +#X connect 8 0 9 0; +#X connect 9 0 19 0; +#X connect 9 1 20 0; +#X connect 10 0 11 1; +#X connect 11 0 23 1; +#X connect 12 0 23 0; +#X connect 12 0 25 0; +#X connect 15 0 12 0; +#X connect 16 0 15 0; +#X connect 17 0 25 0; +#X connect 18 0 8 0; +#X connect 19 0 21 0; +#X connect 20 0 22 0; +#X connect 21 0 2 0; +#X connect 22 0 2 0; +#X connect 23 0 24 0; +#X connect 23 1 16 0; +#X connect 24 0 13 0; +#X connect 24 0 25 3; +#X connect 24 1 14 0; +#X connect 24 1 25 4; +#X connect 25 0 18 1; +#X restore 61 164 pd noisegate~; +#N canvas 204 409 477 401 noisegate~ 0; +#X obj 114 112 env~; +#X obj 78 282 *~; +#X obj 114 260 line~; +#X obj 78 74 inlet~; +#X obj 78 303 outlet~; +#X obj 133 73 inlet; +#X obj 173 170 inlet; +#X obj 215 169 inlet; +#X obj 114 151 change; +#X obj 114 172 sel 1 0; +#X obj 258 112 inlet; +#X obj 313 136 spigot; +#X obj 376 183 t b; +#X floatatom 285 210 5 0 0 0 - - -; +#X floatatom 364 212 5 0 0 0 - - -; +#X obj 376 158 sel 1; +#X obj 376 136 == 20; +#X obj 310 112 inlet; +#X obj 114 131 > 0; +#X obj 114 199 f 0; +#X obj 157 199 f 0; +#X msg 114 225 1 \$1; +#X msg 157 224 0 \$1; +#X obj 285 159 ./listBuild; +#X obj 285 182 zexy/minmax; +#X obj 286 247 maxlib/scale 0 100 -1 1; +#X connect 0 0 11 0; +#X connect 0 0 18 0; +#X connect 1 0 4 0; +#X connect 2 0 1 1; +#X connect 3 0 0 0; +#X connect 3 0 1 0; +#X connect 5 0 18 1; +#X connect 6 0 19 1; +#X connect 7 0 20 1; +#X connect 8 0 9 0; +#X connect 9 0 19 0; +#X connect 9 1 20 0; +#X connect 10 0 11 1; +#X connect 11 0 23 1; +#X connect 12 0 23 0; +#X connect 12 0 25 0; +#X connect 15 0 12 0; +#X connect 16 0 15 0; +#X connect 17 0 25 0; +#X connect 18 0 8 0; +#X connect 19 0 21 0; +#X connect 20 0 22 0; +#X connect 21 0 2 0; +#X connect 22 0 2 0; +#X connect 23 0 24 0; +#X connect 23 1 16 0; +#X connect 24 0 13 0; +#X connect 24 0 25 3; +#X connect 24 1 14 0; +#X connect 24 1 25 4; +#X connect 25 0 18 1; +#X restore 149 165 pd noisegate~; +#X obj 51 130 inlet~ left; +#X obj 148 129 inlet~ right; +#X obj 24 234 outlet~ left; +#X obj 115 233 outlet~ right; +#X obj 857 0 inlet params; +#X obj 857 22 tof/paramRoute; +#X obj 857 46 print PARAM_NOTFOUND; +#X obj 232 213 tof/param /wet 0 /g slider 0 1; +#X obj 232 256 line~; +#X msg 232 235 \$1 5; +#X obj 24 209 tof/crossfade~ 2; +#X obj 49 4 tof/param /thresholdleft 0 /g slider 0 100; +#X obj 49 24 tof/param /thresholdright 0 /g slider 0 100; +#X obj 319 4 tof/param /attackleft 1 /g slider 0 500; +#X obj 319 24 tof/param /attackright 1 /g slider 0 500; +#X obj 575 2 tof/param /releaseleft 200 /g slider 0 5000; +#X obj 579 24 tof/param /releaseright 200 /g slider 0 5000; +#X obj 307 88 tof/param /automatic 0 /g tgl; +#X obj 307 107 tof/param /automatic+- 50 /g slider 0 100; +#X connect 0 0 12 2; +#X connect 1 0 12 3; +#X connect 2 0 0 0; +#X connect 2 0 12 0; +#X connect 3 0 1 0; +#X connect 3 0 12 1; +#X connect 6 0 7 0; +#X connect 7 0 8 0; +#X connect 9 0 11 0; +#X connect 10 0 12 4; +#X connect 11 0 10 0; +#X connect 12 0 4 0; +#X connect 12 1 5 0; +#X connect 13 0 0 1; +#X connect 14 0 1 1; +#X connect 15 0 0 2; +#X connect 16 0 1 2; +#X connect 17 0 0 3; +#X connect 18 0 1 3; +#X connect 19 0 1 4; +#X connect 19 0 0 4; +#X connect 20 0 1 5; +#X connect 20 0 0 5; diff --git a/gemsAlpha-help.pd b/gemsAlpha-help.pd new file mode 100644 index 0000000..7dd4138 --- /dev/null +++ b/gemsAlpha-help.pd @@ -0,0 +1,130 @@ +#N canvas 89 124 891 601 10; +#X declare -lib Gem; +#X obj 197 398 vsl 15 50 0 1 0 0 empty empty empty 0 -8 0 8 -258699 +-262144 -1 2572 1; +#X obj 104 454 colorRGB 1 1 1 1; +#X floatatom 195 266 5 0 0 0 - - -; +#X floatatom 271 300 5 0 0 0 - - -; +#X msg 699 306 GL_ONE_MINUS_SRC_ALPHA; +#X msg 699 183 GL_ONE; +#X msg 699 162 GL_ZERO; +#X msg 700 245 GL_ONE_MINUS_DST_COLOR; +#X msg 700 266 GL_ONE_MINUS_SRC_COLOR; +#X msg 700 224 GL_DST_COLOR; +#X text 679 160 0; +#X text 680 182 1; +#X text 680 206 2; +#X text 680 225 3; +#X text 679 247 4; +#X text 680 268 5; +#X msg 700 287 GL_SRC_ALPHA; +#X text 679 290 6; +#X text 679 308 7; +#X msg 701 328 GL_DST_ALPHA; +#X msg 701 349 GL_ONE_MINUS_DST_ALPHA; +#X text 679 330 8; +#X text 681 352 9; +#X msg 700 371 GL_SRC_ALPHA_SATURATE; +#X text 676 373 10; +#X msg 699 204 GL_SRC_COLOR; +#X text 679 135 OpenGL Alpha modes :; +#X obj 104 281 pix_image; +#X obj 104 478 pix_texture; +#X text 26 -12 Description: Allows to easily change the alpha blending +mode for the current gemchain.; +#X obj 195 247 hradio 15 1 0 11 empty empty empty 0 -6 0 8 -258699 +-262144 -1 0; +#X text 194 233 source; +#X obj 271 280 hradio 15 1 0 11 empty empty empty 0 -6 0 8 -258699 +-262144 -1 0; +#X text 270 266 destination; +#N canvas 0 0 450 300 auto 0; +#X obj 129 227 line; +#X obj 140 169 sel 0 1; +#X obj 139 60 inlet; +#X obj 163 108 metro 1000; +#X obj 138 266 outlet; +#X obj 158 137 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 +1; +#X msg 123 194 0.01 \, 1 1000; +#X msg 230 196 1 \, 0.01 1000; +#X connect 0 0 4 0; +#X connect 1 0 6 0; +#X connect 1 1 7 0; +#X connect 2 0 3 0; +#X connect 3 0 5 0; +#X connect 5 0 1 0; +#X connect 6 0 0 0; +#X connect 7 0 0 0; +#X restore 221 438 pd auto; +#X obj 221 418 tgl 15 0 empty empty empty 0 -6 0 8 -258699 -262144 +-1 1 1; +#X symbolatom 140 368 20 0 0 0 - - -; +#X symbolatom 269 369 20 0 0 0 - - -; +#X obj 221 395 loadbang; +#X obj 27 52 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X text 47 48 1) Create Gem window.; +#X obj 104 499 translateXYZ 0 0 0.01; +#X obj 27 77 mtl/gemsWin; +#X text 27 16 tags: gems; +#X obj 308 134 t a a; +#X obj 30 171 openpanel; +#X msg 30 197 open \$1; +#X obj 308 105 gemhead; +#X text 25 121 Blending image; +#X obj 30 147 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 536 194 openpanel; +#X msg 536 220 open \$1; +#X obj 536 170 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X text 516 136 Background image; +#X obj 536 269 pix_image; +#X obj 536 301 pix_texture; +#X text 191 205 3) Play with the controls below:; +#X text 237 83 2) Load blending and background images; +#X text 143 162 Do not forget that for blending to work \, the blending +image must be in front and rendered after other images.; +#X obj 104 547 square 1; +#X obj 536 374 square 1; +#X obj 103 334 mtl/gemsAlpha; +#X obj 104 523 mtl/gemsFit fill; +#X obj 536 243 separator; +#X obj 103 243 separator; +#X text 191 218 Defaults to 6 7 for best results.; +#X obj 536 346 mtl/gemsFit fill; +#X text 223 327 Arguments and 2-3 inlets : source mode number \, destination +mode number; +#X obj 791 5 import Gem; +#X connect 0 0 1 4; +#X connect 1 0 28 0; +#X connect 2 0 61 1; +#X connect 3 0 61 2; +#X connect 27 0 61 0; +#X connect 28 0 41 0; +#X connect 30 0 2 0; +#X connect 32 0 3 0; +#X connect 34 0 0 0; +#X connect 35 0 34 0; +#X connect 38 0 35 0; +#X connect 39 0 42 0; +#X connect 41 0 62 0; +#X connect 44 0 64 0; +#X connect 44 1 63 0; +#X connect 45 0 46 0; +#X connect 46 0 27 0; +#X connect 47 0 44 0; +#X connect 49 0 45 0; +#X connect 50 0 51 0; +#X connect 51 0 54 0; +#X connect 52 0 50 0; +#X connect 54 0 55 0; +#X connect 55 0 66 0; +#X connect 61 0 1 0; +#X connect 61 1 36 0; +#X connect 61 2 37 0; +#X connect 62 0 59 0; +#X connect 63 0 54 0; +#X connect 64 0 27 0; +#X connect 66 0 60 0; diff --git a/gemsAlpha.pd b/gemsAlpha.pd new file mode 100644 index 0000000..5f9837b --- /dev/null +++ b/gemsAlpha.pd @@ -0,0 +1,124 @@ +#N canvas 0 0 808 621 10; +#X obj 30 519 GEMglBlendFunc; +#X msg 233 356 GL_ONE_MINUS_SRC_ALPHA; +#X msg 232 238 GL_ONE; +#X msg 231 220 GL_ZERO; +#X msg 234 297 GL_ONE_MINUS_DST_COLOR; +#X msg 234 316 GL_ONE_MINUS_SRC_COLOR; +#X msg 234 276 GL_DST_COLOR; +#X text 272 201 Jitter Mode Equiv; +#X text 305 222 0; +#X text 305 237 1; +#X text 330 258 2; +#X text 331 278 3; +#X text 396 300 4; +#X text 398 318 5; +#X msg 234 337 GL_SRC_ALPHA; +#X text 330 340 6; +#X text 398 357 7; +#X msg 235 378 GL_DST_ALPHA; +#X msg 235 399 GL_ONE_MINUS_DST_ALPHA; +#X text 332 380 8; +#X text 396 402 9; +#X msg 234 421 GL_SRC_ALPHA_SATURATE; +#X text 391 423 10; +#X msg 471 358 GL_ONE_MINUS_SRC_ALPHA; +#X msg 470 240 GL_ONE; +#X msg 471 258 GL_DST_COLOR; +#X msg 469 222 GL_ZERO; +#X msg 472 299 GL_ONE_MINUS_DST_COLOR; +#X msg 472 318 GL_ONE_MINUS_SRC_COLOR; +#X msg 472 278 GL_DST_COLOR; +#X msg 472 339 GL_SRC_ALPHA; +#X msg 473 380 GL_DST_ALPHA; +#X msg 473 401 GL_ONE_MINUS_DST_ALPHA; +#X msg 472 423 GL_SRC_ALPHA_SATURATE; +#X msg 233 256 GL_SRC_COLOR; +#X obj 30 561 outlet; +#X obj 8 36 inlet; +#X obj 71 139 sel 0 1 2 3 4 5 6 7 8 9 10; +#X obj 318 125 sel 0 1 2 3 4 5 6 7 8 9 10; +#X obj 99 31 inlet; +#X obj 135 56 loadbang; +#X obj 355 17 inlet; +#X obj 297 57 loadbang; +#X obj 34 297 alpha; +#X obj 247 564 outlet; +#X obj 469 572 outlet; +#X obj 152 489 GLdefine; +#X obj 158 461 t a a; +#X obj 238 530 symbol; +#X obj 374 510 GLdefine; +#X obj 396 463 t a a; +#X obj 496 536 symbol; +#X obj 42 81 clip 0 10; +#X obj 42 105 int; +#X obj 430 80 clip 0 10; +#X obj 429 99 int; +#X obj 136 83 tof/argument 1 6; +#X obj 297 86 tof/argument 2 7; +#X connect 0 0 35 0; +#X connect 1 0 47 0; +#X connect 2 0 47 0; +#X connect 3 0 47 0; +#X connect 4 0 47 0; +#X connect 5 0 47 0; +#X connect 6 0 47 0; +#X connect 14 0 47 0; +#X connect 17 0 47 0; +#X connect 18 0 47 0; +#X connect 21 0 47 0; +#X connect 23 0 50 0; +#X connect 24 0 50 0; +#X connect 25 0 50 0; +#X connect 26 0 50 0; +#X connect 27 0 50 0; +#X connect 28 0 50 0; +#X connect 29 0 50 0; +#X connect 30 0 50 0; +#X connect 31 0 50 0; +#X connect 32 0 50 0; +#X connect 33 0 50 0; +#X connect 34 0 47 0; +#X connect 36 0 43 0; +#X connect 37 0 3 0; +#X connect 37 1 2 0; +#X connect 37 2 34 0; +#X connect 37 3 6 0; +#X connect 37 4 4 0; +#X connect 37 5 5 0; +#X connect 37 6 14 0; +#X connect 37 7 1 0; +#X connect 37 8 17 0; +#X connect 37 9 18 0; +#X connect 37 10 21 0; +#X connect 38 0 26 0; +#X connect 38 1 24 0; +#X connect 38 2 25 0; +#X connect 38 3 29 0; +#X connect 38 4 27 0; +#X connect 38 5 28 0; +#X connect 38 6 30 0; +#X connect 38 7 23 0; +#X connect 38 8 31 0; +#X connect 38 9 32 0; +#X connect 38 10 33 0; +#X connect 39 0 52 0; +#X connect 40 0 56 0; +#X connect 41 0 54 0; +#X connect 42 0 57 0; +#X connect 43 0 0 0; +#X connect 46 0 0 1; +#X connect 47 0 48 0; +#X connect 47 1 46 0; +#X connect 48 0 44 0; +#X connect 49 0 0 2; +#X connect 50 0 51 0; +#X connect 50 1 49 0; +#X connect 51 0 45 0; +#X connect 52 0 53 0; +#X connect 53 0 37 0; +#X connect 54 0 55 0; +#X connect 55 0 38 0; +#X connect 56 0 52 0; +#X connect 57 0 54 0; diff --git a/gemsAverageColor-help.pd b/gemsAverageColor-help.pd new file mode 100644 index 0000000..27b4c1f --- /dev/null +++ b/gemsAverageColor-help.pd @@ -0,0 +1,46 @@ +#N canvas 671 265 540 406 10; +#X declare -lib Gem; +#X obj 365 24 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 30 262 pix_texture; +#X text 21 10 Description: Finds out the average color of a pix.; +#X obj 134 294 gemhead 77; +#X text 253 254 the average color of the incoming pixels; +#X obj 253 276 unpack f f f; +#X floatatom 367 339 5 0 0 0 - - -; +#X floatatom 322 338 5 0 0 0 - - -; +#X floatatom 279 339 5 0 0 0 - - -; +#X obj 30 118 gemhead 88; +#X obj 134 357 square 4; +#X obj 134 334 colorRGB 1 1 1; +#X obj 30 284 square 3.5; +#X text 21 32 The square that is behind the film \, and looks like +a border \, is the average color of the incoming frame.; +#X text 22 62 tags: gems; +#X obj 365 46 mtl/gemsWin /dimen 640 640; +#X obj 30 236 mtl/gemsAverageColor; +#X obj 67 142 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 67 172 openpanel; +#X msg 137 174 1; +#X obj 30 213 mtl/gemsMovies; +#X text 87 141 Open movie; +#X text 167 174 Play movie; +#X obj 461 22 import Gem; +#X connect 0 0 15 0; +#X connect 1 0 12 0; +#X connect 3 0 11 0; +#X connect 5 0 8 0; +#X connect 5 0 11 1; +#X connect 5 1 7 0; +#X connect 5 1 11 2; +#X connect 5 2 6 0; +#X connect 5 2 11 3; +#X connect 9 0 20 0; +#X connect 11 0 10 0; +#X connect 16 0 1 0; +#X connect 16 1 5 0; +#X connect 17 0 18 0; +#X connect 18 0 20 1; +#X connect 19 0 20 2; +#X connect 20 0 16 0; diff --git a/gemsAverageColor.pd b/gemsAverageColor.pd new file mode 100644 index 0000000..5ea9da9 --- /dev/null +++ b/gemsAverageColor.pd @@ -0,0 +1,26 @@ +#N canvas 1024 246 870 437 10; +#X obj 520 245 pix_data; +#X obj 520 201 t b a; +#X obj 563 201 loadbang; +#X msg 563 222 0.5; +#X obj 520 180 pix_resize 1 1; +#X obj 519 159 pix_separator; +#X text 590 249 the average color of the incoming pixels; +#X obj 265 17 inlet; +#X obj 264 84 t a a; +#X obj 257 408 outlet; +#X obj 565 345 outlet; +#X text 60 199 Here \, we are finding out the average color of the +incoming pixels. We resize the pixels to a single pixel \, and then +figure out its color value.; +#X connect 0 1 10 0; +#X connect 1 0 0 0; +#X connect 1 1 0 1; +#X connect 2 0 3 0; +#X connect 3 0 0 2; +#X connect 3 0 0 3; +#X connect 4 0 1 0; +#X connect 5 0 4 0; +#X connect 7 0 8 0; +#X connect 8 0 9 0; +#X connect 8 1 5 0; diff --git a/gemsCropMap-help.pd b/gemsCropMap-help.pd new file mode 100644 index 0000000..df2a915 --- /dev/null +++ b/gemsCropMap-help.pd @@ -0,0 +1,76 @@ +#N canvas 196 64 482 540 10; +#X declare -lib Gem; +#X declare -lib Gem; +#X obj 26 115 gemhead; +#X obj 26 57 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 26 464 pix_texture; +#X obj 50 143 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X floatatom 156 284 5 0 0 0 - - -; +#X floatatom 91 256 5 0 0 0 - - -; +#X obj 26 499 square; +#X text 135 256 X elements; +#X text 200 285 Y elements; +#X text 22 9 Description: multiple cropping and mapping; +#X obj 26 426 rotateXYZ; +#X obj 26 76 mtl/gemsWin /dimen 320 240; +#X obj 26 193 mtl/gemsMovies; +#X text 67 142 Load a movie; +#X obj 26 217 mtl/gemsFit window 0.8; +#X msg 79 163 1; +#X text 110 165 Play it; +#N canvas 0 0 450 300 rotation 0; +#X obj 156 158 line; +#X obj 155 116 metro 5000; +#X msg 155 137 0 \, 360 5000; +#X obj 250 159 line; +#X obj 248 115 metro 8000; +#X msg 249 137 0 \, 360 8000; +#X obj 108 32 inlet; +#X obj 47 77 sel 0; +#X obj 78 235 outlet; +#X obj 170 234 outlet; +#X obj 155 73 t f f f; +#X msg 75 118 stop; +#X msg 47 170 0; +#X connect 0 0 8 0; +#X connect 1 0 2 0; +#X connect 2 0 0 0; +#X connect 3 0 9 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 6 0 10 0; +#X connect 7 0 11 0; +#X connect 7 0 12 0; +#X connect 10 0 7 0; +#X connect 10 1 1 0; +#X connect 10 2 4 0; +#X connect 11 0 0 0; +#X connect 11 0 3 0; +#X connect 12 0 8 0; +#X connect 12 0 9 0; +#X restore 43 401 pd rotation; +#X obj 43 380 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X text 61 380 <- Rotation animation; +#X obj 43 355 loadbang; +#X text 153 313 Arguments: initial number of x and y elements; +#X obj 26 312 mtl/gemsCropMap 8 6; +#X text 23 24 tags: gems; +#X obj 391 11 import Gem; +#X connect 0 0 12 0; +#X connect 1 0 11 0; +#X connect 2 0 6 0; +#X connect 3 0 12 1; +#X connect 4 0 22 2; +#X connect 5 0 22 1; +#X connect 10 0 2 0; +#X connect 12 0 14 0; +#X connect 14 0 22 0; +#X connect 15 0 12 2; +#X connect 17 0 10 1; +#X connect 17 1 10 2; +#X connect 18 0 17 0; +#X connect 20 0 18 0; +#X connect 22 0 10 0; diff --git a/gemsCropMap.pd b/gemsCropMap.pd new file mode 100644 index 0000000..9f2fafe --- /dev/null +++ b/gemsCropMap.pd @@ -0,0 +1,122 @@ +#N canvas 18 25 991 686 10; +#X obj 49 154 separator; +#X obj 52 178 t a b; +#X obj 52 224 t a b; +#X obj 53 276 separator; +#X obj 55 300 t a b; +#X obj 54 594 pix_crop; +#X text 263 578 xdim ydim xoff yoff; +#X obj 330 533 /; +#X obj 292 513 /; +#X obj 269 331 *; +#X obj 270 353 /; +#X obj 252 445 *; +#X obj 251 498 /; +#X obj 53 771 outlet; +#X obj 402 133 f; +#X obj 403 29 inlet; +#X text 410 -3 num X; +#X obj 591 56 loadbang; +#X obj 549 137 f; +#X obj 550 33 inlet; +#X text 557 1 num Y; +#X obj 52 41 inlet; +#X obj 54 101 pix_info ------; +#X obj 144 612 expr (1/$f2)*($f1*2+1)-1; +#X obj 471 601 /; +#X obj 605 547 /; +#X obj 208 653 expr (1/$f2)*($f1*2+1)-1; +#X msg 466 574 1; +#X msg 600 520 1; +#X obj 469 653 f 1; +#X obj 560 665 f 1; +#X obj 720 636 min; +#X obj 54 76 t a b b b b; +#X obj 473 531 t b f; +#X obj 607 477 t b f; +#X obj 501 623 t f f; +#X obj 645 566 t f f; +#X obj 499 63 t b b; +#X obj 686 688 f 1; +#X obj 403 155 t f f f f f f; +#X obj 550 159 t f f f f f f; +#X obj 54 672 translateXYZ; +#X obj 59 725 scaleXYZ; +#X obj 583 112 tof/argument 2 1; +#X obj 436 108 tof/argument 1 1; +#X obj 323 303 t f f; +#X obj 302 378 t f f; +#X obj 150 327 tof/increment; +#X obj 112 203 tof/increment; +#X obj 49 128 zexy/repeat 1; +#X obj 53 250 zexy/repeat 1; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 1 1 48 0; +#X connect 2 0 50 0; +#X connect 2 1 47 1; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 4 1 47 0; +#X connect 5 0 41 0; +#X connect 7 0 5 2; +#X connect 8 0 5 1; +#X connect 9 0 10 0; +#X connect 10 0 5 3; +#X connect 11 0 12 0; +#X connect 12 0 5 4; +#X connect 14 0 39 0; +#X connect 15 0 14 0; +#X connect 17 0 37 0; +#X connect 18 0 40 0; +#X connect 19 0 18 0; +#X connect 21 0 32 0; +#X connect 22 0 49 0; +#X connect 22 1 45 0; +#X connect 22 2 46 0; +#X connect 23 0 41 1; +#X connect 24 0 35 0; +#X connect 25 0 36 0; +#X connect 26 0 41 2; +#X connect 27 0 24 0; +#X connect 28 0 25 0; +#X connect 29 0 42 1; +#X connect 30 0 42 2; +#X connect 31 0 38 0; +#X connect 32 0 22 0; +#X connect 32 1 48 1; +#X connect 33 0 27 0; +#X connect 33 1 24 1; +#X connect 34 0 28 0; +#X connect 34 1 25 1; +#X connect 35 0 29 0; +#X connect 35 1 31 0; +#X connect 36 0 30 0; +#X connect 36 1 31 1; +#X connect 37 0 44 0; +#X connect 37 1 43 0; +#X connect 38 0 42 3; +#X connect 39 0 49 1; +#X connect 39 1 10 1; +#X connect 39 3 23 1; +#X connect 39 4 33 0; +#X connect 40 0 50 1; +#X connect 40 1 12 1; +#X connect 40 2 8 1; +#X connect 40 3 26 1; +#X connect 40 4 34 0; +#X connect 40 5 7 1; +#X connect 41 0 42 0; +#X connect 42 0 13 0; +#X connect 43 0 18 0; +#X connect 44 0 14 0; +#X connect 45 0 9 1; +#X connect 45 1 8 0; +#X connect 46 0 11 1; +#X connect 46 1 7 0; +#X connect 47 0 26 0; +#X connect 47 0 11 0; +#X connect 48 0 23 0; +#X connect 48 0 9 0; +#X connect 49 0 0 0; +#X connect 50 0 3 0; diff --git a/gemsCuber-help.pd b/gemsCuber-help.pd new file mode 100644 index 0000000..db21241 --- /dev/null +++ b/gemsCuber-help.pd @@ -0,0 +1,59 @@ +#N canvas 620 70 553 565 10; +#X declare -lib Gem; +#X declare -lib Gem; +#X obj 19 78 gemhead; +#X obj 193 73 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 0 +1; +#X obj 19 105 alpha; +#X floatatom 138 348 5 0 0 1 num_of_z_repetitions - -; +#X obj 19 283 rotateXYZ; +#X floatatom 61 245 5 0 0 0 - - -; +#X text 146 397 Args:; +#N canvas 152 523 450 300 autorotate 0; +#X obj 83 191 outlet; +#X obj 80 41 inlet; +#X obj 82 81 metro 10000; +#X msg 86 119 0 \, 360 10000; +#X obj 90 151 line; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X connect 4 0 0 0; +#X restore 70 218 pd autorotate; +#X obj 71 173 loadbang; +#X floatatom 92 329 5 0 0 1 num_of_y_repetitions - -; +#X floatatom 55 309 5 0 0 1 num_of_x_repetitions - -; +#X text 161 412 x repetitions (minimum of 1); +#X text 162 428 y repetitions (minimum of 1); +#X obj 16 526 cube 0.5; +#X obj 193 93 mtl/gemsWin /dimen 320 240 /lighting 1; +#X text 15 30 tags: gems; +#X text 14 14 Description: Builds a cube out of duplicated geos.; +#X obj 356 206 world_light; +#X obj 356 145 gemhead; +#X obj 19 407 mtl/gemsCuber; +#X text 164 443 z repetitions (minimum of 1); +#X obj 19 137 mtl/gemsFit window 0.7; +#X obj 16 477 colorRGB; +#X text 144 477 Outlet 2: relative x of geos being rendered; +#X text 143 492 Outlet 3: relative y of geos being rendered; +#X text 146 510 Outlet 4: relative z of geos being rendered; +#X obj 453 11 import Gem; +#X connect 0 0 2 0; +#X connect 1 0 14 0; +#X connect 2 0 21 0; +#X connect 3 0 19 3; +#X connect 4 0 19 0; +#X connect 5 0 4 2; +#X connect 5 0 4 1; +#X connect 7 0 5 0; +#X connect 8 0 7 0; +#X connect 9 0 19 2; +#X connect 10 0 19 1; +#X connect 18 0 17 0; +#X connect 19 0 22 0; +#X connect 19 1 22 1; +#X connect 19 2 22 2; +#X connect 19 3 22 3; +#X connect 21 0 4 0; +#X connect 22 0 13 0; diff --git a/gemsCuber.pd b/gemsCuber.pd new file mode 100644 index 0000000..2405f9f --- /dev/null +++ b/gemsCuber.pd @@ -0,0 +1,131 @@ +#N canvas 12 32 1022 686 10; +#X obj 49 154 separator; +#X obj 53 276 separator; +#X obj 403 664 outlet; +#X obj 406 128 f; +#X obj 403 29 inlet; +#X text 410 -3 num X; +#X obj 606 19 loadbang; +#X obj 554 127 f; +#X obj 551 16 inlet; +#X text 557 1 num Y; +#X obj 49 128 repeat 1; +#X obj 53 250 repeat 1; +#X obj 144 17 inlet; +#X obj 188 568 expr (1/$f2)*($f1*2+1)-1; +#X obj 465 484 /; +#X obj 606 472 /; +#X obj 139 517 expr (1/$f2)*($f1*2+1)-1; +#X msg 460 457 1; +#X msg 601 445 1; +#X obj 467 414 t b f; +#X obj 608 402 t b f; +#X obj 389 184 t f f f f f f; +#X obj 547 189 t f f f f f f; +#X obj 65 610 translateXYZ; +#X obj 394 627 scaleXYZ; +#X obj 146 52 t a b; +#X obj 400 159 max 1; +#X obj 549 164 max 1; +#X obj 60 384 separator; +#X obj 66 409 t a b; +#X obj 60 358 repeat 1; +#X obj 51 179 t a b b; +#X obj 55 300 t a b b; +#X obj 721 31 inlet; +#X text 722 8 num z; +#X obj 721 129 f; +#X obj 726 165 max 1; +#X obj 731 192 t f f f; +#X obj 104 470 expr (1/$f2)*($f1*2+1)-1; +#X obj 724 470 /; +#X msg 715 439 1; +#X obj 766 404 t b f; +#X obj 499 63 t b b b b; +#X obj 436 108 tof/argument 1 1; +#X obj 578 94 tof/argument 2 1; +#X obj 750 111 tof/argument 3 1; +#X obj 120 209 tof/increment; +#X obj 106 324 tof/increment; +#X obj 113 433 tof/increment; +#X obj 559 653 outlet; +#X obj 651 656 outlet; +#X obj 779 654 outlet; +#X obj 559 606 /; +#X obj 659 589 /; +#X obj 771 591 /; +#X obj 783 490 - 1; +#X obj 650 534 - 1; +#X obj 524 493 - 1; +#X connect 0 0 31 0; +#X connect 1 0 32 0; +#X connect 3 0 26 0; +#X connect 4 0 3 0; +#X connect 6 0 42 0; +#X connect 7 0 27 0; +#X connect 8 0 7 0; +#X connect 10 0 0 0; +#X connect 11 0 1 0; +#X connect 12 0 25 0; +#X connect 13 0 23 3; +#X connect 14 0 24 1; +#X connect 15 0 24 2; +#X connect 16 0 23 2; +#X connect 17 0 14 0; +#X connect 18 0 15 0; +#X connect 19 0 17 0; +#X connect 19 1 14 1; +#X connect 19 1 57 0; +#X connect 20 0 18 0; +#X connect 20 1 15 1; +#X connect 20 1 56 0; +#X connect 21 0 30 1; +#X connect 21 1 38 1; +#X connect 21 4 19 0; +#X connect 22 0 11 1; +#X connect 22 3 16 1; +#X connect 22 4 20 0; +#X connect 23 0 24 0; +#X connect 24 0 2 0; +#X connect 25 0 10 0; +#X connect 25 1 46 1; +#X connect 26 0 21 0; +#X connect 27 0 22 0; +#X connect 28 0 29 0; +#X connect 29 0 23 0; +#X connect 29 1 48 0; +#X connect 30 0 28 0; +#X connect 31 0 11 0; +#X connect 31 2 46 0; +#X connect 32 0 30 0; +#X connect 32 2 47 0; +#X connect 33 0 35 0; +#X connect 35 0 36 0; +#X connect 36 0 37 0; +#X connect 37 0 10 1; +#X connect 37 1 13 1; +#X connect 37 2 41 0; +#X connect 38 0 23 1; +#X connect 39 0 24 3; +#X connect 40 0 39 0; +#X connect 41 0 40 0; +#X connect 41 1 39 1; +#X connect 41 1 55 0; +#X connect 42 0 43 0; +#X connect 42 1 44 0; +#X connect 42 2 45 0; +#X connect 43 0 3 0; +#X connect 44 0 7 0; +#X connect 45 0 35 0; +#X connect 46 0 13 0; +#X connect 46 0 54 0; +#X connect 47 0 16 0; +#X connect 47 0 53 0; +#X connect 48 0 38 0; +#X connect 48 0 52 0; +#X connect 52 0 49 0; +#X connect 53 0 50 0; +#X connect 54 0 51 0; +#X connect 55 0 54 1; +#X connect 56 0 53 1; +#X connect 57 0 52 1; diff --git a/gemsDuplicate-help.pd b/gemsDuplicate-help.pd new file mode 100644 index 0000000..c6c9885 --- /dev/null +++ b/gemsDuplicate-help.pd @@ -0,0 +1,58 @@ +#N canvas 609 88 707 533 10; +#X declare -lib Gem; +#X declare -lib Gem; +#X obj 19 87 gemhead; +#X obj 387 -8 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X floatatom 157 70 5 0 0 0 - - -; +#X text 204 69 Number of iterations; +#X text 8 2 You can change the number of iteration using the right +inlet.; +#X text 8 32 tags: gems; +#X text 7 -16 Description: Duplicates and separates a Gem chain.; +#X text 198 105 Outlet 2 bangs when rendering each duplication. Outlet +3 bangs at the start of the rendering.; +#X obj 20 471 circle; +#X obj 19 112 mtl/gemsDuplicate 10; +#X obj 76 144 tof/increment; +#X obj 20 285 color; +#X obj 157 94 t f f; +#X obj 76 173 /; +#X obj 76 257 mtl/hsvToRgb; +#X obj 20 433 translateXYZ; +#X msg 76 235 \$1 1 1; +#X obj 220 314 sin; +#X obj 76 209 t f f; +#X obj 193 258 * 6.28319; +#X obj 193 282 t f f; +#X obj 131 307 cos; +#X floatatom 195 363 5 0 0 1 diameter - -; +#X obj 387 12 mtl/gemsWin /dimen 640 480 /anti-aliasing 1; +#X obj 86 395 * 3; +#X obj 130 398 * 3; +#X obj 585 -14 import Gem; +#X connect 0 0 9 0; +#X connect 1 0 23 0; +#X connect 2 0 12 0; +#X connect 9 0 11 0; +#X connect 9 1 10 0; +#X connect 9 2 10 1; +#X connect 10 0 13 0; +#X connect 11 0 15 0; +#X connect 12 0 9 1; +#X connect 12 1 13 1; +#X connect 13 0 18 0; +#X connect 14 0 11 1; +#X connect 15 0 8 0; +#X connect 16 0 14 0; +#X connect 17 0 25 0; +#X connect 18 0 16 0; +#X connect 18 1 19 0; +#X connect 19 0 20 0; +#X connect 20 0 21 0; +#X connect 20 1 17 0; +#X connect 21 0 24 0; +#X connect 22 0 24 1; +#X connect 22 0 25 1; +#X connect 24 0 15 1; +#X connect 25 0 15 2; diff --git a/gemsDuplicate.pd b/gemsDuplicate.pd new file mode 100644 index 0000000..aaf8bf6 --- /dev/null +++ b/gemsDuplicate.pd @@ -0,0 +1,20 @@ +#N canvas 906 283 341 293 10; +#X obj 41 87 t a b; +#X obj 44 167 t a b; +#X obj 39 39 inlet; +#X obj 41 232 outlet; +#X obj 126 240 outlet; +#X obj 212 233 outlet; +#X obj 43 200 separator; +#X obj 192 57 inlet; +#X obj 204 121 max 0; +#X obj 42 144 zexy/repeat \$1; +#X connect 0 0 9 0; +#X connect 0 1 5 0; +#X connect 1 0 6 0; +#X connect 1 1 4 0; +#X connect 2 0 0 0; +#X connect 6 0 3 0; +#X connect 7 0 8 0; +#X connect 8 0 9 1; +#X connect 9 0 1 0; diff --git a/gemsFeedback-help.pd b/gemsFeedback-help.pd new file mode 100644 index 0000000..9a8deea --- /dev/null +++ b/gemsFeedback-help.pd @@ -0,0 +1,62 @@ +#N canvas 373 57 590 646 10; +#X declare -lib Gem; +#X obj 163 125 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 11430 1; +#X floatatom 160 143 5 0 0 0 - - -; +#X floatatom 225 179 5 0 0 0 - - -; +#X obj 86 240 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 +1; +#X obj 86 208 loadbang; +#X text 16 -2 Description: A more advanced video feedback loop using +snapshots of the rendering window.; +#X text 105 240 feedback on/off; +#X obj 272 27 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 0 +1; +#X text 20 44 tags: gems; +#X obj 159 455 mtl/gemsMouse; +#X obj 95 531 translateXYZ; +#X obj 153 494 unpack; +#X obj 95 472 gemhead; +#X text 299 127 feedback amount (0-1); +#X text 203 490 Move the mouse around in the GEM window.; +#X obj 272 57 mtl/gemsWin /dimen 320 240; +#X obj 205 377 mtl/gemsFeedback; +#X obj 225 156 iemlib/init 0.1; +#X obj 92 591 circle 0.2; +#X obj 160 103 iemlib/init 0.9; +#X obj 94 568 colorRGB 1 0 0 1; +#X obj 263 520 gemhead; +#X obj 255 578 circle 0.2; +#X obj 256 547 colorRGB 0 1 0; +#X text 270 173 feedback in/out; +#X floatatom 274 213 5 0 0 0 - - -; +#X floatatom 309 248 5 0 0 0 - - -; +#X text 308 210 feedback left/right; +#X text 346 247 feedback down/up; +#X floatatom 332 312 5 0 0 0 - - -; +#X text 339 329 feedback rotate; +#X text 340 370 Argument 1: feedback amount; +#X text 343 406 Argument 3: feeback left/right; +#X text 340 388 Argument 2: feedback in/out; +#X text 345 424 Argument 4: feedback down/up; +#X text 346 442 Argument 5: feedback rotate; +#X obj 376 6 import Gem; +#X connect 0 0 1 0; +#X connect 1 0 16 1; +#X connect 2 0 16 2; +#X connect 3 0 16 0; +#X connect 4 0 3 0; +#X connect 7 0 15 0; +#X connect 9 0 11 0; +#X connect 10 0 20 0; +#X connect 11 0 10 1; +#X connect 11 1 10 2; +#X connect 12 0 10 0; +#X connect 17 0 2 0; +#X connect 19 0 0 0; +#X connect 20 0 18 0; +#X connect 21 0 23 0; +#X connect 23 0 22 0; +#X connect 25 0 16 3; +#X connect 26 0 16 4; +#X connect 29 0 16 5; diff --git a/gemsFeedback.pd b/gemsFeedback.pd new file mode 100644 index 0000000..21384cc --- /dev/null +++ b/gemsFeedback.pd @@ -0,0 +1,83 @@ +#N canvas 0 53 1009 658 10; +#X obj 12 24 gemhead 100000; +#X msg 27 116 snap; +#X obj 287 -42 inlet alpha/colorRGBA; +#X obj 166 434 unpack f f f f; +#X obj 289 12 route list; +#X obj 56 -40 inlet render; +#X obj 43 179 pix_snap2tex 0 0 320 240; +#X obj 169 576 rectangle 5.33333 4; +#X obj 56 398 scaleXYZ 5.5 5.5 1; +#X obj 124 29 gemhead 0; +#X obj 369 173 loadbang; +#X obj 417 241 value GEMSH; +#X obj 325 241 value GEMSW; +#X obj 370 201 t b b; +#X obj 484 186 r GEMS; +#X obj 347 286 pack; +#X obj 175 542 alpha; +#X obj 369 36 clip 0 1; +#X obj 349 94 pow 0.3; +#X obj 148 471 colorRGB 1 1 1 0.5; +#X obj 487 2 moses 0; +#X obj 783 75 + 1; +#X obj 430 66 expr abs(1/($f1-1)); +#X obj 49 310 translateXYZ 0 0 -15; +#X obj 138 347 * 4.75; +#X obj 492 -52 inlet in/out; +#X obj 637 -43 inlet left/right; +#X obj 763 -39 inlet up/down; +#X obj 916 -42 inlet rotate; +#X obj 187 511 rotateXYZ; +#X obj 188 -11 tof/argument 1 0.3; +#X obj 428 -95 loadbang; +#X obj 511 -27 tof/argument 2 0.1; +#X obj 619 -9 tof/argument 3 0; +#X obj 718 19 tof/argument 4 0; +#X obj 855 35 tof/argument 5 0; +#X connect 0 0 1 0; +#X connect 1 0 6 0; +#X connect 2 0 4 0; +#X connect 3 0 19 1; +#X connect 3 1 19 2; +#X connect 3 2 19 3; +#X connect 4 0 3 0; +#X connect 4 1 17 0; +#X connect 5 0 0 0; +#X connect 5 0 9 0; +#X connect 6 0 23 0; +#X connect 8 0 19 0; +#X connect 9 0 6 0; +#X connect 10 0 13 0; +#X connect 11 0 15 1; +#X connect 12 0 15 0; +#X connect 13 0 12 0; +#X connect 13 1 11 0; +#X connect 14 0 13 0; +#X connect 15 0 6 2; +#X connect 16 0 7 0; +#X connect 17 0 18 0; +#X connect 18 0 19 4; +#X connect 19 0 29 0; +#X connect 20 0 22 0; +#X connect 20 1 21 0; +#X connect 21 0 24 0; +#X connect 22 0 24 0; +#X connect 23 0 8 0; +#X connect 24 0 8 1; +#X connect 24 0 8 2; +#X connect 25 0 20 0; +#X connect 26 0 23 1; +#X connect 27 0 23 2; +#X connect 28 0 29 3; +#X connect 29 0 16 0; +#X connect 30 0 4 0; +#X connect 31 0 30 0; +#X connect 31 0 32 0; +#X connect 31 0 33 0; +#X connect 31 0 34 0; +#X connect 31 0 35 0; +#X connect 32 0 20 0; +#X connect 33 0 23 1; +#X connect 34 0 23 2; +#X connect 35 0 29 3; diff --git a/gemsFit-help.pd b/gemsFit-help.pd new file mode 100644 index 0000000..008afd0 --- /dev/null +++ b/gemsFit-help.pd @@ -0,0 +1,60 @@ +#N canvas 269 79 874 527 10; +#X declare -lib Gem; +#X text 21 10 Description: Wraps gems.fit with an additonal internal +scaleXYZ object.; +#X obj 88 136 gemhead; +#X obj 88 165 pix_image; +#X obj 88 396 pix_texture; +#X obj 26 87 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X msg 229 241 window; +#X obj 197 217 hradio 15 1 0 4 empty empty empty 0 -6 0 8 -262144 -1 +-1 0; +#X msg 253 264 pixsize; +#X msg 259 285 pixratio; +#X floatatom 287 347 5 0 0 0 scale - -; +#X msg 274 318 fill; +#X text 191 180 You can change the fitting by sending the mode name +or the fittings's number.; +#X text 279 238 number 0; +#X text 312 265 number 1; +#X text 324 289 number 2; +#X text 311 321 number 3; +#X text 477 407 pixsize: reproduce the image \, pixel by pixel in the +gem win.; +#X text 476 453 fill: fills the whole gemwin; +#X floatatom 282 381 5 0 0 1 depth - -; +#X obj 88 419 square; +#X text 476 374 window or win: fit to the gem window while maintaining +the width to height ratio.; +#X obj 26 108 mtl/gemsWin; +#X obj 162 108 openpanel; +#X msg 162 133 open \$1; +#X obj 162 87 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 88 373 mtl/gemsFit window; +#X text 408 234 Argument 1: Selects how you want the fitting.; +#X text 408 256 Argument 2: The scale (defaults to 1).; +#X text 408 277 Argument 3: The depth (defaults to 1).; +#X text 408 339 Inlet 3: Determines the scaling.; +#X text 476 429 pixratio: normalized ration of the image's size.; +#X text 421 480 Inlet 4: depth; +#X text 408 323 Inlet 2: selects how you want the fitting.; +#X text 408 306 Inlet 1: gemlist.; +#X text 23 44 tags: gems; +#X obj 405 15 import Gem; +#X connect 1 0 2 0; +#X connect 2 0 25 0; +#X connect 3 0 19 0; +#X connect 4 0 21 0; +#X connect 5 0 25 1; +#X connect 6 0 25 1; +#X connect 7 0 25 1; +#X connect 8 0 25 1; +#X connect 9 0 25 2; +#X connect 10 0 25 1; +#X connect 18 0 25 3; +#X connect 22 0 23 0; +#X connect 23 0 2 0; +#X connect 24 0 22 0; +#X connect 25 0 3 0; diff --git a/gemsFit.pd b/gemsFit.pd new file mode 100644 index 0000000..f821c45 --- /dev/null +++ b/gemsFit.pd @@ -0,0 +1,247 @@ +#N canvas 1254 97 865 661 10; +#X obj 46 54 inlet; +#X obj 77 399 scaleXYZ; +#X obj 186 38 inlet mode; +#X obj 354 37 inlet scale; +#X obj 477 45 inlet depth; +#X obj 103 142 t f f; +#X obj 384 392 * 1; +#X obj 406 297 t b f; +#X obj 381 326 f 1; +#N canvas 418 0 1022 698 fit 0; +#X obj 42 -6 inlet; +#X text 354 629 height; +#X text 693 638 width; +#X obj 304 632 outlet; +#X obj 641 638 outlet; +#X text 93 -6 gemlist; +#X obj 42 599 outlet; +#X text 95 600 gemlist; +#X obj 44 168 pix_info; +#X msg 172 109 0; +#X msg 243 113 1; +#X msg 299 109 2; +#N canvas 133 18 895 686 fit2window 0; +#X text 359 606 height; +#X text 696 611 width; +#X obj 309 609 outlet; +#X obj 644 611 outlet; +#X obj 541 84 r \$0dimen; +#X obj 29 181 inlet; +#X obj 35 215 route -1; +#X obj 136 452 f 4; +#X obj 40 284 t b b; +#X obj 367 274 * 4; +#X obj 39 452 f 4; +#X obj 515 285 /; +#X obj 339 354 moses; +#X obj 333 496 * 4; +#X obj 509 496 * 4; +#X obj 124 248 /; +#X obj 306 398 t f b; +#X msg 336 423 1; +#X obj 385 418 f; +#X obj 455 435 /; +#X obj 380 374 t b b f; +#X obj 424 412 f; +#X obj 368 216 min 1; +#X connect 4 0 11 0; +#X connect 5 0 6 0; +#X connect 6 0 8 0; +#X connect 6 1 15 0; +#X connect 7 0 3 0; +#X connect 8 0 10 0; +#X connect 8 1 7 0; +#X connect 9 0 10 1; +#X connect 9 0 7 1; +#X connect 10 0 2 0; +#X connect 11 0 12 1; +#X connect 11 0 18 1; +#X connect 11 0 21 1; +#X connect 11 0 22 0; +#X connect 12 0 16 0; +#X connect 12 1 20 0; +#X connect 13 0 2 0; +#X connect 14 0 3 0; +#X connect 15 0 12 0; +#X connect 16 0 13 0; +#X connect 16 1 17 0; +#X connect 17 0 14 0; +#X connect 18 0 13 0; +#X connect 19 0 14 0; +#X connect 20 0 18 0; +#X connect 20 1 21 0; +#X connect 20 2 19 1; +#X connect 21 0 19 0; +#X connect 22 0 9 0; +#X restore 177 444 pd fit2window; +#N canvas 0 0 810 635 fit2originalsize 0; +#X obj 82 26 inlet; +#X obj 463 310 /; +#X obj 463 440 *; +#X obj 695 365 t f b f; +#X obj 767 184 / 4; +#X obj 694 252 f; +#X obj 695 328 /; +#X obj 629 222 t f b; +#X obj 469 181 unpack f f; +#X obj 555 249 t f f; +#X obj 694 281 t b f; +#X obj 309 609 outlet; +#X obj 644 611 outlet; +#X text 545 181 image width heigth (in pixels); +#X obj 702 156 unpack f f; +#X obj 695 303 f; +#X obj 694 134 r \$0dimen; +#X obj 519 212 sel -1; +#X obj 393 249 sel -1; +#X msg 363 366 1; +#X msg 615 450 1; +#X connect 0 0 8 0; +#X connect 1 0 2 0; +#X connect 2 0 11 0; +#X connect 3 0 12 0; +#X connect 3 1 2 0; +#X connect 3 2 2 1; +#X connect 4 0 5 1; +#X connect 5 0 10 0; +#X connect 6 0 3 0; +#X connect 7 0 15 0; +#X connect 7 1 5 0; +#X connect 8 0 18 0; +#X connect 8 1 17 0; +#X connect 9 0 1 1; +#X connect 9 1 7 0; +#X connect 10 0 15 0; +#X connect 10 1 6 1; +#X connect 14 1 4 0; +#X connect 15 0 6 0; +#X connect 16 0 14 0; +#X connect 17 0 20 0; +#X connect 17 1 9 0; +#X connect 18 0 19 0; +#X connect 18 1 1 0; +#X connect 19 0 11 0; +#X connect 20 0 12 0; +#X restore 290 442 pd fit2originalsize; +#X obj 478 448 unpack; +#X obj 337 123 s \$0dimen; +#X obj 123 250 pack; +#X obj 412 89 route float bang; +#X obj 44 493 t a b b; +#X obj 333 580 f 5.333; +#X obj 497 579 f 4; +#X obj 174 -25 inlet scale; +#X obj 358 -23 inlet mode; +#X obj 299 608 * 1; +#X obj 628 609 * 1; +#X obj 156 55 route window pixsize pixratio dimen win fill; +#X msg 353 84 3; +#N canvas 0 0 1024 730 fill 0; +#X text 359 606 height; +#X text 696 611 width; +#X obj 309 609 outlet; +#X obj 644 611 outlet; +#X obj 529 143 r \$0dimen; +#X obj 59 126 inlet; +#X obj 443 276 /; +#X obj 73 187 b; +#X obj 420 332 * 4; +#X obj 509 496 f 4; +#X obj 327 509 f; +#X connect 4 0 6 0; +#X connect 5 0 7 0; +#X connect 6 0 8 0; +#X connect 7 0 10 0; +#X connect 7 0 9 0; +#X connect 8 0 10 1; +#X connect 9 0 3 0; +#X connect 10 0 2 0; +#X restore 642 431 pd fill; +#X obj 474 426 ./2dRatio; +#X obj 158 370 zexy/demultiplex 0 1 2 3; +#X connect 0 0 8 0; +#X connect 8 0 18 0; +#X connect 8 1 16 0; +#X connect 8 2 16 1; +#X connect 9 0 29 1; +#X connect 10 0 29 1; +#X connect 11 0 29 1; +#X connect 12 0 19 0; +#X connect 12 1 20 0; +#X connect 13 0 19 0; +#X connect 13 1 20 0; +#X connect 14 0 19 0; +#X connect 14 1 20 0; +#X connect 16 0 29 0; +#X connect 17 0 29 1; +#X connect 18 0 6 0; +#X connect 18 1 19 0; +#X connect 18 2 20 0; +#X connect 19 0 23 0; +#X connect 20 0 24 0; +#X connect 21 0 23 1; +#X connect 21 0 24 1; +#X connect 22 0 25 0; +#X connect 23 0 3 0; +#X connect 24 0 4 0; +#X connect 25 0 9 0; +#X connect 25 1 10 0; +#X connect 25 2 11 0; +#X connect 25 3 15 0; +#X connect 25 4 9 0; +#X connect 25 5 26 0; +#X connect 25 6 17 0; +#X connect 26 0 29 1; +#X connect 27 0 19 0; +#X connect 27 1 20 0; +#X connect 28 0 14 0; +#X connect 29 0 12 0; +#X connect 29 1 13 0; +#X connect 29 2 28 0; +#X connect 29 3 27 0; +#X restore 82 242 pd fit; +#X text 614 158 gemwin width height (in pixels); +#X obj 703 237 t b b; +#X obj 708 390 pack; +#X obj 698 495 s \$0dimen; +#X obj 547 123 loadbang; +#X obj 725 188 r GEMS; +#X obj 653 295 value GEMSW; +#X obj 771 296 value GEMSH; +#X obj 309 152 tof/argument 1 window; +#X obj 311 193 list trim; +#X obj 492 210 tof/argument 2 1; +#X obj 546 149 t b b b; +#X obj 66 533 outlet; +#X floatatom 155 312 5 0 0 0 - - -; +#X floatatom 206 317 5 0 0 0 - - -; +#X connect 0 0 9 0; +#X connect 1 0 22 0; +#X connect 2 0 9 2; +#X connect 3 0 5 0; +#X connect 4 0 7 0; +#X connect 5 0 9 1; +#X connect 5 1 8 0; +#X connect 6 0 1 3; +#X connect 7 0 8 0; +#X connect 7 1 6 1; +#X connect 8 0 6 0; +#X connect 9 0 1 0; +#X connect 9 1 1 1; +#X connect 9 1 23 0; +#X connect 9 2 1 2; +#X connect 9 2 24 0; +#X connect 11 0 16 0; +#X connect 11 1 17 0; +#X connect 12 0 13 0; +#X connect 14 0 21 0; +#X connect 15 0 11 0; +#X connect 16 0 12 0; +#X connect 17 0 12 1; +#X connect 18 0 19 0; +#X connect 19 0 9 2; +#X connect 20 0 5 0; +#X connect 21 0 18 0; +#X connect 21 1 20 0; +#X connect 21 2 11 0; diff --git a/gemsImages-help.pd b/gemsImages-help.pd new file mode 100644 index 0000000..f813cdf --- /dev/null +++ b/gemsImages-help.pd @@ -0,0 +1,29 @@ +#N canvas 656 22 540 465 10; +#X obj 21 179 gemhead; +#X obj 27 38 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X obj 161 188 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X floatatom 103 147 5 0 0 0 - - -; +#X text 109 22 Description: Multiple images handler. The images do +not need to be the same dimension.; +#X obj 27 61 mtl/gemsWin /dimen 640 480; +#X obj 22 210 mtl/gemsImages; +#X obj 25 329 mtl/gemsFit window; +#X obj 25 373 rectangle 1; +#X text 138 144 Select a previously loaded image; +#X text 186 184 Open a panel to select an image; +#X obj 198 232 openpanel; +#X obj 200 210 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X text 200 253 Add an image; +#X obj 25 284 pix_texture; +#X connect 0 0 6 0; +#X connect 1 0 5 0; +#X connect 2 0 6 1; +#X connect 3 0 6 1; +#X connect 6 0 14 0; +#X connect 7 0 8 0; +#X connect 11 0 6 1; +#X connect 12 0 11 0; +#X connect 14 0 7 0; diff --git a/gemsImages.pd b/gemsImages.pd new file mode 100644 index 0000000..ed46f41 --- /dev/null +++ b/gemsImages.pd @@ -0,0 +1,22 @@ +#N canvas 70 104 790 664 10; +#X obj 46 431 pix_image; +#X msg 246 319 open \$1; +#X obj 252 125 openpanel; +#X obj 313 6 inlet; +#X obj 15 22 inlet; +#X obj 64 538 outlet; +#X obj 315 49 route bang symbol float; +#X obj 319 220 ./indexer; +#X obj 271 264 unpack f s; +#X connect 0 0 5 0; +#X connect 1 0 0 0; +#X connect 2 0 7 0; +#X connect 3 0 6 0; +#X connect 4 0 0 0; +#X connect 6 0 2 0; +#X connect 6 1 7 0; +#X connect 6 2 7 2; +#X connect 7 0 8 0; +#X connect 7 1 8 0; +#X connect 7 2 8 0; +#X connect 8 1 1 0; diff --git a/gemsLines-help.pd b/gemsLines-help.pd new file mode 100644 index 0000000..e5cd493 --- /dev/null +++ b/gemsLines-help.pd @@ -0,0 +1,92 @@ +#N canvas 351 135 507 529 10; +#X declare -lib Gem; +#X obj 20 63 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X obj 33 162 gemhead; +#X text 5 24 tags: gems; +#X obj 18 90 mtl/gemsWin /dimen 320 240; +#X text 149 426 inlet 1: gemlist; +#X text 6 9 Description: Creates a dynamic number of lines.; +#X obj 33 435 mtl/gemsLines 10; +#N canvas 0 0 670 501 mouseDraw 0; +#X obj 244 450 outlet; +#X obj 183 44 mtl/gemsMouse; +#X obj 391 140 table \$0x 10; +#X obj 392 168 table \$0y 10; +#X obj 222 136 iemlib/modulo_counter 10; +#X obj 182 107 t l b; +#X obj 124 140 unpack f f; +#X obj 121 185 tabwrite \$0x; +#X obj 178 212 tabwrite \$0y; +#X obj 222 163 t f f b f; +#X obj 305 250 +; +#X obj 229 384 pack f f f 0; +#X obj 273 331 tabread \$0x; +#X obj 361 346 tabread \$0y; +#X obj 242 295 t f f f; +#X obj 271 219 tof/iterate; +#X msg 269 185 10; +#X obj 296 272 maxlib/wrap 0 10; +#X obj 219 256 t f f; +#X obj 183 76 maxlib/speedlim 50; +#X connect 1 0 19 0; +#X connect 4 0 9 0; +#X connect 5 0 6 0; +#X connect 5 1 4 0; +#X connect 6 0 7 0; +#X connect 6 1 8 0; +#X connect 9 0 7 1; +#X connect 9 1 8 1; +#X connect 9 2 16 0; +#X connect 9 3 10 1; +#X connect 10 0 17 0; +#X connect 11 0 0 0; +#X connect 12 0 11 1; +#X connect 13 0 11 2; +#X connect 14 1 12 0; +#X connect 14 2 13 0; +#X connect 15 0 18 0; +#X connect 16 0 15 0; +#X connect 17 0 14 0; +#X connect 18 0 11 0; +#X connect 18 1 10 0; +#X connect 19 0 5 0; +#X restore 79 272 pd mouseDraw; +#X text 150 485 inlet 3: create a # of lines; +#X text 269 457 line# x y z; +#X text 150 440 inlet 2: control each line with the following format: +; +#X text 162 274 Mouve your mouse in the gem window; +#X msg 143 301 0 -1 -1 0; +#X text 214 302 Positions line# 0 to point -1 -1 0; +#X text 220 327 Positions line# 5 to point 3 2 0; +#X msg 160 328 5 3 2 0; +#N canvas 0 27 736 449 random 0; +#X obj 174 97 inlet; +#X obj 174 161 tof/iterate; +#X msg 174 130 10; +#X obj 175 195 t f b b; +#X obj 215 234 mtl/randomFloat -5.3 5.3; +#X obj 402 232 mtl/randomFloat -4 4; +#X obj 187 290 pack f f f 0; +#X obj 185 348 outlet; +#X connect 0 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 1 0; +#X connect 3 0 6 0; +#X connect 3 1 4 0; +#X connect 3 2 5 0; +#X connect 4 0 6 1; +#X connect 5 0 6 2; +#X connect 6 0 7 0; +#X restore 183 378 pd random; +#X obj 187 356 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 409 11 import Gem; +#X connect 0 0 3 0; +#X connect 1 0 6 0; +#X connect 7 0 6 1; +#X connect 12 0 6 1; +#X connect 15 0 6 1; +#X connect 16 0 6 1; +#X connect 17 0 16 0; diff --git a/gemsLines.pd b/gemsLines.pd new file mode 100644 index 0000000..7e9bc29 --- /dev/null +++ b/gemsLines.pd @@ -0,0 +1,149 @@ +#N canvas 39 54 970 527 10; +#N canvas 0 22 502 352 \$0-dynamicpatch 0; +#X obj 150 40 route 0 1 2 3 4; +#X obj 150 15 r 1324xyz; +#X obj 10 15 r 1324gem; +#X obj 10 40 GEMglVertex3fv; +#X obj 10 40 GEMglVertex3fv; +#X obj 10 40 GEMglVertex3fv; +#X obj 10 40 GEMglVertex3fv; +#X obj 10 40 GEMglVertex3fv; +#X obj 10 60 s 1324gemout; +#X connect 0 0 3 1; +#X connect 0 1 4 1; +#X connect 0 2 5 1; +#X connect 0 3 6 1; +#X connect 0 4 7 1; +#X connect 1 0 0 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 7 0 8 0; +#X restore 291 18 pd \$0-dynamicpatch; +#X obj 111 74 f \$1; +#X obj 151 120 until; +#X obj 185 14 inlet; +#X obj 112 15 loadbang; +#X obj -113 14 inlet gemchain; +#X obj -112 96 s \$0gem; +#X msg 195 121 0; +#X obj 335 135 symbol; +#X msg 336 159 \; \$1 clear; +#X obj 335 93 zexy/makesymbol pd-%s-dynamicpatch; +#X obj 335 73 f \$0; +#X text 359 114 id of the dynamic subpatch; +#X obj 151 142 f 0; +#X obj 189 144 + 1; +#X obj 268 212 pack f s; +#X obj 268 191 f \$0; +#X obj 35 -16 inlet knot_xyz; +#X obj -87 468 outlet gemchain; +#X obj -87 416 r \$0gemout; +#X msg 666 221 set; +#X msg 667 242 addsemi; +#X msg 668 312 add2 \$1; +#X obj 548 214 until; +#X msg 588 220 0; +#X obj 548 244 f 0; +#X obj 578 243 + 1; +#X obj 530 315 symbol; +#X obj 181 167 t f f f; +#X obj 149 217 pack f f f s; +#X obj 530 152 f \$1; +#X text 168 -3 objects: 0:route 0-n-1 \, 1:r 0xyz \, 2:r 0gem; +#X obj 181 191 + 2; +#X obj 212 193 + 3; +#X text 22 370 dollards: 1:route number \, 2:previous object \, 3:current +object; +#X obj 19 224 pack f s f f; +#X obj 33 148 t f f; +#X obj 33 174 + 2; +#X obj 63 175 + 3; +#X msg 19 248 \; \$2 obj 10 60 s \$3gemout \; \$2 connect \$1 0 \$4 +0; +#X msg 670 263 adddollar 1; +#X msg 268 234 \; \$2 obj 150 15 r \$1xyz \; \$2 obj 10 15 r \$1gem +\; \$2 connect 1 0 0 0 \;; +#X msg 531 373 \; \$1 obj 150 40 route 0 1 2 3 4; +#X msg 670 288 add2 obj 150 40 route; +#X msg 150 299 \; \$4 obj 10 40 GEMglVertex3fv \; \$4 connect \$2 0 +\$3 0 \; \$4 connect 0 \$1 \$3 1 \;; +#X obj 186 38 t f b b f b; +#X obj -112 72 GEMglBegin; +#X obj -47 53 GLdefine GL_LINE_STRIP; +#X obj -47 34 loadbang; +#X obj -88 440 GEMglEnd; +#X obj 531 178 t b f b b b b b; +#X obj 106 35 t b b b b; +#X obj 111 97 t f f f; +#X obj 38 10 s \$0xyz; +#X msg 236 17 0; +#X connect 1 0 52 0; +#X connect 2 0 13 0; +#X connect 3 0 45 0; +#X connect 4 0 51 0; +#X connect 5 0 46 0; +#X connect 7 0 13 1; +#X connect 8 0 9 0; +#X connect 10 0 8 0; +#X connect 10 0 15 1; +#X connect 10 0 27 1; +#X connect 10 0 29 3; +#X connect 10 0 35 1; +#X connect 11 0 10 0; +#X connect 11 0 35 2; +#X connect 13 0 14 0; +#X connect 13 0 28 0; +#X connect 14 0 13 1; +#X connect 15 0 41 0; +#X connect 16 0 15 0; +#X connect 17 0 53 0; +#X connect 19 0 49 0; +#X connect 20 0 42 0; +#X connect 21 0 42 0; +#X connect 22 0 42 0; +#X connect 23 0 25 0; +#X connect 24 0 25 1; +#X connect 25 0 26 0; +#X connect 25 0 22 0; +#X connect 26 0 25 1; +#X connect 27 0 42 0; +#X connect 28 0 29 0; +#X connect 28 1 32 0; +#X connect 28 2 33 0; +#X connect 29 0 44 0; +#X connect 30 0 50 0; +#X connect 32 0 29 1; +#X connect 33 0 29 2; +#X connect 35 0 39 0; +#X connect 36 0 37 0; +#X connect 36 1 38 0; +#X connect 37 0 35 0; +#X connect 38 0 35 3; +#X connect 40 0 42 0; +#X connect 43 0 42 0; +#X connect 45 0 1 0; +#X connect 45 1 7 0; +#X connect 45 2 16 0; +#X connect 45 3 30 0; +#X connect 45 4 8 0; +#X connect 46 0 6 0; +#X connect 47 0 46 1; +#X connect 48 0 47 0; +#X connect 49 0 18 0; +#X connect 50 0 27 0; +#X connect 50 1 23 0; +#X connect 50 2 43 0; +#X connect 50 3 40 0; +#X connect 50 4 21 0; +#X connect 50 5 20 0; +#X connect 50 6 24 0; +#X connect 51 0 1 0; +#X connect 51 1 16 0; +#X connect 51 2 30 0; +#X connect 51 3 11 0; +#X connect 52 0 36 0; +#X connect 52 1 2 0; +#X connect 54 0 45 0; diff --git a/gemsLoop-help.pd b/gemsLoop-help.pd new file mode 100644 index 0000000..4414ff5 --- /dev/null +++ b/gemsLoop-help.pd @@ -0,0 +1,41 @@ +#N canvas 533 102 521 605 10; +#X declare -lib Gem; +#X obj 98 103 gemhead; +#X obj 140 169 bng 15 250 50 0 empty empty load_movie 0 -6 0 8 -262144 +-1 -1; +#X obj 160 358 tgl 15 0 empty empty REC 0 -6 0 8 -258699 -262144 -1 +0 1; +#X obj 98 537 pix_texture; +#X floatatom 127 486 5 0 0 1 current_frame - -; +#X floatatom 156 464 5 0 0 1 frames_recorded - -; +#X obj 186 446 tgl 15 0 empty empty rec_status 0 -6 0 8 -262144 -1 +-1 0 1; +#X obj 302 100 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X floatatom 192 358 5 0 0 2 speed - -; +#X floatatom 234 361 5 0 0 2 frame - -; +#X text 10 9 Description: Loops an image sequence (frames) with variable +speed playback and seek function.; +#X obj 302 128 mtl/gemsWin /dimen 320 240; +#X obj 98 240 mtl/gemsMovies; +#X obj 98 409 mtl/gemsLoop 32; +#X msg 215 185 1; +#X obj 98 562 rectangle; +#X obj 98 509 mtl/gemsFit window; +#X text 204 410 Argument: maximum number of frames.; +#X text 9 42 tags: gems; +#X obj 444 15 import Gem; +#X connect 0 0 12 0; +#X connect 1 0 12 1; +#X connect 2 0 13 1; +#X connect 3 0 15 0; +#X connect 7 0 11 0; +#X connect 8 0 13 2; +#X connect 9 0 13 3; +#X connect 12 0 13 0; +#X connect 13 0 16 0; +#X connect 13 1 4 0; +#X connect 13 2 5 0; +#X connect 13 3 6 0; +#X connect 14 0 12 2; +#X connect 16 0 3 0; diff --git a/gemsLoop.pd b/gemsLoop.pd new file mode 100644 index 0000000..599311c --- /dev/null +++ b/gemsLoop.pd @@ -0,0 +1,214 @@ +#N canvas 496 227 1104 687 10; +#X obj 110 292 pix_buffer_write \$0loop; +#X obj 478 -29 inlet on/off; +#X obj -9 627 outlet gemlist; +#X obj 157 65 inlet source_video(gemlist); +#X obj 300 473 t f f; +#X obj 532 93 sel 0 1; +#X obj 567 201 f; +#X obj 625 210 + 1; +#X obj 546 307 f; +#X msg 620 161 0; +#X obj 478 126 t b b; +#X msg 446 173 0; +#X obj 559 537 outlet recorded; +#X obj 414 537 outlet playing; +#X msg 544 144 1; +#X obj 648 278 >= \$1; +#X obj 654 307 sel 1; +#X msg 652 339 0; +#X obj -68 132 pix_buffer \$0loop \$1; +#X obj 683 33 change; +#X obj 763 545 outlet status; +#X obj 691 117 t f f; +#X obj 549 235 t f f f f; +#X obj 749 178 f \$1; +#X obj 554 119 t b b b b; +#X obj 475 1 route bang; +#X msg 554 39 set 0 \, 1; +#X text -29 -8 BUG: The default image overrides the main gemlist!; +#N canvas 0 22 1022 686 videoplayer.guts 0; +#X obj 337 600 outlet; +#X obj 321 513 t f f; +#X obj 307 345 f 1; +#X obj 319 479 int; +#X obj 398 210 unpack; +#X obj 353 378 * 0; +#X obj 400 383 * 1; +#X obj 352 319 t f f; +#X obj 401 329 t b f; +#X obj 446 325 t b f; +#X obj 456 455 expr $f1*($f3-$f2)+$f2; +#X obj 464 425 pack f 0 1; +#X obj 139 612 outlet; +#N canvas 0 22 478 328 fcounter 0; +#X obj 145 159 t f f f; +#X obj 165 214 -; +#X obj 182 184 int; +#X obj 155 261 +; +#X obj 110 21 inlet; +#X obj 221 20 inlet; +#N canvas 0 22 474 324 count 0; +#X obj 84 48 inlet; +#X obj 192 274 outlet; +#X obj 89 80 route bang; +#X obj 176 139 t b f; +#X obj 182 219 t f f; +#X obj 173 171 f; +#X obj 291 49 inlet; +#X obj 289 78 route bang; +#X msg 288 120 0; +#X obj 186 194 + 1; +#X obj 183 39 inlet; +#X connect 0 0 2 0; +#X connect 2 0 5 0; +#X connect 2 1 3 0; +#X connect 3 0 5 0; +#X connect 3 1 9 1; +#X connect 4 0 1 0; +#X connect 4 1 5 1; +#X connect 5 0 9 0; +#X connect 6 0 7 0; +#X connect 7 0 8 0; +#X connect 7 1 5 1; +#X connect 8 0 5 1; +#X connect 9 0 4 0; +#X connect 10 0 9 1; +#X restore 149 99 pd count; +#X obj 163 366 outlet; +#X obj 282 20 inlet; +#X obj 348 23 inlet; +#X obj 291 218 -; +#X obj 162 329 +; +#X obj 252 92 t b f f f; +#X obj 147 296 t f f; +#X obj 76 182 moses 0; +#X obj 52 209 - 1; +#X obj 50 261 + 1; +#X obj 46 236 mod 0; +#X obj 117 221 mod 0; +#X obj 219 68 - 0; +#X connect 0 0 14 0; +#X connect 0 1 1 0; +#X connect 0 2 2 0; +#X connect 1 0 3 1; +#X connect 2 0 1 1; +#X connect 3 0 13 0; +#X connect 4 0 6 0; +#X connect 5 0 19 0; +#X connect 6 0 0 0; +#X connect 8 0 12 0; +#X connect 9 0 10 0; +#X connect 10 0 17 1; +#X connect 10 0 18 1; +#X connect 11 0 7 0; +#X connect 12 0 10 0; +#X connect 12 1 10 1; +#X connect 12 2 11 1; +#X connect 12 3 19 1; +#X connect 13 0 11 0; +#X connect 13 1 6 2; +#X connect 14 0 15 0; +#X connect 14 1 18 0; +#X connect 15 0 17 0; +#X connect 16 0 3 0; +#X connect 17 0 16 0; +#X connect 18 0 3 0; +#X connect 19 0 6 2; +#X restore 320 440 pd fcounter; +#X obj 92 220 t a b; +#X obj 488 597 outlet; +#X obj 296 391 t f f; +#X obj 536 386 - 1; +#X obj 387 569 s \$0frame; +#X obj 732 585 s \$0speed; +#X obj 310 179 route float; +#X obj 623 199 inlet relative_frame; +#X obj 788 249 inlet frame; +#X obj 851 288 inlet frames; +#X obj 439 152 inlet loop; +#X obj 269 153 inlet speed; +#X obj 92 157 inlet gemlist; +#X connect 1 0 18 0; +#X connect 1 1 0 0; +#X connect 2 0 16 0; +#X connect 3 0 1 0; +#X connect 4 0 8 0; +#X connect 4 1 9 0; +#X connect 5 0 11 1; +#X connect 5 0 13 2; +#X connect 6 0 13 3; +#X connect 6 0 17 0; +#X connect 7 0 5 0; +#X connect 7 1 6 0; +#X connect 8 0 5 0; +#X connect 8 1 5 1; +#X connect 9 0 6 0; +#X connect 9 1 6 1; +#X connect 10 0 13 1; +#X connect 11 0 10 0; +#X connect 13 0 3 0; +#X connect 14 0 12 0; +#X connect 14 1 2 0; +#X connect 16 0 13 0; +#X connect 16 1 15 0; +#X connect 17 0 11 2; +#X connect 20 0 2 1; +#X connect 20 0 19 0; +#X connect 21 0 11 0; +#X connect 22 0 13 1; +#X connect 23 0 7 0; +#X connect 24 0 4 0; +#X connect 25 0 20 0; +#X connect 26 0 14 0; +#X restore 100 398 pd videoplayer.guts; +#X msg 439 382 0; +#X obj 803 -18 inlet speed; +#X obj 922 -15 inlet frame; +#X obj -1 519 pix_buffer_read \$0loop; +#X obj 139 212 t a b; +#X obj 143 475 zexy/multiplex 0 1; +#X connect 0 0 28 0; +#X connect 1 0 25 0; +#X connect 3 0 33 0; +#X connect 4 0 13 0; +#X connect 4 1 34 0; +#X connect 5 0 10 0; +#X connect 5 1 24 0; +#X connect 6 0 22 0; +#X connect 7 0 6 1; +#X connect 8 0 12 0; +#X connect 8 0 28 5; +#X connect 9 0 6 1; +#X connect 10 0 11 0; +#X connect 10 1 8 0; +#X connect 11 0 34 2; +#X connect 14 0 34 2; +#X connect 15 0 16 0; +#X connect 16 0 17 0; +#X connect 17 0 19 0; +#X connect 19 0 21 0; +#X connect 21 0 20 0; +#X connect 21 1 5 0; +#X connect 22 0 15 0; +#X connect 22 1 8 1; +#X connect 22 2 0 1; +#X connect 22 2 34 1; +#X connect 22 3 7 0; +#X connect 23 0 28 5; +#X connect 24 0 14 0; +#X connect 24 1 9 0; +#X connect 24 2 23 0; +#X connect 24 3 29 0; +#X connect 25 0 26 0; +#X connect 25 1 19 0; +#X connect 26 0 19 0; +#X connect 28 0 32 0; +#X connect 28 1 4 0; +#X connect 29 0 28 4; +#X connect 30 0 28 1; +#X connect 31 0 28 4; +#X connect 32 0 2 0; +#X connect 33 0 0 0; +#X connect 33 1 6 0; +#X connect 34 0 32 1; diff --git a/gemsMouse-help.pd b/gemsMouse-help.pd new file mode 100644 index 0000000..1a89d6f --- /dev/null +++ b/gemsMouse-help.pd @@ -0,0 +1,33 @@ +#N canvas 1 57 545 398 10; +#X declare -lib Gem; +#X obj 17 91 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 +; +#X msg 17 350 5.13333 -0.15; +#X msg 71 297 0 1.06667 -0.166667; +#X msg 118 235 0 1.3 0.533333; +#X msg 150 182 0 1.3 0.533333; +#X text 195 265 left button: state(up/down) X Y; +#X text 240 209 middle button: state(up/down) X Y; +#X text 281 156 right button: state(up/down) X Y; +#X text 106 130 First inlet is a scaling factor.; +#X obj 16 109 mtl/gemsWin; +#X obj 17 133 mtl/gemsMouse; +#X obj 17 320 cyclone/prepend set; +#X obj 71 267 cyclone/prepend set; +#X obj 118 209 cyclone/prepend set; +#X obj 150 156 cyclone/prepend set; +#X text 143 320 X Y; +#X text 16 55 tags: gems; +#X text 17 14 Description: sends out mouse events which occur in the +GEM window. The coordinates match the coordinates of the GEM world. +; +#X obj 441 17 import Gem; +#X connect 0 0 9 0; +#X connect 10 0 11 0; +#X connect 10 1 12 0; +#X connect 10 2 13 0; +#X connect 10 3 14 0; +#X connect 11 0 1 0; +#X connect 12 0 2 0; +#X connect 13 0 3 0; +#X connect 14 0 4 0; diff --git a/gemsMouse.pd b/gemsMouse.pd new file mode 100644 index 0000000..2b87298 --- /dev/null +++ b/gemsMouse.pd @@ -0,0 +1,91 @@ +#N canvas 992 0 1009 711 10; +#X obj 160 290 pack; +#X obj 33 406 *; +#X obj 157 330 /; +#X obj 178 413 / 2; +#X obj 162 386 t f f; +#X obj 59 462 -; +#X obj 202 553 pack; +#X obj 543 241 * -8; +#X obj 152 359 * 8; +#X obj 586 295 + 4; +#X obj 121 86 gemmouse 1 1; +#X obj 54 710 outlet position; +#X obj 204 590 t a a; +#X obj 321 727 outlet left_button_state&position; +#X obj 321 688 list prepend; +#X obj 501 553 list; +#X obj 26 329 clip 0 1; +#X obj 230 153 clip 0 1; +#X obj 119 153 loadbang; +#X obj 121 181 t b b; +#X obj 657 724 outlet mid_button; +#X obj 862 704 outlet right_button; +#X obj 524 411 t b b f; +#X msg 464 473 0; +#X obj 655 677 list prepend; +#X obj 869 655 list prepend; +#X obj 683 427 t b b f; +#X obj 864 432 t b b f; +#X msg 685 477 1; +#X msg 875 483 2; +#X obj 637 36 inlet scale; +#X obj 498 621 zexy/demultiplex 0 1 2; +#X obj 149 517 / 1; +#X obj 261 500 / 1; +#X obj 170 455 t b b f f; +#X obj 75 223 value GEMSW; +#X obj 187 227 value GEMSH; +#X obj 27 121 r GEMS; +#X connect 0 0 2 0; +#X connect 1 0 5 0; +#X connect 2 0 8 0; +#X connect 3 0 5 1; +#X connect 4 0 1 1; +#X connect 4 1 3 0; +#X connect 5 0 32 0; +#X connect 6 0 12 0; +#X connect 7 0 9 0; +#X connect 8 0 4 0; +#X connect 9 0 33 0; +#X connect 10 0 16 0; +#X connect 10 1 17 0; +#X connect 10 2 22 0; +#X connect 10 3 26 0; +#X connect 10 4 27 0; +#X connect 12 0 11 0; +#X connect 12 1 15 1; +#X connect 14 0 13 0; +#X connect 15 0 31 0; +#X connect 16 0 1 0; +#X connect 17 0 7 0; +#X connect 18 0 19 0; +#X connect 19 0 35 0; +#X connect 19 1 36 0; +#X connect 22 0 15 0; +#X connect 22 1 23 0; +#X connect 22 2 14 1; +#X connect 23 0 31 1; +#X connect 24 0 20 0; +#X connect 25 0 21 0; +#X connect 26 0 15 0; +#X connect 26 1 28 0; +#X connect 26 2 24 1; +#X connect 27 0 15 0; +#X connect 27 1 29 0; +#X connect 27 2 25 1; +#X connect 28 0 31 1; +#X connect 29 0 31 1; +#X connect 30 0 34 0; +#X connect 31 0 14 0; +#X connect 31 1 24 0; +#X connect 31 2 25 0; +#X connect 32 0 6 0; +#X connect 33 0 6 1; +#X connect 34 0 32 0; +#X connect 34 1 33 0; +#X connect 34 2 32 1; +#X connect 34 3 33 1; +#X connect 35 0 0 0; +#X connect 36 0 0 1; +#X connect 37 0 19 0; diff --git a/gemsMovies-help.pd b/gemsMovies-help.pd new file mode 100644 index 0000000..ff19b0b --- /dev/null +++ b/gemsMovies-help.pd @@ -0,0 +1,79 @@ +#N canvas 560 88 653 630 10; +#X declare -lib Gem; +#X floatatom 96 182 5 0 0 0 - - -; +#X floatatom 141 225 5 0 0 0 - - -; +#X floatatom 145 249 5 0 0 0 - - -; +#X floatatom 116 489 5 0 0 0 - - -; +#X text 151 483 width; +#X text 181 467 height; +#X floatatom 143 469 5 0 0 0 - - -; +#X floatatom 89 509 5 0 0 0 - - -; +#X text 131 507 #frames; +#X obj 144 206 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 0 0; +#X text 132 181 Playback speed; +#X text 6 6 Description: A movie file manager and player.; +#X text 439 186 SUMMARY:; +#X text 439 206 Inlet_1: Gemlist; +#X text 440 220 Inlet_2: File managment; +#X text 440 236 Inlet_3: PLayback rate; +#X text 444 276 Outlet_1: Gemlist; +#X obj 187 67 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 0 +1; +#X floatatom 74 138 5 0 0 0 - - -; +#X floatatom 171 446 5 0 0 0 - - -; +#X obj 71 66 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 10 67 gemhead; +#X obj 10 534 pix_texture; +#X obj 187 91 mtl/gemsWin /dimen 640 480; +#X obj 71 90 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 71 110 openpanel; +#X obj 10 560 mtl/gemsFit window; +#X obj 10 587 rectangle; +#X text 115 134 You can recall movies by an index number once they +are loaded.; +#X text 6 20 tags: gems; +#X text 441 251 Inlet_4: Frame select; +#X text 442 294 Outlet_2: Movie info; +#X text 442 310 Outlet_3: End of file (bang); +#X text 214 303 Loop; +#X text 176 225 Relative frame (0-1); +#X msg 144 271 abs \$1; +#X text 192 265 Absolute frame; +#X msg 161 304 0.25 0.3; +#X msg 191 333 0 0.5; +#X msg 190 358 0 1; +#X obj 89 401 unpack f f f f s; +#X symbolatom 206 424 50 0 0 0 - - -; +#X text 510 423 filename; +#X obj 10 354 mtl/gemsMovies; +#X obj 95 160 iemlib/init 1; +#X obj 566 9 import Gem; +#X text 206 446 frame rate(fps) \, defaults to 20 with old versions +of Gem; +#X connect 0 0 43 2; +#X connect 1 0 43 3; +#X connect 2 0 35 0; +#X connect 9 0 1 0; +#X connect 17 0 23 0; +#X connect 18 0 43 1; +#X connect 20 0 43 1; +#X connect 21 0 43 0; +#X connect 22 0 26 0; +#X connect 24 0 25 0; +#X connect 25 0 43 1; +#X connect 26 0 27 0; +#X connect 35 0 43 3; +#X connect 37 0 43 4; +#X connect 38 0 43 4; +#X connect 39 0 43 4; +#X connect 40 0 7 0; +#X connect 40 1 3 0; +#X connect 40 2 6 0; +#X connect 40 3 19 0; +#X connect 40 4 41 0; +#X connect 43 0 22 0; +#X connect 43 1 40 0; +#X connect 44 0 0 0; diff --git a/gemsMovies.pd b/gemsMovies.pd new file mode 100644 index 0000000..a610294 --- /dev/null +++ b/gemsMovies.pd @@ -0,0 +1,254 @@ +#N canvas 0 25 1009 686 10; +#X obj -53 500 r \$0out; +#X obj 269 -10 openpanel; +#N canvas 1282 217 1022 686 loadmovie 0; +#X obj -5 357 r \$0info; +#N canvas 1026 82 1022 686 make_pix_film 0; +#X obj 21 1 inlet; +#X obj -206 99 * 7; +#X obj -223 164 + 1; +#X obj -196 165 + 2; +#X obj -169 164 + 3; +#X obj -142 164 + 4; +#X obj -115 165 + 5; +#X obj -86 165 + 6; +#X obj -207 128 t f f f f f f f; +#X obj 480 119 s pd-\$0films; +#X msg 481 89 clear; +#X obj 93 483 s pd-\$0films; +#X obj -70 254 pack f f f f f f f; +#X obj 137 253 pack s \$0; +#X obj 50 63 t l b; +#X obj 67 98 unpack f s; +#X obj 537 58 r \$0empty; +#X msg -58 319 connect \$1 0 \$7 0 \, connect \$2 0 \$6 0 \, connect +\$6 0 \$7 1 \, connect \$7 0 \$3 0 \, connect \$7 1 \$4 0 \, connect +\$7 2 \$5 0; +#X msg 117 306 obj 10 40 pix_film \, obj 10 15 r \$1in \, obj 100 0 +r \$1frame \, obj 10 65 s \$2out \, obj 110 65 s \$2info \, obj 220 +65 s \$2end \, obj 100 15 f; +#X connect 0 0 14 0; +#X connect 1 0 8 0; +#X connect 2 0 12 0; +#X connect 3 0 12 1; +#X connect 4 0 12 2; +#X connect 5 0 12 3; +#X connect 6 0 12 4; +#X connect 7 0 12 5; +#X connect 8 0 2 0; +#X connect 8 1 3 0; +#X connect 8 2 4 0; +#X connect 8 3 5 0; +#X connect 8 4 6 0; +#X connect 8 5 7 0; +#X connect 8 6 12 6; +#X connect 10 0 9 0; +#X connect 12 0 17 0; +#X connect 13 0 18 0; +#X connect 14 0 15 0; +#X connect 15 0 1 0; +#X connect 15 1 13 0; +#X connect 16 0 10 0; +#X connect 17 0 11 0; +#X connect 18 0 11 0; +#X restore 269 383 pd make_pix_film; +#X text 376 383 make pix_films; +#X obj 282 -4 inlet add; +#X obj 59 0 inlet get_by_index; +#N canvas 1358 271 590 440 \$0films 0; +#X restore 483 152 pd \$0films; +#X obj 207 203 unpack f s; +#X msg 252 294 symbol \$2/\$1; +#X obj 340 310 r \$0empty; +#X obj 228 94 r \$0empty; +#X obj 174 229 pack f \$0; +#X obj 101 470 iemlib/iem_send; +#X obj 211 261 t l l; +#X msg 101 424 colorspace RGBA \, open \$1; +#X obj 101 385 symbol; +#X obj 445 267 s \$0empty; +#X obj 445 236 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X msg 173 385 set \$2/\$1in; +#X text 199 150 Check if file has been loaded; +#X text 317 343 Check if a pixfilm has been created; +#X obj -65 341 spigot; +#X msg 23 319 1; +#X msg -58 450 0; +#X msg -65 370 \$1; +#X obj 95 163 ./indexer; +#X obj 252 344 ./indexer; +#X obj 279 634 outlet; +#X text 281 653 symbol; +#X obj 395 537 cyclone/coll; +#C restore; +#X obj 37 290 t l b b l l; +#X msg 50 411 \$1; +#X obj 21 508 list prepend; +#X obj 519 624 outlet; +#X msg 277 608 symbol \$2/\$1; +#X obj 285 541 pack f \$0; +#X obj 295 484 t f f; +#X obj -8 445 f; +#X obj -23 398 t b b l; +#X obj 371 467 unpack f s; +#X obj 513 587 pack f f f f s; +#X obj 447 433 route bang; +#X text 532 656 frames \, width \, height \, fps \, filename; +#X connect 0 0 37 0; +#X connect 3 0 24 0; +#X connect 4 0 24 2; +#X connect 6 0 10 0; +#X connect 6 1 14 1; +#X connect 6 1 39 4; +#X connect 7 0 25 0; +#X connect 8 0 25 1; +#X connect 9 0 24 1; +#X connect 10 0 12 0; +#X connect 12 0 29 0; +#X connect 12 1 7 0; +#X connect 13 0 11 0; +#X connect 14 0 13 0; +#X connect 16 0 15 0; +#X connect 17 0 11 1; +#X connect 20 0 23 0; +#X connect 21 0 20 1; +#X connect 22 0 20 1; +#X connect 23 0 24 1; +#X connect 24 0 38 0; +#X connect 24 1 6 0; +#X connect 24 2 40 0; +#X connect 25 1 1 0; +#X connect 28 0 39 0; +#X connect 29 0 20 0; +#X connect 29 1 14 0; +#X connect 29 2 21 0; +#X connect 29 3 17 0; +#X connect 29 4 30 0; +#X connect 30 0 31 1; +#X connect 30 0 36 1; +#X connect 31 0 28 0; +#X connect 33 0 26 0; +#X connect 34 0 33 0; +#X connect 35 0 34 0; +#X connect 35 1 28 0; +#X connect 36 0 35 0; +#X connect 37 0 22 0; +#X connect 37 1 36 0; +#X connect 37 2 31 0; +#X connect 38 0 35 0; +#X connect 38 1 39 4; +#X connect 39 0 32 0; +#X connect 40 1 38 0; +#X restore 324 171 pd loadmovie; +#X obj 640 183 s \$0empty; +#X obj 644 141 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 65 -101 inlet file_manage; +#X obj 239 -101 inlet play_speed; +#X obj -62 -95 inlet gemlist; +#X obj -53 542 outlet gemlist; +#X obj 414 525 outlet info; +#X obj 66 -76 route float bang; +#X obj 361 -9 tof/path; +#X obj -58 424 iemlib/iem_send \$0out; +#X msg 234 341 set \$1in; +#X obj 247 465 iemlib/iem_send; +#X msg 389 384 set \$1frame; +#X obj 465 -100 inlet frame; +#X msg 522 271 \$1; +#X obj 531 336 *; +#X obj 179 62 value GEMSFPS; +#X obj 179 14 loadbang; +#X obj 132 17 r GEMS; +#X obj 309 243 t a a; +#X obj 392 209 t l l l; +#X obj 169 137 /; +#X obj 176 86 t b f; +#X msg 165 112 1; +#X obj 9 117 * 0; +#X obj 8 84 f 0; +#X obj -58 -12 t a b; +#X obj 10 280 maxlib/wrap 0 100; +#X obj 12 344 t f f; +#X obj 9 235 + 0; +#X obj 9 196 * 1; +#X obj 621 -95 inlet loop; +#X obj 545 -2 unpack f f; +#X obj 466 109 route abs; +#X obj 254 381 t f f; +#X obj 542 66 * 0; +#X obj 592 73 * 1; +#X obj 705 -39 t b b f f; +#X msg 109 177 \$4; +#X obj 570 128 -; +#X obj 499 169 * 1; +#X obj 563 157 abs; +#X obj 507 206 + 0; +#X obj 540 101 t f f; +#X obj 542 38 f 0; +#X obj 592 46 f 1; +#X text 528 522 frames \, width \, height \, fps \, filename; +#X connect 0 0 8 0; +#X connect 1 0 2 1; +#X connect 2 0 22 0; +#X connect 2 1 23 0; +#X connect 4 0 3 0; +#X connect 5 0 10 0; +#X connect 6 0 28 1; +#X connect 7 0 29 0; +#X connect 10 0 2 0; +#X connect 10 1 1 0; +#X connect 10 2 11 0; +#X connect 11 0 2 1; +#X connect 13 0 12 1; +#X connect 15 0 14 1; +#X connect 16 0 36 0; +#X connect 17 0 18 1; +#X connect 17 0 40 0; +#X connect 18 0 37 0; +#X connect 19 0 25 0; +#X connect 20 0 19 0; +#X connect 21 0 19 0; +#X connect 22 0 13 0; +#X connect 22 1 15 0; +#X connect 23 0 9 0; +#X connect 23 1 17 0; +#X connect 23 2 41 0; +#X connect 24 0 27 1; +#X connect 25 0 26 0; +#X connect 25 1 24 1; +#X connect 26 0 24 0; +#X connect 27 0 33 0; +#X connect 28 0 27 0; +#X connect 29 0 12 0; +#X connect 29 1 28 0; +#X connect 30 0 31 0; +#X connect 31 0 14 0; +#X connect 31 1 32 1; +#X connect 32 0 30 0; +#X connect 33 0 32 0; +#X connect 34 0 35 0; +#X connect 35 0 47 0; +#X connect 35 1 48 0; +#X connect 36 0 37 0; +#X connect 36 1 43 0; +#X connect 37 0 32 1; +#X connect 37 1 14 0; +#X connect 38 0 30 1; +#X connect 38 0 46 0; +#X connect 39 0 30 2; +#X connect 39 0 42 1; +#X connect 40 0 47 0; +#X connect 40 1 48 0; +#X connect 40 2 38 1; +#X connect 40 3 39 1; +#X connect 41 0 33 1; +#X connect 42 0 44 0; +#X connect 43 0 45 0; +#X connect 44 0 43 1; +#X connect 45 0 37 0; +#X connect 46 0 42 0; +#X connect 46 1 45 1; +#X connect 47 0 38 0; +#X connect 48 0 39 0; diff --git a/gemsPolygon-help.pd b/gemsPolygon-help.pd new file mode 100644 index 0000000..2a01b82 --- /dev/null +++ b/gemsPolygon-help.pd @@ -0,0 +1,99 @@ +#N canvas 811 267 558 422 10; +#X declare -lib Gem; +#X declare -lib Gem; +#X obj 129 99 gemhead; +#X msg 15 154 draw line; +#X msg 15 109 draw fill; +#X msg 14 131 draw point; +#X msg 15 174 draw linestrip; +#X msg 15 194 draw tri; +#X msg 15 216 draw tristrip; +#X msg 14 239 draw trifan; +#X msg 14 260 draw quad; +#X msg 14 282 draw quadstrip; +#X obj 129 55 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X text 10 32 tags: gems; +#N canvas 1 26 709 455 random 0; +#X obj 132 58 inlet; +#X obj 137 125 tof/iterate; +#X obj 146 261 pack f f f 0; +#X obj 146 303 outlet; +#X obj 138 157 t f b b b; +#X obj 158 211 ./randomFloat -2 2; +#X obj 283 208 ./randomFloat -2 2; +#X obj 425 205 ./randomFloat -2 2; +#X msg 134 91 30; +#X connect 0 0 8 0; +#X connect 1 0 4 0; +#X connect 2 0 3 0; +#X connect 4 0 2 0; +#X connect 4 1 5 0; +#X connect 4 2 6 0; +#X connect 4 3 7 0; +#X connect 5 0 2 1; +#X connect 6 0 2 2; +#X connect 7 0 2 3; +#X connect 8 0 1 0; +#X restore 181 284 pd random; +#X obj 181 262 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 129 160 rotateXYZ; +#N canvas 0 0 450 300 autorotate 0; +#X obj 89 33 loadbang; +#X obj 89 87 metro 10000; +#X msg 96 135 0 \, 360 10000; +#X obj 103 161 line; +#X obj 100 196 outlet; +#X obj 94 60 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1 +; +#X connect 0 0 5 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X connect 5 0 1 0; +#X restore 163 134 pd autorotate; +#X obj 385 164 gemhead; +#X obj 385 186 rotateXYZ 0 -30 0; +#X obj 385 250 light; +#X msg 412 229 1 0 0; +#X obj 384 75 gemhead; +#X obj 384 117 rotateXYZ 0 -30 0; +#X obj 412 207 loadbang; +#X obj 129 311 mtl/gemsPolygon 30; +#X text 127 336 inlet 1: gemlist; +#X text 9 2 Description: Creates a polygon with a dynamic number of +points.; +#X text 248 311 Argument: Number of points in polygon.; +#X text 127 351 inlet 2: control each point with the following format: +; +#X text 242 369 point# x y z; +#X text 128 390 inlet 3: create a polygin with this # of points; +#X obj 384 96 translateXYZ 1.47 1.53 0; +#X obj 384 139 light; +#X obj 379 6 import Gem; +#X obj 181 238 loadbang; +#X obj 129 75 mtl/gemsWin /lighting 1 /dimen 640 480; +#X connect 0 0 14 0; +#X connect 1 0 23 0; +#X connect 2 0 23 0; +#X connect 3 0 23 0; +#X connect 4 0 23 0; +#X connect 5 0 23 0; +#X connect 6 0 23 0; +#X connect 7 0 23 0; +#X connect 8 0 23 0; +#X connect 9 0 23 0; +#X connect 10 0 34 0; +#X connect 12 0 23 1; +#X connect 13 0 12 0; +#X connect 14 0 23 0; +#X connect 15 0 14 2; +#X connect 16 0 17 0; +#X connect 17 0 18 0; +#X connect 19 0 18 1; +#X connect 20 0 30 0; +#X connect 21 0 31 0; +#X connect 22 0 19 0; +#X connect 30 0 21 0; +#X connect 33 0 13 0; diff --git a/gemsPolygon.pd b/gemsPolygon.pd new file mode 100644 index 0000000..9cfc40d --- /dev/null +++ b/gemsPolygon.pd @@ -0,0 +1,147 @@ +#N canvas 199 246 1022 520 10; +#N canvas 1 57 681 330 \$0-dynamicpatch 0; +#X obj 150 40 route 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 +19 20 21 22 23 24 25 26 27 28 29; +#X obj 150 15 r 1052xyz; +#X obj 10 15 r 1052gem; +#X obj 150 150 polygon 30; +#X obj 10 60 s 1052gemout; +#X obj 150 40 route 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 +19 20 21 22 23 24 25 26 27 28 29; +#X connect 0 0 3 1; +#X connect 0 1 3 2; +#X connect 0 2 3 3; +#X connect 0 3 3 4; +#X connect 0 4 3 5; +#X connect 0 5 3 6; +#X connect 0 6 3 7; +#X connect 0 7 3 8; +#X connect 0 8 3 9; +#X connect 0 9 3 10; +#X connect 0 10 3 11; +#X connect 0 11 3 12; +#X connect 0 12 3 13; +#X connect 0 13 3 14; +#X connect 0 14 3 15; +#X connect 0 15 3 16; +#X connect 0 16 3 17; +#X connect 0 17 3 18; +#X connect 0 18 3 19; +#X connect 0 19 3 20; +#X connect 0 20 3 21; +#X connect 0 21 3 22; +#X connect 0 22 3 23; +#X connect 0 23 3 24; +#X connect 0 24 3 25; +#X connect 0 25 3 26; +#X connect 0 26 3 27; +#X connect 0 27 3 28; +#X connect 0 28 3 29; +#X connect 0 29 3 30; +#X connect 1 0 0 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X restore 647 22 pd \$0-dynamicpatch; +#X obj 81 123 until; +#X obj 287 6 inlet; +#X obj 80 11 loadbang; +#X obj -113 14 inlet gemchain; +#X obj -113 45 s \$0gem; +#X msg 125 124 0; +#X obj 335 135 symbol; +#X msg 335 159 \; \$1 clear; +#X obj 335 73 f \$0; +#X text 359 114 id of the dynamic subpatch; +#X obj 81 145 f 0; +#X obj 119 147 + 1; +#X obj 268 191 f \$0; +#X obj 176 -1 inlet knot_xyz; +#X obj 176 20 s \$0xyz; +#X obj -102 487 outlet gemchain; +#X obj -102 460 r \$0gemout; +#X msg 666 221 set; +#X msg 667 242 addsemi; +#X msg 668 312 add2 \$1; +#X obj 548 214 until; +#X msg 588 220 0; +#X obj 548 244 f 0; +#X obj 578 243 + 1; +#X obj 530 315 symbol; +#X msg 670 263 adddollar 1; +#X msg 531 373 \; \$1 obj 150 40 route 0 1 2 3 4 5 6 7 8 9 10 11 12 +13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29; +#X msg 670 288 add2 obj 150 40 route; +#X obj 531 178 t b f b b b b b; +#X obj 268 212 pack f s f; +#X obj 289 31 t f b b f b f; +#X obj 80 33 t b b b b b; +#X text 608 353 This message can become very long !; +#X text 18 408 dollars: 1:route number \, 2:previous object \, 3:current +inlet; +#X obj 116 194 + 1; +#X obj 79 220 pack f f s; +#X obj 111 170 t f f; +#X msg 77 251 \; \$3 connect 0 \$1 3 \$2 \;; +#X text 142 470 objects: 0:route 0 1 2 3 4...n-1 \, 1:receive 0xyz +\, 2:receive 0gem \, 3: polygon n \, 4 send 0gemout; +#X msg 269 234 \; \$2 obj 150 15 r \$1xyz \; \$2 obj 10 15 r \$1gem +\; \$2 obj 150 150 polygon \$3 \; \$2 obj 10 60 s \$1gemout \; \$2 +connect 1 0 0 0 \; \$2 connect 2 0 3 0 \; \$2 connect 3 0 4 0 \;; +#X obj 79 85 tof/argument 1 1; +#X obj 382 201 tof/argument 1 1; +#X obj 530 150 tof/argument 1 1; +#X obj 335 93 zexy/makesymbol pd-%s-dynamicpatch; +#X connect 1 0 11 0; +#X connect 2 0 31 0; +#X connect 3 0 32 0; +#X connect 4 0 5 0; +#X connect 6 0 11 1; +#X connect 7 0 8 0; +#X connect 9 0 44 0; +#X connect 11 0 12 0; +#X connect 11 0 37 0; +#X connect 12 0 11 1; +#X connect 13 0 30 0; +#X connect 14 0 15 0; +#X connect 17 0 16 0; +#X connect 18 0 27 0; +#X connect 19 0 27 0; +#X connect 20 0 27 0; +#X connect 21 0 23 0; +#X connect 22 0 23 1; +#X connect 23 0 24 0; +#X connect 23 0 20 0; +#X connect 24 0 23 1; +#X connect 25 0 27 0; +#X connect 26 0 27 0; +#X connect 28 0 27 0; +#X connect 29 0 25 0; +#X connect 29 1 21 0; +#X connect 29 2 28 0; +#X connect 29 3 26 0; +#X connect 29 4 19 0; +#X connect 29 5 18 0; +#X connect 29 6 22 0; +#X connect 30 0 40 0; +#X connect 31 0 1 0; +#X connect 31 1 6 0; +#X connect 31 2 13 0; +#X connect 31 3 29 0; +#X connect 31 4 7 0; +#X connect 31 5 30 2; +#X connect 32 0 41 0; +#X connect 32 1 13 0; +#X connect 32 2 43 0; +#X connect 32 3 9 0; +#X connect 32 4 42 0; +#X connect 35 0 36 1; +#X connect 36 0 38 0; +#X connect 37 0 36 0; +#X connect 37 1 35 0; +#X connect 41 0 1 0; +#X connect 42 0 30 2; +#X connect 43 0 29 0; +#X connect 44 0 7 0; +#X connect 44 0 25 1; +#X connect 44 0 30 1; +#X connect 44 0 36 2; diff --git a/gemsWheel-help.pd b/gemsWheel-help.pd new file mode 100644 index 0000000..256acdf --- /dev/null +++ b/gemsWheel-help.pd @@ -0,0 +1,42 @@ +#N canvas 554 265 594 457 10; +#X declare -lib Gem; +#X obj 44 104 gemhead; +#X floatatom 147 247 5 0 0 1 duplications - -; +#X obj 313 78 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 0 +1; +#X obj 157 57 loadbang; +#X obj 158 111 metro 5000; +#X obj 157 157 line; +#X msg 156 134 0 \, 360 5000; +#X obj 47 156 rotateXYZ; +#X obj 155 87 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 +1; +#X obj 46 198 mtl/gemsFit window; +#X obj 313 117 mtl/gemsWin; +#X msg 124 333 \$1 1 1; +#X obj 51 386 color; +#X obj 125 308 / 360; +#X text 24 42 tags: gems; +#X text 145 286 Outlet 2: angle of the element being rendered in degrees +; +#X obj 124 362 mtl/hsvToRgb; +#X text 18 21 Description: Makes a wheel out of duplicated geos.; +#X obj 51 421 circle; +#X obj 46 267 mtl/gemsWheel 4; +#X obj 494 16 import Gem; +#X connect 0 0 7 0; +#X connect 1 0 19 1; +#X connect 2 0 10 0; +#X connect 3 0 8 0; +#X connect 4 0 6 0; +#X connect 5 0 7 3; +#X connect 6 0 5 0; +#X connect 7 0 9 0; +#X connect 8 0 4 0; +#X connect 9 0 19 0; +#X connect 11 0 16 0; +#X connect 12 0 18 0; +#X connect 13 0 11 0; +#X connect 16 0 12 1; +#X connect 19 0 12 0; +#X connect 19 1 13 0; diff --git a/gemsWheel.pd b/gemsWheel.pd new file mode 100644 index 0000000..4c61d6f --- /dev/null +++ b/gemsWheel.pd @@ -0,0 +1,45 @@ +#N canvas 1266 10 782 702 10; +#X obj 37 27 inlet gemlist; +#X obj 41 87 t a b; +#X obj 44 167 t a b; +#X obj 47 293 separator; +#X obj 256 28 inlet; +#X obj 42 144 repeat \$1; +#X obj 225 174 expr 360/$f1; +#X obj 65 493 scale 1; +#X obj 244 114 max 3; +#X obj 55 421 translateXYZ 1 0 0; +#X obj 56 378 scale 1; +#X obj 295 299 expr 1/($f1+1); +#X obj 171 295 *; +#X obj 46 327 rotateXYZ 0 0 0; +#X obj 404 619 outlet angle; +#X obj 173 266 tof/increment; +#X obj 71 618 outlet gemlist; +#X obj 304 55 tof/argument 1 3; +#X obj 315 28 loadbang; +#X obj 315 246 expr sin(3.14159/$f1); +#X connect 0 0 1 0; +#X connect 1 0 5 0; +#X connect 1 1 15 1; +#X connect 2 0 3 0; +#X connect 2 1 15 0; +#X connect 3 0 13 0; +#X connect 4 0 8 0; +#X connect 5 0 2 0; +#X connect 6 0 12 1; +#X connect 7 0 16 0; +#X connect 8 0 5 1; +#X connect 8 0 6 0; +#X connect 8 0 19 0; +#X connect 9 0 7 0; +#X connect 10 0 9 0; +#X connect 11 0 10 1; +#X connect 12 0 13 3; +#X connect 12 0 14 0; +#X connect 13 0 10 0; +#X connect 15 0 12 0; +#X connect 17 0 8 0; +#X connect 18 0 17 0; +#X connect 19 0 7 1; +#X connect 19 0 11 0; diff --git a/gemsWin-help.pd b/gemsWin-help.pd new file mode 100644 index 0000000..434c9f3 --- /dev/null +++ b/gemsWin-help.pd @@ -0,0 +1,74 @@ +#N canvas 277 124 807 512 10; +#X declare -lib Gem; +#X text 6 -12 Description: Controls the Gem window.; +#X text 7 185 Clicking with the RIGHT mouse button in the Gem window +will move the camera.; +#X text 7 220 Double clicking with the RIGHT mouse button will reset +the camera.; +#X text 409 92 Outlet_1: Outputs the settings made to the Gem window. +NOTE that this outlet is COMMON to all gems.win.; +#X text 412 136 Arguments (use none \, some or all of these):; +#X text 7 255 Double clicking with the MIDDLE mouse button will destroy +the window.; +#X text 408 39 Inlet_1 (float): 1=Create and render. 0=Destroy. All +of the standard Gem window commands can still be used (see gemwin's +help for more information).; +#X text 6 162 -- MOUSE CONTROLS (for Linux and Windows) --; +#X text 434 196 /fps f: sets the Gem window framerate.; +#X text 434 217 /border f: set the Gem window border presence.; +#X text 5 3 tags: gems; +#X obj 63 408 cube; +#X obj 63 354 gemhead; +#X obj 13 50 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 +; +#X msg 84 48 /dimen 640 480; +#X obj 544 344 nbx 5 14 -1e+37 1e+37 0 0 \$0/gemsWin/fps \$0/gemsWin/fps_ +/gemsWin/fps 57 7 0 10 -262144 -1 -1 20 256; +#X obj 544 324 tgl 15 0 \$0/gemsWin/border \$0/gemsWin/border_ /gemsWin/border +17 7 0 10 -262144 -1 -1 1 1; +#X obj 544 363 tgl 15 0 \$0/gemsWin/lighting \$0/gemsWin/lighting_ +/gemsWin/lighting 17 7 0 10 -262144 -1 -1 1 1; +#X obj 544 383 nbx 5 14 -1e+37 1e+37 0 0 \$0/gemsWin/w \$0/gemsWin/w_ +/gemsWin/w 57 7 0 10 -262144 -1 -1 320 256; +#X obj 544 403 nbx 5 14 -1e+37 1e+37 0 0 \$0/gemsWin/h \$0/gemsWin/h_ +/gemsWin/h 57 7 0 10 -262144 -1 -1 240 256; +#X obj 544 423 nbx 5 14 -1e+37 1e+37 0 0 \$0/gemsWin/x \$0/gemsWin/x_ +/gemsWin/x 57 7 0 10 -262144 -1 -1 0 256; +#X obj 544 443 nbx 5 14 -1e+37 1e+37 0 0 \$0/gemsWin/y \$0/gemsWin/y_ +/gemsWin/y 57 7 0 10 -262144 -1 -1 0 256; +#X obj 544 305 tgl 15 0 \$0/gemsWin/create \$0/gemsWin/create_ /gemsWin/create +17 7 0 10 -262144 -1 -1 0 1; +#X text 433 158 /dimen Width Height: sets the Gem window dimension. +; +#X text 434 177 /offset Width Height: sets the Gem window offset.; +#X text 430 238 /lighting f: turns the lighting on/off; +#X text 432 256 /anti-aliasing f: turns the antialiasing on/of; +#X obj 183 333 gemhead; +#X obj 183 364 rotateXYZ 30 30 0; +#X msg 116 75 /lighting 0; +#X obj 183 417 light; +#X obj 235 419 loadbang; +#X msg 236 443 1 1 0; +#X obj 329 336 gemhead; +#X obj 329 420 light; +#X obj 381 422 loadbang; +#X msg 382 446 0 1 0; +#X obj 329 367 rotateXYZ -30 -45 0; +#X obj 329 393 translateXYZ 0 0 5; +#X obj 183 390 translateXYZ 0 0 5; +#X obj 714 -5 import Gem; +#X obj 8 112 mtl/gemsWin /dimen 320 240 /lighting 1; +#X connect 12 0 11 0; +#X connect 13 0 41 0; +#X connect 14 0 41 0; +#X connect 27 0 28 0; +#X connect 28 0 39 0; +#X connect 29 0 41 0; +#X connect 31 0 32 0; +#X connect 32 0 30 1; +#X connect 33 0 37 0; +#X connect 35 0 36 0; +#X connect 36 0 34 1; +#X connect 37 0 38 0; +#X connect 38 0 34 0; +#X connect 39 0 30 0; diff --git a/gemsWin.pd b/gemsWin.pd new file mode 100644 index 0000000..9961a4b --- /dev/null +++ b/gemsWin.pd @@ -0,0 +1,273 @@ +#N canvas 16 29 993 682 10; +#X declare -lib Gem; +#X obj 236 355 gemwin; +#X obj -10 -340 inlet; +#X obj -11 -182 sel 1 0; +#X msg 157 235 0; +#X msg 100 238 destroy; +#X obj 110 141 t b b; +#X obj 20 223 s \$0reset; +#X msg 42 274 create; +#X msg 5 274 1; +#X obj -12 172 t b b; +#X obj 113 164 delay 200; +#N canvas 364 209 654 496 MOUSE_INPUT 0; +#X obj 82 49 gemmouse; +#X obj 186 184 sel 1; +#X msg 182 261 0; +#N canvas 211 90 618 711 viewing 0; +#X obj 65 57 inlet; +#X obj 123 55 inlet; +#X obj 238 52 inlet; +#X obj 182 680 outlet; +#X obj 43 558 pack f f f 100; +#X msg 43 588 view \$1 \$2 \$3 0 0 0 0 \$4 0; +#X obj 41 498 expr sin($f1)*cos($f2)*4; +#X obj 380 499 expr cos($f1)*cos($f2)*4; +#X obj 226 498 expr sin($f1)*4; +#X obj 297 221 spigot; +#X obj 244 221 spigot; +#X obj 308 156 t f f f; +#X obj 368 181 sel 1; +#X obj 230 282 t f f; +#X obj 311 285 t f f; +#X obj 181 314 t f f; +#X obj 203 355 -; +#X obj 314 313 t f f; +#X obj 320 364 -; +#X obj 389 312 spigot 1; +#X obj 248 307 spigot 1; +#X msg 372 218 1; +#X obj 237 334 t f b; +#X msg 265 357 0; +#X obj 185 415 +; +#X obj 297 417 +; +#X obj 184 438 t f f f f; +#X obj 296 440 t f f f; +#X obj 141 390 / -100; +#X msg 473 245 0 0; +#X obj 485 81 inlet reset; +#X obj 447 388 / 100; +#X obj 492 212 ./doubleClick 500; +#X connect 0 0 10 0; +#X connect 1 0 9 0; +#X connect 2 0 11 0; +#X connect 4 0 5 0; +#X connect 5 0 3 0; +#X connect 6 0 4 0; +#X connect 7 0 4 2; +#X connect 8 0 4 1; +#X connect 9 0 14 0; +#X connect 10 0 13 0; +#X connect 11 1 9 1; +#X connect 11 1 10 1; +#X connect 11 2 12 0; +#X connect 12 0 21 0; +#X connect 12 0 32 0; +#X connect 13 0 15 0; +#X connect 13 1 20 0; +#X connect 14 0 17 0; +#X connect 14 1 19 0; +#X connect 15 0 16 1; +#X connect 15 1 16 0; +#X connect 16 0 28 0; +#X connect 17 0 18 1; +#X connect 17 1 18 0; +#X connect 18 0 31 0; +#X connect 19 0 18 1; +#X connect 20 0 22 0; +#X connect 21 0 20 1; +#X connect 21 0 19 1; +#X connect 22 0 16 1; +#X connect 22 1 23 0; +#X connect 23 0 20 1; +#X connect 23 0 19 1; +#X connect 24 0 26 0; +#X connect 25 0 27 0; +#X connect 26 0 6 0; +#X connect 26 2 7 0; +#X connect 26 3 24 1; +#X connect 27 0 6 1; +#X connect 27 0 8 0; +#X connect 27 1 7 1; +#X connect 27 2 25 1; +#X connect 28 0 24 0; +#X connect 29 0 25 0; +#X connect 29 0 24 0; +#X connect 30 0 29 0; +#X connect 31 0 25 0; +#X connect 32 0 29 0; +#X restore 59 168 pd viewing; +#X obj 176 326 outlet; +#X obj 56 327 outlet; +#X obj 177 225 ./doubleClick 500; +#X obj 283 24 inlet; +#X obj 172 82 ./valueChange gems.win/right_click; +#X obj 187 138 ./valueChange gems.win/middle_click; +#X connect 0 0 3 0; +#X connect 0 1 3 1; +#X connect 0 3 9 0; +#X connect 0 4 8 0; +#X connect 1 0 6 0; +#X connect 2 0 4 0; +#X connect 3 0 5 0; +#X connect 6 0 2 0; +#X connect 7 0 3 3; +#X connect 8 0 3 2; +#X connect 9 0 1 0; +#X restore 351 160 pd MOUSE_INPUT; +#N canvas 609 121 830 679 CREATE&DESTROY 0; +#X obj 104 -313 inlet; +#X msg 138 -180 0; +#X obj 27 -183 t b b; +#X msg 90 -138 0; +#X msg 36 -104 1; +#X obj 16 -138 delay 201; +#X obj 91 -280 route 1 0; +#X obj 95 -243 route create destroy; +#X obj 176 42 outlet; +#X connect 0 0 6 0; +#X connect 1 0 8 0; +#X connect 2 0 5 0; +#X connect 2 1 3 0; +#X connect 3 0 8 0; +#X connect 4 0 8 0; +#X connect 5 0 4 0; +#X connect 6 0 2 0; +#X connect 6 1 1 0; +#X connect 6 2 7 0; +#X connect 7 0 2 0; +#X connect 7 1 1 0; +#X restore -11 -213 pd CREATE&DESTROY; +#X obj -67 327 s GEMS; +#X obj -36 212 t b b b; +#N canvas 309 104 1019 673 SETTINGS 0; +#X obj 219 -72 inlet; +#X obj 69 461 outlet; +#X msg 229 177 frame \$1; +#X msg 519 120 border \$1; +#X msg 723 156 lighting \$1; +#N canvas 1 57 1022 686 dimen 0; +#X msg 117 392 dimen \$1 \$2; +#X obj 159 261 value GEMSW; +#X obj 307 265 value GEMSH; +#X obj 37 135 unpack f f; +#X obj 102 258 pack; +#X obj 87 228 t f f; +#X obj 284 236 t f f; +#X obj 60 20 inlet; +#X obj 109 468 outlet; +#X obj 104 58 t b b; +#X obj 47 111 tof/param /dimen 320 240 /ns; +#X obj 73 200 tof/param /w 320 /nlb /wfb /nps /g nbx; +#X obj 322 204 tof/param /h 240 /nlb /wfb /nps /g nbx; +#X connect 0 0 8 0; +#X connect 3 0 11 0; +#X connect 3 1 12 0; +#X connect 4 0 0 0; +#X connect 5 0 4 0; +#X connect 5 1 1 0; +#X connect 6 0 4 1; +#X connect 6 1 2 0; +#X connect 7 0 9 0; +#X connect 9 0 11 0; +#X connect 9 1 12 0; +#X connect 10 0 3 0; +#X connect 11 0 5 0; +#X connect 12 0 6 0; +#X restore 47 102 pd dimen; +#N canvas 1 57 1022 686 offset 0; +#X obj 37 135 unpack f f; +#X obj 102 258 pack; +#X obj 60 20 inlet; +#X obj 109 468 outlet; +#X msg 117 392 offset \$1 \$2; +#X obj 123 67 t b b; +#X obj 37 112 tof/param /offset 0 0 /ns; +#X obj 298 200 tof/param /y 0 /nlb /wfb /nps /g nbx; +#X obj 67 202 tof/param /x 0 /nlb /wfb /nps /g nbx; +#X connect 0 0 8 0; +#X connect 0 1 7 0; +#X connect 1 0 4 0; +#X connect 2 0 5 0; +#X connect 4 0 3 0; +#X connect 5 0 8 0; +#X connect 5 1 7 0; +#X connect 6 0 0 0; +#X connect 7 0 1 1; +#X connect 8 0 1 0; +#X restore 178 113 pd offset; +#X obj 723 120 tof/param /lighting 0 /nlb /g tgl /wfb; +#X obj 218 -39 t b b b b b b; +#X msg 620 319 FSAA \$1; +#X obj 621 294 * 2; +#X obj 327 176 value GEMSFPS; +#X obj 256 118 tof/param /fps 20 /nlb /wfb /nps /g nbx; +#X obj 505 85 tof/param /border 1 /nlb /g tgl /nps /wfb; +#X obj 623 269 tof/param /anti-aliasing 0 /g nbx /nlb /wfb /nps; +#X connect 0 0 8 0; +#X connect 2 0 1 0; +#X connect 3 0 1 0; +#X connect 4 0 1 0; +#X connect 5 0 1 0; +#X connect 6 0 1 0; +#X connect 7 0 4 0; +#X connect 8 0 5 0; +#X connect 8 1 6 0; +#X connect 8 2 12 0; +#X connect 8 3 13 0; +#X connect 8 4 7 0; +#X connect 8 5 14 0; +#X connect 9 0 1 0; +#X connect 10 0 9 0; +#X connect 12 0 2 0; +#X connect 12 0 11 0; +#X connect 13 0 3 0; +#X connect 14 0 10 0; +#X restore 184 -101 pd SETTINGS; +#X obj -11 -315 route float bang; +#X msg 35 -283 1; +#X text 488 -43 Internal messages:; +#X text 515 -21 send "GEMS" bang when a new window is created; +#X text 517 -3 value "GEMSW" holds the last width set; +#X text 516 13 value "GEMSH" holds the last height set; +#X obj 255 -63 print WIN; +#X text 517 33 value "GEMSFPS" holds the frame rate; +#X obj -6 -134 t b b b; +#X obj 201 -152 value GEMSI; +#X msg 201 -175 0; +#X obj -11 -243 tof/param /create 0 /nlb /g tgl /ns; +#X obj 509 -203 iemguts/propertybang; +#X obj 498 -267 import Gem; +#X obj 510 -174 tof/param gui; +#X obj 82 -288 tof/param route; +#X connect 1 0 16 0; +#X connect 2 0 24 0; +#X connect 2 1 5 0; +#X connect 3 0 0 0; +#X connect 4 0 0 0; +#X connect 5 0 10 0; +#X connect 5 1 3 0; +#X connect 7 0 0 0; +#X connect 8 0 0 0; +#X connect 9 0 14 0; +#X connect 9 1 6 0; +#X connect 10 0 4 0; +#X connect 11 0 0 0; +#X connect 11 1 27 0; +#X connect 12 0 2 0; +#X connect 14 0 13 0; +#X connect 14 1 8 0; +#X connect 14 2 7 0; +#X connect 15 0 0 0; +#X connect 15 0 22 0; +#X connect 16 0 27 0; +#X connect 16 1 17 0; +#X connect 16 2 31 0; +#X connect 17 0 27 0; +#X connect 24 0 9 0; +#X connect 24 1 15 0; +#X connect 24 2 26 0; +#X connect 26 0 25 0; +#X connect 27 0 12 0; +#X connect 28 0 30 0; diff --git a/granularLive~-help.pd b/granularLive~-help.pd new file mode 100644 index 0000000..2deda57 --- /dev/null +++ b/granularLive~-help.pd @@ -0,0 +1,62 @@ +#N canvas 368 121 560 246 10; +#X text 17 11 Description: Live granular; +#X text 18 27 Author: Unknown; +#X obj 20 123 mtl/granularLive~ /id granule; +#X obj 21 159 mtl/out~; +#X text 18 43 tags: fx~; +#X obj 20 71 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 +; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 20 96 pd generate~; +#X obj 220 64 hsl 100 15 0 1 0 0 \$0/granule/wet \$0/granule/wet_ /granule/wet +105 7 0 8 -262144 -1 -1 4400 1; +#X obj 220 84 hsl 100 15 0 1 0 0 \$0/granule/feedbackleft \$0/granule/feedbackleft_ +/granule/feedbackleft 105 7 0 8 -262144 -1 -1 4300 1; +#X obj 220 104 hsl 100 15 0 1 0 0 \$0/granule/feedbackright \$0/granule/feedbackright_ +/granule/feedbackright 105 7 0 8 -262144 -1 -1 3600 1; +#X obj 220 124 nbx 5 14 -1e+37 1e+37 0 0 \$0/granule/transpositionleft +\$0/granule/transpositionleft_ /granule/transpositionleft 48 7 0 8 +-262144 -1 -1 12 256; +#X obj 220 144 nbx 5 14 -1e+37 1e+37 0 0 \$0/granule/transpositionright +\$0/granule/transpositionright_ /granule/transpositionright 48 7 0 +8 -262144 -1 -1 24 256; +#X obj 220 164 nbx 5 14 -1e+37 1e+37 0 0 \$0/granule/windowleft \$0/granule/windowleft_ +/granule/windowleft 48 7 0 8 -262144 -1 -1 100 256; +#X obj 220 184 nbx 5 14 -1e+37 1e+37 0 0 \$0/granule/windowright \$0/granule/windowright_ +/granule/windowright 48 7 0 8 -262144 -1 -1 100 256; +#X connect 2 0 3 0; +#X connect 2 1 3 1; +#X connect 5 0 6 0; +#X connect 6 0 2 0; +#X connect 6 1 2 1; diff --git a/granularLive~.pd b/granularLive~.pd new file mode 100644 index 0000000..df715b9 --- /dev/null +++ b/granularLive~.pd @@ -0,0 +1,249 @@ +#N canvas 368 121 768 472 10; +#N canvas 291 103 1105 738 process 0; +#X obj 107 314 phasor~; +#X obj 107 391 *~ -1; +#X obj 108 416 +~ 1; +#X obj 125 561 sig~ 1; +#X obj 190 560 cos~; +#X obj 126 585 -~; +#X obj 127 610 *~ 0.5; +#X obj 106 639 *~; +#X obj 142 473 samphold~; +#X obj 108 500 *~; +#X obj 143 445 sig~; +#X floatatom 135 260 10 0 0 0 - - -; +#X floatatom 266 218 5 0 0 0 - - -; +#X obj 249 253 t b f; +#X obj 229 371 / 44.1; +#X obj 342 392 *~ -1; +#X obj 343 417 +~ 1; +#X obj 360 562 sig~ 1; +#X obj 424 562 cos~; +#X obj 361 586 -~; +#X obj 362 611 *~ 0.5; +#X obj 343 636 *~; +#X obj 377 474 samphold~; +#X obj 343 501 *~; +#X obj 378 446 sig~; +#X obj 339 344 +~ 0.5; +#X obj 339 366 wrap~; +#X obj 144 288 expr (pow(2 \, ($f2/12)) - 1) * 44100/$f1; +#X obj 102 97 vsl 15 128 100 30000 0 0 empty empty empty 0 -8 0 8 -262144 +-1 -1 0 1; +#X obj 102 235 t b f; +#X obj 266 138 vsl 15 73 -36 36 0 0 empty empty empty 0 -8 0 8 -262144 +-1 -1 0 1; +#X obj 484 348 *~ 0; +#X obj 517 107 vsl 15 128 0.01 1 1 0 empty empty empty 0 -8 0 8 -262144 +-1 -1 0 1; +#X obj 517 267 sel 0.01; +#X msg 515 294 0; +#X floatatom 515 323 5 0 0 0 - - -; +#X text 520 79 feedback; +#X text 269 114 transposition; +#X text 37 71 window-width (samples); +#X obj 494 376 inlet~; +#X obj 105 698 outlet~; +#X obj 586 46 inlet; +#X obj 675 46 inlet; +#X obj 629 46 inlet; +#X obj 485 408 delwrite~ \$0-delay 5000; +#X obj 344 527 vd~ \$0-delay; +#X obj 109 526 vd~ \$0-delay; +#X connect 0 0 1 0; +#X connect 0 0 4 0; +#X connect 0 0 8 1; +#X connect 0 0 25 0; +#X connect 1 0 2 0; +#X connect 2 0 9 0; +#X connect 3 0 5 0; +#X connect 4 0 5 1; +#X connect 5 0 6 0; +#X connect 6 0 7 1; +#X connect 7 0 31 0; +#X connect 7 0 40 0; +#X connect 8 0 9 1; +#X connect 9 0 46 0; +#X connect 10 0 8 0; +#X connect 11 0 27 0; +#X connect 12 0 13 0; +#X connect 13 0 11 0; +#X connect 13 1 27 1; +#X connect 14 0 10 0; +#X connect 14 0 24 0; +#X connect 15 0 16 0; +#X connect 16 0 23 0; +#X connect 17 0 19 0; +#X connect 18 0 19 1; +#X connect 19 0 20 0; +#X connect 20 0 21 1; +#X connect 21 0 31 0; +#X connect 21 0 40 0; +#X connect 22 0 23 1; +#X connect 23 0 45 0; +#X connect 24 0 22 0; +#X connect 25 0 26 0; +#X connect 26 0 15 0; +#X connect 26 0 22 1; +#X connect 26 0 18 0; +#X connect 27 0 0 0; +#X connect 28 0 29 0; +#X connect 29 0 12 0; +#X connect 29 1 14 0; +#X connect 29 1 11 0; +#X connect 30 0 12 0; +#X connect 31 0 44 0; +#X connect 32 0 33 0; +#X connect 33 0 34 0; +#X connect 33 1 35 0; +#X connect 34 0 35 0; +#X connect 35 0 31 1; +#X connect 39 0 44 0; +#X connect 41 0 29 0; +#X connect 42 0 33 0; +#X connect 43 0 12 0; +#X connect 45 0 21 0; +#X connect 46 0 7 0; +#X restore 148 118 pd process; +#X obj 56 65 inlet~; +#X obj 100 260 outlet~; +#X obj 151 238 outlet~; +#X obj 101 66 inlet~; +#X obj 536 238 inlet params; +#X obj 536 284 print PARAM_NOTFOUND; +#X obj 210 209 tof/param /wet 0 /g slider 0 1; +#X obj 210 252 line~; +#X msg 210 231 \$1 5; +#X obj 102 208 tof/crossfade~ 2; +#N canvas 292 102 1105 738 process 0; +#X obj 107 314 phasor~; +#X obj 107 391 *~ -1; +#X obj 108 416 +~ 1; +#X obj 125 561 sig~ 1; +#X obj 190 560 cos~; +#X obj 126 585 -~; +#X obj 127 610 *~ 0.5; +#X obj 106 639 *~; +#X obj 142 473 samphold~; +#X obj 108 500 *~; +#X obj 143 445 sig~; +#X floatatom 135 260 10 0 0 0 - - -; +#X floatatom 266 218 5 0 0 0 - - -; +#X obj 249 253 t b f; +#X obj 229 371 / 44.1; +#X obj 342 392 *~ -1; +#X obj 343 417 +~ 1; +#X obj 360 562 sig~ 1; +#X obj 424 562 cos~; +#X obj 361 586 -~; +#X obj 362 611 *~ 0.5; +#X obj 343 636 *~; +#X obj 377 474 samphold~; +#X obj 343 501 *~; +#X obj 378 446 sig~; +#X obj 339 344 +~ 0.5; +#X obj 339 366 wrap~; +#X obj 144 288 expr (pow(2 \, ($f2/12)) - 1) * 44100/$f1; +#X obj 102 97 vsl 15 128 100 30000 0 0 empty empty empty 0 -8 0 8 -262144 +-1 -1 0 1; +#X obj 102 235 t b f; +#X obj 266 138 vsl 15 73 -36 36 0 0 empty empty empty 0 -8 0 8 -262144 +-1 -1 0 1; +#X obj 484 348 *~ 0; +#X obj 517 107 vsl 15 128 0.01 1 1 0 empty empty empty 0 -8 0 8 -262144 +-1 -1 0 1; +#X obj 517 267 sel 0.01; +#X msg 515 294 0; +#X floatatom 515 323 5 0 0 0 - - -; +#X text 520 79 feedback; +#X text 269 114 transposition; +#X text 37 71 window-width (samples); +#X obj 494 376 inlet~; +#X obj 105 698 outlet~; +#X obj 586 46 inlet; +#X obj 675 46 inlet; +#X obj 629 46 inlet; +#X obj 485 408 delwrite~ \$0-delayr 5000; +#X obj 344 527 vd~ \$0-delayr; +#X obj 109 526 vd~ \$0-delayr; +#X connect 0 0 1 0; +#X connect 0 0 4 0; +#X connect 0 0 8 1; +#X connect 0 0 25 0; +#X connect 1 0 2 0; +#X connect 2 0 9 0; +#X connect 3 0 5 0; +#X connect 4 0 5 1; +#X connect 5 0 6 0; +#X connect 6 0 7 1; +#X connect 7 0 31 0; +#X connect 7 0 40 0; +#X connect 8 0 9 1; +#X connect 9 0 46 0; +#X connect 10 0 8 0; +#X connect 11 0 27 0; +#X connect 12 0 13 0; +#X connect 13 0 11 0; +#X connect 13 1 27 1; +#X connect 14 0 10 0; +#X connect 14 0 24 0; +#X connect 15 0 16 0; +#X connect 16 0 23 0; +#X connect 17 0 19 0; +#X connect 18 0 19 1; +#X connect 19 0 20 0; +#X connect 20 0 21 1; +#X connect 21 0 31 0; +#X connect 21 0 40 0; +#X connect 22 0 23 1; +#X connect 23 0 45 0; +#X connect 24 0 22 0; +#X connect 25 0 26 0; +#X connect 26 0 15 0; +#X connect 26 0 22 1; +#X connect 26 0 18 0; +#X connect 27 0 0 0; +#X connect 28 0 29 0; +#X connect 29 0 12 0; +#X connect 29 1 14 0; +#X connect 29 1 11 0; +#X connect 30 0 12 0; +#X connect 31 0 44 0; +#X connect 32 0 33 0; +#X connect 33 0 34 0; +#X connect 33 1 35 0; +#X connect 34 0 35 0; +#X connect 35 0 31 1; +#X connect 39 0 44 0; +#X connect 41 0 29 0; +#X connect 42 0 33 0; +#X connect 43 0 12 0; +#X connect 45 0 21 0; +#X connect 46 0 7 0; +#X restore 228 118 pd process; +#X obj 420 38 tof/param /feedbackleft 0 /g slider 0 1; +#X obj 446 94 tof/param /feedbackright 0 /g slider 0 1; +#X obj 409 16 tof/param /transpositionleft 0 /g nbx; +#X obj 438 76 tof/param /transpositionright 0 /g nbx; +#X obj 400 -2 tof/param /windowleft 15000 /g nbx; +#X obj 429 58 tof/param /windowright 15000 /g nbx; +#X obj 536 260 tof/param route; +#X connect 0 0 10 2; +#X connect 1 0 10 0; +#X connect 1 0 0 0; +#X connect 4 0 10 1; +#X connect 4 0 11 0; +#X connect 5 0 18 0; +#X connect 7 0 9 0; +#X connect 8 0 10 4; +#X connect 9 0 8 0; +#X connect 10 0 2 0; +#X connect 10 1 3 0; +#X connect 11 0 10 3; +#X connect 12 0 0 3; +#X connect 13 0 11 3; +#X connect 14 0 0 2; +#X connect 15 0 11 2; +#X connect 16 0 0 1; +#X connect 17 0 11 1; +#X connect 18 0 6 0; diff --git a/gunGas~-help.pd b/gunGas~-help.pd new file mode 100644 index 0000000..404662c --- /dev/null +++ b/gunGas~-help.pd @@ -0,0 +1,18 @@ +#N canvas 117 420 308 258 10; +#X obj 25 78 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X floatatom 105 101 5 0 0 0 - - -; +#X text 141 100 Reverb time; +#X msg 73 101 5; +#X msg 43 101 50; +#X text 20 29 Comment: Taken from Andy Farnell's work.; +#X text 21 14 Description: Generates part of a gun sound.; +#X obj 25 139 mtl/gunGas~; +#X obj 25 175 mtl/out~; +#X text 21 44 tags: synthesize~; +#X connect 0 0 7 0; +#X connect 1 0 7 1; +#X connect 3 0 7 0; +#X connect 4 0 7 0; +#X connect 7 0 8 0; +#X connect 7 0 8 1; diff --git a/gunGas~.pd b/gunGas~.pd new file mode 100644 index 0000000..5fba022 --- /dev/null +++ b/gunGas~.pd @@ -0,0 +1,110 @@ +#N canvas 2 27 448 300 10; +#N canvas 635 281 487 526 gas 0; +#X obj 47 267 *~; +#X obj 63 127 line~; +#X obj 134 155 noise~; +#X msg 137 103 0; +#X obj 205 129 line~; +#X obj 78 290 +~; +#X obj 82 338 biquad~; +#X msg 95 317 1.84252 -0.866142 -0.0787402 -0.677165; +#X obj 63 155 *~; +#X obj 134 200 *~; +#X obj 64 177 *~ 10000; +#X obj 64 223 *~ 10000; +#X obj 136 448 bp~ 400 7; +#X obj 146 431 clip~ -0.1 0.2; +#X obj 79 448 hip~ 30; +#X obj 205 156 *~; +#X obj 135 223 *~ 0.02; +#X obj 80 484 *~ 0.3; +#X obj 148 280 loadbang; +#X obj 65 244 osc~; +#X obj 64 201 osc~; +#X obj 135 177 bp~ 900 1; +#X obj 205 178 *~; +#X obj 81 359 *~ 0.1; +#X obj 9 386 bp~ 400 1; +#X obj 81 386 bp~ 800 1; +#X obj 164 387 bp~ 1600 1; +#X obj 111 32 t b b b; +#X obj 32 449 *~ 0.9; +#X text 75 -12 AK47 gas venting 2 + reverb; +#X obj 99 520 outlet~; +#X obj 118 11 inlet; +#X obj 76 77 f 10; +#X obj 227 77 f 2000; +#X msg 205 107 1 0 \, 0 \$1; +#X msg 62 104 1 0 \, 0 \$1; +#X obj 329 32 inlet; +#X obj 435 37 inlet; +#X floatatom 297 184 5 0 0 0 - - -; +#X connect 0 0 5 0; +#X connect 1 0 8 0; +#X connect 1 0 8 1; +#X connect 1 0 0 0; +#X connect 2 0 21 0; +#X connect 3 0 19 1; +#X connect 3 0 20 1; +#X connect 4 0 15 0; +#X connect 4 0 15 1; +#X connect 5 0 6 0; +#X connect 6 0 23 0; +#X connect 7 0 6 0; +#X connect 8 0 10 0; +#X connect 9 0 16 0; +#X connect 10 0 20 0; +#X connect 11 0 19 0; +#X connect 12 0 17 0; +#X connect 13 0 14 0; +#X connect 13 0 12 0; +#X connect 14 0 17 0; +#X connect 15 0 22 0; +#X connect 15 0 22 1; +#X connect 16 0 5 1; +#X connect 17 0 30 0; +#X connect 18 0 7 0; +#X connect 19 0 0 1; +#X connect 20 0 11 0; +#X connect 21 0 9 0; +#X connect 22 0 9 1; +#X connect 23 0 24 0; +#X connect 23 0 25 0; +#X connect 23 0 26 0; +#X connect 24 0 13 0; +#X connect 24 0 28 0; +#X connect 25 0 13 0; +#X connect 25 0 28 0; +#X connect 26 0 13 0; +#X connect 26 0 28 0; +#X connect 27 0 32 0; +#X connect 27 1 3 0; +#X connect 27 2 33 0; +#X connect 28 0 17 0; +#X connect 31 0 27 0; +#X connect 32 0 35 0; +#X connect 33 0 34 0; +#X connect 34 0 4 0; +#X connect 35 0 1 0; +#X connect 36 0 32 1; +#X connect 36 0 38 0; +#X connect 37 0 33 1; +#X restore 126 190 pd gas; +#X obj 99 269 outlet~; +#X obj 157 141 t b f; +#X obj 119 100 route bang float; +#X msg 230 155 2000; +#X msg 239 187 200; +#X obj 116 39 inlet trig; +#X obj 276 42 inlet reverb; +#X msg 115 128 10; +#X connect 0 0 1 0; +#X connect 2 0 0 0; +#X connect 2 1 0 1; +#X connect 3 0 8 0; +#X connect 3 1 2 0; +#X connect 4 0 0 2; +#X connect 5 0 0 2; +#X connect 6 0 3 0; +#X connect 7 0 0 2; +#X connect 8 0 2 0; diff --git a/gunShot~-help.pd b/gunShot~-help.pd new file mode 100644 index 0000000..ed7a348 --- /dev/null +++ b/gunShot~-help.pd @@ -0,0 +1,11 @@ +#N canvas 1 57 286 217 10; +#X obj 18 70 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 15 22 Comment: Taken from Andy Farnell's work.; +#X text 16 6 Description: Generates a gun shot.; +#X obj 18 93 mtl/gunShot~; +#X obj 18 131 mtl/out~; +#X text 17 39 tags: synthesize~; +#X connect 0 0 3 0; +#X connect 3 0 4 0; +#X connect 3 0 4 1; diff --git a/gunShot~.pd b/gunShot~.pd new file mode 100644 index 0000000..40d987a --- /dev/null +++ b/gunShot~.pd @@ -0,0 +1,139 @@ +#N canvas 387 285 645 616 10; +#X obj 268 281 noise~; +#X obj 268 352 *~; +#X obj 267 330 clip~ -0.3 0.3; +#X obj 122 443 cos~; +#X obj 123 418 +~; +#X text 98 236 freq; +#X text 163 468 amp; +#X obj 156 171 *~; +#X obj 156 192 *~; +#X obj 140 350 noise~; +#X obj 139 373 *~; +#X obj 156 215 *~; +#X obj 155 240 *~; +#X obj 191 350 *~ 0.33; +#X obj 122 308 phasor~; +#X obj 138 394 lop~; +#X obj 121 264 *~ 5000; +#X obj 121 286 +~ 100; +#X obj 240 516 *~; +#X obj 277 669 *~ 2.5; +#X obj 69 668 *~ 2; +#X obj 140 610 * 4600; +#X obj 50 610 * 3600; +#X obj 387 485 * 1; +#X obj 157 142 line~; +#X msg 157 120 1 0 \, 0 25; +#X obj 269 515 *~; +#X obj 269 181 *~; +#X obj 269 202 *~; +#X obj 269 225 *~; +#X obj 268 250 *~; +#X obj 270 152 line~; +#X obj 267 304 *~ 100; +#X msg 387 462 0.913; +#X obj 440 669 *~ 6; +#X obj 362 669 *~ 5; +#X obj 268 374 hip~ 12; +#X obj 233 78 t b b; +#X obj 234 58 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 441 634 bp~ 1 3; +#X obj 458 605 * 800; +#X obj 387 608 * 975; +#X obj 362 633 bp~ 1 5; +#X obj 305 610 * 1222; +#X obj 223 610 * 2620; +#X obj 193 670 *~ 3; +#X obj 387 440 loadbang; +#X text 184 33 AK47 shell detonation; +#X obj 276 715 clip~ -1 1; +#X obj 270 110 del 10; +#X obj 275 633 bp~ 1 3; +#X obj 194 639 bp~ 1 2; +#X obj 14 638 bp~ 1 2; +#X obj 103 637 bp~ 1 2; +#X msg 270 130 1 0 \, 0 1700; +#X obj 219 6 inlet; +#X obj 276 738 outlet~; +#X connect 0 0 32 0; +#X connect 1 0 36 0; +#X connect 2 0 1 0; +#X connect 3 0 18 0; +#X connect 4 0 3 0; +#X connect 7 0 8 0; +#X connect 7 0 8 1; +#X connect 8 0 11 0; +#X connect 8 0 11 1; +#X connect 8 0 18 1; +#X connect 9 0 10 0; +#X connect 10 0 15 0; +#X connect 11 0 12 0; +#X connect 11 0 12 1; +#X connect 11 0 13 0; +#X connect 12 0 16 0; +#X connect 13 0 10 1; +#X connect 14 0 4 0; +#X connect 15 0 4 1; +#X connect 16 0 17 0; +#X connect 17 0 14 0; +#X connect 18 0 39 0; +#X connect 18 0 42 0; +#X connect 18 0 50 0; +#X connect 18 0 51 0; +#X connect 18 0 52 0; +#X connect 18 0 53 0; +#X connect 19 0 48 0; +#X connect 20 0 48 0; +#X connect 21 0 53 1; +#X connect 22 0 52 1; +#X connect 23 0 22 0; +#X connect 23 0 21 0; +#X connect 23 0 40 0; +#X connect 23 0 41 0; +#X connect 23 0 43 0; +#X connect 23 0 44 0; +#X connect 24 0 7 0; +#X connect 24 0 7 1; +#X connect 25 0 24 0; +#X connect 26 0 39 0; +#X connect 26 0 42 0; +#X connect 26 0 50 0; +#X connect 26 0 51 0; +#X connect 26 0 52 0; +#X connect 26 0 53 0; +#X connect 27 0 28 0; +#X connect 27 0 28 1; +#X connect 28 0 29 0; +#X connect 28 0 29 1; +#X connect 29 0 30 0; +#X connect 29 0 30 1; +#X connect 30 0 26 1; +#X connect 30 0 1 1; +#X connect 31 0 27 0; +#X connect 31 0 27 1; +#X connect 32 0 2 0; +#X connect 33 0 23 0; +#X connect 34 0 48 0; +#X connect 35 0 48 0; +#X connect 36 0 26 0; +#X connect 37 0 25 0; +#X connect 37 1 49 0; +#X connect 38 0 37 0; +#X connect 39 0 34 0; +#X connect 40 0 39 1; +#X connect 41 0 42 1; +#X connect 42 0 35 0; +#X connect 43 0 50 1; +#X connect 44 0 51 1; +#X connect 45 0 48 0; +#X connect 46 0 33 0; +#X connect 48 0 56 0; +#X connect 49 0 54 0; +#X connect 50 0 19 0; +#X connect 51 0 45 0; +#X connect 52 0 20 0; +#X connect 53 0 20 0; +#X connect 54 0 31 0; +#X connect 55 0 38 0; diff --git a/hexToDec-help.pd b/hexToDec-help.pd new file mode 100644 index 0000000..79262b6 --- /dev/null +++ b/hexToDec-help.pd @@ -0,0 +1,16 @@ +#N canvas 364 98 626 444 10; +#X floatatom 177 350 30 0 0 0 - - -; +#X text 20 11 Description: Hexadecimal to decimal conversion.; +#X msg 268 134 0x11; +#X msg 291 190 0xa1; +#X text 20 25 tags: conversion; +#X obj 177 322 mtl/hexToDec; +#X msg 101 137 0xffaa; +#X msg 83 184 0xf0; +#X msg 175 110 0xffcc33; +#X connect 2 0 5 0; +#X connect 3 0 5 0; +#X connect 5 0 0 0; +#X connect 6 0 5 0; +#X connect 7 0 5 0; +#X connect 8 0 5 0; diff --git a/hexToDec.pd b/hexToDec.pd new file mode 100644 index 0000000..98048e5 --- /dev/null +++ b/hexToDec.pd @@ -0,0 +1,8 @@ +#N canvas 1248 92 592 550 10; +#X obj 102 -128 inlet; +#X obj 102 78 outlet; +#X obj 102 2 zexy/atoi; +#X obj 102 -58 cyclone/tosymbol; +#X connect 0 0 3 0; +#X connect 2 0 1 0; +#X connect 3 0 2 0; diff --git a/hissing~-help.pd b/hissing~-help.pd new file mode 100644 index 0000000..1d28937 --- /dev/null +++ b/hissing~-help.pd @@ -0,0 +1,8 @@ +#N canvas 746 161 338 200 10; +#X text 40 33 Comment: Taken from Andy Farnell's work.; +#X text 41 17 Description: Generates some random hissing.; +#X obj 44 85 mtl/hissing~; +#X obj 45 116 mtl/out~; +#X text 41 49 tags: synthesize~; +#X connect 2 0 3 0; +#X connect 2 0 3 1; diff --git a/hissing~.pd b/hissing~.pd new file mode 100644 index 0000000..2043555 --- /dev/null +++ b/hissing~.pd @@ -0,0 +1,27 @@ +#N canvas 632 158 618 416 10; +#N canvas 1 57 450 300 hissing 0; +#X obj 106 188 *~; +#X obj 141 57 lop~ 1; +#X obj 142 107 *~; +#X obj 66 58 hip~ 1000; +#X obj 141 133 *~; +#X obj 142 80 *~ 10; +#X obj 141 157 *~ 600; +#X obj 105 222 outlet~; +#X obj 111 27 inlet~; +#X connect 0 0 7 0; +#X connect 1 0 5 0; +#X connect 2 0 4 0; +#X connect 2 0 4 1; +#X connect 3 0 0 0; +#X connect 4 0 6 0; +#X connect 5 0 2 0; +#X connect 5 0 2 1; +#X connect 6 0 0 1; +#X connect 8 0 1 0; +#X connect 8 0 3 0; +#X restore 128 158 pd hissing; +#X obj 126 352 outlet~; +#X obj 128 126 noise~; +#X connect 0 0 1 0; +#X connect 2 0 0 0; diff --git a/hold~-help.pd b/hold~-help.pd new file mode 100644 index 0000000..2c10476 --- /dev/null +++ b/hold~-help.pd @@ -0,0 +1,12 @@ +#N canvas 0 0 508 403 10; +#X obj 222 117 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X text 104 12 Description: Holds a signal to a fixed value.; +#X obj 142 93 osc~ 0.5; +#X text 106 30 tags: control~; +#X obj 143 154 mtl/hold~; +#X obj 145 254 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X connect 0 0 4 1; +#X connect 2 0 4 0; +#X connect 4 0 5 0; diff --git a/hold~.pd b/hold~.pd new file mode 100644 index 0000000..6cb7ec2 --- /dev/null +++ b/hold~.pd @@ -0,0 +1,30 @@ +#N canvas 632 94 450 300 10; +#N canvas 434 246 756 522 hold~ 0; +#X obj 94 114 inlet~; +#X obj 147 414 outlet~; +#X obj 324 96 inlet; +#X obj 255 213 sig~ 0; +#X obj 304 168 sel 0 1; +#X obj 328 281 snapshot~; +#X obj 258 141 t f f; +#X obj 138 241 zexy/multiplex~ 0 1; +#X connect 0 0 7 0; +#X connect 2 0 6 0; +#X connect 3 0 7 1; +#X connect 4 1 5 0; +#X connect 5 0 3 0; +#X connect 6 0 7 0; +#X connect 6 1 4 0; +#X connect 7 0 1 0; +#X connect 7 0 5 0; +#X restore 96 77 pd hold~; +#X obj 90 24 inlet~; +#X obj 107 200 outlet~; +#X obj 206 9 inlet; +#X obj 181 51 != 0; +#X obj 185 74 change 0; +#X connect 0 0 2 0; +#X connect 1 0 0 0; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 5 0 0 1; diff --git a/hsv-help.pd b/hsv-help.pd new file mode 100644 index 0000000..eaf04a3 --- /dev/null +++ b/hsv-help.pd @@ -0,0 +1,8 @@ +#N canvas 0 0 450 300 10; +#X text 43 23 Description: Hue saturation value (HSV) sliders; +#X obj 109 101 mtl/hsv; +#X obj 109 172 cyclone/prepend set; +#X msg 109 194; +#X text 43 38 tags: ui; +#X connect 1 0 2 0; +#X connect 2 0 3 0; diff --git a/hsv.pd b/hsv.pd new file mode 100644 index 0000000..13d7eb8 --- /dev/null +++ b/hsv.pd @@ -0,0 +1,63 @@ +#N canvas 10 187 722 597 10; +#X obj 103 117 hsl 128 15 0 1 0 0 empty empty hue 4 8 0 8 -1 -262144 +-262144 0 1; +#X obj 53 282 pack f f f; +#X obj 103 134 hsl 128 15 0 1 0 0 empty empty saturation 4 8 0 8 -1 +-262144 -262144 0 1; +#X obj 104 151 hsl 128 15 0 1 0 0 empty empty value 4 8 0 8 -1 -262144 +-262144 0 1; +#X obj 222 188 t b f; +#X obj 267 188 t b f; +#X obj 5 519 outlet hsvn; +#X obj 48 -45 inlet; +#X obj 129 41 unpack f f f; +#X msg 73 75 set \$1; +#X msg 144 73 set \$1; +#X msg 204 71 set \$1; +#X obj 512 505 s \$0label; +#X obj 512 462 pack; +#X msg 512 484 color \$1 \$2; +#X obj 368 462 outlet pd_color; +#X obj 368 416 t a a; +#X obj 25 1 t l l; +#X obj 41 352 t l l; +#X obj 346 337 t a a; +#X msg 551 306 1 \$1; +#X obj 551 329 -; +#X obj 482 306 ./listOp; +#X obj 295 311 ./hsvToRgb; +#X obj 338 374 ./rgbToNum; +#X obj 482 386 ./rgbToNum; +#X connect 0 0 1 0; +#X connect 1 0 18 0; +#X connect 2 0 4 0; +#X connect 3 0 5 0; +#X connect 4 0 1 0; +#X connect 4 1 1 1; +#X connect 5 0 1 0; +#X connect 5 1 1 2; +#X connect 7 0 17 0; +#X connect 8 0 9 0; +#X connect 8 1 10 0; +#X connect 8 2 11 0; +#X connect 9 0 0 0; +#X connect 10 0 2 0; +#X connect 11 0 3 0; +#X connect 13 0 14 0; +#X connect 14 0 12 0; +#X connect 16 0 15 0; +#X connect 16 1 13 0; +#X connect 17 0 1 0; +#X connect 17 1 8 0; +#X connect 18 0 6 0; +#X connect 18 1 23 0; +#X connect 19 0 24 0; +#X connect 19 1 22 0; +#X connect 20 0 21 0; +#X connect 21 0 22 1; +#X connect 22 0 25 0; +#X connect 22 1 20 0; +#X connect 23 0 19 0; +#X connect 24 0 16 0; +#X connect 25 0 13 1; +#X coords 0 -1 1 1 134 67 1 100 100; diff --git a/hsvToRgb-help.pd b/hsvToRgb-help.pd new file mode 100644 index 0000000..64eaaad --- /dev/null +++ b/hsvToRgb-help.pd @@ -0,0 +1,49 @@ +#N canvas 533 195 452 442 10; +#X msg 84 210 0 1 1; +#X msg 92 231 0.6 1 0.5; +#X floatatom 98 140 5 0 1 1 Value - -; +#X floatatom 61 120 5 0 1 1 Saturation - -; +#X floatatom 44 100 5 0 1 1 Hue - -; +#X obj 44 188 pack 0 0 0; +#X obj 61 162 t b f; +#X obj 98 162 t b f; +#X obj 44 310 unpack 0 0 0; +#X floatatom 113 336 5 0 0 1 Blue - -; +#X floatatom 78 362 5 0 0 1 Green - -; +#X floatatom 44 385 5 0 0 1 Red - -; +#X obj 213 259 unpack 0 0 0; +#X floatatom 282 281 5 0 0 1 Blue - -; +#X floatatom 247 301 5 0 0 1 Green - -; +#X floatatom 213 324 5 0 0 1 Red - -; +#X text 42 80 Float HSV input; +#X text 55 288 Float RGB output; +#X text 16 11 Description: convert from float HSV colorspace to float +RGB or 8bit(integer) RGB colorspace.; +#X text 233 237 8bit/int/integer RGB output; +#X text 211 120 Float HSV input; +#X obj 44 269 mtl/hsvToRgb; +#X text 15 45 tags: conversion; +#X obj 213 217 mtl/hsvToRgb 8bit; +#X obj 212 365 mtl/hsvToRgb int; +#X obj 213 386 mtl/hsvToRgb integer; +#X obj 213 141 mtl/hsv; +#X connect 0 0 21 0; +#X connect 1 0 21 0; +#X connect 2 0 7 0; +#X connect 3 0 6 0; +#X connect 4 0 5 0; +#X connect 5 0 21 0; +#X connect 6 0 5 0; +#X connect 6 1 5 1; +#X connect 7 0 5 0; +#X connect 7 1 5 2; +#X connect 8 0 11 0; +#X connect 8 1 10 0; +#X connect 8 2 9 0; +#X connect 12 0 15 0; +#X connect 12 1 14 0; +#X connect 12 2 13 0; +#X connect 21 0 8 0; +#X connect 23 0 12 0; +#X connect 26 0 21 0; +#X connect 26 0 23 0; diff --git a/hsvToRgb.pd b/hsvToRgb.pd new file mode 100644 index 0000000..dd30b3b --- /dev/null +++ b/hsvToRgb.pd @@ -0,0 +1,180 @@ +#N canvas 1 57 882 699 10; +#X obj 187 84 route 0; +#X msg 187 56 \$2 \$3 \$1; +#X obj 231 111 unpack 0 0 0; +#X text 250 71 svh; +#X obj 187 28 inlet hsv; +#X obj 181 666 outlet rgb; +#X obj 401 149 * 6; +#X obj 380 196 % 6; +#X obj 350 173 t f f; +#X msg 350 149 0; +#X text 406 196 i; +#X obj 350 219 -; +#X obj 231 217 *; +#X obj 231 178 - 1; +#X obj 231 198 * -1; +#X obj 263 330 *; +#X obj 263 291 - 1; +#X obj 263 311 * -1; +#X obj 263 269 *; +#X obj 350 240 t f f; +#X obj 380 262 - 1; +#X obj 380 283 * -1; +#X obj 302 356 *; +#X obj 302 317 - 1; +#X obj 302 337 * -1; +#X obj 302 295 *; +#X obj 231 151 t f f f; +#X obj 238 411 pack 0 0 0 0; +#N canvas 388 287 646 315 select 0; +#X obj 290 37 inlet; +#X obj 16 247 outlet; +#X obj 92 104 t b l; +#X obj 125 128 unpack 0 0 0 0; +#X obj 89 43 inlet p q t v; +#X obj 92 128 i; +#X obj 92 151 select 0 1 2 3 4 5; +#X obj 16 223 pack 0 0 0; +#X obj 16 203 f; +#X obj 96 223 pack 0 0 0; +#X obj 96 203 f; +#X obj 176 223 pack 0 0 0; +#X obj 176 203 f; +#X obj 256 223 pack 0 0 0; +#X obj 256 203 f; +#X obj 336 223 pack 0 0 0; +#X obj 336 203 f; +#X obj 416 223 pack 0 0 0; +#X obj 416 203 f; +#X connect 0 0 5 1; +#X connect 2 0 5 0; +#X connect 2 1 3 0; +#X connect 3 0 7 2; +#X connect 3 0 9 2; +#X connect 3 0 12 1; +#X connect 3 0 14 1; +#X connect 3 0 15 1; +#X connect 3 0 17 1; +#X connect 3 1 10 1; +#X connect 3 1 13 1; +#X connect 3 1 17 2; +#X connect 3 2 7 1; +#X connect 3 2 11 2; +#X connect 3 2 16 1; +#X connect 3 3 8 1; +#X connect 3 3 9 1; +#X connect 3 3 11 1; +#X connect 3 3 13 2; +#X connect 3 3 15 2; +#X connect 3 3 18 1; +#X connect 4 0 2 0; +#X connect 5 0 6 0; +#X connect 6 0 8 0; +#X connect 6 1 10 0; +#X connect 6 2 12 0; +#X connect 6 3 14 0; +#X connect 6 4 16 0; +#X connect 6 5 18 0; +#X connect 7 0 1 0; +#X connect 8 0 7 0; +#X connect 9 0 1 0; +#X connect 10 0 9 0; +#X connect 11 0 1 0; +#X connect 12 0 11 0; +#X connect 13 0 1 0; +#X connect 14 0 13 0; +#X connect 15 0 1 0; +#X connect 16 0 15 0; +#X connect 17 0 1 0; +#X connect 18 0 17 0; +#X restore 243 456 pd select; +#X msg 187 478 \$1 \$1 \$1; +#X obj 126 437 clip 0 1; +#X obj 231 131 clip 0 1; +#X obj 270 173 clip 0 1; +#X obj 350 109 clip 0 1; +#X obj 350 129 select 1; +#X msg 139 357 \$1; +#X obj 189 373 abs; +#X obj 228 352 abs; +#X obj 271 386 abs; +#X obj 302 541 unpack f f f; +#X obj 299 572 * 255; +#X obj 347 571 * 255; +#X obj 414 572 * 255; +#X obj 343 625 pack f f f; +#X obj 304 599 int; +#X obj 352 598 int; +#X obj 404 603 int; +#X obj 564 446 loadbang; +#X msg 634 535 1; +#X obj 562 503 sel 8bit int integer; +#X obj 259 491 zexy/demultiplex 0 1; +#X obj 564 475 iemlib/dollarg; +#X connect 0 0 35 0; +#X connect 0 1 2 0; +#X connect 1 0 0 0; +#X connect 2 0 31 0; +#X connect 2 1 32 0; +#X connect 2 2 33 0; +#X connect 4 0 1 0; +#X connect 6 0 8 0; +#X connect 7 0 11 1; +#X connect 7 0 28 1; +#X connect 8 0 11 0; +#X connect 8 1 7 0; +#X connect 9 0 8 0; +#X connect 11 0 19 0; +#X connect 12 0 36 0; +#X connect 13 0 14 0; +#X connect 14 0 12 0; +#X connect 15 0 37 0; +#X connect 16 0 17 0; +#X connect 17 0 15 0; +#X connect 18 0 16 0; +#X connect 19 0 18 1; +#X connect 19 1 20 0; +#X connect 20 0 21 0; +#X connect 21 0 25 1; +#X connect 22 0 38 0; +#X connect 23 0 24 0; +#X connect 24 0 22 0; +#X connect 25 0 23 0; +#X connect 26 0 13 0; +#X connect 26 1 18 0; +#X connect 26 2 25 0; +#X connect 27 0 28 0; +#X connect 28 0 50 0; +#X connect 29 0 50 0; +#X connect 30 0 29 0; +#X connect 31 0 26 0; +#X connect 32 0 12 1; +#X connect 32 0 27 3; +#X connect 32 0 15 1; +#X connect 32 0 22 1; +#X connect 33 0 34 0; +#X connect 34 0 9 0; +#X connect 34 1 6 0; +#X connect 35 0 30 0; +#X connect 36 0 27 0; +#X connect 37 0 27 1; +#X connect 38 0 27 2; +#X connect 39 0 40 0; +#X connect 39 1 41 0; +#X connect 39 2 42 0; +#X connect 40 0 44 0; +#X connect 41 0 45 0; +#X connect 42 0 46 0; +#X connect 43 0 5 0; +#X connect 44 0 43 0; +#X connect 45 0 43 1; +#X connect 46 0 43 2; +#X connect 47 0 51 0; +#X connect 48 0 50 1; +#X connect 49 0 48 0; +#X connect 49 1 48 0; +#X connect 49 2 48 0; +#X connect 50 0 5 0; +#X connect 50 1 39 0; +#X connect 51 0 49 0; diff --git a/import.sh b/import.sh new file mode 100755 index 0000000..0151395 --- /dev/null +++ b/import.sh @@ -0,0 +1,9 @@ +#!/bin/sh +if [ $# -ne 2 ] +then +echo "Usage: $0 original_name new_name" +exit +fi +cp ../pdmtl/$1-help.pd ./$2-help.pd \ +&& cp ../pdmtl/$1.pd ./$2.pd \ +&& svn add ./$2-help.pd ./$2.pd diff --git a/inBetweens-help.pd b/inBetweens-help.pd new file mode 100644 index 0000000..2b47f1c --- /dev/null +++ b/inBetweens-help.pd @@ -0,0 +1,18 @@ +#N canvas 223 263 619 407 12; +#X msg 261 118 0; +#X text 302 118 Sets current value; +#X obj 115 226 print; +#X msg 17 92 0; +#X msg 176 95 10; +#X msg 77 90 2; +#X msg 136 93 9; +#X text 12 3 Description: Prints all the integers between the last +and previous received integers.; +#X obj 115 161 mtl/inBetweens; +#X text 10 42 tags: math; +#X connect 0 0 8 1; +#X connect 3 0 8 0; +#X connect 4 0 8 0; +#X connect 5 0 8 0; +#X connect 6 0 8 0; +#X connect 8 0 2 0; diff --git a/inBetweens.pd b/inBetweens.pd new file mode 100644 index 0000000..c35987d --- /dev/null +++ b/inBetweens.pd @@ -0,0 +1,53 @@ +#N canvas 221 199 515 412 12; +#X obj 171 207 until; +#X obj 161 42 int; +#X obj 171 121 -; +#X obj 274 222 f; +#X obj 228 265 +; +#N canvas 0 0 454 304 sign 0; +#X obj 97 184 abs; +#X obj 105 79 inlet; +#X obj 105 143 t f f; +#X obj 160 186 moses 0; +#X msg 159 215 -1; +#X msg 209 217 1; +#X obj 101 249 outlet; +#X obj 190 260 outlet; +#X connect 0 0 6 0; +#X connect 1 0 2 0; +#X connect 2 0 0 0; +#X connect 2 1 3 0; +#X connect 3 0 4 0; +#X connect 3 1 5 0; +#X connect 4 0 7 0; +#X connect 5 0 7 0; +#X restore 171 147 pd sign; +#X obj 228 297 t f f f; +#X obj 163 177 sel 0; +#X obj 142 247 f; +#X obj 175 77 t f f; +#X obj 159 13 inlet; +#X text 40 -15 Spills values between integers.; +#X obj 317 67 inlet; +#X obj 228 328 outlet; +#X text 375 15 set current value; +#X obj 340 197 t f f; +#X connect 0 0 3 0; +#X connect 1 0 9 0; +#X connect 2 0 5 0; +#X connect 3 0 4 0; +#X connect 4 0 6 0; +#X connect 5 0 7 0; +#X connect 5 1 4 1; +#X connect 6 0 13 0; +#X connect 6 1 3 1; +#X connect 6 2 2 1; +#X connect 7 0 8 0; +#X connect 7 1 0 0; +#X connect 8 0 13 0; +#X connect 9 0 2 0; +#X connect 9 1 8 1; +#X connect 10 0 1 0; +#X connect 12 0 15 0; +#X connect 15 0 3 1; +#X connect 15 1 2 1; diff --git a/indexer-help.pd b/indexer-help.pd new file mode 100644 index 0000000..79a5c2b --- /dev/null +++ b/indexer-help.pd @@ -0,0 +1,51 @@ +#N canvas 1176 46 728 641 10; +#X obj 183 287 bng 15 250 50 0 empty empty clear 17 7 0 10 -262144 +-1 -1; +#X obj 35 489 mtl/indexer; +#X obj 16 9 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 21 51 tags: data; +#X msg 183 311 symbol bananas; +#X msg 35 106 symbol apples; +#X msg 61 128 symbol raisins; +#X msg 77 153 symbol bananas; +#X text 21 11 description: Creates a symbol to integer map. Each symbol +is assigned a unique numerical index.; +#X text 250 285 Inlet 2: delete previous indexations; +#X text 246 361 Inlet 3: test for an indexation; +#X msg 250 381 symbol raisins; +#X obj 87 536 print TEST; +#X text 151 535 Outlet 3 bangs if no matching index was found during +a test.; +#X msg 250 403 2; +#X text 280 402 Test by index; +#X text 340 379 Test by symbol; +#X text 279 310 Delete a previous symbol; +#X text 34 83 Inlet 1: add or retreive; +#X msg 190 334 1; +#X obj 248 457 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X text 268 456 Inlet 4: dump the contents; +#X obj 110 515 print DUMP; +#X text 223 333 Delete a previous index number; +#X obj 36 587 print FOUND; +#X obj 62 560 print NEW; +#X msg 107 224 2 pineapple; +#X text 105 175 You can also attempt to force an index. The symbol +will only be added to that index if neither the symbol or index have +been stored.; +#X text 186 225 Attempt to force pineapple at index 2; +#X connect 0 0 1 1; +#X connect 1 0 24 0; +#X connect 1 1 25 0; +#X connect 1 2 12 0; +#X connect 1 3 22 0; +#X connect 4 0 1 1; +#X connect 5 0 1 0; +#X connect 6 0 1 0; +#X connect 7 0 1 0; +#X connect 11 0 1 2; +#X connect 14 0 1 2; +#X connect 19 0 1 1; +#X connect 20 0 1 3; +#X connect 26 0 1 0; diff --git a/indexer.pd b/indexer.pd new file mode 100644 index 0000000..d8498d0 --- /dev/null +++ b/indexer.pd @@ -0,0 +1,138 @@ +#N canvas 1030 52 1018 711 10; +#X obj 344 420 cyclone/coll; +#C restore; +#X obj 77 -19 inlet try_to_add; +#X obj 39 155 spigot; +#X obj 30 70 t s s b b; +#X msg 109 101 1; +#X msg 71 100 0; +#X obj 344 482 t l b; +#X msg 143 101 0; +#X msg 117 219 1; +#X obj 391 483 b; +#X obj 37 217 t s b b; +#X obj 120 294 + 1; +#X obj 120 324 t f f f; +#X msg 135 430 nstore \$1 \$2 \$1 \$2; +#X obj 47 318 f; +#X obj 46 365 pack f s; +#X obj 47 282 t b s; +#X obj 46 404 t l l; +#X obj 285 595 outlet NEW; +#X obj 62 597 outlet OLD; +#X obj 480 -5 inlet clear/remove; +#X obj 480 26 route bang; +#X obj 527 124 cyclone/prepend remove; +#X obj 452 61 t b b; +#X obj 120 269 f -1; +#X msg 417 116 -1; +#X msg 460 95 clear; +#X obj 84 22 route symbol list; +#X obj 784 1 inlet test; +#X obj 717 169 spigot; +#X msg 782 121 1; +#X msg 813 122 0; +#X msg 810 144 3; +#X obj 528 520 t a b; +#X obj 673 589 outlet TEST; +#X obj 935 24 inlet dump; +#X msg 900 177 dump; +#X obj 939 120 t b b; +#X msg 972 185 4; +#X obj 871 588 outlet DUMP; +#X obj 203 147 spigot; +#X obj 210 50 t l l b b; +#X msg 255 84 1; +#X msg 341 77 2; +#X msg 276 116 0; +#X obj 389 592 print indexer; +#X obj 439 527 t l b; +#X msg 389 564 Symbol \$2 is already at index \$1.; +#X obj 716 120 t b a b b; +#X obj 495 266 route symbol float; +#X obj 467 289 symbol; +#X obj 258 147 unpack f s; +#X obj 260 201 spigot; +#X obj 544 84 t b a b; +#X obj 344 450 zexy/demultiplex 0 1 2 3 4; +#X connect 0 0 54 0; +#X connect 1 0 27 0; +#X connect 2 0 10 0; +#X connect 3 0 2 0; +#X connect 3 1 0 0; +#X connect 3 2 5 0; +#X connect 3 3 4 0; +#X connect 4 0 2 1; +#X connect 5 0 54 1; +#X connect 6 0 19 0; +#X connect 6 1 7 0; +#X connect 7 0 2 1; +#X connect 8 0 54 1; +#X connect 9 0 24 0; +#X connect 10 0 16 0; +#X connect 10 1 24 0; +#X connect 10 2 8 0; +#X connect 11 0 12 0; +#X connect 12 0 0 0; +#X connect 12 1 14 1; +#X connect 12 2 24 1; +#X connect 13 0 0 0; +#X connect 14 0 15 0; +#X connect 15 0 17 0; +#X connect 16 0 14 0; +#X connect 16 1 15 1; +#X connect 17 0 18 0; +#X connect 17 1 13 0; +#X connect 20 0 21 0; +#X connect 21 0 23 0; +#X connect 21 1 53 0; +#X connect 22 0 0 0; +#X connect 23 0 25 0; +#X connect 23 1 26 0; +#X connect 24 0 11 0; +#X connect 25 0 24 1; +#X connect 26 0 0 0; +#X connect 27 0 3 0; +#X connect 27 1 41 0; +#X connect 28 0 48 0; +#X connect 29 0 34 0; +#X connect 30 0 29 1; +#X connect 31 0 29 1; +#X connect 32 0 54 1; +#X connect 33 0 34 0; +#X connect 33 1 31 0; +#X connect 35 0 37 0; +#X connect 36 0 0 0; +#X connect 37 0 36 0; +#X connect 37 1 38 0; +#X connect 38 0 54 1; +#X connect 40 0 17 0; +#X connect 41 0 40 0; +#X connect 41 1 51 0; +#X connect 41 2 42 0; +#X connect 41 3 43 0; +#X connect 42 0 40 1; +#X connect 42 0 52 1; +#X connect 43 0 54 1; +#X connect 44 0 40 1; +#X connect 44 0 52 1; +#X connect 46 0 47 0; +#X connect 46 1 44 0; +#X connect 47 0 45 0; +#X connect 48 0 29 0; +#X connect 48 1 49 0; +#X connect 48 2 32 0; +#X connect 48 3 30 0; +#X connect 49 0 50 0; +#X connect 49 1 0 0; +#X connect 50 0 0 0; +#X connect 51 0 52 0; +#X connect 51 1 0 0; +#X connect 52 0 0 0; +#X connect 53 0 25 0; +#X connect 53 1 22 0; +#X connect 54 0 6 0; +#X connect 54 1 9 0; +#X connect 54 2 46 0; +#X connect 54 3 33 0; +#X connect 54 4 39 0; diff --git a/instrument~-help.pd b/instrument~-help.pd new file mode 100644 index 0000000..d574ab1 --- /dev/null +++ b/instrument~-help.pd @@ -0,0 +1,28 @@ +#N canvas 1116 289 729 396 10; +#X text 40 53 tags: instrument~; +#X text 43 19 Description: Creates a polyphonic version of any mtl +abstraction tagged with "instrument~" (except itslef :).; +#X text 398 198 Arguments:; +#X text 405 228 2: the name of the abstraction.; +#X text 406 213 1: the number of voices.; +#X text 406 242 3+: arguments passed to the abstraction.; +#X text 402 265 Inlet 1: note input; +#X text 402 286 Inlet 2: abstraction inlet 2 as definded by that abstraction. +; +#X obj 64 95 notein; +#X obj 64 118 pack; +#X obj 42 262 mtl/out~; +#X obj 176 82 mtl/piano 1; +#X obj 44 210 instrument~ 3 additive~ 0.7 1 0.2 1; +#X msg 277 215 0 1 0 1; +#X msg 274 237 1 0 1 0; +#X msg 281 266 0.7 1 0.2 1; +#X connect 8 0 9 0; +#X connect 8 1 9 1; +#X connect 9 0 12 0; +#X connect 11 0 12 0; +#X connect 12 0 10 0; +#X connect 12 0 10 1; +#X connect 13 0 12 1; +#X connect 14 0 12 1; +#X connect 15 0 12 1; diff --git a/instrument~.pd b/instrument~.pd new file mode 100644 index 0000000..2642a43 --- /dev/null +++ b/instrument~.pd @@ -0,0 +1,88 @@ +#N canvas 19 38 1022 625 10; +#X obj 46 35 inlet notes; +#X obj 46 72 s \$0in; +#X obj 50 304 catch~ \$0out; +#X obj 49 346 outlet~; +#X obj 360 56 loadbang; +#X obj 360 104 iemlib/dollarg; +#X obj 361 139 list split 1; +#N canvas 1263 179 497 429 \$0i 0; +#X restore 47 179 pd \$0i; +#X obj 521 149 sel 0; +#X obj 792 363 ./listBuild; +#X obj 856 317 tof/iterate; +#X obj 810 385 cyclone/prepend obj 0 60 route; +#X obj 722 503 s pd-\$0i; +#X obj 486 216 list; +#X obj 304 201 tof/iterate; +#X obj 622 163 t b b f f; +#X obj 640 285 t b b; +#X obj 306 234 t f f f b; +#X obj 351 267 * 20; +#X obj 300 324 pack f f f; +#X obj 353 292 + 80; +#X obj 700 185 pack f \$0; +#X msg 693 222 clear \, obj 0 0 r \$2in \, obj 0 20 poly \$1 1 \, connect +0 0 1 0 \, obj 0 40 pack f f f \, connect 1 0 2 0 \, connect 1 1 2 +1 \, connect 1 2 2 2 \, obj 200 0 throw~ \$2out \, obj 400 0 r \$2in2 +; +#X obj 186 33 inlet set; +#X msg 693 395 connect 2 0 5 0; +#X obj 320 302 + 6; +#X obj 190 67 s \$0in2; +#X msg 796 462 clear; +#X obj 416 339 cyclone/prepend obj; +#X obj 321 356 t l l; +#X msg 416 316 \$1 \$3; +#X msg 315 416 connect 5 \$1 \$2 0 \, connect \$2 0 3 0 \, connect +4 0 \$2 1; +#X obj 451 60 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 430 371 list; +#X obj 586 387 list trim; +#X obj 358 165 t b f f; +#X msg 205 258 loadbang; +#X obj 880 345 + 1; +#X connect 0 0 1 0; +#X connect 2 0 3 0; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 6 0 35 0; +#X connect 6 1 13 1; +#X connect 8 1 15 0; +#X connect 9 0 11 0; +#X connect 10 0 37 0; +#X connect 11 0 12 0; +#X connect 13 0 33 1; +#X connect 14 0 17 0; +#X connect 15 1 16 0; +#X connect 15 2 10 0; +#X connect 15 3 21 0; +#X connect 16 0 24 0; +#X connect 16 1 9 0; +#X connect 17 0 19 0; +#X connect 17 1 25 0; +#X connect 17 2 18 0; +#X connect 17 3 13 0; +#X connect 18 0 20 0; +#X connect 19 0 29 0; +#X connect 20 0 19 2; +#X connect 21 0 22 0; +#X connect 22 0 12 0; +#X connect 23 0 26 0; +#X connect 24 0 12 0; +#X connect 25 0 19 1; +#X connect 27 0 12 0; +#X connect 28 0 33 0; +#X connect 29 0 31 0; +#X connect 29 1 30 0; +#X connect 30 0 28 0; +#X connect 31 0 12 0; +#X connect 32 0 5 0; +#X connect 33 0 34 0; +#X connect 34 0 12 0; +#X connect 35 0 36 0; +#X connect 35 1 14 0; +#X connect 35 2 8 0; +#X connect 36 0 12 0; +#X connect 37 0 9 1; diff --git a/intToDigits-help.pd b/intToDigits-help.pd new file mode 100644 index 0000000..f4b0434 --- /dev/null +++ b/intToDigits-help.pd @@ -0,0 +1,14 @@ +#N canvas 473 159 370 244 10; +#X msg 78 95 123; +#X obj 78 188 print digit_list; +#X floatatom 165 167 5 0 0 1 number_of_digits - -; +#X msg 85 117 563427; +#X text 131 117 <- decimals are ignored; +#X text 16 12 Description: Converts a number to a list of digits. Decimals +are ignored.; +#X obj 78 143 mtl/intToDigits; +#X text 16 47 tags: conversion; +#X connect 0 0 6 0; +#X connect 3 0 6 0; +#X connect 6 0 1 0; +#X connect 6 1 2 0; diff --git a/intToDigits.pd b/intToDigits.pd new file mode 100644 index 0000000..a16778c --- /dev/null +++ b/intToDigits.pd @@ -0,0 +1,23 @@ +#N canvas 427 258 1013 616 10; +#X obj 495 97 mod 10; +#X obj 415 137 t f f; +#X obj 384 215 div 10; +#X obj 417 252 sel 0; +#X obj 347 41 inlet; +#X obj 411 438 outlet; +#X obj 527 438 outlet; +#X obj 347 77 route float; +#X msg 587 355 0; +#X obj 417 337 ./listBuild prepend; +#X connect 0 0 9 1; +#X connect 1 0 2 0; +#X connect 1 1 0 0; +#X connect 2 0 3 0; +#X connect 3 0 9 0; +#X connect 3 1 1 0; +#X connect 4 0 7 0; +#X connect 7 0 1 0; +#X connect 7 1 8 0; +#X connect 8 0 6 0; +#X connect 9 0 5 0; +#X connect 9 1 6 0; diff --git a/in~-help.pd b/in~-help.pd new file mode 100644 index 0000000..3dae479 --- /dev/null +++ b/in~-help.pd @@ -0,0 +1,10 @@ +#N canvas 1140 143 838 392 10; +#X text 13 46 tags: mix~; +#X obj 69 114 mtl/in~; +#X text 13 15 Description: Controls the input volume and displays a +stereo VU.; +#X obj 70 189 mtl/out~; +#X text 245 122 The square next to the volume slider glows green when +DSP is ON and input is detected.; +#X connect 1 0 3 0; +#X connect 1 1 3 1; diff --git a/in~.pd b/in~.pd new file mode 100644 index 0000000..dc8602a --- /dev/null +++ b/in~.pd @@ -0,0 +1,238 @@ +#N canvas 1182 26 790 663 10; +#N canvas 1191 53 886 636 guts 0; +#X obj 371 459 snapshot~; +#X obj 474 466 snapshot~; +#N canvas 1221 106 734 553 size&color 0; +#X obj 90 14 inlet; +#X obj 26 371 s \$0left; +#X obj 162 187 moses 50; +#X obj 88 121 t f f; +#X msg 157 213 0; +#X msg 213 230 1; +#X msg 193 315 color 14; +#X msg 260 318 color 13; +#X msg 120 312 color 16; +#X obj 195 285 sel 0 1 2; +#X obj 193 257 change -1; +#X msg 264 235 2; +#X obj 213 208 moses 90; +#X obj 87 96 + 1; +#X obj 85 34 change -1; +#X obj 86 53 clip 0 1; +#X obj 96 74 * 100; +#X obj 67 178 * 1.5; +#X msg 43 217 vis_size \$1 7; +#X connect 0 0 14 0; +#X connect 2 0 4 0; +#X connect 2 1 12 0; +#X connect 3 0 17 0; +#X connect 3 1 2 0; +#X connect 4 0 10 0; +#X connect 5 0 10 0; +#X connect 6 0 1 0; +#X connect 7 0 1 0; +#X connect 8 0 1 0; +#X connect 9 0 8 0; +#X connect 9 1 6 0; +#X connect 9 2 7 0; +#X connect 10 0 9 0; +#X connect 11 0 10 0; +#X connect 12 0 5 0; +#X connect 12 1 11 0; +#X connect 13 0 3 0; +#X connect 14 0 15 0; +#X connect 15 0 16 0; +#X connect 16 0 13 0; +#X connect 17 0 18 0; +#X connect 18 0 1 0; +#X restore 353 543 pd size&color; +#X obj 47 18 loadbang; +#X msg 52 44 0; +#X obj 241 85 inlet~; +#X obj 421 89 inlet~; +#X obj 493 184 line~; +#X obj 50 291 *~; +#X obj 173 309 *~; +#X obj 27 359 hip~ 10; +#X obj 102 369 hip~ 10; +#X obj 551 86 inlet vol; +#X obj 37 485 outlet~; +#X obj 144 490 outlet~; +#X msg 535 135 \$1 100; +#X obj 596 210 sel 0; +#X msg 558 243 0; +#X obj 647 260 metro 200; +#N canvas 0 0 734 553 size&color 0; +#X obj 90 14 inlet; +#X obj 162 187 moses 50; +#X obj 88 121 t f f; +#X msg 157 213 0; +#X msg 213 230 1; +#X msg 193 315 color 14; +#X msg 260 318 color 13; +#X msg 120 312 color 16; +#X obj 195 285 sel 0 1 2; +#X obj 193 257 change -1; +#X msg 264 235 2; +#X obj 213 208 moses 90; +#X obj 87 96 + 1; +#X obj 96 74 * 99; +#X obj 85 34 change -1; +#X obj 86 53 clip 0 1; +#X obj 26 371 s \$0right; +#X obj 83 178 * 1.5; +#X msg 44 224 vis_size \$1 7; +#X connect 0 0 14 0; +#X connect 1 0 3 0; +#X connect 1 1 11 0; +#X connect 2 0 17 0; +#X connect 2 1 1 0; +#X connect 3 0 9 0; +#X connect 4 0 9 0; +#X connect 5 0 16 0; +#X connect 6 0 16 0; +#X connect 7 0 16 0; +#X connect 8 0 7 0; +#X connect 8 1 5 0; +#X connect 8 2 6 0; +#X connect 9 0 8 0; +#X connect 10 0 9 0; +#X connect 11 0 4 0; +#X connect 11 1 10 0; +#X connect 12 0 2 0; +#X connect 13 0 12 0; +#X connect 14 0 15 0; +#X connect 15 0 13 0; +#X connect 17 0 18 0; +#X connect 18 0 16 0; +#X restore 485 536 pd size&color; +#X obj 566 166 != 0; +#X obj 367 426 iemlib/peakenv~ 1000; +#X obj 481 401 iemlib/peakenv~ 1000; +#X obj 654 547 outlet; +#X obj 663 172 r pd; +#X obj 670 224 route dsp; +#X obj 599 521 max; +#X obj 631 408 iemlib/peakenv~ 1000; +#X obj 766 404 iemlib/peakenv~ 1000; +#X obj 643 457 snapshot~; +#X obj 746 464 snapshot~; +#X obj 656 349 t b b; +#X connect 0 0 2 0; +#X connect 1 0 19 0; +#X connect 3 0 4 0; +#X connect 4 0 2 0; +#X connect 4 0 19 0; +#X connect 5 0 8 0; +#X connect 5 0 27 0; +#X connect 6 0 9 0; +#X connect 6 0 28 0; +#X connect 7 0 8 1; +#X connect 7 0 9 1; +#X connect 8 0 10 0; +#X connect 8 0 21 0; +#X connect 9 0 11 0; +#X connect 9 0 22 0; +#X connect 10 0 13 0; +#X connect 11 0 14 0; +#X connect 12 0 15 0; +#X connect 15 0 7 0; +#X connect 15 0 20 0; +#X connect 16 0 17 0; +#X connect 16 1 18 0; +#X connect 17 0 2 0; +#X connect 17 0 18 0; +#X connect 17 0 19 0; +#X connect 18 0 0 0; +#X connect 18 0 1 0; +#X connect 18 0 31 0; +#X connect 20 0 16 0; +#X connect 21 0 0 0; +#X connect 22 0 1 0; +#X connect 24 0 25 0; +#X connect 25 0 18 0; +#X connect 26 0 23 0; +#X connect 27 0 29 0; +#X connect 28 0 30 0; +#X connect 29 0 26 0; +#X connect 30 0 26 1; +#X connect 31 0 29 0; +#X connect 31 1 30 0; +#X restore 56 443 pd guts; +#X obj 244 401 / 100; +#X obj 244 425 pow 3; +#X obj 102 134 cnv 7 149 15 empty empty empty 20 12 0 14 -1 -66577 +0; +#X obj 102 134 cnv 1 1 7 empty \$0left empty 20 12 0 14 -24198 -262144 +0; +#X obj 102 142 cnv 1 1 7 empty \$0right empty 20 12 0 14 -24198 -262144 +0; +#X obj 106 116 hsl 100 15 0 90 0 0 empty empty vol 104 8 0 9 -228856 +-1 -1 0 1; +#X obj 99 51 iemlib/init 0; +#X obj 25 563 outlet~; +#X obj 143 562 outlet~; +#X obj 10 199 adc~ 1 2; +#X obj 234 116 cnv 15 15 15 empty \$0led empty 20 12 0 14 -237178 -262144 +0; +#X obj 306 302 > 0; +#X msg 311 433 \; pd dsp 1; +#X obj 306 326 sel 1; +#X obj 306 351 value DSP; +#X obj 312 382 sel 0; +#X obj 310 406 t b b; +#X msg 365 408 1; +#X obj 244 273 t f f; +#X obj 356 493 delay 300; +#X obj 243 476 t f b; +#X obj 359 694 s \$0led; +#X msg 357 517 0; +#X obj 443 494 loadbang; +#X obj 372 592 change -1; +#X obj 285 530 moses 0.5; +#X msg 236 547 0; +#X msg 291 550 1; +#X msg 333 552 2; +#X msg 237 656 color -1.50666e+07; +#X msg 480 654 color -58625; +#X obj 370 619 sel 0 1 2; +#X msg 356 654 color -1.17242e+07; +#X obj 227 509 moses 0.001; +#X connect 0 0 8 0; +#X connect 0 1 9 0; +#X connect 0 2 21 0; +#X connect 1 0 2 0; +#X connect 2 0 0 2; +#X connect 6 0 19 0; +#X connect 7 0 6 0; +#X connect 10 0 0 0; +#X connect 10 1 0 1; +#X connect 12 0 14 0; +#X connect 14 0 15 0; +#X connect 15 0 16 0; +#X connect 16 0 17 0; +#X connect 17 0 13 0; +#X connect 17 1 18 0; +#X connect 18 0 15 0; +#X connect 19 0 1 0; +#X connect 19 1 12 0; +#X connect 20 0 23 0; +#X connect 21 0 34 0; +#X connect 21 1 20 0; +#X connect 23 0 25 0; +#X connect 24 0 23 0; +#X connect 25 0 32 0; +#X connect 26 0 28 0; +#X connect 26 1 29 0; +#X connect 27 0 25 0; +#X connect 28 0 25 0; +#X connect 29 0 25 0; +#X connect 30 0 22 0; +#X connect 31 0 22 0; +#X connect 32 0 30 0; +#X connect 32 1 33 0; +#X connect 32 2 31 0; +#X connect 33 0 22 0; +#X connect 34 0 27 0; +#X connect 34 1 26 0; +#X coords 0 -1 1 1 153 52 1 100 100; diff --git a/keyNameLearn-help.pd b/keyNameLearn-help.pd new file mode 100644 index 0000000..37382e5 --- /dev/null +++ b/keyNameLearn-help.pd @@ -0,0 +1,15 @@ +#N canvas 663 196 309 206 10; +#X obj 32 74 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 32 147 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X symbolatom 125 145 10 0 0 0 - - -; +#X text 52 145 Key press.; +#X text 200 146 Key learned.; +#X text 51 72 Learn.; +#X obj 32 105 mtl/keyNameLearn; +#X text 12 8 Description: Choose a key that toggle.; +#X text 13 24 tags: ui; +#X connect 0 0 6 0; +#X connect 6 0 1 0; +#X connect 6 1 2 0; diff --git a/keyNameLearn.pd b/keyNameLearn.pd new file mode 100644 index 0000000..d040455 --- /dev/null +++ b/keyNameLearn.pd @@ -0,0 +1,31 @@ +#N canvas 651 318 450 300 10; +#X obj 158 43 keyname; +#X obj 297 35 inlet; +#X obj 202 84 sel none; +#X obj 269 145 spigot; +#X msg 366 156 0; +#X obj 336 254 outlet; +#X obj 111 263 outlet; +#X obj 115 158 spigot; +#X msg 191 110 1; +#X obj 238 112 t a b; +#X msg 225 144 0; +#X obj 288 181 t a b a b; +#X msg 304 74 1; +#X connect 0 0 7 0; +#X connect 0 1 2 0; +#X connect 1 0 12 0; +#X connect 2 0 8 0; +#X connect 2 1 9 0; +#X connect 3 0 11 0; +#X connect 4 0 3 1; +#X connect 7 0 6 0; +#X connect 8 0 7 1; +#X connect 9 0 3 0; +#X connect 9 1 10 0; +#X connect 10 0 7 1; +#X connect 11 0 5 0; +#X connect 11 1 8 0; +#X connect 11 2 2 1; +#X connect 11 3 4 0; +#X connect 12 0 3 1; diff --git a/keyR-help.pd b/keyR-help.pd new file mode 100644 index 0000000..d322b9a --- /dev/null +++ b/keyR-help.pd @@ -0,0 +1,23 @@ +#N canvas 267 162 340 212 10; +#X obj 17 109 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X text 15 64 The "a" key.; +#X obj 99 107 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X text 96 63 The "2" key.; +#X obj 179 109 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 +1; +#X text 177 64 The left control key.; +#X obj 16 179 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 +; +#X text 14 134 The right control key.; +#X text 15 13 Description: Receive a computer key's status.; +#X obj 99 81 mtl/keyR 2; +#X obj 16 152 mtl/keyR Shift_L; +#X obj 17 81 mtl/keyR a; +#X obj 179 82 mtl/keyR Control_L; +#X text 17 33 tags: ui; +#X connect 9 0 2 0; +#X connect 10 0 6 0; +#X connect 11 0 0 0; +#X connect 12 0 4 0; diff --git a/keyR.pd b/keyR.pd new file mode 100644 index 0000000..e8d42a2 --- /dev/null +++ b/keyR.pd @@ -0,0 +1,22 @@ +#N canvas 1213 210 494 344 10; +#X obj 121 253 outlet; +#X obj 116 20 keyname; +#X obj 119 117 spigot; +#X msg 207 90 1; +#X msg 248 92 0; +#X obj 111 188 change -1; +#X obj 332 44 loadbang; +#X obj 223 60 sel symbol; +#X obj 332 78 iemlib/dollarg; +#X obj 329 113 cyclone/tosymbol; +#X connect 1 0 2 0; +#X connect 1 1 7 0; +#X connect 2 0 5 0; +#X connect 3 0 2 1; +#X connect 4 0 2 1; +#X connect 5 0 0 0; +#X connect 6 0 8 0; +#X connect 7 0 3 0; +#X connect 7 1 4 0; +#X connect 8 0 9 0; +#X connect 9 0 7 1; diff --git a/keyText-help.pd b/keyText-help.pd new file mode 100644 index 0000000..de376b2 --- /dev/null +++ b/keyText-help.pd @@ -0,0 +1,29 @@ +#N canvas 51 115 657 406 10; +#X obj 75 181 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X obj 73 128 loadbang; +#X msg 75 153 1; +#X text 91 177 on/off; +#X text 214 53 WARNING: Has only been tested on Linux!; +#X msg 86 285 ui symbols; +#X obj 88 254 cyclone/prepend set; +#X text 20 14 The focus must be given to a patcher window. There are +two input modes.; +#X msg 241 289; +#X obj 243 258 cyclone/prepend set; +#X obj 88 214 mtl/keyText 1 1; +#X text 22 42 Argument 1: on/off (1/0).; +#X text 20 61 Inlet 1: on/off (1/0).; +#X text 22 -24 Description: Creates symbols and phrases while you type. +; +#X text 184 119 Outlet 1: result as it is being built.; +#X text 183 136 Outlet 2: complete result when Enter/Return us pressed. +; +#X text 24 -10 tags: ui symbols; +#X connect 0 0 10 0; +#X connect 1 0 2 0; +#X connect 2 0 0 0; +#X connect 6 0 5 0; +#X connect 9 0 8 0; +#X connect 10 0 6 0; +#X connect 10 1 9 0; diff --git a/keyText.pd b/keyText.pd new file mode 100644 index 0000000..a5c4146 --- /dev/null +++ b/keyText.pd @@ -0,0 +1,64 @@ +#N canvas 987 0 781 711 10; +#X obj 76 688 outlet; +#X obj 72 629 t a b; +#X obj 337 452 list; +#X obj 341 477 t a a; +#X obj -1 17 inlet; +#X obj 26 123 spigot \$1; +#X obj 119 248 makefilename %c; +#X msg 118 222 32; +#X obj 51 19 keyname; +#X obj 78 79 symbol; +#X obj 49 49 sel 1; +#X obj 418 468 zexy/length; +#X obj 347 520 list split; +#X obj 420 494 - 1; +#X obj 77 664 zexy/list2symbol; +#X msg 171 625 symbol; +#X obj 196 177 sel Space Return BackSpace Control_L Shift_L Shift_R +Tab Alt_L Atl_R ISO_Prev_Group ISO_Next_Group Caps_Lock; +#X obj 310 610 list; +#X obj 405 685 outlet; +#X obj 392 626 t a b; +#X obj 397 661 zexy/list2symbol; +#X msg 491 622 symbol; +#X obj 162 565 t a a a; +#X obj 147 463 t a; +#X obj 144 505 list prepend; +#X obj 249 444 t b b b; +#X connect 1 0 14 0; +#X connect 1 1 15 0; +#X connect 2 0 3 0; +#X connect 3 0 12 0; +#X connect 3 1 11 0; +#X connect 4 0 5 1; +#X connect 5 0 16 0; +#X connect 6 0 23 0; +#X connect 7 0 6 0; +#X connect 8 0 10 0; +#X connect 8 1 9 1; +#X connect 9 0 5 0; +#X connect 10 0 9 0; +#X connect 11 0 13 0; +#X connect 12 0 22 0; +#X connect 13 0 12 1; +#X connect 14 0 0 0; +#X connect 15 0 14 1; +#X connect 16 0 7 0; +#X connect 16 1 25 0; +#X connect 16 2 2 0; +#X connect 16 12 23 0; +#X connect 17 0 19 0; +#X connect 19 0 20 0; +#X connect 19 1 21 0; +#X connect 20 0 18 0; +#X connect 21 0 20 1; +#X connect 22 0 1 0; +#X connect 22 1 2 1; +#X connect 22 1 17 1; +#X connect 22 2 24 1; +#X connect 23 0 24 0; +#X connect 24 0 22 0; +#X connect 25 0 24 0; +#X connect 25 1 24 1; +#X connect 25 2 17 0; diff --git a/kick808~-help.pd b/kick808~-help.pd new file mode 100644 index 0000000..58e8d76 --- /dev/null +++ b/kick808~-help.pd @@ -0,0 +1,50 @@ +#N canvas 108 195 818 494 10; +#X obj 77 353 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X msg 8 113 trigger; +#X obj 8 91 bng 15 250 50 0 empty empty empty 17 7 0 10 -24198 -1 -1 +; +#X msg 157 290 click \$1; +#X msg 161 137 gain \$1; +#X msg 158 215 decay \$1; +#X text 33 92 <- play it; +#X text 375 435 Author: Roman Haefeli; +#X text 95 351 <- can be used to switch~ dsp off; +#X obj 365 90 cnv 15 430 180 empty empty empty 20 12 0 14 -24198 -66577 +0; +#X text 376 100 SYNOPSIS; +#X text 375 160 outlet0: signal; +#X text 375 176 outlet1: float (0/1) \, switch~ outlet; +#X text 374 208 arg1: gain (0-127) / default = 100; +#X text 373 226 arg2: decay (0-127) / default = 50; +#X text 373 244 arg3: click (0-127) / default = 50; +#X text 376 129 inlet0: accepts methods 'trigger' \, 'bang' \, 'gain' +\, 'decay' and 'click'; +#X text 375 456 Version: 2008-03-05; +#X obj 160 113 cnv 15 40 15 empty empty empty 20 12 0 14 -24198 -66577 +0; +#X floatatom 161 113 5 0 0 0 - transpo-set -; +#X obj 158 192 cnv 15 40 15 empty empty empty 20 12 0 14 -24198 -66577 +0; +#X floatatom 158 192 5 0 0 0 - transpo-set -; +#X obj 156 266 cnv 15 40 15 empty empty empty 20 12 0 14 -24198 -66577 +0; +#X floatatom 157 266 5 0 0 0 - transpo-set -; +#X text 7 33 Description: an emulation of the kickdrum from the fancy +tr808 beatmachine; +#X obj 3 1 cnv 15 800 30 empty empty synth.drum.808.kick~ 2 12 1 14 +-233017 -66577 0; +#X obj 8 329 mtl/kick808~; +#X obj 7 417 mtl/out~; +#X text 8 60 tags: synthesize~; +#X connect 1 0 26 0; +#X connect 2 0 1 0; +#X connect 3 0 26 0; +#X connect 4 0 26 0; +#X connect 5 0 26 0; +#X connect 19 0 4 0; +#X connect 21 0 5 0; +#X connect 23 0 3 0; +#X connect 26 0 27 0; +#X connect 26 0 27 1; +#X connect 26 1 0 0; diff --git a/kick808~.pd b/kick808~.pd new file mode 100644 index 0000000..777435a --- /dev/null +++ b/kick808~.pd @@ -0,0 +1,409 @@ +#N canvas 589 142 639 633 10; +#N canvas 876 339 208 203 counter 0; +#X obj 10 16 inlet; +#X obj 10 145 outlet; +#X obj 10 119 f; +#X obj 44 120 + 1; +#X obj 10 96 until; +#X obj 10 44 t b b; +#X obj 54 73 0; +#X obj 10 75 200; +#X connect 0 0 5 0; +#X connect 2 0 3 0; +#X connect 2 0 1 0; +#X connect 3 0 2 1; +#X connect 4 0 2 0; +#X connect 5 0 7 0; +#X connect 5 1 6 0; +#X connect 6 0 2 1; +#X connect 7 0 4 0; +#X restore 460 334 pd counter; +#X obj 460 312 t b f; +#X obj 163 342 line~; +#X msg 163 319 0 \, 192 5; +#X obj 146 416 *~; +#X obj 22 456 *~; +#X obj 39 359 line~; +#X obj 39 381 dbtorms~; +#X obj 254 362 osc~ 50; +#X obj 65 330 pack 0 1000; +#N canvas 1068 512 275 328 curve 0; +#N canvas 751 327 229 226 gleichung 0; +#X obj 123 85 + 1; +#X obj 78 85 * -1; +#X obj 123 12 inlet; +#X obj 16 5 inlet; +#X obj 16 68 *; +#X obj 16 47 t f f; +#X obj 16 111 *; +#X obj 16 90 t f f; +#X obj 16 137 *; +#X obj 16 166 +; +#X obj 76 135 *; +#X obj 16 24 t f f; +#X obj 16 191 outlet; +#X connect 0 0 10 1; +#X connect 1 0 8 1; +#X connect 2 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 7 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 8 0; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 9 0 12 0; +#X connect 10 0 9 1; +#X connect 11 0 5 0; +#X connect 11 1 10 0; +#X restore 31 52 pd gleichung; +#X obj 31 17 inlet; +#X obj 31 230 outlet; +#X obj 136 12 inlet; +#N canvas 750 295 229 226 gleichung 0; +#X obj 123 85 + 1; +#X obj 78 85 * -1; +#X obj 123 12 inlet; +#X obj 16 5 inlet; +#X obj 16 68 *; +#X obj 16 47 t f f; +#X obj 16 111 *; +#X obj 16 90 t f f; +#X obj 16 137 *; +#X obj 16 166 +; +#X obj 76 135 *; +#X obj 16 24 t f f; +#X obj 16 191 outlet; +#X connect 0 0 10 1; +#X connect 1 0 8 1; +#X connect 2 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 7 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 8 0; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 9 0 12 0; +#X connect 10 0 9 1; +#X connect 11 0 5 0; +#X connect 11 1 10 0; +#X restore 31 72 pd gleichung; +#N canvas 750 295 229 226 gleichung 0; +#X obj 123 85 + 1; +#X obj 78 85 * -1; +#X obj 123 12 inlet; +#X obj 16 5 inlet; +#X obj 16 68 *; +#X obj 16 47 t f f; +#X obj 16 111 *; +#X obj 16 90 t f f; +#X obj 16 137 *; +#X obj 16 166 +; +#X obj 76 135 *; +#X obj 16 24 t f f; +#X obj 16 191 outlet; +#X connect 0 0 10 1; +#X connect 1 0 8 1; +#X connect 2 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 7 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 8 0; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 9 0 12 0; +#X connect 10 0 9 1; +#X connect 11 0 5 0; +#X connect 11 1 10 0; +#X restore 31 92 pd gleichung; +#N canvas 750 295 229 226 gleichung 0; +#X obj 123 85 + 1; +#X obj 78 85 * -1; +#X obj 123 12 inlet; +#X obj 16 5 inlet; +#X obj 16 68 *; +#X obj 16 47 t f f; +#X obj 16 111 *; +#X obj 16 90 t f f; +#X obj 16 137 *; +#X obj 16 166 +; +#X obj 76 135 *; +#X obj 16 24 t f f; +#X obj 16 191 outlet; +#X connect 0 0 10 1; +#X connect 1 0 8 1; +#X connect 2 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 7 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 8 0; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 9 0 12 0; +#X connect 10 0 9 1; +#X connect 11 0 5 0; +#X connect 11 1 10 0; +#X restore 31 112 pd gleichung; +#N canvas 750 295 229 226 gleichung 0; +#X obj 123 85 + 1; +#X obj 78 85 * -1; +#X obj 123 12 inlet; +#X obj 16 5 inlet; +#X obj 16 68 *; +#X obj 16 47 t f f; +#X obj 16 111 *; +#X obj 16 90 t f f; +#X obj 16 137 *; +#X obj 16 166 +; +#X obj 76 135 *; +#X obj 16 24 t f f; +#X obj 16 191 outlet; +#X connect 0 0 10 1; +#X connect 1 0 8 1; +#X connect 2 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 7 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 8 0; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 9 0 12 0; +#X connect 10 0 9 1; +#X connect 11 0 5 0; +#X connect 11 1 10 0; +#X restore 31 132 pd gleichung; +#N canvas 751 327 229 226 gleichung 0; +#X obj 123 85 + 1; +#X obj 78 85 * -1; +#X obj 123 12 inlet; +#X obj 16 5 inlet; +#X obj 16 68 *; +#X obj 16 47 t f f; +#X obj 16 111 *; +#X obj 16 90 t f f; +#X obj 16 137 *; +#X obj 16 166 +; +#X obj 76 135 *; +#X obj 16 24 t f f; +#X obj 16 191 outlet; +#X connect 0 0 10 1; +#X connect 1 0 8 1; +#X connect 2 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 7 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 8 0; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 9 0 12 0; +#X connect 10 0 9 1; +#X connect 11 0 5 0; +#X connect 11 1 10 0; +#X restore 31 152 pd gleichung; +#N canvas 750 295 229 226 gleichung 0; +#X obj 123 85 + 1; +#X obj 78 85 * -1; +#X obj 123 12 inlet; +#X obj 16 5 inlet; +#X obj 16 68 *; +#X obj 16 47 t f f; +#X obj 16 111 *; +#X obj 16 90 t f f; +#X obj 16 137 *; +#X obj 16 166 +; +#X obj 76 135 *; +#X obj 16 24 t f f; +#X obj 16 191 outlet; +#X connect 0 0 10 1; +#X connect 1 0 8 1; +#X connect 2 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 7 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 8 0; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 9 0 12 0; +#X connect 10 0 9 1; +#X connect 11 0 5 0; +#X connect 11 1 10 0; +#X restore 31 172 pd gleichung; +#N canvas 750 295 229 226 gleichung 0; +#X obj 123 85 + 1; +#X obj 78 85 * -1; +#X obj 123 12 inlet; +#X obj 16 5 inlet; +#X obj 16 68 *; +#X obj 16 47 t f f; +#X obj 16 111 *; +#X obj 16 90 t f f; +#X obj 16 137 *; +#X obj 16 166 +; +#X obj 76 135 *; +#X obj 16 24 t f f; +#X obj 16 191 outlet; +#X connect 0 0 10 1; +#X connect 1 0 8 1; +#X connect 2 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 7 0; +#X connect 5 0 4 0; +#X connect 5 1 4 1; +#X connect 6 0 8 0; +#X connect 7 0 6 0; +#X connect 7 1 6 1; +#X connect 8 0 9 0; +#X connect 9 0 12 0; +#X connect 10 0 9 1; +#X connect 11 0 5 0; +#X connect 11 1 10 0; +#X restore 31 192 pd gleichung; +#X obj 136 35 + 0.1; +#X obj 136 58 * 0.6; +#X connect 0 0 4 0; +#X connect 1 0 0 0; +#X connect 3 0 11 0; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 7 0 8 0; +#X connect 8 0 9 0; +#X connect 9 0 10 0; +#X connect 10 0 2 0; +#X connect 11 0 12 0; +#X connect 12 0 0 1; +#X connect 12 0 4 1; +#X connect 12 0 5 1; +#X connect 12 0 6 1; +#X connect 12 0 7 1; +#X connect 12 0 8 1; +#X connect 12 0 9 1; +#X connect 12 0 10 1; +#X restore 460 430 pd curve; +#X obj 460 407 / 39; +#X obj 459 269 t f f; +#X obj 459 290 *; +#X obj 254 340 line~; +#X obj 65 309 del 3; +#X obj 460 385 moses 40; +#X obj 460 358 t f f; +#X obj 460 473 table \$0-attack 39; +#X obj 460 453 tabwrite \$0-attack; +#X obj 21 238 tabplay~ \$0-attack; +#X obj 298 341 f 0.58; +#X msg 254 318 500 \, 50 5; +#X obj 21 188 t b; +#X obj 164 215 *; +#X obj 164 237 rmstodb; +#X obj 252 259 exp; +#X obj 252 238 + 5.1; +#X obj 252 216 * 3.2; +#X obj 35 315 f; +#X obj 21 9 inlet; +#X obj 353 457 del; +#X obj 323 436 t b b; +#X obj 353 497 0; +#X obj 323 498 1; +#X obj 323 526 t a; +#X obj 364 565 switch~; +#X obj 323 591 outlet; +#X obj 369 435 + 3; +#X obj 22 565 outlet~; +#X text 451 509 Author: Roman Haefeli; +#X obj 164 194 t f f; +#X text 372 592 switch~; +#X obj 459 247 / 127; +#X obj 252 194 / 127; +#X obj 164 171 / 127; +#X obj 146 373 expr~ $v1 > 38; +#X text 450 527 Version: 2008-03-05; +#X obj 21 39 route bang trigger gain decay click; +#X obj 309 48 loadbang; +#X obj 309 78 tof/argument 1 100; +#X obj 323 103 tof/argument 2 50; +#X obj 337 127 tof/argument 3 50; +#X connect 0 0 17 0; +#X connect 1 0 0 0; +#X connect 1 1 10 1; +#X connect 2 0 46 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 39 0; +#X connect 6 0 7 0; +#X connect 7 0 5 1; +#X connect 8 0 4 1; +#X connect 9 0 6 0; +#X connect 10 0 19 0; +#X connect 11 0 10 0; +#X connect 12 0 13 0; +#X connect 12 1 13 1; +#X connect 13 0 1 0; +#X connect 14 0 8 0; +#X connect 15 0 9 0; +#X connect 16 0 11 0; +#X connect 17 0 16 0; +#X connect 17 1 19 1; +#X connect 20 0 5 0; +#X connect 21 0 8 1; +#X connect 22 0 14 0; +#X connect 23 0 20 0; +#X connect 23 0 15 0; +#X connect 23 0 3 0; +#X connect 23 0 22 0; +#X connect 23 0 21 0; +#X connect 23 0 29 0; +#X connect 23 0 32 0; +#X connect 24 0 25 0; +#X connect 25 0 29 1; +#X connect 26 0 9 1; +#X connect 26 0 38 0; +#X connect 27 0 26 0; +#X connect 28 0 27 0; +#X connect 29 0 6 0; +#X connect 30 0 48 0; +#X connect 31 0 33 0; +#X connect 32 0 34 0; +#X connect 32 1 31 0; +#X connect 33 0 35 0; +#X connect 34 0 35 0; +#X connect 35 0 36 0; +#X connect 35 0 37 0; +#X connect 38 0 31 1; +#X connect 41 0 24 0; +#X connect 41 1 24 1; +#X connect 43 0 12 0; +#X connect 44 0 28 0; +#X connect 45 0 41 0; +#X connect 46 0 4 0; +#X connect 48 0 23 0; +#X connect 48 1 23 0; +#X connect 48 2 45 0; +#X connect 48 3 44 0; +#X connect 48 4 43 0; +#X connect 49 0 50 0; +#X connect 49 0 51 0; +#X connect 49 0 52 0; +#X connect 50 0 45 0; +#X connect 51 0 44 0; +#X connect 52 0 43 0; diff --git a/lightFreqToWave-help.pd b/lightFreqToWave-help.pd new file mode 100644 index 0000000..ef3e3bf --- /dev/null +++ b/lightFreqToWave-help.pd @@ -0,0 +1,8 @@ +#N canvas 0 0 353 189 10; +#X floatatom 117 126 15 0 0 0 - - -; +#X floatatom 117 77 15 0 0 0 - - -; +#X obj 117 100 mtl/lightFreqToWave; +#X text 29 10 Description: Frequency (Hz) to wave length (m); +#X text 30 26 tags: conversion; +#X connect 1 0 2 0; +#X connect 2 0 0 0; diff --git a/lightFreqToWave.pd b/lightFreqToWave.pd new file mode 100644 index 0000000..7253495 --- /dev/null +++ b/lightFreqToWave.pd @@ -0,0 +1,7 @@ +#N canvas 0 0 409 345 10; +#X obj 88 81 inlet; +#X obj 95 248 outlet; +#X obj 94 187 / 3e+08; +#X text 60 39 Light : Frequency (Hz) to wave length (m); +#X connect 0 0 2 0; +#X connect 2 0 1 0; diff --git a/lightWaveToFreq-help.pd b/lightWaveToFreq-help.pd new file mode 100644 index 0000000..bc98daa --- /dev/null +++ b/lightWaveToFreq-help.pd @@ -0,0 +1,8 @@ +#N canvas 0 0 361 190 10; +#X floatatom 104 84 5 0 0 0 - - -; +#X floatatom 104 131 5 0 0 0 - - -; +#X obj 104 106 mtl/lightWaveToFreq; +#X text 27 14 Description: Wave length (m) to frequency (Hz); +#X text 27 32 tags: conversion; +#X connect 0 0 2 0; +#X connect 2 0 1 0; diff --git a/lightWaveToFreq.pd b/lightWaveToFreq.pd new file mode 100644 index 0000000..665ba03 --- /dev/null +++ b/lightWaveToFreq.pd @@ -0,0 +1,9 @@ +#N canvas 0 0 450 300 10; +#X obj 125 70 inlet; +#X obj 131 176 /; +#X msg 132 127 3e+08 \$1; +#X obj 132 237 outlet; +#X text 82 26 Light : Wave length (m) to frequency (Hz); +#X connect 0 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 1 0; diff --git a/lightning~-help.pd b/lightning~-help.pd new file mode 100644 index 0000000..f5dd551 --- /dev/null +++ b/lightning~-help.pd @@ -0,0 +1,27 @@ +#N canvas 1 57 354 321 10; +#X obj 22 77 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 103 143 *~ 0.5; +#X obj 61 143 *~ 0.5; +#X obj 250 169 *~ 0.5; +#X obj 208 168 *~ 0.5; +#X obj 168 124 delay 10; +#X text 19 26 Comment: Taken from Andy Farnell's work.; +#X text 20 8 Description: Generates some lightning.; +#X obj 168 147 mtl/lightning~; +#X obj 22 122 mtl/lightning~; +#X obj 23 241 mtl/out~; +#X text 22 45 tags: synthesize~; +#X connect 0 0 5 0; +#X connect 0 0 9 0; +#X connect 1 0 10 0; +#X connect 2 0 10 0; +#X connect 3 0 10 1; +#X connect 4 0 10 1; +#X connect 5 0 8 0; +#X connect 8 0 10 1; +#X connect 8 1 4 0; +#X connect 8 2 3 0; +#X connect 9 0 10 0; +#X connect 9 1 2 0; +#X connect 9 2 1 0; diff --git a/lightning~.pd b/lightning~.pd new file mode 100644 index 0000000..e1130f6 --- /dev/null +++ b/lightning~.pd @@ -0,0 +1,155 @@ +#N canvas 582 98 549 496 10; +#N canvas 439 84 987 658 lightning 1; +#X obj 10 426 noise~; +#X obj 96 478 noise~; +#X obj 81 512 *~; +#X obj 80 562 bp~ 333 4; +#X obj 9 449 lop~ 3; +#X obj 81 535 clip~ -1 1; +#X obj 61 380 line; +#X obj 61 426 + 3; +#X obj 61 405 * 30; +#X obj 10 473 *~ 80; +#X obj 126 377 line; +#X obj 79 586 *~; +#X obj 399 334 noise~; +#X obj 561 454 bp~ 40 3; +#X obj 489 454 bp~ 360 5; +#X obj 489 480 *~ 2.5; +#X obj 302 483 *~ 2; +#X obj 420 481 *~ 1.2; +#X obj 419 454 bp~ 235 7; +#X obj 562 478 *~ 10; +#X obj 478 521 bp~ 2500 0.5; +#X obj 451 360 *~ 10; +#X obj 434 381 *~; +#X obj 435 402 clip~ -0.3 0.3; +#X obj 336 455 bp~ 3600 8; +#X obj 252 453 bp~ 2300 7; +#X obj 562 424 * 80; +#X obj 480 427 * 720; +#X obj 421 430 * 480; +#X obj 284 429 * 4600; +#X obj 198 426 * 3600; +#X obj 367 431 * 7200; +#X obj 531 289 /; +#X msg 524 263 1; +#X obj 530 239 t b f; +#X msg 603 72 bang; +#X obj 261 364 / 20; +#X obj 477 574 *~ 0.1; +#X msg 61 353 1 \, 0 600; +#X msg 126 353 1 \, 0 6000; +#X obj 261 386 + 0.01; +#X obj 79 608 *~ 0.9; +#X obj 162 454 bp~ 4700 7; +#X obj 690 480 biquad~; +#X msg 690 433 80 20; +#X obj 692 528 lop~ 200; +#X obj 691 504 hip~ 5; +#X obj 639 453 noise~; +#X obj 689 414 loadbang; +#X obj 692 581 *~; +#X obj 693 551 *~ 20; +#X obj 758 469 *~; +#X obj 758 498 clip~ 0 0.77; +#X obj 758 441 ead~ 2000 20000; +#X obj 108 321 del 200; +#X obj 424 17 inlet; +#X obj 478 701 outlet~; +#X text 797 667 ajf2006; +#X text 61 49 very very frightening ...; +#X text 60 75 Galileo \, Figaro....; +#X obj 75 634 outlet~; +#X obj 693 672 outlet~; +#X obj 758 413 del 100; +#X obj 452 333 ead~ 0 5000; +#X msg 530 180 2; +#X obj 687 454 ggee/bandpass; +#X connect 0 0 4 0; +#X connect 1 0 2 1; +#X connect 2 0 5 0; +#X connect 3 0 11 0; +#X connect 4 0 9 0; +#X connect 5 0 3 0; +#X connect 6 0 8 0; +#X connect 7 0 4 1; +#X connect 8 0 7 0; +#X connect 9 0 2 0; +#X connect 10 0 11 1; +#X connect 11 0 41 0; +#X connect 12 0 22 0; +#X connect 13 0 19 0; +#X connect 14 0 15 0; +#X connect 15 0 20 0; +#X connect 16 0 20 0; +#X connect 17 0 20 0; +#X connect 18 0 17 0; +#X connect 19 0 20 0; +#X connect 20 0 37 0; +#X connect 21 0 22 1; +#X connect 22 0 23 0; +#X connect 23 0 13 0; +#X connect 23 0 14 0; +#X connect 23 0 18 0; +#X connect 23 0 24 0; +#X connect 23 0 25 0; +#X connect 23 0 42 0; +#X connect 24 0 16 0; +#X connect 25 0 16 0; +#X connect 26 0 13 1; +#X connect 27 0 14 1; +#X connect 28 0 18 1; +#X connect 29 0 25 1; +#X connect 30 0 42 1; +#X connect 31 0 24 1; +#X connect 33 0 32 0; +#X connect 34 0 33 0; +#X connect 34 0 63 0; +#X connect 34 1 32 1; +#X connect 35 0 64 0; +#X connect 35 0 62 0; +#X connect 36 0 40 0; +#X connect 37 0 56 0; +#X connect 38 0 6 0; +#X connect 39 0 10 0; +#X connect 40 0 26 0; +#X connect 40 0 27 0; +#X connect 40 0 28 0; +#X connect 40 0 31 0; +#X connect 40 0 29 0; +#X connect 40 0 30 0; +#X connect 41 0 60 0; +#X connect 42 0 16 0; +#X connect 43 0 46 0; +#X connect 44 0 65 0; +#X connect 45 0 50 0; +#X connect 46 0 45 0; +#X connect 47 0 43 0; +#X connect 48 0 44 0; +#X connect 49 0 61 0; +#X connect 50 0 49 0; +#X connect 51 0 52 0; +#X connect 52 0 49 1; +#X connect 53 0 51 0; +#X connect 53 0 51 1; +#X connect 54 0 38 0; +#X connect 54 0 39 0; +#X connect 55 0 35 0; +#X connect 55 0 54 0; +#X connect 62 0 53 0; +#X connect 63 0 21 0; +#X connect 64 0 34 0; +#X connect 64 0 36 0; +#X connect 65 0 43 0; +#X restore 323 262 pd lightning; +#X obj 418 359 outlet~; +#X msg 315 228 40; +#X obj 350 353 outlet~; +#X obj 272 361 outlet~; +#X obj 308 176 inlet; +#X connect 0 0 4 0; +#X connect 0 1 3 0; +#X connect 0 2 1 0; +#X connect 2 0 0 0; +#X connect 5 0 2 0; diff --git a/limit~-help.pd b/limit~-help.pd new file mode 100644 index 0000000..28e9232 --- /dev/null +++ b/limit~-help.pd @@ -0,0 +1,94 @@ +#N canvas 526 281 454 286 10; +#X floatatom 65 144 0 0 0 2 left - -; +#X floatatom 151 144 0 0 0 2 right - -; +#X floatatom 106 127 0 0 0 2 both - -; +#N canvas 59 76 600 400 generator~ 0; +#X obj 86 49 inlet; +#X obj 252 54 inlet; +#X obj 112 229 outlet~; +#X obj 112 185 *~; +#X obj 151 185 *~; +#X obj 122 128 osc~ 440; +#X obj 151 145 osc~ 689.062; +#X obj 112 163 line~; +#X obj 167 162 line~; +#X msg 167 128 \$1 100; +#X msg 112 111 \$1 100; +#X obj 86 97 f; +#X obj 252 98 f; +#X obj 154 229 outlet~; +#X obj 86 72 dbtorms; +#X obj 252 78 dbtorms; +#X connect 0 0 14 0; +#X connect 1 0 15 0; +#X connect 3 0 2 0; +#X connect 4 0 13 0; +#X connect 5 0 3 1; +#X connect 6 0 4 0; +#X connect 7 0 3 0; +#X connect 8 0 4 1; +#X connect 9 0 8 0; +#X connect 10 0 7 0; +#X connect 11 0 10 0; +#X connect 12 0 9 0; +#X connect 14 0 11 0; +#X connect 15 0 12 0; +#X restore 65 166 pd generator~; +#X floatatom 240 141 0 0 0 2 left - -; +#X floatatom 326 141 0 0 0 2 right - -; +#X floatatom 282 124 0 0 0 2 both - -; +#N canvas 59 76 600 400 generator~ 0; +#X obj 86 49 inlet; +#X obj 252 54 inlet; +#X obj 112 229 outlet~; +#X obj 112 185 *~; +#X obj 151 185 *~; +#X obj 122 128 osc~ 440; +#X obj 151 145 osc~ 689.062; +#X obj 112 163 line~; +#X obj 167 162 line~; +#X msg 167 128 \$1 100; +#X msg 112 111 \$1 100; +#X obj 86 97 f; +#X obj 252 98 f; +#X obj 154 229 outlet~; +#X obj 86 72 dbtorms; +#X obj 252 78 dbtorms; +#X connect 0 0 14 0; +#X connect 1 0 15 0; +#X connect 3 0 2 0; +#X connect 4 0 13 0; +#X connect 5 0 3 1; +#X connect 6 0 4 0; +#X connect 7 0 3 0; +#X connect 8 0 4 1; +#X connect 9 0 8 0; +#X connect 10 0 7 0; +#X connect 11 0 10 0; +#X connect 12 0 9 0; +#X connect 14 0 11 0; +#X connect 15 0 12 0; +#X restore 240 163 pd generator~; +#X obj 66 191 mtl/limit~; +#X text 61 82 with a limiter~; +#X text 235 83 without a limiter~; +#X obj 14 7 cnv 15 380 60 empty empty empty 20 12 0 14 -233017 -66577 +0; +#X text 20 9 description: a limiter (10ms buffer).; +#X text 21 47 tags: mix~; +#X obj 66 215 mtl/out~; +#X obj 239 215 mtl/out~; +#X connect 0 0 3 0; +#X connect 1 0 3 1; +#X connect 2 0 0 0; +#X connect 2 0 1 0; +#X connect 3 0 8 0; +#X connect 3 1 8 1; +#X connect 4 0 7 0; +#X connect 5 0 7 1; +#X connect 6 0 4 0; +#X connect 6 0 5 0; +#X connect 7 0 15 0; +#X connect 7 1 15 1; +#X connect 8 0 14 0; +#X connect 8 1 14 1; diff --git a/limit~.pd b/limit~.pd new file mode 100644 index 0000000..a300f0e --- /dev/null +++ b/limit~.pd @@ -0,0 +1,31 @@ +#N canvas 207 199 657 483 10; +#X obj 78 59 inlet~ left; +#X obj 179 63 inlet~ right; +#X obj 79 122 outlet~ left; +#X obj 182 122 outlet~ right; +#X text 27 25 very nice limiter from zexy with 10 ms buffer; +#N canvas 788 221 454 439 limiter~ 0; +#X obj 78 168 *~; +#X obj 109 168 *~; +#X obj 79 63 inlet~ left; +#X obj 179 63 inlet~ right; +#X obj 77 195 outlet~ left; +#X obj 180 195 outlet~ right; +#X obj 95 118 zexy/limiter~ 10 1; +#X obj 147 149 zexy/z~ 90; +#X obj 78 148 zexy/z~ 90; +#X connect 0 0 4 0; +#X connect 1 0 5 0; +#X connect 2 0 6 0; +#X connect 2 0 8 0; +#X connect 3 0 6 1; +#X connect 3 0 7 0; +#X connect 6 0 1 0; +#X connect 6 0 0 1; +#X connect 7 0 1 1; +#X connect 8 0 0 0; +#X restore 79 85 pd limiter~; +#X connect 0 0 5 0; +#X connect 1 0 5 1; +#X connect 5 0 2 0; +#X connect 5 1 3 0; diff --git a/listBoolToPos-help.pd b/listBoolToPos-help.pd new file mode 100644 index 0000000..75d7cb9 --- /dev/null +++ b/listBoolToPos-help.pd @@ -0,0 +1,16 @@ +#N canvas 402 297 520 293 10; +#X msg 62 144 1 0 1 0 1 1 0 1 0 1 0 1; +#X obj 61 118 loadbang; +#X msg 62 223 1 3 5 6 8 10 12; +#X text 39 26 Description: Converts a list of boolean values to a list +containing the index of values that are TRUE (1) in the first list +; +#X msg 185 116 0 0 0 0 1 1 1 1; +#X obj 62 173 listBoolToPos; +#X obj 62 198 cyclone/prepend set; +#X text 44 75 tags: lists; +#X connect 0 0 5 0; +#X connect 1 0 0 0; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 6 0 2 0; diff --git a/listBoolToPos.pd b/listBoolToPos.pd new file mode 100644 index 0000000..e115ffd --- /dev/null +++ b/listBoolToPos.pd @@ -0,0 +1,20 @@ +#N canvas 0 0 462 441 10; +#X obj 238 72 inlet; +#X obj 243 205 == 1; +#X obj 279 256 f; +#X obj 238 114 t b l b; +#X obj 209 327 outlet; +#X obj 253 234 sel 1; +#X obj 200 291 ./listBuild; +#X obj 255 144 tof/listUnfold; +#X obj 332 212 + 1; +#X connect 0 0 3 0; +#X connect 1 0 5 0; +#X connect 2 0 6 1; +#X connect 3 0 6 0; +#X connect 3 1 7 0; +#X connect 5 0 2 0; +#X connect 6 0 4 0; +#X connect 7 0 1 0; +#X connect 7 1 8 0; +#X connect 8 0 2 1; diff --git a/listBuild-help.pd b/listBuild-help.pd new file mode 100644 index 0000000..6cac545 --- /dev/null +++ b/listBuild-help.pd @@ -0,0 +1,52 @@ +#N canvas 1178 0 766 692 12; +#X floatatom 345 114 5 0 0 0 - - -; +#X obj 182 138 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 147 375 print result; +#X text 395 115 Data; +#X msg 343 169 symbol foo; +#X msg 347 200 symbol glue; +#X text 454 180 works with symbols too; +#X obj 343 258 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 368 258 Bang to clear current list; +#X text 35 112 Bang to output and clear; +#X floatatom 333 374 5 0 0 0 - - -; +#X text 390 374 current length of list being built; +#X text 61 30 Description: Builds a list with the incomming data. New +data is either append or prepended to the list being built.; +#X text 326 291 Appends data by default.; +#X floatatom 343 416 5 0 0 0 - - -; +#X obj 180 440 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 145 677 print result; +#X text 393 417 Data; +#X text 486 475 works with symbols too; +#X obj 410 562 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 437 559 Bang to clear current list; +#X text 33 414 Bang to output and clear; +#X floatatom 354 663 5 0 0 0 - - -; +#X text 357 682 current length of list being built; +#X text 389 591 Can also prepend.; +#X msg 398 470 symbol a; +#X msg 402 501 symbol b; +#X msg 415 529 symbol c; +#X obj 202 290 mtl/listBuild; +#X text 70 69 tags: lists; +#X obj 200 592 mtl/listBuild prepend; +#X connect 0 0 28 1; +#X connect 1 0 28 0; +#X connect 4 0 28 1; +#X connect 5 0 28 1; +#X connect 7 0 28 1; +#X connect 14 0 30 1; +#X connect 15 0 30 0; +#X connect 19 0 30 1; +#X connect 25 0 30 1; +#X connect 26 0 30 1; +#X connect 27 0 30 1; +#X connect 28 0 2 0; +#X connect 28 1 10 0; +#X connect 30 0 16 0; +#X connect 30 1 22 0; diff --git a/listBuild.pd b/listBuild.pd new file mode 100644 index 0000000..253ac50 --- /dev/null +++ b/listBuild.pd @@ -0,0 +1,48 @@ +#N canvas 0 0 633 500 10; +#X obj 174 313 t l l; +#X obj 135 381 list; +#X obj 148 445 outlet; +#X obj 75 87 inlet; +#X obj 347 254 f; +#X obj 337 313 t f f; +#X obj 337 283 + 1; +#X msg 395 215 0; +#X obj 351 455 outlet; +#X obj 334 31 inlet clear; +#X obj 307 77 route bang; +#X obj 358 107 t b b b; +#X obj 174 277 list \$1; +#X obj 174 248 list; +#X obj 109 202 t b b b b b; +#X obj 225 177 t b b a; +#X obj 87 125 route bang clear; +#X obj 134 151 t b b b; +#X connect 0 0 1 1; +#X connect 0 1 13 1; +#X connect 1 0 2 0; +#X connect 3 0 16 0; +#X connect 4 0 6 0; +#X connect 5 0 8 0; +#X connect 5 1 4 1; +#X connect 6 0 5 0; +#X connect 7 0 4 1; +#X connect 9 0 10 0; +#X connect 10 0 11 0; +#X connect 10 1 15 0; +#X connect 11 0 13 1; +#X connect 11 1 1 1; +#X connect 11 2 7 0; +#X connect 12 0 0 0; +#X connect 13 0 12 0; +#X connect 14 0 1 1; +#X connect 14 1 1 0; +#X connect 14 2 13 1; +#X connect 14 3 7 0; +#X connect 15 0 4 0; +#X connect 15 1 13 0; +#X connect 15 2 12 1; +#X connect 16 0 14 0; +#X connect 16 1 17 0; +#X connect 17 0 1 1; +#X connect 17 1 13 1; +#X connect 17 2 7 0; diff --git a/listCutUp-help.pd b/listCutUp-help.pd new file mode 100644 index 0000000..a775c64 --- /dev/null +++ b/listCutUp-help.pd @@ -0,0 +1,15 @@ +#N canvas 0 0 648 276 10; +#X msg 48 125 1 2 3 4 5 6; +#X obj 113 239 print; +#X msg 191 130 list a b c d e f g; +#X text 37 11 Description: Cuts up a list into sublists. Leftovers +are also output.; +#X text 188 95 Note that with this second list \, the leftover 'g' +is output by itself.; +#X text 294 184 Argument_1: Size of cuts.; +#X text 292 168 Inlet_1: Size if cuts.; +#X obj 112 185 listCutUp 3; +#X text 44 49 tags: lists; +#X connect 0 0 7 0; +#X connect 2 0 7 0; +#X connect 7 0 1 0; diff --git a/listCutUp.pd b/listCutUp.pd new file mode 100644 index 0000000..0b561a1 --- /dev/null +++ b/listCutUp.pd @@ -0,0 +1,13 @@ +#N canvas 0 0 450 300 10; +#X obj 67 71 inlet; +#X obj 99 260 outlet; +#X obj 207 74 inlet; +#X obj 73 169 zexy/repack \$1; +#X obj 90 114 t b a; +#X obj 79 208 route bang; +#X connect 0 0 4 0; +#X connect 2 0 3 1; +#X connect 3 0 5 0; +#X connect 4 0 3 0; +#X connect 4 1 3 0; +#X connect 5 1 1 0; diff --git a/listDelay-help.pd b/listDelay-help.pd new file mode 100644 index 0000000..e7ec639 --- /dev/null +++ b/listDelay-help.pd @@ -0,0 +1,19 @@ +#N canvas 358 242 458 308 10; +#X obj 127 210 print; +#X msg 70 81 4 5 6; +#X obj 235 76 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 256 75 stop; +#X floatatom 254 112 5 0 0 0 - - -; +#X text 291 113 delay; +#X msg 115 82 list a b c; +#X text 72 11 Description: Delays an incomming list.; +#X obj 127 157 ./listDelay 1000; +#X msg 131 117 stop; +#X text 76 32 tags: lists timing; +#X connect 1 0 8 0; +#X connect 2 0 8 1; +#X connect 4 0 8 1; +#X connect 6 0 8 0; +#X connect 8 0 0 0; +#X connect 9 0 8 0; diff --git a/listDelay.pd b/listDelay.pd new file mode 100644 index 0000000..00d5ec9 --- /dev/null +++ b/listDelay.pd @@ -0,0 +1,18 @@ +#N canvas 0 0 458 308 10; +#X obj 51 15 inlet; +#X obj 96 196 list; +#X obj 97 113 t b a; +#X obj 238 32 inlet; +#X obj 200 104 delay \$1; +#X obj 100 241 outlet; +#X obj 246 65 route bang; +#X msg 188 69 stop; +#X connect 0 0 2 0; +#X connect 1 0 5 0; +#X connect 2 0 4 0; +#X connect 2 1 1 1; +#X connect 3 0 6 0; +#X connect 4 0 1 0; +#X connect 6 0 7 0; +#X connect 6 1 4 1; +#X connect 7 0 4 0; diff --git a/listJump-help.pd b/listJump-help.pd new file mode 100644 index 0000000..1a9e35e --- /dev/null +++ b/listJump-help.pd @@ -0,0 +1,34 @@ +#N canvas 756 363 681 405 10; +#X msg 33 221 0 4 8 0 4 8 0 4 8 0 4 8 0 4 8; +#X floatatom 126 134 5 0 0 0 - - -; +#X floatatom 79 124 5 0 0 0 - - -; +#X text 293 125 It is used for building chords out of a scale.; +#X msg 304 196 0 2 4 5 7 9 11; +#X msg 304 319 0 0 0 0; +#X floatatom 405 226 5 0 0 0 - - -; +#X msg 33 101 0 1 2 3 4 5 6 7 8 9 10 11; +#X obj 304 170 t b f; +#X floatatom 302 148 5 0 0 0 - - -; +#X text 414 195 Major scale; +#X text 448 228 Number of notes in each chord; +#X text 378 152 Interval between each note; +#X text 22 7 Description: Jumps through the elements of a list \, giving +every n element (jumping over some \, if necessary) and a total of +up to m elements; +#X obj 33 196 cyclone/prepend set; +#X obj 302 282 cyclone/prepend set; +#X obj 33 154 mtl/listJump 2 4; +#X text 31 66 tags: lists musical; +#X obj 303 253 mtl/listJump 2 4; +#X connect 1 0 16 2; +#X connect 2 0 16 1; +#X connect 4 0 18 0; +#X connect 6 0 18 2; +#X connect 7 0 16 0; +#X connect 8 0 4 0; +#X connect 8 1 18 1; +#X connect 9 0 8 0; +#X connect 14 0 0 0; +#X connect 15 0 5 0; +#X connect 16 0 14 0; +#X connect 18 0 15 0; diff --git a/listJump.pd b/listJump.pd new file mode 100644 index 0000000..37afacf --- /dev/null +++ b/listJump.pd @@ -0,0 +1,56 @@ +#N canvas 37 86 642 617 10; +#X obj 139 32 inlet; +#X obj 105 554 outlet; +#X obj 293 128 list append; +#X obj 505 70 inlet; +#X obj 178 264 list split 1; +#X text 552 71 number of elements to keep; +#X obj 395 354 + 1; +#X obj 275 297 t a b; +#X obj 108 85 t b a b; +#X obj 155 370 spigot; +#X obj 220 455 t f f; +#X obj 204 25 inlet; +#X text 144 11 list; +#X text 299 61 output every n items; +#X text 518 167 for m items; +#X text 228 185 formerly [list-rot]; +#X msg 393 310 0; +#X obj 357 353 f 0; +#X obj 360 389 <; +#X text 392 390 from 0 to n-1; +#X obj 235 99 expr 0-$f1; +#X text 277 82 Needs to be negative \, it seems; +#X obj 291 38 tof/argument 1 2; +#X obj 516 214 tof/argument 2 1; +#X obj 196 215 cyclone/zl rot; +#X obj 103 527 ./listBuild; +#X obj 468 14 loadbang; +#X obj 472 40 t b b; +#X connect 0 0 8 0; +#X connect 2 0 24 0; +#X connect 3 0 18 1; +#X connect 4 0 9 0; +#X connect 4 1 7 0; +#X connect 6 0 17 1; +#X connect 7 0 2 1; +#X connect 7 1 17 0; +#X connect 8 0 25 0; +#X connect 8 1 4 0; +#X connect 8 2 16 0; +#X connect 9 0 10 0; +#X connect 10 0 2 0; +#X connect 10 1 25 1; +#X connect 11 0 20 0; +#X connect 16 0 17 1; +#X connect 17 0 6 0; +#X connect 17 0 18 0; +#X connect 18 0 9 1; +#X connect 20 0 24 1; +#X connect 22 0 20 0; +#X connect 23 0 18 1; +#X connect 24 0 4 0; +#X connect 25 0 1 0; +#X connect 26 0 27 0; +#X connect 27 0 22 0; +#X connect 27 1 23 0; diff --git a/listOp-help.pd b/listOp-help.pd new file mode 100644 index 0000000..dd17ad1 --- /dev/null +++ b/listOp-help.pd @@ -0,0 +1,25 @@ +#N canvas 364 465 756 308 10; +#X msg 59 96 2 6 3; +#X obj 134 157 * 2; +#X obj 59 229 print RESULT; +#X msg 206 93 list foo bar; +#X obj 204 210 print SYMBOLS; +#X msg 436 98 1 2 3; +#X obj 434 215 print no_op; +#X text 60 20 Description: Executes an operation on every element of +a list.; +#X text 69 61 tags: lists math; +#X obj 434 158 mtl/listOp; +#X obj 59 155 mtl/listOp; +#X obj 203 153 mtl/listOp; +#X obj 279 155 zexy/makesymbol tube_%s; +#X connect 0 0 10 0; +#X connect 1 0 10 1; +#X connect 3 0 11 0; +#X connect 5 0 9 0; +#X connect 9 0 6 0; +#X connect 10 0 2 0; +#X connect 10 1 1 0; +#X connect 11 0 4 0; +#X connect 11 1 12 0; +#X connect 12 0 11 1; diff --git a/listOp.pd b/listOp.pd new file mode 100644 index 0000000..2237547 --- /dev/null +++ b/listOp.pd @@ -0,0 +1,32 @@ +#N canvas 187 254 739 514 10; +#X msg 303 287 list; +#X obj 110 42 inlet; +#X obj 468 457 outlet; +#X obj 492 80 inlet; +#X obj 122 457 outlet; +#X obj 208 317 list prepend; +#X msg 177 250 1; +#X msg 117 278 0; +#X obj 122 431 list; +#X obj 110 399 route bang; +#X obj 90 123 t b b a b b a; +#X obj 110 375 zexy/demultiplex 0 1; +#X obj 475 219 zexy/drip; +#X connect 0 0 5 1; +#X connect 1 0 10 0; +#X connect 3 0 5 0; +#X connect 5 0 11 0; +#X connect 6 0 11 1; +#X connect 7 0 11 1; +#X connect 8 0 4 0; +#X connect 9 0 8 0; +#X connect 9 1 4 0; +#X connect 10 0 5 0; +#X connect 10 1 7 0; +#X connect 10 2 12 0; +#X connect 10 3 0 0; +#X connect 10 4 6 0; +#X connect 10 5 8 1; +#X connect 11 0 9 0; +#X connect 11 1 5 1; +#X connect 12 0 2 0; diff --git a/love.txt b/love.txt new file mode 100644 index 0000000..532f5ed --- /dev/null +++ b/love.txt @@ -0,0 +1,148 @@ +abs~ control~ +boids/boids2d behavior +boids/boids3d behavior +choice behavior +creb/dist~ fx~ +creb/ead~ control~ +creb/ear~ control~ +creb/fdn~ fx~ +cyclone/active patch +cyclone/Append lists symbols routing +cyclone/Borax midi +cyclone/Bucket lists routing +cyclone/capture info data +cyclone/Clip lists +cyclone/coll data file +cyclone/curve~ control~ +cyclone/cycle routing +cyclone/decide random +cyclone/delay~ fx~ +cyclone/drunk random +cyclone/funnel routing +cyclone/Histo data +cyclone/match lists +cyclone/midiformat midi +cyclone/midiparse midi +cyclone/mousefilter ui +cyclone/MouseState ui +cyclone/onebang initialization routing +cyclone/overdrive~ fx~ +cyclone/prepend lists symbols routing +cyclone/prob behavior +cyclone/record~ file~ record~ +cyclone/Scope~ info~ +cyclone/seq midi +cyclone/sprintf symbols +cyclone/substitute symbols +cyclone/sustain midi +cyclone/thresh lists +cyclone/TogEdge routing +cyclone/tosymbol symbols conversion +cyclone/urn random +cyclone/zl lists +ekext/cup counter +ekext/cupd counter +flashserver/flashserver network +flatspace/arraysize tables +flatspace/entry ui symbols +ggee/image ui +ggee/moog~ fx~ +hcs/canvas_name tools +hcs/colorpanel ui +hcs/file_type file +hcs/folder_list file +hcs/ISOdate timing +hcs/ISOtime timing +hcs/noquit patch +hcs/screensize tools +hcs/split_path file +hcs/sys_gui tools +hcs/version tools +hcs/window_name tools +iemguts/canvasargs tools +iemguts/canvasindex tools +iemguts/canvasobjectposition tools +iemguts/canvasposition tools +iemguts/propertybang patch +iemlib/dollarg initialization patch +iemlib/fade~ control~ +iemlib/iem_anything data +iemlib/iem_receive routing +iemlib/iem_send routing +iemlib/init initialization +iemlib/modulo_counter counter +iemlib/mp3play~ play~ +iemlib/soundfile_info file~ info~ +iemlib/unsig~ info~ conversion +line~ control~ +list-abs/list-abs lists +list-abs/list-accum lists +list-abs/list-centroid lists +list-abs/list-compare lists +list-abs/list-delete lists +list-abs/list-fifo lists +list-abs/list-mean lists +list-abs/list-rev lists +list lists +mapping/breakpoint math +mapping/exponential_curve math +mapping/smooth math +mapping/timeroll info +markex/counter counter +maxlib/arbran random +maxlib/arraycopy tables +maxlib/average math +maxlib/delta math +maxlib/mlife behavior +maxlib/nchange routing +maxlib/nroute routing +maxlib/remote routing +maxlib/scale math +maxlib/speedlim timing +maxlib/split routing +maxlib/sync lists +maxlib/temperature info +maxlib/timebang timing +maxlib/wrap math +mjlib/morse conversion +mjlib/n2m midi +moocow/any2string conversion +moocow/string2any conversion +moonlib/tabreadl tables +motex/pansig~ mix~ +mrpeach/midifile midi file +mrpeach/pipelist lists timing +netreceive network +netsend network +pdogg/oggread~ file~ play~ +pdogg/oggwrite~ file~ record~ +pdvjtools/colorgrid ui +receive routing +send routing +sigpack/vowel~ fx~ +smlib/threshold routing +tof/argument initialization patch +tof/crossfade~ mix~ +tof/folderpanel file +tof/getdollarzero patch +tof/increment counter +tof/iterate routing +tof/listUnfold lists +tof/path patch file +unauthorized/grid ui +unauthorized/wahwah~ fx~ +writesf~ file~ record~ +zexy/list2symbol conversion symbols lists +zexy/makesymbol symbols +zexy/minmax lists +zexy/msgfile file data +zexy/packel lists +zexy/prime math +zexy/relay routing +zexy/repeat routing +zexy/sort lists +zexy/sum lists +zexy/symbol2list conversion symbols lists +zexy/tabdump tables +zexy/tabset tables +zexy/uniqsym symbols diff --git a/mToHarm-help.pd b/mToHarm-help.pd new file mode 100644 index 0000000..67750dc --- /dev/null +++ b/mToHarm-help.pd @@ -0,0 +1,14 @@ +#N canvas 449 54 537 211 10; +#X floatatom 34 78 5 0 0 0 - - -; +#X floatatom 115 79 5 0 0 0 - - -; +#X text 158 78 You can change the number of harmonics displayed; +#X obj 34 131 cyclone/prepend set; +#X obj 34 105 mtl/mToHarm 12; +#X msg 34 155; +#X text 28 17 Description: Gets the MIDI notes of the harmonic serie +of a MIDI note.; +#X text 29 47 tags:; +#X connect 0 0 4 0; +#X connect 1 0 4 1; +#X connect 3 0 5 0; +#X connect 4 0 3 0; diff --git a/mToHarm.pd b/mToHarm.pd new file mode 100644 index 0000000..3d0fd61 --- /dev/null +++ b/mToHarm.pd @@ -0,0 +1,40 @@ +#N canvas 505 158 659 622 10; +#X obj 16 7 inlet; +#X obj 298 68 loadbang; +#X obj 83 320 *; +#X obj 177 231 until; +#X obj 202 263 f 1; +#X obj 235 267 + 1; +#X obj 178 211 f; +#X msg 221 242 1; +#X obj 409 93 inlet; +#X obj 173 34 t b b f b b; +#X obj 60 347 ftom; +#X obj 63 204 mtof; +#X obj 200 415 list prepend; +#X obj 162 452 list append; +#X obj 126 492 list append; +#X obj 136 542 outlet; +#X obj 298 95 tof/argument 1 8; +#X connect 0 0 9 0; +#X connect 1 0 16 0; +#X connect 2 0 10 0; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 4 0 2 0; +#X connect 5 0 4 1; +#X connect 6 0 3 0; +#X connect 7 0 4 1; +#X connect 8 0 6 1; +#X connect 9 0 14 0; +#X connect 9 1 6 0; +#X connect 9 2 11 0; +#X connect 9 3 7 0; +#X connect 9 4 12 1; +#X connect 10 0 12 0; +#X connect 11 0 2 1; +#X connect 12 0 13 0; +#X connect 13 0 12 1; +#X connect 13 0 14 1; +#X connect 14 0 15 0; +#X connect 16 0 6 1; diff --git a/mToSpeed-help.pd b/mToSpeed-help.pd new file mode 100644 index 0000000..16f6975 --- /dev/null +++ b/mToSpeed-help.pd @@ -0,0 +1,19 @@ +#N canvas 375 105 450 296 10; +#X msg 176 149 60; +#X floatatom 71 149 5 0 0 0 - - -; +#X msg 208 149 72; +#X text 67 127 Current note; +#X floatatom 71 223 5 0 0 0 - - -; +#X text 105 223 Play speed ratio (on 1); +#X text 173 126 MIDI base note; +#X text 80 195 Argument : the MIDI base note of the original sound. +; +#X text 14 13 Description: Converts a MIDI note to the speed you must +play the sample.; +#X text 13 46 Comments: The default MIDI base note is 60; +#X text 15 66 tags: conversion; +#X obj 71 176 mtl/mToSpeed 72; +#X connect 0 0 11 1; +#X connect 1 0 11 0; +#X connect 2 0 11 1; +#X connect 11 0 4 0; diff --git a/mToSpeed.pd b/mToSpeed.pd new file mode 100644 index 0000000..2a5d573 --- /dev/null +++ b/mToSpeed.pd @@ -0,0 +1,17 @@ +#N canvas 35 267 418 364 10; +#X obj 86 44 inlet; +#X obj 229 73 inlet; +#X obj 116 181 mtof; +#X obj 195 183 mtof; +#X obj 158 236 /; +#X obj 168 290 outlet; +#X obj 105 90 t f b; +#X obj 220 141 f 60; +#X connect 0 0 6 0; +#X connect 1 0 7 0; +#X connect 2 0 4 0; +#X connect 3 0 4 1; +#X connect 4 0 5 0; +#X connect 6 0 2 0; +#X connect 6 1 7 0; +#X connect 7 0 3 0; diff --git a/main~-help.pd b/main~-help.pd new file mode 100644 index 0000000..4be2dfa --- /dev/null +++ b/main~-help.pd @@ -0,0 +1,6 @@ +#N canvas 195 112 482 257 10; +#X text 65 60 tags: mix~; +#X obj 157 142 mtl/main~; +#X text 67 26 Description: Receives the main stereo signal routed by +mtl/channel~; +#X coords 0 0 1 1 133 33 0; diff --git a/main~.pd b/main~.pd new file mode 100644 index 0000000..e702e50 --- /dev/null +++ b/main~.pd @@ -0,0 +1,8 @@ +#N canvas 27 128 814 528 10; +#X obj 147 267 outlet~; +#X obj 373 268 outlet~; +#X obj 209 152 tof/common~ MTLMAINL; +#X obj 382 165 tof/common~ MTLMAINR; +#X connect 2 0 0 0; +#X connect 3 0 1 0; +#X coords 0 0 1 1 133 33 0; diff --git a/makeLabel-help.pd b/makeLabel-help.pd new file mode 100644 index 0000000..82635b2 --- /dev/null +++ b/makeLabel-help.pd @@ -0,0 +1,19 @@ +#N canvas 332 188 556 399 10; +#X obj 54 213 hsl 128 15 0 127 0 0 \$0s \$0r low:0dB -2 -8 0 10 -262144 +-1 -1 0 1; +#X obj 5 97 cnv 1 430 1 empty empty empty 0 -10 0 16 -66577 -66577 +0; +#X obj 5 -12 cnv 15 430 20 empty empty empty 20 12 0 14 -216438 -66577 +0; +#X obj 5 9 cnv 1 430 1 empty empty empty 4 -10 2 12 -66577 -1 0; +#X obj 5 -12 cnv 1 430 1 empty empty empty 0 -10 0 16 -66577 -66577 +0; +#X text 18 49 Contact: patrick ( at ) 11h11.com; +#X text 18 33 Author: patrick s coulombe; +#X text 19 15 Description: write gui value to label; +#X text 23 120 Arguments: gui's send \, gui's receive \, loadbangvalue +\, label \, typeofvalue; +#X text 295 -8 Version: 2009; +#X text 6 -9 :: makeLabel ::; +#X obj 251 211 mtl/makeLabel \$0s \$0r 0 low dB; +#X text 18 64 tags: ui; diff --git a/makeLabel.pd b/makeLabel.pd new file mode 100644 index 0000000..c13c476 --- /dev/null +++ b/makeLabel.pd @@ -0,0 +1,46 @@ +#N canvas 1095 197 736 442 10; +#X msg 247 390 label \$1; +#X obj 250 315 pack s s; +#X obj 269 179 int; +#X obj 306 98 del 5; +#X obj 306 77 t b; +#X obj 269 139 spigot; +#X msg 306 118 1; +#X obj 185 38 inlet; +#X obj 69 70 r \$1; +#X obj 116 419 s \$2; +#X obj 282 11 loadbang; +#X obj 283 47 t b b; +#X obj 151 180 f \$3; +#X msg 112 383 set \$1; +#X obj 268 246 symbol \$4; +#X obj 247 366 zexy/list2symbol :; +#X obj 173 66 s \$2; +#X obj 73 98 t a a; +#X obj 35 389 outlet; +#X obj 158 205 t f f; +#X obj 296 279 zexy/makesymbol %s\$5; +#X obj 269 222 t b f; +#X connect 0 0 9 0; +#X connect 1 0 15 0; +#X connect 2 0 21 0; +#X connect 3 0 6 0; +#X connect 4 0 3 0; +#X connect 5 0 2 0; +#X connect 6 0 5 1; +#X connect 7 0 16 0; +#X connect 8 0 17 0; +#X connect 10 0 11 0; +#X connect 11 0 12 0; +#X connect 11 1 4 0; +#X connect 12 0 19 0; +#X connect 13 0 9 0; +#X connect 14 0 1 0; +#X connect 15 0 0 0; +#X connect 17 0 18 0; +#X connect 17 1 5 0; +#X connect 19 0 13 0; +#X connect 19 1 2 0; +#X connect 20 0 1 1; +#X connect 21 0 14 0; +#X connect 21 1 20 0; diff --git a/makecore.sh b/makecore.sh new file mode 100755 index 0000000..6ee5958 --- /dev/null +++ b/makecore.sh @@ -0,0 +1,12 @@ +#!/bin/sh +echo "Creating core tags" +rm core.txt +grep "tags:" *-help.pd | sed 's/-help.*tags://' | sed 's/^/mtl\//'| sed 's/;//' > core.txt + +echo "Sorting love" +sort -o amourette.txt love.txt +rm love.txt +mv amourette.txt love.txt + +echo "Making copy of browser.pd" +cp browser.pd 1-13LP.pd diff --git a/material~-help.pd b/material~-help.pd new file mode 100644 index 0000000..5dbff02 --- /dev/null +++ b/material~-help.pd @@ -0,0 +1,55 @@ +#N canvas 682 523 310 305 10; +#X text 139 169 metal; +#X text 139 153 glass 2; +#X text 139 90 wood; +#X text 139 106 plastic; +#X text 139 122 china; +#X text 139 138 glass 1; +#X text 139 74 cardboard; +#X obj 118 80 vradio 15 1 0 7 empty empty empty 0 -6 0 8 -262144 -1 +-1 1; +#X text 11 25 Comment: Taken from Andy Farnell's work.; +#X text 11 3 Description: Filtering by material type.; +#X obj 17 132 mtl/material~; +#X obj 18 228 mtl/out~; +#X text 12 45 tags: fx~; +#X obj 17 81 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 +; +#N canvas 5 185 450 300 generate~ 0; +#X obj 32 213 osc~ 200; +#X obj 32 89 metro 400; +#X obj 32 175 mtof; +#X obj 104 195 mtof; +#X obj 32 132 + 20; +#X obj 32 111 random 70; +#X floatatom 83 69 5 0 0 0 - - -; +#X obj 32 261 outlet~; +#X obj 103 261 outlet~; +#X obj 30 14 inlet; +#X obj 104 175 mtl/closestNote 0 2 4 7 9; +#X obj 104 234 *~; +#X obj 31 234 *~; +#X obj 104 214 osc~ 100; +#X obj 32 155 mtl/closestNote 0 2 4 7 9; +#X connect 0 0 12 0; +#X connect 1 0 5 0; +#X connect 2 0 0 0; +#X connect 3 0 13 0; +#X connect 4 0 10 0; +#X connect 4 0 14 0; +#X connect 5 0 4 0; +#X connect 6 0 1 1; +#X connect 9 0 1 0; +#X connect 9 0 11 1; +#X connect 9 0 12 1; +#X connect 10 0 3 0; +#X connect 11 0 8 0; +#X connect 12 0 7 0; +#X connect 13 0 11 0; +#X connect 14 0 2 0; +#X restore 17 106 pd generate~; +#X connect 7 0 10 1; +#X connect 10 0 11 0; +#X connect 10 0 11 1; +#X connect 13 0 14 0; +#X connect 14 0 10 0; diff --git a/material~.pd b/material~.pd new file mode 100644 index 0000000..dcbcb59 --- /dev/null +++ b/material~.pd @@ -0,0 +1,72 @@ +#N canvas 333 321 643 501 10; +#X obj 11 401 bp~ 440 80; +#X obj 89 401 bp~ 440 80; +#X obj 166 401 bp~ 440 80; +#X obj 244 401 bp~ 440 80; +#X obj 83 236 unpack 1 2 3 4 5; +#X msg 83 46 3454 5645 6433 6999 600; +#X text 11 46 metal; +#X text 9 73 glass 2; +#X text 11 179 wood; +#X msg 83 208 109 230 352 413 10; +#X msg 83 127 1245 1503 2131 2575 100; +#X text 11 151 plastic; +#X text 10 125 china; +#X text 10 99 glass 1; +#X text 7 207 cardboard; +#X msg 83 154 627 781 972 1184 70; +#X text 65 12 Simple material formants; +#X msg 83 71 2312 2466 3200 5314 380; +#X msg 82 98 1679 1233 4251 4640 340; +#X msg 83 181 221 333 426 527 40; +#X obj 122 497 clip~ -1 1; +#X obj 9 266 inlet~; +#X obj 117 558 outlet~; +#X floatatom 195 463 5 0 0 0 - - -; +#X obj 123 454 *~ 1; +#X obj 398 334 / 10; +#X obj 356 102 inlet; +#X obj 357 169 route 0 1 2 3 4 5 6; +#X obj 432 115 loadbang; +#X obj 358 139 f 0; +#X obj 242 246 t f f; +#X connect 0 0 24 0; +#X connect 1 0 24 0; +#X connect 2 0 24 0; +#X connect 3 0 24 0; +#X connect 4 0 0 1; +#X connect 4 1 1 1; +#X connect 4 2 2 1; +#X connect 4 3 3 1; +#X connect 4 4 25 0; +#X connect 4 4 30 0; +#X connect 5 0 4 0; +#X connect 9 0 4 0; +#X connect 10 0 4 0; +#X connect 15 0 4 0; +#X connect 17 0 4 0; +#X connect 18 0 4 0; +#X connect 19 0 4 0; +#X connect 20 0 22 0; +#X connect 21 0 0 0; +#X connect 21 0 1 0; +#X connect 21 0 2 0; +#X connect 21 0 3 0; +#X connect 23 0 24 1; +#X connect 24 0 20 0; +#X connect 25 0 24 1; +#X connect 26 0 29 0; +#X connect 27 0 9 0; +#X connect 27 1 19 0; +#X connect 27 2 15 0; +#X connect 27 3 10 0; +#X connect 27 4 18 0; +#X connect 27 5 17 0; +#X connect 27 6 5 0; +#X connect 28 0 29 0; +#X connect 29 0 27 0; +#X connect 30 0 3 2; +#X connect 30 0 2 2; +#X connect 30 0 1 2; +#X connect 30 0 0 2; +#X connect 30 1 25 0; diff --git a/modf-help.pd b/modf-help.pd new file mode 100644 index 0000000..38d492d --- /dev/null +++ b/modf-help.pd @@ -0,0 +1,17 @@ +#N canvas 1128 0 778 541 10; +#X text 63 37 tags: math; +#X text 66 20 description: modulo for floats; +#X floatatom 89 93 5 0 0 0 - - -; +#X floatatom 89 201 5 0 0 0 - - -; +#X floatatom 189 105 5 0 0 0 - - -; +#X text 167 152 Argument and inlet 2: modulo; +#X floatatom 91 316 5 0 0 0 - - -; +#X obj 92 288 maxlib/wrap 5; +#X obj 89 154 mtl/modf 5; +#X floatatom 92 261 5 0 0 0 - - -; +#X text 156 255 You can also just use maxlib/wrap or fmod; +#X connect 2 0 8 0; +#X connect 4 0 8 1; +#X connect 7 0 6 0; +#X connect 8 0 3 0; +#X connect 9 0 7 0; diff --git a/modf.pd b/modf.pd new file mode 100644 index 0000000..4340f95 --- /dev/null +++ b/modf.pd @@ -0,0 +1,12 @@ +#N canvas 1354 223 450 300 10; +#X obj 121 81 inlet; +#X obj 115 249 outlet; +#X obj 259 76 inlet; +#X obj 305 125 tof/argument 1 1; +#X obj 313 79 loadbang; +#X obj 117 191 maxlib/wrap 1; +#X connect 0 0 5 0; +#X connect 2 0 5 2; +#X connect 3 0 5 2; +#X connect 4 0 3 0; +#X connect 5 0 1 0; diff --git a/msToBpm-help.pd b/msToBpm-help.pd new file mode 100644 index 0000000..c268b94 --- /dev/null +++ b/msToBpm-help.pd @@ -0,0 +1,18 @@ +#N canvas 232 249 409 284 10; +#X obj 159 99 loadbang; +#X obj 159 122 metro 500; +#X floatatom 159 235 5 0 0 0 - - -; +#X obj 159 166 timer; +#X obj 159 144 t b b; +#X text 31 14 Description: Converts a millisecond interval to beats +per minute.; +#X floatatom 159 187 5 0 0 0 - - -; +#X obj 159 209 mtl/msToBpm; +#X text 32 47 tags: conversion; +#X connect 0 0 1 0; +#X connect 1 0 4 0; +#X connect 3 0 6 0; +#X connect 4 0 3 0; +#X connect 4 1 3 1; +#X connect 6 0 7 0; +#X connect 7 0 2 0; diff --git a/msToBpm.pd b/msToBpm.pd new file mode 100644 index 0000000..8fbfc00 --- /dev/null +++ b/msToBpm.pd @@ -0,0 +1,11 @@ +#N canvas 134 284 456 306 10; +#X obj 106 76 inlet; +#X obj 106 125 /; +#X obj 106 151 * 60; +#X msg 106 102 1000 \$1; +#X obj 106 185 outlet; +#X text 59 47 Milliseconds between 2 beats to bpm conversion; +#X connect 0 0 3 0; +#X connect 1 0 2 0; +#X connect 2 0 4 0; +#X connect 3 0 1 0; diff --git a/msToFps-help.pd b/msToFps-help.pd new file mode 100644 index 0000000..2dee5cc --- /dev/null +++ b/msToFps-help.pd @@ -0,0 +1,15 @@ +#N canvas 467 346 472 245 10; +#X floatatom 45 133 5 0 0 0 - - -; +#X floatatom 45 179 5 0 0 0 - - -; +#X text 33 20 Description: Converts the amount of miliseconds between +two frames into the numbers of frames per seconds.; +#X text 94 133 ms; +#X text 88 180 fps; +#X msg 45 105 50; +#X text 77 100 20 fps in the default Gem rate. It takes 50 ms between +each frame.; +#X obj 45 156 mtl/msToFps; +#X text 33 53 tags: conversion; +#X connect 0 0 7 0; +#X connect 5 0 0 0; +#X connect 7 0 1 0; diff --git a/msToFps.pd b/msToFps.pd new file mode 100644 index 0000000..28a31f8 --- /dev/null +++ b/msToFps.pd @@ -0,0 +1,8 @@ +#N canvas 195 357 324 250 10; +#X obj 137 77 inlet; +#X obj 136 161 /; +#X msg 141 122 1000 \$1; +#X obj 134 197 outlet; +#X connect 0 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 1 0; diff --git a/msToFreq-help.pd b/msToFreq-help.pd new file mode 100644 index 0000000..2160961 --- /dev/null +++ b/msToFreq-help.pd @@ -0,0 +1,11 @@ +#N canvas 363 333 430 211 10; +#X floatatom 106 91 5 0 0 0 - - -; +#X floatatom 106 153 5 0 0 0 - - -; +#X text 155 90 Interval in milliseconds; +#X text 155 153 Frequency; +#X text 21 15 Description: Converts a millisecond interval to a frequency. +; +#X obj 106 117 mtl/msToFreq; +#X text 22 34 tags: conversion; +#X connect 0 0 5 0; +#X connect 5 0 1 0; diff --git a/msToFreq.pd b/msToFreq.pd new file mode 100644 index 0000000..636dfc1 --- /dev/null +++ b/msToFreq.pd @@ -0,0 +1,8 @@ +#N canvas 0 0 452 302 12; +#X obj 153 46 inlet; +#X obj 161 144 /; +#X msg 156 98 1000 \$1; +#X obj 161 204 outlet; +#X connect 0 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 1 0; diff --git a/msToSmp-help.pd b/msToSmp-help.pd new file mode 100644 index 0000000..c5ee950 --- /dev/null +++ b/msToSmp-help.pd @@ -0,0 +1,11 @@ +#N canvas 120 81 372 242 10; +#X floatatom 93 91 5 0 0 0 - - -; +#X floatatom 93 169 5 0 0 0 - - -; +#X text 144 89 Length in milliseconds; +#X text 145 169 Number of samples; +#X text 17 8 Description: Converts a millisecond interval to a it's +corresponding number of samples.; +#X obj 93 130 mtl/msToSmp; +#X text 18 42 tags: conversion; +#X connect 0 0 5 0; +#X connect 5 0 1 0; diff --git a/msToSmp.pd b/msToSmp.pd new file mode 100644 index 0000000..ca6f61a --- /dev/null +++ b/msToSmp.pd @@ -0,0 +1,15 @@ +#N canvas 0 0 452 302 10; +#X obj 31 46 inlet; +#X obj 132 84 loadbang; +#X obj 132 110 samplerate~; +#X obj 53 266 outlet; +#X obj 135 136 / 1000; +#X obj 52 204 * 44.1; +#X obj 52 83 t f b; +#X connect 0 0 6 0; +#X connect 1 0 2 0; +#X connect 2 0 4 0; +#X connect 4 0 5 1; +#X connect 5 0 3 0; +#X connect 6 0 5 0; +#X connect 6 1 2 0; diff --git a/msToTime-help.pd b/msToTime-help.pd new file mode 100644 index 0000000..78ba393 --- /dev/null +++ b/msToTime-help.pd @@ -0,0 +1,25 @@ +#N canvas 380 290 395 359 10; +#X obj 135 151 timer; +#X obj 162 103 loadbang; +#X floatatom 135 178 10 0 0 0 - - -; +#X obj 162 127 metro 50; +#X floatatom 135 303 5 0 0 0 - - -; +#X floatatom 164 281 5 0 0 0 - - -; +#X floatatom 193 256 5 0 0 0 - - -; +#X text 228 254 seconds; +#X text 201 281 minutes; +#X text 172 303 hours; +#X floatatom 222 234 5 0 0 0 - - -; +#X text 259 231 msec; +#X text 18 12 Description: Converts a millisecond duration to a easier +read format.; +#X text 20 47 tags: conversion; +#X obj 135 210 mtl/msToTime; +#X connect 0 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 14 0; +#X connect 3 0 0 1; +#X connect 14 0 4 0; +#X connect 14 1 5 0; +#X connect 14 2 6 0; +#X connect 14 3 10 0; diff --git a/msToTime.pd b/msToTime.pd new file mode 100644 index 0000000..9ac3bb1 --- /dev/null +++ b/msToTime.pd @@ -0,0 +1,30 @@ +#N canvas 385 294 1008 686 10; +#X obj 127 14 inlet; +#X obj 100 223 outlet; +#X obj 177 222 outlet; +#X obj 245 224 outlet; +#X obj 121 127 / 60000; +#X obj 207 127 / 1000; +#X obj 124 148 int; +#X obj 207 147 int; +#X obj 207 170 mod 60; +#X obj 141 180 mod 60; +#X obj 33 131 / 3.6e+006; +#X obj 45 159 int; +#X obj 297 166 mod 1000; +#X obj 156 72 t f f f f; +#X obj 317 225 outlet; +#X connect 0 0 13 0; +#X connect 4 0 6 0; +#X connect 5 0 7 0; +#X connect 6 0 9 0; +#X connect 7 0 8 0; +#X connect 8 0 3 0; +#X connect 9 0 2 0; +#X connect 10 0 11 0; +#X connect 11 0 1 0; +#X connect 12 0 14 0; +#X connect 13 0 10 0; +#X connect 13 1 4 0; +#X connect 13 2 5 0; +#X connect 13 3 12 0; diff --git a/mtl-meta.pd b/mtl-meta.pd new file mode 100644 index 0000000..8529ac3 --- /dev/null +++ b/mtl-meta.pd @@ -0,0 +1,11 @@ +#N canvas 10 47 200 200 10; +#N canvas 320 267 420 300 META 1; +#X text 18 125 META this is a prototype of a libdir meta file; +#X text 15 8 VERSION 2.2; +#X text 16 23 LICENSE GPL; +#X text 17 40 NAME mtl; +#X text 15 60 DESCRIPTION A collection of abstractions made by Montreal +pd users.; +#X text 17 90 AUTHOR Thomas Ouellet Fredericks - Alexandre Quessy - +Patrick Sebastien Coulombe; +#X restore 10 10 pd META; diff --git a/nbx~-help.pd b/nbx~-help.pd new file mode 100644 index 0000000..bcbf6c3 --- /dev/null +++ b/nbx~-help.pd @@ -0,0 +1,16 @@ +#N canvas 393 304 464 314 12; +#X obj 173 50 osc~ 1; +#X obj 27 72 loadbang; +#X msg 26 94 \; pd dsp 1; +#X obj 173 158 vsl 15 128 -1 1 0 0 empty empty empty 0 -8 0 8 -262144 +-1 -1 5696 1; +#X floatatom 260 78 5 0 0 0 - - -; +#X text 291 94 Update interval.; +#X text 292 115 Defaults to 100ms.; +#X text 14 15 Description: displays a signal.; +#X obj 173 125 mtl/nbx~; +#X text 15 34 tags: info~; +#X connect 0 0 8 0; +#X connect 1 0 2 0; +#X connect 4 0 8 1; +#X connect 8 0 3 0; diff --git a/nbx~.pd b/nbx~.pd new file mode 100644 index 0000000..6fad256 --- /dev/null +++ b/nbx~.pd @@ -0,0 +1,19 @@ +#N canvas 78 314 710 382 10; +#X obj 102 28 inlet~; +#X obj 99 218 outlet; +#X obj 368 19 inlet; +#X obj 101 55 snapshot~; +#X obj 199 83 metro 100; +#X obj 249 12 loadbang; +#X msg 249 32 1; +#X obj 101 101 nbx 8 16 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 +-1 -262144 -1 0 256; +#X obj 177 101 cnv 16 15 16 empty empty ~ 3 6 0 14 -1 -262144 0; +#X connect 0 0 3 0; +#X connect 2 0 4 1; +#X connect 3 0 7 0; +#X connect 4 0 3 0; +#X connect 5 0 6 0; +#X connect 6 0 4 0; +#X connect 7 0 1 0; +#X coords 0 -1 1 1 94 18 1 100 100; diff --git a/noteClose-help.pd b/noteClose-help.pd new file mode 100644 index 0000000..6386a37 --- /dev/null +++ b/noteClose-help.pd @@ -0,0 +1,67 @@ +#N canvas 500 29 557 562 10; +#X obj 38 343 osc~ 440; +#X obj 39 403 *~; +#X msg 41 194 64 127; +#X msg 94 194 64 0; +#X msg 133 194 67 127; +#X msg 184 194 67 0; +#X text 2 0 Description: Closes an opened note before opening a new +one.; +#X obj 38 317 mtof; +#X obj 289 314 osc~ 440; +#X obj 289 289 mtof; +#X obj 290 357 *~; +#X msg 289 197 64 127; +#X msg 345 197 64 0; +#X msg 386 196 67 127; +#X msg 439 196 67 0; +#X text 1 46 Argument_1: The delay time (must match the release time +of synth.adsr~); +#X text 0 15 Comments: This abstraction is monophonic. Understands +float triggers.; +#X msg 153 221 1; +#X msg 189 221 0; +#X msg 406 226 1; +#X msg 443 226 0; +#X text 39 174 Try only triggerind note_ons; +#X text 286 174 Try only triggerind note_ons; +#X text 140 292 NO GLITCHING!; +#X text 394 261 GLITCHING!; +#X obj 41 264 mtl/noteClose 5; +#X text 2 77 tags: midi; +#X text 1 109 COMPARE TRIGGERING NOTES WITH mtl/noteClose TO THE LEFT +AND WITHOUT mtl/noteClose ON THE RIGHT.; +#X text 15 498 WARNING mtl/noteClose's argument (the close delay) must +be the same value as the release time!; +#X obj 38 291 mtl/noteSplit; +#X obj 289 262 mtl/noteSplit; +#X obj 40 431 mtl/out~; +#X obj 96 360 mtl/adsr~ 5 5 0.5 5; +#X obj 351 334 mtl/adsr~ 5 5 0.5 5; +#X connect 0 0 1 0; +#X connect 1 0 31 0; +#X connect 2 0 25 0; +#X connect 3 0 25 0; +#X connect 4 0 25 0; +#X connect 5 0 25 0; +#X connect 7 0 0 0; +#X connect 8 0 10 0; +#X connect 9 0 8 0; +#X connect 10 0 31 1; +#X connect 11 0 30 0; +#X connect 12 0 30 0; +#X connect 13 0 30 0; +#X connect 14 0 30 0; +#X connect 17 0 25 0; +#X connect 18 0 25 0; +#X connect 19 0 30 0; +#X connect 20 0 30 0; +#X connect 25 0 29 0; +#X connect 29 0 7 0; +#X connect 29 1 32 0; +#X connect 29 2 32 0; +#X connect 30 0 9 0; +#X connect 30 1 33 0; +#X connect 30 2 33 0; +#X connect 32 0 1 1; +#X connect 33 0 10 1; diff --git a/noteClose.pd b/noteClose.pd new file mode 100644 index 0000000..054ef3b --- /dev/null +++ b/noteClose.pd @@ -0,0 +1,94 @@ +#N canvas 765 73 535 735 10; +#X obj 49 -48 inlet; +#X obj 48 666 outlet; +#X obj 48 250 t a a; +#X obj 85 282 unpack f f; +#X obj 85 329 spigot; +#X obj 143 311 != 0; +#X obj 103 379 t f b; +#X obj 157 444 f; +#X msg 209 338 1; +#X obj 383 672 outlet forced_close; +#X obj 321 290 list; +#X msg 160 483 \$1 0; +#X obj 301 331 route bang; +#X obj 313 391 t a b; +#X msg 401 410 0; +#X obj 88 47 unpack f f; +#X obj 50 21 t a a; +#X obj 151 76 == 0; +#X msg 222 125 0; +#X obj 250 239 delay 5; +#X obj 323 48 loadbang; +#N canvas 0 0 907 659 float_triggers 0; +#X obj 146 111 route float; +#X msg 321 310 127; +#X obj 56 43 inlet; +#X obj 78 462 outlet; +#X obj 286 360 pack f f; +#X obj 231 162 sel 0; +#X obj 222 227 f 60; +#X obj 284 281 t f b f; +#X msg 210 267 \$1 0; +#X obj 326 200 ./speedToM; +#X connect 0 0 5 0; +#X connect 0 1 3 0; +#X connect 1 0 4 1; +#X connect 2 0 0 0; +#X connect 4 0 3 0; +#X connect 5 0 6 0; +#X connect 5 1 9 0; +#X connect 6 0 8 0; +#X connect 7 0 4 0; +#X connect 7 1 1 0; +#X connect 7 2 6 1; +#X connect 8 0 3 0; +#X connect 9 0 7 0; +#X restore 49 -13 pd float_triggers; +#X obj 194 101 t a b b; +#X msg 258 125 stop; +#X obj 308 200 t b b a b b; +#X msg 226 159 2; +#X obj 325 86 tof/argument 1 5; +#X obj 48 111 zexy/demultiplex; +#X obj 48 148 zexy/demultiplex 0 1 2; +#X connect 0 0 21 0; +#X connect 2 0 1 0; +#X connect 2 1 3 0; +#X connect 3 0 4 0; +#X connect 3 1 5 0; +#X connect 4 0 6 0; +#X connect 5 0 4 1; +#X connect 6 0 7 1; +#X connect 6 1 8 0; +#X connect 7 0 11 0; +#X connect 8 0 28 1; +#X connect 10 0 12 0; +#X connect 11 0 1 0; +#X connect 12 1 13 0; +#X connect 13 0 2 0; +#X connect 13 1 14 0; +#X connect 14 0 28 1; +#X connect 15 1 17 0; +#X connect 16 0 27 0; +#X connect 16 1 15 0; +#X connect 17 0 27 1; +#X connect 18 0 28 1; +#X connect 19 0 10 0; +#X connect 20 0 26 0; +#X connect 21 0 16 0; +#X connect 22 0 1 0; +#X connect 22 1 18 0; +#X connect 22 2 23 0; +#X connect 23 0 19 0; +#X connect 24 0 19 0; +#X connect 24 1 7 0; +#X connect 24 2 10 1; +#X connect 24 3 25 0; +#X connect 24 4 9 0; +#X connect 25 0 28 1; +#X connect 26 0 19 1; +#X connect 27 0 28 0; +#X connect 27 1 22 0; +#X connect 28 0 2 0; +#X connect 28 1 24 0; diff --git a/noteFloat-help.pd b/noteFloat-help.pd new file mode 100644 index 0000000..907f5bb --- /dev/null +++ b/noteFloat-help.pd @@ -0,0 +1,27 @@ +#N canvas 458 339 484 340 10; +#X floatatom 72 83 5 0 0 0 - - -; +#X obj 122 85 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X msg 150 86 60 127; +#X msg 52 128 2; +#X msg 47 172 0; +#X msg 200 137 0 57 65; +#X msg 218 162 0 57 0; +#X msg 179 112 60 0; +#X obj 123 254 cyclone/prepend set; +#X text 46 49 tags: midi; +#X msg 123 280 60 0; +#X obj 123 226 mtl/noteFloat; +#X text 45 9 Description: Converts float inputs to midi notes. Removes +any channel information. Regular midi notes simply pass through.; +#X text 214 200 Inlet 2: midi base note. 60 by default.; +#X connect 0 0 11 0; +#X connect 1 0 11 0; +#X connect 2 0 11 0; +#X connect 3 0 11 0; +#X connect 4 0 11 0; +#X connect 5 0 11 0; +#X connect 6 0 11 0; +#X connect 7 0 11 0; +#X connect 8 0 10 0; +#X connect 11 0 8 0; diff --git a/noteFloat.pd b/noteFloat.pd new file mode 100644 index 0000000..75c0c3e --- /dev/null +++ b/noteFloat.pd @@ -0,0 +1,33 @@ +#N canvas 187 313 629 476 10; +#X obj 57 32 inlet; +#X obj 61 62 t a a; +#X obj 199 427 outlet; +#X obj 57 184 sel 0; +#X obj 51 240 f 60; +#X obj 333 35 inlet; +#X obj 111 264 t f f; +#X msg 114 292 \$1 127; +#X msg 37 286 \$1 0; +#X obj 188 125 - 1; +#X obj 180 91 list length; +#X obj 108 237 ./speedToM; +#X obj 59 148 zexy/demultiplex 0 1 2; +#X obj 188 176 list split 1; +#X connect 0 0 1 0; +#X connect 1 0 12 0; +#X connect 1 1 10 0; +#X connect 3 0 4 0; +#X connect 3 1 11 0; +#X connect 4 0 8 0; +#X connect 5 0 11 1; +#X connect 6 0 7 0; +#X connect 6 1 4 1; +#X connect 7 0 2 0; +#X connect 8 0 2 0; +#X connect 9 0 12 1; +#X connect 10 0 9 0; +#X connect 11 0 6 0; +#X connect 12 0 3 0; +#X connect 12 1 2 0; +#X connect 12 2 13 0; +#X connect 13 1 2 0; diff --git a/noteSplit-help.pd b/noteSplit-help.pd new file mode 100644 index 0000000..89c7d41 --- /dev/null +++ b/noteSplit-help.pd @@ -0,0 +1,26 @@ +#N canvas 1247 160 438 404 10; +#X obj 194 96 print note_off; +#X obj 156 171 print note_on_vel; +#X obj 119 249 print note_on_pitch; +#X msg 119 27 73 127; +#X msg 168 27 54 0; +#X text 23 -17 tags: midi; +#X obj 119 274 cyclone/prepend set; +#X obj 156 194 cyclone/prepend set; +#X obj 194 117 cyclone/prepend set; +#X obj 119 69 mtl/noteSplit; +#X msg 156 219 127; +#X msg 119 299 73; +#X msg 194 142 0; +#X text 24 -33 Description: Splits note offs from a midi stream.; +#X connect 3 0 9 0; +#X connect 4 0 9 0; +#X connect 6 0 11 0; +#X connect 7 0 10 0; +#X connect 8 0 12 0; +#X connect 9 0 2 0; +#X connect 9 0 6 0; +#X connect 9 1 1 0; +#X connect 9 1 7 0; +#X connect 9 2 0 0; +#X connect 9 2 8 0; diff --git a/noteSplit.pd b/noteSplit.pd new file mode 100644 index 0000000..7a1cb1c --- /dev/null +++ b/noteSplit.pd @@ -0,0 +1,21 @@ +#N canvas 272 194 752 574 10; +#X obj 78 23 inlet; +#X obj 177 376 outlet note; +#X obj 330 384 outlet vel; +#X obj 435 384 outlet off; +#X obj 322 252 spigot; +#X obj 420 211 t f f; +#X obj 399 245 > 0; +#X obj 452 241 sel 0; +#X msg 438 346 0; +#X obj 330 176 list split 1; +#X connect 0 0 9 0; +#X connect 4 0 1 0; +#X connect 5 0 6 0; +#X connect 5 1 7 0; +#X connect 6 0 4 1; +#X connect 7 0 8 0; +#X connect 7 1 2 0; +#X connect 8 0 3 0; +#X connect 9 0 4 0; +#X connect 9 1 5 0; diff --git a/noteToName-help.pd b/noteToName-help.pd new file mode 100644 index 0000000..6a8dd0e --- /dev/null +++ b/noteToName-help.pd @@ -0,0 +1,12 @@ +#N canvas 0 0 448 276 10; +#X obj 20 62 mtl/piano 1; +#X obj 20 214 cyclone/prepend set; +#X obj 20 170 unpack; +#X msg 20 235 E; +#X text 17 12 Description: Convert note number to note name.; +#X text 17 34 tags: musical; +#X obj 20 193 mtl/noteToName; +#X connect 0 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 6 0; +#X connect 6 0 1 0; diff --git a/noteToName.pd b/noteToName.pd new file mode 100644 index 0000000..fedfc93 --- /dev/null +++ b/noteToName.pd @@ -0,0 +1,47 @@ +#N canvas 483 102 555 353 10; +#X obj 170 59 inlet; +#X obj 167 131 sel 0 1 2 3 4 5 6 7 8 9 10 11; +#X obj 270 295 symbol; +#X obj 273 319 outlet; +#X msg 111 191 C; +#X msg 172 192 D; +#X msg 142 192 C#; +#X msg 203 191 Eb; +#X msg 235 190 E; +#X msg 265 191 F; +#X msg 295 191 F#; +#X msg 326 190 G; +#X msg 356 192 Ab; +#X msg 387 193 A; +#X msg 417 193 Bb; +#X msg 448 192 B; +#X obj 311 80 % 12; +#X floatatom 316 111 5 0 0 0 - - -; +#X connect 0 0 16 0; +#X connect 1 0 4 0; +#X connect 1 1 6 0; +#X connect 1 2 5 0; +#X connect 1 3 7 0; +#X connect 1 4 8 0; +#X connect 1 5 9 0; +#X connect 1 6 10 0; +#X connect 1 7 11 0; +#X connect 1 8 12 0; +#X connect 1 9 13 0; +#X connect 1 10 14 0; +#X connect 1 11 15 0; +#X connect 2 0 3 0; +#X connect 4 0 2 0; +#X connect 5 0 2 0; +#X connect 6 0 2 0; +#X connect 7 0 2 0; +#X connect 8 0 2 0; +#X connect 9 0 2 0; +#X connect 10 0 2 0; +#X connect 11 0 2 0; +#X connect 12 0 2 0; +#X connect 13 0 2 0; +#X connect 14 0 2 0; +#X connect 15 0 2 0; +#X connect 16 0 17 0; +#X connect 16 0 1 0; diff --git a/numToRgb-help.pd b/numToRgb-help.pd new file mode 100644 index 0000000..d628560 --- /dev/null +++ b/numToRgb-help.pd @@ -0,0 +1,24 @@ +#N canvas 180 227 524 308 10; +#X obj 28 82 cnv 15 250 60 empty can empty 20 12 0 14 -1638 -262144 +0; +#X msg 34 235 \; can color \$1; +#X floatatom 128 156 5 1 13000 0 - - -; +#X obj 128 177 * -125; +#X floatatom 128 200 10 0 0 0 - - -; +#X text 197 200 Pd color; +#X obj 128 261 print float_RGB; +#X obj 229 261 print 8bit_RGB; +#X text 27 15 Description: Converts a pd color value into float RGB +and 8bit RGB.; +#X obj 128 236 mtl/numToRgb; +#X text 26 50 tags: conversion; +#X obj 229 238 mtl/numToRgb 8bit; +#X obj 361 239 mtl/numToRgb int; +#X obj 361 261 mtl/numToRgb integer; +#X connect 2 0 3 0; +#X connect 3 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 9 0; +#X connect 4 0 11 0; +#X connect 9 0 6 0; +#X connect 11 0 7 0; diff --git a/numToRgb.pd b/numToRgb.pd new file mode 100644 index 0000000..bad29f9 --- /dev/null +++ b/numToRgb.pd @@ -0,0 +1,60 @@ +#N canvas 170 117 1168 783 10; +#X obj 468 98 inlet; +#X obj 468 168 t f f f; +#X obj 477 247 -; +#X obj 553 208 mod 256; +#X obj 495 327 / 256; +#X obj 566 394 + 255; +#X obj 554 268 * -1; +#X obj 381 296 * -1; +#X obj 489 378 + 255; +#X obj 497 350 * -1; +#X obj 544 234 t f f; +#X obj 388 335 int; +#X obj 461 284 mod 65536; +#X obj 382 228 / 65537; +#X obj 396 742 outlet float; +#X obj 425 471 pack f f f; +#X obj 238 561 unpack f f f; +#X obj 279 645 pack f f f; +#X obj 967 286 loadbang; +#X msg 1037 375 1; +#X obj 965 343 sel 8bit int integer; +#X obj 235 592 / 255; +#X obj 283 591 / 255; +#X obj 350 592 / 255; +#X obj 391 505 zexy/demultiplex 0 1; +#X obj 967 316 iemlib/dollarg; +#X connect 0 0 1 0; +#X connect 1 0 13 0; +#X connect 1 1 2 0; +#X connect 1 2 3 0; +#X connect 2 0 12 0; +#X connect 3 0 10 0; +#X connect 4 0 9 0; +#X connect 5 0 15 2; +#X connect 6 0 5 0; +#X connect 7 0 11 0; +#X connect 8 0 15 1; +#X connect 9 0 8 0; +#X connect 10 0 6 0; +#X connect 10 1 2 1; +#X connect 11 0 15 0; +#X connect 12 0 4 0; +#X connect 13 0 7 0; +#X connect 15 0 24 0; +#X connect 16 0 21 0; +#X connect 16 1 22 0; +#X connect 16 2 23 0; +#X connect 17 0 14 0; +#X connect 18 0 25 0; +#X connect 19 0 24 1; +#X connect 20 0 19 0; +#X connect 20 1 19 0; +#X connect 20 2 19 0; +#X connect 21 0 17 0; +#X connect 22 0 17 1; +#X connect 23 0 17 2; +#X connect 24 0 16 0; +#X connect 24 1 14 0; +#X connect 25 0 20 0; diff --git a/octava-help.pd b/octava-help.pd new file mode 100644 index 0000000..97990db --- /dev/null +++ b/octava-help.pd @@ -0,0 +1,18 @@ +#N canvas 395 212 393 329 10; +#X msg 24 57 0 4 7; +#X obj 81 85 vradio 15 1 0 8 empty empty empty 0 -6 0 8 -262144 -1 +-1 6; +#X obj 81 212 expr 7-$f1; +#X text 101 82 Choose your octava; +#X text 74 56 Major chord; +#X text 18 5 Desription: Transposes a chord to a higher or lower octava +; +#X obj 24 235 mtl/octava; +#X obj 24 258 cyclone/prepend set; +#X text 19 23 tags: musical; +#X msg 24 282; +#X connect 0 0 6 0; +#X connect 1 0 2 0; +#X connect 2 0 6 1; +#X connect 6 0 7 0; +#X connect 7 0 9 0; diff --git a/octava.pd b/octava.pd new file mode 100644 index 0000000..2e883d9 --- /dev/null +++ b/octava.pd @@ -0,0 +1,15 @@ +#N canvas 0 0 450 300 10; +#X obj 61 105 inlet; +#X obj 149 192 expr $f1+12*$f2; +#X obj 305 71 inlet; +#X obj 65 235 outlet; +#X obj 304 121 tof/argument 1 0; +#X obj 304 100 loadbang; +#X obj 39 190 ./listOp; +#X connect 0 0 6 0; +#X connect 1 0 6 1; +#X connect 2 0 1 1; +#X connect 4 0 1 1; +#X connect 5 0 4 0; +#X connect 6 0 3 0; +#X connect 6 1 1 0; diff --git a/oldRecord~-help.pd b/oldRecord~-help.pd new file mode 100644 index 0000000..5dbbf37 --- /dev/null +++ b/oldRecord~-help.pd @@ -0,0 +1,9 @@ +#N canvas 6 57 382 198 10; +#X text 13 24 Comment: Taken from Andy Farnell's work.; +#X text 15 7 Description: Simulates the crackling of an old record. +; +#X obj 18 79 mtl/oldRecord~; +#X obj 18 107 mtl/out~; +#X text 19 48 tags: synthesize~; +#X connect 2 0 3 0; +#X connect 2 0 3 1; diff --git a/oldRecord~.pd b/oldRecord~.pd new file mode 100644 index 0000000..66697c5 --- /dev/null +++ b/oldRecord~.pd @@ -0,0 +1,50 @@ +#N canvas 115 161 450 300 10; +#N canvas 1 57 636 592 fry 0; +#X obj 341 264 osc~; +#X obj 351 58 noise~; +#X obj 340 336 *~; +#X obj 307 233 +~ 2000; +#X obj 378 261 *~; +#X obj 378 286 *~; +#X obj 340 440 *~ 0.01; +#X obj 338 463 lop~ 10000; +#X obj 352 122 bp~ 2.064 0.002; +#X obj 379 311 *~; +#X obj 339 370 *~ 0.3; +#X obj 340 395 hip~ 500; +#X obj 341 418 hip~ 500; +#X obj 342 548 outlet~; +#X obj 340 493 *~ 0.01; +#X obj 353 177 *~ 3.8; +#X obj 448 59 inlet range; +#X obj 574 59 inlet base; +#X obj 343 518 clip~ -1 1; +#X obj 306 209 *~ 100; +#X connect 0 0 2 0; +#X connect 1 0 8 0; +#X connect 2 0 10 0; +#X connect 3 0 0 0; +#X connect 4 0 5 0; +#X connect 4 0 5 1; +#X connect 5 0 9 0; +#X connect 5 0 9 1; +#X connect 6 0 7 0; +#X connect 7 0 14 0; +#X connect 8 0 15 0; +#X connect 9 0 2 1; +#X connect 10 0 11 0; +#X connect 11 0 12 0; +#X connect 12 0 6 0; +#X connect 14 0 18 0; +#X connect 15 0 4 0; +#X connect 15 0 4 1; +#X connect 15 0 19 0; +#X connect 16 0 19 1; +#X connect 17 0 3 1; +#X connect 18 0 13 0; +#X connect 19 0 3 0; +#X restore 115 128 pd fry; +#X msg 113 66 100; +#X obj 116 180 outlet~; +#X connect 0 0 2 0; +#X connect 1 0 0 0; diff --git a/out~-help.pd b/out~-help.pd new file mode 100644 index 0000000..b85ff5e --- /dev/null +++ b/out~-help.pd @@ -0,0 +1,19 @@ +#N canvas 162 421 583 258 10; +#X text 13 46 tags: mix~; +#X obj 18 86 osc~ 400; +#X obj 18 148 *~; +#X obj 162 151 *~; +#X text 12 14 Description: Controls the output volume and displays +a VU for both channels.; +#X obj 33 123 osc~ 0.1; +#X obj 177 127 osc~ 0.1; +#X text 180 175 The square next to the volume slider glows green when +DSP is ON and input is detected. It goes red if the input peak.; +#X obj 17 180 mtl/out~; +#X text 181 208 Argument: volume ie: [mtl/out~ 90] default 50; +#X connect 1 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 8 0; +#X connect 3 0 8 1; +#X connect 5 0 2 1; +#X connect 6 0 3 1; diff --git a/out~.pd b/out~.pd new file mode 100644 index 0000000..a3fe5fb --- /dev/null +++ b/out~.pd @@ -0,0 +1,275 @@ +#N canvas 440 166 759 674 10; +#X obj 51 520 dac~ 1 2; +#N canvas 498 116 886 636 guts 0; +#X obj 371 459 snapshot~; +#X obj 474 466 snapshot~; +#N canvas 563 189 734 553 size&color 0; +#X obj 90 14 inlet; +#X obj 26 371 s \$0left; +#X obj 88 121 t f f; +#X msg 157 213 0; +#X msg 213 230 1; +#X msg 193 315 color 14; +#X msg 373 315 color 13; +#X msg 120 312 color 16; +#X obj 193 257 change -1; +#X msg 274 239 2; +#X obj 87 96 + 1; +#X obj 85 34 change -1; +#X obj 86 53 clip 0 1; +#X obj 96 74 * 100; +#X msg 43 217 vis_size \$1 7; +#X obj 67 178 * 1.48; +#X obj 162 187 moses 60; +#X obj 214 208 moses 80; +#X obj 274 218 moses 100; +#X msg 324 245 3; +#X obj 196 285 sel 0 1 2 3; +#X msg 253 314 color -1.5626e+07; +#X obj 324 271 s \$0peak; +#X connect 0 0 11 0; +#X connect 2 0 15 0; +#X connect 2 1 16 0; +#X connect 3 0 8 0; +#X connect 4 0 8 0; +#X connect 5 0 1 0; +#X connect 6 0 1 0; +#X connect 7 0 1 0; +#X connect 8 0 20 0; +#X connect 9 0 8 0; +#X connect 10 0 2 0; +#X connect 11 0 12 0; +#X connect 12 0 13 0; +#X connect 13 0 10 0; +#X connect 14 0 1 0; +#X connect 15 0 14 0; +#X connect 16 0 3 0; +#X connect 16 1 17 0; +#X connect 17 0 4 0; +#X connect 17 1 18 0; +#X connect 18 0 9 0; +#X connect 18 1 19 0; +#X connect 19 0 8 0; +#X connect 19 0 22 0; +#X connect 20 0 7 0; +#X connect 20 1 5 0; +#X connect 20 2 21 0; +#X connect 20 3 6 0; +#X connect 21 0 1 0; +#X restore 353 543 pd size&color; +#X obj 47 18 loadbang; +#X msg 52 44 0; +#X obj 241 85 inlet~; +#X obj 421 89 inlet~; +#X obj 493 184 line~; +#X obj 50 291 *~; +#X obj 173 309 *~; +#X obj 27 359 hip~ 10; +#X obj 102 369 hip~ 10; +#X obj 551 86 inlet vol; +#X obj 37 485 outlet~; +#X obj 144 490 outlet~; +#X msg 535 135 \$1 100; +#X obj 596 210 sel 0; +#X msg 558 243 0; +#X obj 647 260 metro 200; +#N canvas 2 89 734 553 size&color 0; +#X obj 90 14 inlet; +#X obj 88 121 t f f; +#X msg 157 213 0; +#X msg 213 230 1; +#X msg 193 315 color 14; +#X msg 260 318 color 13; +#X msg 120 312 color 16; +#X obj 193 257 change -1; +#X msg 271 242 2; +#X obj 87 96 + 1; +#X obj 85 34 change -1; +#X obj 86 53 clip 0 1; +#X obj 26 371 s \$0right; +#X msg 44 224 vis_size \$1 7; +#X obj 96 74 * 100; +#X obj 83 178 * 1.48; +#X obj 162 187 moses 60; +#X obj 213 208 moses 80; +#X obj 273 218 moses 100; +#X msg 324 245 3; +#X obj 195 285 sel 0 1 2 3; +#X msg 236 367 color -1.5626e+07; +#X obj 334 281 s \$0peak; +#X connect 0 0 10 0; +#X connect 1 0 15 0; +#X connect 1 1 16 0; +#X connect 2 0 7 0; +#X connect 3 0 7 0; +#X connect 4 0 12 0; +#X connect 5 0 12 0; +#X connect 6 0 12 0; +#X connect 7 0 20 0; +#X connect 8 0 7 0; +#X connect 9 0 1 0; +#X connect 10 0 11 0; +#X connect 11 0 14 0; +#X connect 13 0 12 0; +#X connect 14 0 9 0; +#X connect 15 0 13 0; +#X connect 16 0 2 0; +#X connect 16 1 17 0; +#X connect 17 0 3 0; +#X connect 17 1 18 0; +#X connect 18 0 8 0; +#X connect 18 1 19 0; +#X connect 19 0 7 0; +#X connect 19 0 22 0; +#X connect 20 0 6 0; +#X connect 20 1 4 0; +#X connect 20 2 21 0; +#X connect 20 3 5 0; +#X connect 21 0 12 0; +#X restore 485 536 pd size&color; +#X obj 566 166 != 0; +#X obj 367 426 iemlib/peakenv~ 1000; +#X obj 481 401 iemlib/peakenv~ 1000; +#X obj 682 161 r pd; +#X obj 677 202 route dsp; +#X obj 617 544 outlet; +#X obj 589 511 max; +#X obj 621 398 iemlib/peakenv~ 1000; +#X obj 761 374 iemlib/peakenv~ 1000; +#X obj 633 447 snapshot~; +#X obj 736 454 snapshot~; +#X obj 646 339 t b b; +#X connect 0 0 2 0; +#X connect 1 0 19 0; +#X connect 3 0 4 0; +#X connect 4 0 2 0; +#X connect 4 0 19 0; +#X connect 5 0 8 0; +#X connect 5 0 27 0; +#X connect 6 0 9 0; +#X connect 6 0 28 0; +#X connect 7 0 8 1; +#X connect 7 0 9 1; +#X connect 8 0 10 0; +#X connect 8 0 21 0; +#X connect 9 0 11 0; +#X connect 9 0 22 0; +#X connect 10 0 13 0; +#X connect 11 0 14 0; +#X connect 12 0 15 0; +#X connect 15 0 7 0; +#X connect 15 0 20 0; +#X connect 16 0 17 0; +#X connect 16 1 18 0; +#X connect 17 0 2 0; +#X connect 17 0 18 0; +#X connect 17 0 19 0; +#X connect 18 0 0 0; +#X connect 18 0 1 0; +#X connect 18 0 31 0; +#X connect 20 0 16 0; +#X connect 21 0 0 0; +#X connect 22 0 1 0; +#X connect 23 0 24 0; +#X connect 24 0 18 0; +#X connect 26 0 25 0; +#X connect 27 0 29 0; +#X connect 28 0 30 0; +#X connect 29 0 26 0; +#X connect 30 0 26 1; +#X connect 31 0 29 0; +#X connect 31 1 30 0; +#X restore 56 443 pd guts; +#X obj 10 199 inlet~; +#X obj 69 198 inlet~; +#X obj 95 386 / 100; +#X obj 95 410 pow 3; +#X obj 271 303 > 0; +#X msg 276 434 \; pd dsp 1; +#X obj 271 327 sel 1; +#X obj 102 134 cnv 7 149 15 empty empty empty 20 12 0 14 -1 -66577 +0; +#X obj 102 134 cnv 1 51 7 empty \$0left empty 20 12 0 14 -24198 -262144 +0; +#X obj 102 142 cnv 1 46 7 empty \$0right empty 20 12 0 14 -24198 -262144 +0; +#X obj 105 116 hsl 100 15 0 100 0 0 \$0nans \$0nanr vol 106 7 0 8 -228856 +-33289 -33289 6600 1; +#X obj 271 352 value DSP; +#X obj 231 265 t f f; +#X obj 277 383 sel 0; +#X obj 275 407 t b b; +#X msg 330 409 1; +#X obj 236 116 cnv 15 15 15 empty \$0led empty 20 12 0 14 -3649 -262144 +0; +#X obj 277 483 delay 300; +#X obj 164 466 t f b; +#X obj 280 684 s \$0led; +#X msg 278 507 0; +#X obj 364 484 loadbang; +#X obj 293 582 change -1; +#X obj 206 520 moses 0.5; +#X msg 157 537 0; +#X msg 212 540 1; +#X msg 254 542 2; +#X msg 158 646 color -1.50666e+07; +#X msg 401 644 color -58625; +#X obj 291 609 sel 0 1 2; +#X msg 277 644 color -1.17242e+07; +#X obj 148 499 moses 0.001; +#X obj 43 561 outlet~; +#X obj 73 581 outlet~; +#X obj 493 604 r \$0peak; +#X obj 493 625 t b; +#X msg 493 645 color 13; +#X obj 493 667 t b; +#X obj 520 667 delay 300; +#X obj 102 61 loadbang; +#X obj 102 84 tof/argument 1 50; +#X connect 1 0 0 0; +#X connect 1 0 34 0; +#X connect 1 1 0 1; +#X connect 1 1 35 0; +#X connect 1 2 20 0; +#X connect 2 0 1 0; +#X connect 3 0 1 1; +#X connect 4 0 5 0; +#X connect 5 0 1 2; +#X connect 6 0 8 0; +#X connect 8 0 13 0; +#X connect 12 0 14 0; +#X connect 13 0 15 0; +#X connect 14 0 4 0; +#X connect 14 1 6 0; +#X connect 15 0 16 0; +#X connect 16 0 7 0; +#X connect 16 1 17 0; +#X connect 17 0 13 0; +#X connect 19 0 22 0; +#X connect 20 0 33 0; +#X connect 20 1 19 0; +#X connect 22 0 24 0; +#X connect 23 0 22 0; +#X connect 24 0 31 0; +#X connect 25 0 27 0; +#X connect 25 1 28 0; +#X connect 26 0 24 0; +#X connect 27 0 24 0; +#X connect 28 0 24 0; +#X connect 29 0 21 0; +#X connect 30 0 21 0; +#X connect 31 0 29 0; +#X connect 31 1 32 0; +#X connect 31 2 30 0; +#X connect 32 0 21 0; +#X connect 33 0 26 0; +#X connect 33 1 25 0; +#X connect 36 0 37 0; +#X connect 37 0 38 0; +#X connect 38 0 21 0; +#X connect 38 0 39 0; +#X connect 39 0 40 0; +#X connect 40 0 30 0; +#X connect 41 0 42 0; +#X connect 42 0 12 0; +#X coords 0 -1 1 1 153 42 1 100 111; diff --git a/param-enabled-help.pd b/param-enabled-help.pd new file mode 100644 index 0000000..382e33e --- /dev/null +++ b/param-enabled-help.pd @@ -0,0 +1,2 @@ +#N canvas 85 170 792 517 10; +#X text 64 32 This will detail all about param's.... someday :); diff --git a/pdToAscii-help.pd b/pdToAscii-help.pd new file mode 100644 index 0000000..6cab3a1 --- /dev/null +++ b/pdToAscii-help.pd @@ -0,0 +1,27 @@ +#N canvas 243 150 569 441 10; +#X text 26 48 tags: conversion; +#X msg 54 90 A B C; +#X obj 54 212 print; +#X msg 97 114 list A B C; +#X obj 54 185 mtl/pdToAscii; +#X msg 123 147 567; +#X text 99 89 Spaces in lists are converted (ASCII code 32); +#X obj 57 314 list append 13; +#X text 152 307 By using list append \, you can append special ASCII +characters like the carriage return (ASCII code 13) in this case.; +#X msg 57 247 78; +#X msg 115 254 test; +#X obj 57 344 print; +#X text 27 17 Description: Converts Pd messages to a list of ASCII +bytes.; +#X msg 110 232 hello world; +#X obj 57 286 mtl/pdToAscii; +#X connect 1 0 4 0; +#X connect 3 0 4 0; +#X connect 4 0 2 0; +#X connect 5 0 4 0; +#X connect 7 0 11 0; +#X connect 9 0 14 0; +#X connect 10 0 14 0; +#X connect 13 0 14 0; +#X connect 14 0 7 0; diff --git a/pdToAscii.pd b/pdToAscii.pd new file mode 100644 index 0000000..b82a42c --- /dev/null +++ b/pdToAscii.pd @@ -0,0 +1,8 @@ +#N canvas 989 362 450 300 10; +#X obj 111 39 inlet; +#X obj 110 237 outlet; +#X obj 111 82 list trim; +#X obj 110 122 moocow/any2bytes 0 -1; +#X connect 0 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 1 0; diff --git a/phi-help.pd b/phi-help.pd new file mode 100644 index 0000000..604e10b --- /dev/null +++ b/phi-help.pd @@ -0,0 +1,10 @@ +#N canvas 535 339 406 181 10; +#X obj 172 85 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 172 137 print; +#X text 47 16 Description: Outputs the constant phi ((1+sqrt(5))/2). +; +#X obj 172 112 mtl/phi; +#X text 48 33 tags: math; +#X connect 0 0 3 0; +#X connect 3 0 1 0; diff --git a/phi.pd b/phi.pd new file mode 100644 index 0000000..67fba76 --- /dev/null +++ b/phi.pd @@ -0,0 +1,16 @@ +#N canvas 263 342 446 296 10; +#X obj 93 21 inlet; +#X obj 93 162 outlet; +#X obj 148 80 sqrt; +#X msg 148 58 5; +#X obj 148 101 + 1; +#X obj 148 121 / 2; +#X obj 148 35 loadbang; +#X obj 93 125 f; +#X connect 0 0 7 0; +#X connect 2 0 4 0; +#X connect 3 0 2 0; +#X connect 4 0 5 0; +#X connect 5 0 7 1; +#X connect 6 0 3 0; +#X connect 7 0 1 0; diff --git a/piano-help.pd b/piano-help.pd new file mode 100644 index 0000000..efa53ab --- /dev/null +++ b/piano-help.pd @@ -0,0 +1,13 @@ +#N canvas 232 64 457 287 10; +#X text 21 8 Description: Transform your computer keyboard into a midi +piano.; +#X obj 23 203 unpack; +#X floatatom 23 226 5 0 0 0 - - -; +#X floatatom 56 226 5 0 0 0 - - -; +#X obj 23 94 mtl/piano 1; +#X text 21 57 Argument: listen to key input at start 0/1; +#X text 96 225 Note Velocity; +#X text 21 37 tags: ui midi; +#X connect 1 0 2 0; +#X connect 1 1 3 0; +#X connect 4 0 1 0; diff --git a/piano.pd b/piano.pd new file mode 100644 index 0000000..1ded1ee --- /dev/null +++ b/piano.pd @@ -0,0 +1,373 @@ +#N canvas 430 89 1009 673 10; +#X obj 329 386 tabread \$0keys; +#X obj 325 445 pack; +#X obj 324 466 route 0; +#X obj 378 439 * 127; +#X obj 920 156 bng 15 250 50 0 empty empty empty 0 -6 0 8 -224695 -1 +-1; +#X text 938 154 all reset; +#X obj 889 11 table \$0keys 256; +#X obj 285 613 pack s f; +#X obj 285 568 unpack; +#X msg 285 635 \; \$1 set \$2; +#X obj 607 456 swap; +#X obj 600 495 pack; +#N canvas 0 25 1006 673 mouse_receives 0; +#X obj 77 86 r \$0s49; +#X obj 143 86 r \$0s50; +#X obj 202 85 r \$0s51; +#X obj 275 83 r \$0s52; +#X obj 343 83 r \$0s53; +#X obj 403 86 r \$0s54; +#X obj 465 84 r \$0s55; +#X obj 526 84 r \$0s56; +#X obj 585 86 r \$0s57; +#X obj 650 88 r \$0s58; +#X obj 703 86 r \$0s59; +#X obj 754 88 r \$0s60; +#X obj 808 89 r \$0s61; +#X obj 859 89 r \$0s62; +#X obj 914 90 r \$0s63; +#X obj 961 92 r \$0s64; +#X obj 1019 95 r \$0s65; +#X obj 8 382 r \$0s66; +#X obj 72 383 r \$0s67; +#X obj 135 381 r \$0s68; +#X obj 187 384 r \$0s69; +#X obj 238 388 r \$0s70; +#X obj 293 387 r \$0s71; +#X obj 344 387 r \$0s72; +#X obj 400 386 r \$0s73; +#X obj 452 385 r \$0s74; +#X obj 503 385 r \$0s75; +#X obj 552 385 r \$0s76; +#X obj 601 382 r \$0s77; +#X obj 654 385 r \$0s78; +#X obj 702 386 r \$0s79; +#X obj 755 386 r \$0s80; +#X obj 809 387 r \$0s81; +#X obj 859 387 r \$0s82; +#X obj 909 387 r \$0s83; +#X obj 957 388 r \$0s84; +#X obj 5 86 r \$0s48; +#X obj 3 111 pack f 48; +#X obj 69 112 pack f 49; +#X obj 135 112 pack f 50; +#X obj 200 108 pack f 51; +#X obj 277 106 pack f 52; +#X obj 341 109 pack f 53; +#X obj 404 110 pack f 54; +#X obj 464 109 pack f 55; +#X obj 526 109 pack f 56; +#X obj 587 109 pack f 57; +#X obj 498 310 outlet; +#X obj 652 108 pack f 58; +#X obj 715 114 pack f 59; +#X obj 754 144 pack f 60; +#X obj 803 167 pack f 61; +#X obj 873 198 pack f 62; +#X obj 901 231 pack f 63; +#X obj 921 278 pack f 64; +#X obj 8 412 pack f 66; +#X obj 74 413 pack f 67; +#X obj 140 413 pack f 68; +#X obj 186 459 pack f 69; +#X obj 239 423 pack f 70; +#X obj 294 448 pack f 71; +#X obj 343 422 pack f 72; +#X obj 401 448 pack f 73; +#X obj 451 419 pack f 74; +#X obj 501 441 pack f 75; +#X obj 551 416 pack f 76; +#X obj 567 468 pack f 77; +#X obj 651 411 pack f 78; +#X obj 696 457 pack f 79; +#X obj 750 421 pack f 80; +#X obj 804 446 pack f 81; +#X obj 854 420 pack f 82; +#X obj 912 446 pack f 83; +#X obj 962 417 pack f 84; +#X obj 983 297 pack f 65; +#X connect 0 0 38 0; +#X connect 1 0 39 0; +#X connect 2 0 40 0; +#X connect 3 0 41 0; +#X connect 4 0 42 0; +#X connect 5 0 43 0; +#X connect 6 0 44 0; +#X connect 7 0 45 0; +#X connect 8 0 46 0; +#X connect 9 0 48 0; +#X connect 10 0 49 0; +#X connect 11 0 50 0; +#X connect 12 0 51 0; +#X connect 13 0 52 0; +#X connect 14 0 53 0; +#X connect 15 0 54 0; +#X connect 16 0 74 0; +#X connect 17 0 55 0; +#X connect 18 0 56 0; +#X connect 19 0 57 0; +#X connect 20 0 58 0; +#X connect 21 0 59 0; +#X connect 22 0 60 0; +#X connect 23 0 61 0; +#X connect 24 0 62 0; +#X connect 25 0 63 0; +#X connect 26 0 64 0; +#X connect 27 0 65 0; +#X connect 28 0 66 0; +#X connect 29 0 67 0; +#X connect 30 0 68 0; +#X connect 31 0 69 0; +#X connect 32 0 70 0; +#X connect 33 0 71 0; +#X connect 34 0 72 0; +#X connect 35 0 73 0; +#X connect 36 0 37 0; +#X connect 37 0 47 0; +#X connect 38 0 47 0; +#X connect 39 0 47 0; +#X connect 40 0 47 0; +#X connect 41 0 47 0; +#X connect 42 0 47 0; +#X connect 43 0 47 0; +#X connect 44 0 47 0; +#X connect 45 0 47 0; +#X connect 46 0 47 0; +#X connect 48 0 47 0; +#X connect 49 0 47 0; +#X connect 50 0 47 0; +#X connect 51 0 47 0; +#X connect 52 0 47 0; +#X connect 53 0 47 0; +#X connect 54 0 47 0; +#X connect 55 0 47 0; +#X connect 56 0 47 0; +#X connect 57 0 47 0; +#X connect 58 0 47 0; +#X connect 59 0 47 0; +#X connect 60 0 47 0; +#X connect 61 0 47 0; +#X connect 62 0 47 0; +#X connect 63 0 47 0; +#X connect 64 0 47 0; +#X connect 65 0 47 0; +#X connect 66 0 47 0; +#X connect 67 0 47 0; +#X connect 68 0 47 0; +#X connect 69 0 47 0; +#X connect 70 0 47 0; +#X connect 71 0 47 0; +#X connect 72 0 47 0; +#X connect 73 0 47 0; +#X connect 74 0 47 0; +#X restore 607 413 pd mouse_receives; +#X obj 329 363 swap; +#N canvas 673 209 355 563 keys 0; +#X obj 142 39 key; +#X obj 213 46 keyup; +#X msg 122 102 1 \$1; +#X msg 220 104 0 \$1; +#X obj 42 461 outlet; +#X connect 0 0 2 0; +#X connect 1 0 3 0; +#X connect 2 0 4 0; +#X connect 3 0 4 0; +#X restore 329 175 pd keys; +#X obj 95 16 cnv 15 20 80 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 118 16 cnv 15 20 80 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 141 16 cnv 15 20 80 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 3 16 cnv 15 20 80 empty yellow empty 20 12 0 14 -224695 -224695 +0; +#X obj 26 16 cnv 15 20 80 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 49 16 cnv 15 20 80 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 72 16 cnv 15 20 80 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 16 16 cnv 14 14 55 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 42 16 cnv 14 14 55 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 85 16 cnv 14 14 55 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 109 16 cnv 14 14 55 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 134 16 cnv 14 14 55 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 7 78 tgl 12 0 \$0s48 \$0r48mk empty 20 8 0 8 -262144 -1 -1 0 +127; +#X obj 17 57 tgl 12 0 \$0s49 \$0r49mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 30 78 tgl 12 0 \$0s50 \$0r50mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 43 57 tgl 12 0 \$0s51 \$0r51mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 53 78 tgl 12 0 \$0s52 \$0r52mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 76 78 tgl 12 0 \$0s53 \$0r53mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 99 78 tgl 12 0 \$0s55 \$0r55mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 122 78 tgl 12 0 \$0s57 \$0r57mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 86 57 tgl 12 0 \$0s54 \$0r54mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 110 57 tgl 12 0 \$0s56 \$0r56mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 135 57 tgl 12 0 \$0s58 \$0r58mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 145 78 tgl 12 0 \$0s59 \$0r59mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 256 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 279 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 302 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 164 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 187 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 211 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 233 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 177 36 cnv 14 14 35 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 203 36 cnv 14 14 35 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 246 36 cnv 14 14 35 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 270 36 cnv 14 14 35 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 295 36 cnv 14 14 35 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 168 78 tgl 12 0 \$0s60 \$0r60mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 178 57 tgl 12 0 \$0s61 \$0r61mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 191 78 tgl 12 0 \$0s62 \$0r62mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 204 57 tgl 12 0 \$0s63 \$0r63mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 214 78 tgl 12 0 \$0s64 \$0r64mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 237 78 tgl 12 0 \$0s65 \$0r65mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 260 78 tgl 12 0 \$0s67 \$0r67mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 283 78 tgl 12 0 \$0s69 \$0r69mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 247 57 tgl 12 0 \$0s66 \$0r66mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 271 57 tgl 12 0 \$0s68 \$0r68mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 296 57 tgl 12 0 \$0s70 \$0r70mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 306 78 tgl 12 0 \$0s71 \$0r71mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 325 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 348 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 371 36 cnv 15 20 60 empty empty empty 20 12 0 14 -224695 -66577 +0; +#X obj 338 36 cnv 14 14 35 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 364 36 cnv 14 14 35 empty empty empty 20 12 0 14 -1 -66577 0 +; +#X obj 329 78 tgl 12 0 \$0s72 \$0r72mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 339 57 tgl 12 0 \$0s73 \$0r73mk empty 20 8 0 8 -262144 -1 -1 +0 1; +#X obj 352 78 tgl 12 0 \$0s74 \$0r74mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 365 57 tgl 12 0 \$0s75 \$0r75mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 375 78 tgl 12 0 \$0s76 \$0r76mk empty 20 8 0 8 -262144 -1 -1 +0 127; +#X obj 424 698 outlet; +#X obj 343 13 bng 12 250 50 0 empty empty Panic 15 6 0 8 -258699 -1 +-1; +#X obj 930 180 t b b; +#X obj 929 249 + 47; +#X obj 383 231 spigot \$1; +#X obj 281 13 tgl 12 0 empty empty Listen 15 6 0 8 -262144 -1 -1 1 +1; +#X msg 1108 342 \; \$1 set 0; +#X obj 450 570 r \$0output; +#X obj 835 318 s \$0output; +#X msg 834 294 \$1 0; +#X obj 933 268 t f f; +#X obj 491 726 tabwrite \$0states; +#X obj 432 652 t l l l; +#X obj 497 681 swap; +#X obj 891 56 table \$0states 77; +#X obj 947 290 tabread \$0states; +#X obj 957 311 sel 1; +#X obj 1007 317 f; +#X obj 1006 346 t f f; +#X obj 490 702 > 0; +#X obj 924 226 tof/iterate; +#X obj 285 591 zexy/makesymbol \$0r%smk; +#X obj 1106 309 zexy/makesymbol \$0r%smk; +#X obj 468 102 f \$0; +#X msg 469 131 \; \$1keys 44 60 0 62 64 75 0 61 63 0 66 68 70 0 73 +0 63 0 78 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +77 0 79 0 0 0 0 55 52 51 64 0 54 56 72 58 0 61 59 57 74 76 60 65 49 +67 71 53 62 50 69 48 60 0 62 64 75 0 61 63 0 66 68 70 0 73 0 63 0 78 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 77 0 79 0 +0 0 0 55 52 51 64 0 54 56 72 58 0 61 59 57 74 76 60 65 49 67 71 53 +62 50 69 48; +#X obj 465 74 loadbang; +#X obj 418 102 f \$1; +#X msg 918 199 30; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 1 8 0; +#X connect 2 1 85 0; +#X connect 3 0 1 1; +#X connect 4 0 75 0; +#X connect 7 0 9 0; +#X connect 8 0 94 0; +#X connect 8 1 7 1; +#X connect 10 0 11 0; +#X connect 10 1 11 1; +#X connect 11 0 85 0; +#X connect 12 0 10 0; +#X connect 13 0 0 0; +#X connect 13 1 3 0; +#X connect 14 0 77 0; +#X connect 74 0 4 0; +#X connect 75 0 100 0; +#X connect 76 0 83 0; +#X connect 77 0 13 0; +#X connect 78 0 77 1; +#X connect 80 0 85 0; +#X connect 82 0 81 0; +#X connect 83 0 88 0; +#X connect 83 1 90 1; +#X connect 85 0 73 0; +#X connect 85 2 86 0; +#X connect 86 0 92 0; +#X connect 86 1 84 1; +#X connect 88 0 89 0; +#X connect 89 0 90 0; +#X connect 90 0 91 0; +#X connect 91 0 82 0; +#X connect 91 1 95 0; +#X connect 92 0 84 0; +#X connect 93 0 76 0; +#X connect 94 0 7 0; +#X connect 95 0 79 0; +#X connect 96 0 97 0; +#X connect 98 0 96 0; +#X connect 98 0 99 0; +#X connect 99 0 78 0; +#X connect 100 0 93 0; +#X coords 0 -1 1 1 394 100 1 0 0; diff --git a/pitchShift~-help.pd b/pitchShift~-help.pd new file mode 100644 index 0000000..a815edd --- /dev/null +++ b/pitchShift~-help.pd @@ -0,0 +1,29 @@ +#N canvas 417 57 407 261 10; +#X obj 9 157 mtl/out~; +#X text 5 15 tags: fx~; +#X obj 205 133 nbx 5 14 -1e+37 1e+37 0 0 \$0/pishi/transpose \$0/pishi/transpose_ +/pishi/transpose 48 7 0 8 -262144 -1 -1 25 256; +#X obj 205 88 tgl 15 0 \$0/pishi/switch \$0/pishi/switch_ /pishi/switch +17 7 0 8 -262144 -1 -1 0 1; +#X obj 8 61 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#N canvas 367 242 582 409 loop_sample 0; +#X obj 47 313 outlet~; +#X obj 43 9 inlet; +#X obj 193 319 outlet~; +#X msg 47 163 panel; +#X obj 47 200 mtl/player~ 1; +#X connect 1 0 3 0; +#X connect 3 0 4 0; +#X connect 4 0 0 0; +#X connect 4 0 2 0; +#X restore 8 97 pd loop_sample; +#X obj 205 109 tgl 15 0 \$0/pishi/method \$0/pishi/method_ /pishi/method +17 7 0 8 -262144 -1 -1 1 1; +#X obj 8 129 mtl/pitchShift~ /id pishi; +#X text 5 -2 Description: pitchshifter with 2 methods.; +#X connect 4 0 5 0; +#X connect 5 0 7 0; +#X connect 5 1 7 1; +#X connect 7 0 0 0; +#X connect 7 1 0 1; diff --git a/pitchShift~.pd b/pitchShift~.pd new file mode 100644 index 0000000..ae2091f --- /dev/null +++ b/pitchShift~.pd @@ -0,0 +1,770 @@ +#N canvas 656 399 678 298 10; +#N canvas 449 458 721 323 processing 0; +#N canvas 0 110 466 295 hann-window 0; +#X obj 288 130 osc~; +#X obj 288 155 *~ -0.5; +#X obj 288 179 +~ 0.5; +#X obj 26 118 samplerate~; +#X obj 26 142 /; +#X msg 161 71 resize \$1; +#X msg 292 95 0; +#X obj 240 96 t f b; +#X obj 26 94 t b f f; +#X text 22 8 calculate Hann window table (variable window size) and +constants window-hz (fundamental frequency of analysis).; +#X obj 241 212 tabwrite~ \$0.hann; +#X obj 26 67 r \$0.window.size; +#X obj 26 166 s \$0.window.hz; +#X obj 161 95 s \$0.hann; +#X obj 240 70 r \$0.window.hz; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 2 0 10 0; +#X connect 3 0 4 0; +#X connect 4 0 12 0; +#X connect 5 0 13 0; +#X connect 6 0 0 1; +#X connect 7 0 0 0; +#X connect 7 1 6 0; +#X connect 7 1 10 0; +#X connect 8 0 3 0; +#X connect 8 1 4 1; +#X connect 8 2 5 0; +#X connect 11 0 8 0; +#X connect 14 0 7 0; +#X restore 307 277 pd hann-window; +#X obj 16 15 inlet~; +#X obj 19 238 outlet~; +#X obj 309 27 inlet; +#X obj 306 160 table \$0.prev.imag.l 4096; +#X obj 306 179 table \$0.prev.real.l 4096; +#X obj 306 198 table \$0.prev.imag.r 4096; +#X obj 306 217 table \$0.prev.real.r 4096; +#X obj 306 236 table \$0.hann; +#X msg 511 64 2048; +#X obj 511 42 loadbang; +#N canvas 41 57 750 770 fft.analysis.l 0; +#X obj 51 477 *~; +#X obj 18 477 *~; +#X obj 18 499 -~; +#X obj 167 475 *~; +#X obj 136 475 *~; +#X obj 136 497 +~; +#X obj 109 193 *~; +#X obj 78 193 *~; +#X obj 50 193 *~; +#X obj 19 193 *~; +#X obj 19 218 +~; +#X obj 127 379 *~; +#X obj 20 622 *~; +#X obj 236 175 rfft~; +#X obj 108 161 rfft~; +#X obj 19 564 rifft~; +#X obj 21 646 outlet~; +#X obj 97 379 *~; +#X obj 97 401 +~; +#X obj 124 218 -~; +#X obj 18 431 *~; +#X obj 51 432 *~; +#X obj 21 728 block~; +#X obj 19 349 +~ 1e-15; +#X obj 19 598 *~; +#X obj 127 643 expr 2/(3*$f1); +#X msg 21 703 set \$1 4; +#X obj 97 425 q8_rsqrt~; +#X obj 121 69 *~; +#X obj 89 69 *~; +#X obj 89 91 +~; +#X obj 159 94 q8_rsqrt~; +#X obj 159 71 +~ 1e-20; +#X obj 73 119 *~; +#X obj 19 118 *~; +#X obj 29 245 lrshift~ 1; +#X obj 24 269 lrshift~ -1; +#X obj 141 245 lrshift~ 1; +#X obj 133 269 lrshift~ -1; +#X obj 19 325 +~; +#X obj 125 331 +~; +#N canvas 0 0 554 671 read-windows 0; +#X obj 18 358 line~; +#X obj 16 523 outlet~; +#X obj 125 531 outlet~; +#X text 220 313 "back" window 1/4 cycle behind "front" one; +#X obj 18 266 pack f f; +#X obj 31 143 t b f; +#X obj 31 184 -; +#X obj 90 145 *; +#X obj 90 114 - 1; +#X obj 90 57 mtof; +#X obj 90 77 / 440; +#X obj 90 38 + 69; +#X obj 353 123 samplerate~; +#X obj 328 102 t f b; +#X obj 328 141 /; +#X obj 328 163 * 1000; +#X text 376 163 window size (ms); +#X obj 18 207 f; +#X obj 16 492 *~; +#X obj 124 503 *~; +#X obj 18 75 bang~; +#X obj 31 164 100; +#X obj 197 286 *; +#X obj 206 263 t b f; +#X text 235 288 stretched window size (ms); +#X obj 220 210 / 4; +#X text 252 207 computation time for an overlap of 4; +#X obj 18 230 / 4; +#X obj 71 229 / 4; +#X obj 17 393 +~; +#X obj 193 310 / 4; +#X obj 135 369 / 4; +#X text 47 395 '+' since a bigger value in vd~ means 'earlier'.; +#X text 114 110 subtract speed of read-out \, when; +#X text 114 122 delay-time is static; +#X text 134 37 convert cents of halftones to read-out speed; +#X text 41 229 *); +#X text 93 229 *); +#X text 162 367 *); +#X text 67 336 *); +#X obj 18 287 t l b; +#X obj 43 309 100; +#X obj 43 333 / 4; +#X text 57 165 initial delay (ms); +#X text 71 307 initial delay (ms); +#X text 21 556 *); +#X text 24 572 it seems that if a time is specified in ms instead of +samples \, the value has to be divided by the overlap factor (4 in +this case) in order for the vd~ to read out the desired amount of samples. +i'm still unsure what the reason for this might be.; +#X obj 90 -6 r \$0.transpo; +#X obj 328 81 r \$0.window.size; +#X obj 164 468 tabreceive~ \$0.hann; +#X obj 16 441 vd~ \$0.input.l; +#X obj 123 443 vd~ \$0.input.l; +#X obj 88 195 r \$0.latency; +#X obj 102 274 r \$0.latency; +#X connect 0 0 29 0; +#X connect 0 0 51 0; +#X connect 4 0 40 0; +#X connect 5 0 21 0; +#X connect 5 1 6 1; +#X connect 6 0 17 1; +#X connect 7 0 5 0; +#X connect 8 0 7 0; +#X connect 9 0 10 0; +#X connect 10 0 8 0; +#X connect 10 0 22 0; +#X connect 11 0 9 0; +#X connect 12 0 14 1; +#X connect 13 0 14 0; +#X connect 13 1 12 0; +#X connect 14 0 15 0; +#X connect 15 0 7 1; +#X connect 15 0 23 0; +#X connect 15 0 25 0; +#X connect 17 0 27 0; +#X connect 18 0 1 0; +#X connect 19 0 2 0; +#X connect 20 0 17 0; +#X connect 21 0 6 0; +#X connect 22 0 30 0; +#X connect 23 0 22 0; +#X connect 23 1 22 1; +#X connect 25 0 28 0; +#X connect 27 0 4 0; +#X connect 28 0 4 1; +#X connect 29 0 50 0; +#X connect 30 0 31 0; +#X connect 31 0 29 1; +#X connect 40 0 0 0; +#X connect 40 1 41 0; +#X connect 41 0 42 0; +#X connect 42 0 0 0; +#X connect 47 0 11 0; +#X connect 48 0 13 0; +#X connect 49 0 19 1; +#X connect 49 0 18 1; +#X connect 50 0 18 0; +#X connect 51 0 19 0; +#X connect 52 0 21 1; +#X connect 53 0 41 1; +#X restore 442 106 pd read-windows; +#X text 318 304 the left part is taken from miller puckette's audio +example I07.phase.vocoder.pd from the doc.; +#X obj 52 598 tabreceive~ \$0.hann; +#X obj 127 622 r \$0.window.size; +#X obj 35 300 *~ 1; +#X obj 159 312 *~ 1; +#X obj 21 679 r \$0.window.size; +#X obj 20 8 tabreceive~ \$0.prev.real.l; +#X obj 73 29 tabreceive~ \$0.prev.imag.l; +#X obj 137 543 tabsend~ \$0.prev.imag.l; +#X obj 136 567 tabsend~ \$0.prev.real.l; +#X connect 0 0 2 1; +#X connect 1 0 2 0; +#X connect 2 0 15 0; +#X connect 2 0 51 0; +#X connect 3 0 5 1; +#X connect 4 0 5 0; +#X connect 5 0 15 1; +#X connect 5 0 50 0; +#X connect 6 0 19 1; +#X connect 7 0 19 0; +#X connect 8 0 10 1; +#X connect 9 0 10 0; +#X connect 10 0 36 0; +#X connect 10 0 35 0; +#X connect 10 0 39 0; +#X connect 11 0 18 1; +#X connect 12 0 16 0; +#X connect 13 0 1 1; +#X connect 13 0 3 1; +#X connect 13 1 0 1; +#X connect 13 1 4 1; +#X connect 14 0 9 1; +#X connect 14 0 7 1; +#X connect 14 1 6 1; +#X connect 14 1 8 1; +#X connect 15 0 24 0; +#X connect 17 0 18 0; +#X connect 18 0 27 0; +#X connect 19 0 37 0; +#X connect 19 0 38 0; +#X connect 19 0 40 0; +#X connect 20 0 1 0; +#X connect 20 0 4 0; +#X connect 21 0 0 0; +#X connect 21 0 3 0; +#X connect 23 0 17 1; +#X connect 23 0 17 0; +#X connect 23 0 20 0; +#X connect 24 0 12 0; +#X connect 25 0 12 1; +#X connect 26 0 22 0; +#X connect 27 0 20 1; +#X connect 27 0 21 1; +#X connect 28 0 30 1; +#X connect 29 0 30 0; +#X connect 30 0 32 0; +#X connect 31 0 33 1; +#X connect 31 0 34 1; +#X connect 32 0 31 0; +#X connect 33 0 8 0; +#X connect 33 0 7 0; +#X connect 34 0 9 0; +#X connect 34 0 6 0; +#X connect 35 0 45 0; +#X connect 36 0 45 0; +#X connect 37 0 46 0; +#X connect 38 0 46 0; +#X connect 39 0 23 0; +#X connect 40 0 11 0; +#X connect 40 0 11 1; +#X connect 40 0 21 0; +#X connect 41 0 14 0; +#X connect 41 1 13 0; +#X connect 43 0 24 1; +#X connect 44 0 25 0; +#X connect 45 0 39 1; +#X connect 46 0 40 1; +#X connect 47 0 26 0; +#X connect 48 0 29 1; +#X connect 48 0 29 0; +#X connect 48 0 34 0; +#X connect 49 0 28 1; +#X connect 49 0 28 0; +#X connect 49 0 33 0; +#X restore 18 142 pd fft.analysis.l; +#X obj 309 122 s \$0.transpo; +#X obj 511 87 s \$0.window.size; +#X obj 77 17 inlet~; +#X obj 98 239 outlet~; +#X obj 16 96 delwrite~ \$0.input.l 1000; +#X obj 76 67 delwrite~ \$0.input.r 1000; +#N canvas 40 20 750 770 fft.analysis.r 0; +#X obj 51 477 *~; +#X obj 18 477 *~; +#X obj 18 499 -~; +#X obj 167 475 *~; +#X obj 136 475 *~; +#X obj 136 497 +~; +#X obj 109 193 *~; +#X obj 78 193 *~; +#X obj 50 193 *~; +#X obj 19 193 *~; +#X obj 19 218 +~; +#X obj 127 379 *~; +#X obj 20 622 *~; +#X obj 236 175 rfft~; +#X obj 108 161 rfft~; +#X obj 19 564 rifft~; +#X obj 21 646 outlet~; +#X obj 97 379 *~; +#X obj 97 401 +~; +#X obj 124 218 -~; +#X obj 18 431 *~; +#X obj 51 432 *~; +#X obj 21 728 block~; +#X obj 19 349 +~ 1e-15; +#X obj 19 598 *~; +#X obj 127 643 expr 2/(3*$f1); +#X msg 21 703 set \$1 4; +#X obj 97 425 q8_rsqrt~; +#X obj 121 69 *~; +#X obj 89 69 *~; +#X obj 89 91 +~; +#X obj 159 94 q8_rsqrt~; +#X obj 159 71 +~ 1e-20; +#X obj 73 119 *~; +#X obj 19 118 *~; +#X obj 29 245 lrshift~ 1; +#X obj 24 269 lrshift~ -1; +#X obj 141 245 lrshift~ 1; +#X obj 133 269 lrshift~ -1; +#X obj 19 325 +~; +#X obj 125 331 +~; +#N canvas 139 105 510 684 read-windows 0; +#X obj 18 358 line~; +#X obj 16 523 outlet~; +#X obj 125 531 outlet~; +#X text 220 313 "back" window 1/4 cycle behind "front" one; +#X obj 18 266 pack f f; +#X obj 31 143 t b f; +#X obj 31 184 -; +#X obj 90 145 *; +#X obj 90 114 - 1; +#X obj 90 57 mtof; +#X obj 90 77 / 440; +#X obj 90 38 + 69; +#X obj 353 123 samplerate~; +#X obj 328 102 t f b; +#X obj 328 141 /; +#X obj 328 163 * 1000; +#X text 376 163 window size (ms); +#X obj 18 207 f; +#X obj 16 492 *~; +#X obj 124 503 *~; +#X obj 18 75 bang~; +#X obj 31 164 100; +#X obj 197 286 *; +#X obj 206 263 t b f; +#X text 235 288 stretched window size (ms); +#X obj 220 210 / 4; +#X text 252 207 computation time for an overlap of 4; +#X obj 18 230 / 4; +#X obj 71 229 / 4; +#X obj 17 393 +~; +#X obj 193 310 / 4; +#X obj 135 369 / 4; +#X text 47 395 '+' since a bigger value in vd~ means 'earlier'.; +#X text 114 110 subtract speed of read-out \, when; +#X text 114 122 delay-time is static; +#X text 134 37 convert cents of halftones to read-out speed; +#X text 41 229 *); +#X text 93 229 *); +#X text 162 367 *); +#X text 67 336 *); +#X obj 18 287 t l b; +#X obj 43 309 100; +#X obj 43 333 / 4; +#X text 57 165 initial delay (ms); +#X text 71 307 initial delay (ms); +#X text 21 556 *); +#X text 24 572 it seems that if a time is specified in ms instead of +samples \, the value has to be divided by the overlap factor (4 in +this case) in order for the vd~ to read out the desired amount of samples. +i'm still unsure what the reason for this might be.; +#X obj 90 -6 r \$0.transpo; +#X obj 328 81 r \$0.window.size; +#X obj 164 468 tabreceive~ \$0.hann; +#X obj 16 441 vd~ \$0.input.r; +#X obj 123 443 vd~ \$0.input.r; +#X obj 88 195 r \$0.latency; +#X obj 102 274 r \$0.latency; +#X connect 0 0 29 0; +#X connect 0 0 51 0; +#X connect 4 0 40 0; +#X connect 5 0 21 0; +#X connect 5 1 6 1; +#X connect 6 0 17 1; +#X connect 7 0 5 0; +#X connect 8 0 7 0; +#X connect 9 0 10 0; +#X connect 10 0 8 0; +#X connect 10 0 22 0; +#X connect 11 0 9 0; +#X connect 12 0 14 1; +#X connect 13 0 14 0; +#X connect 13 1 12 0; +#X connect 14 0 15 0; +#X connect 15 0 7 1; +#X connect 15 0 23 0; +#X connect 15 0 25 0; +#X connect 17 0 27 0; +#X connect 18 0 1 0; +#X connect 19 0 2 0; +#X connect 20 0 17 0; +#X connect 21 0 6 0; +#X connect 22 0 30 0; +#X connect 23 0 22 0; +#X connect 23 1 22 1; +#X connect 25 0 28 0; +#X connect 27 0 4 0; +#X connect 28 0 4 1; +#X connect 29 0 50 0; +#X connect 30 0 31 0; +#X connect 31 0 29 1; +#X connect 40 0 0 0; +#X connect 40 1 41 0; +#X connect 41 0 42 0; +#X connect 42 0 0 0; +#X connect 47 0 11 0; +#X connect 48 0 13 0; +#X connect 49 0 19 1; +#X connect 49 0 18 1; +#X connect 50 0 18 0; +#X connect 51 0 19 0; +#X connect 52 0 21 1; +#X connect 53 0 41 1; +#X restore 442 106 pd read-windows; +#X text 318 304 the left part is taken from miller puckette's audio +example I07.phase.vocoder.pd from the doc.; +#X obj 52 598 tabreceive~ \$0.hann; +#X obj 127 622 r \$0.window.size; +#X obj 35 300 *~ 1; +#X obj 159 312 *~ 1; +#X obj 21 679 r \$0.window.size; +#X obj 20 8 tabreceive~ \$0.prev.real.r; +#X obj 73 29 tabreceive~ \$0.prev.imag.r; +#X obj 137 543 tabsend~ \$0.prev.imag.r; +#X obj 136 567 tabsend~ \$0.prev.real.r; +#X connect 0 0 2 1; +#X connect 1 0 2 0; +#X connect 2 0 15 0; +#X connect 2 0 51 0; +#X connect 3 0 5 1; +#X connect 4 0 5 0; +#X connect 5 0 15 1; +#X connect 5 0 50 0; +#X connect 6 0 19 1; +#X connect 7 0 19 0; +#X connect 8 0 10 1; +#X connect 9 0 10 0; +#X connect 10 0 36 0; +#X connect 10 0 35 0; +#X connect 10 0 39 0; +#X connect 11 0 18 1; +#X connect 12 0 16 0; +#X connect 13 0 1 1; +#X connect 13 0 3 1; +#X connect 13 1 0 1; +#X connect 13 1 4 1; +#X connect 14 0 9 1; +#X connect 14 0 7 1; +#X connect 14 1 6 1; +#X connect 14 1 8 1; +#X connect 15 0 24 0; +#X connect 17 0 18 0; +#X connect 18 0 27 0; +#X connect 19 0 37 0; +#X connect 19 0 38 0; +#X connect 19 0 40 0; +#X connect 20 0 1 0; +#X connect 20 0 4 0; +#X connect 21 0 0 0; +#X connect 21 0 3 0; +#X connect 23 0 17 1; +#X connect 23 0 17 0; +#X connect 23 0 20 0; +#X connect 24 0 12 0; +#X connect 25 0 12 1; +#X connect 26 0 22 0; +#X connect 27 0 20 1; +#X connect 27 0 21 1; +#X connect 28 0 30 1; +#X connect 29 0 30 0; +#X connect 30 0 32 0; +#X connect 31 0 33 1; +#X connect 31 0 34 1; +#X connect 32 0 31 0; +#X connect 33 0 8 0; +#X connect 33 0 7 0; +#X connect 34 0 9 0; +#X connect 34 0 6 0; +#X connect 35 0 45 0; +#X connect 36 0 45 0; +#X connect 37 0 46 0; +#X connect 38 0 46 0; +#X connect 39 0 23 0; +#X connect 40 0 11 0; +#X connect 40 0 11 1; +#X connect 40 0 21 0; +#X connect 41 0 14 0; +#X connect 41 1 13 0; +#X connect 43 0 24 1; +#X connect 44 0 25 0; +#X connect 45 0 39 1; +#X connect 46 0 40 1; +#X connect 47 0 26 0; +#X connect 48 0 29 1; +#X connect 48 0 29 0; +#X connect 48 0 34 0; +#X connect 49 0 28 1; +#X connect 49 0 28 0; +#X connect 49 0 33 0; +#X restore 97 169 pd fft.analysis.r; +#X obj 339 99 s \$0.latency; +#X obj 309 56 t a a; +#N canvas 998 307 217 230 latency 0; +#X obj 19 22 inlet; +#X obj 19 194 outlet; +#X obj 19 48 / 12; +#X obj 19 95 pow; +#X msg 19 72 2 \$1; +#X obj 19 117 max 1; +#X obj 119 73 samplerate~; +#X obj 119 93 * 0.001; +#X obj 89 29 r \$0.window.size; +#X obj 89 53 t a b; +#X obj 89 115 /; +#X obj 19 161 *; +#X connect 0 0 2 0; +#X connect 2 0 4 0; +#X connect 3 0 5 0; +#X connect 4 0 3 0; +#X connect 5 0 11 0; +#X connect 6 0 7 0; +#X connect 7 0 10 1; +#X connect 8 0 9 0; +#X connect 9 0 10 0; +#X connect 9 1 6 0; +#X connect 10 0 11 1; +#X connect 11 0 1 0; +#X restore 339 77 pd latency; +#X obj 626 31 inlet; +#X obj 634 63 switch~; +#X connect 1 0 16 0; +#X connect 3 0 20 0; +#X connect 9 0 13 0; +#X connect 10 0 9 0; +#X connect 11 0 2 0; +#X connect 14 0 17 0; +#X connect 18 0 15 0; +#X connect 20 0 12 0; +#X connect 20 1 21 0; +#X connect 21 0 19 0; +#X connect 22 0 23 0; +#X restore 139 141 pd processing; +#X obj 71 25 inlet~; +#X obj 153 31 inlet~; +#X obj 70 277 outlet~; +#X obj 128 278 outlet~; +#X text 268 226 based on pd doc: I07.phase.vocoder.pd; +#X text 267 244 adapted by: Roman Haefeli; +#X text 267 266 version: 2008-03-05; +#X obj 71 233 tof/crossfade~ 2; +#X obj 548 43 inlet params; +#X obj 548 89 print PARAM_NOTFOUND; +#X obj 214 30 tof/param /transpose 0 /g nbx; +#X obj 221 192 tof/param /switch 0 /g tgl; +#X obj 221 213 != 0; +#X msg 221 237 \$1 200; +#X obj 221 259 line~; +#N canvas 80 84 906 756 pitchshift 0; +#X obj 94 420 *~; +#X obj 202 351 line~; +#X obj 202 325 pack 0 200; +#X obj 29 204 exp; +#X floatatom 29 230 0 0 0 0 - - -; +#X obj 29 320 /; +#X obj 156 250 * 0.001; +#X obj 29 471 cos~; +#X obj 29 498 *~; +#X obj 29 527 +~; +#X obj 116 378 wrap~; +#X obj 261 421 *~; +#X obj 198 481 cos~; +#X obj 198 508 *~; +#X obj 156 277 t b f; +#X floatatom 29 346 0 0 0 0 - - -; +#X obj 29 373 phasor~ 0; +#X obj 116 351 +~ 0.5; +#X obj 29 419 -~ 0.5; +#X obj 29 445 *~ 0.5; +#X obj 198 420 -~ 0.5; +#X obj 198 453 *~ 0.5; +#X obj 29 257 - 1; +#X obj 29 178 * 0.05776; +#X obj 29 283 * -1; +#X text 78 123 <-- transposition; +#X text 116 138 (halpn_lftones); +#X text 96 238 speed; +#X text 95 252 change; +#X text 64 313 tape head; +#X text 65 326 rotation speed; +#X obj -131 115 inlet~; +#X obj 28 607 outlet~; +#X obj 29 122 inlet; +#X obj 94 472 vd~ \$0delay1; +#X obj 260 483 vd~ \$0delay1; +#X obj 267 147 loadbang; +#X obj 271 176 f 10; +#X obj 271 204 clip 1 1e+07; +#X msg 373 157 128; +#X obj -131 147 delwrite~ \$0delay1 10; +#X obj 646 51 inlet; +#X obj 654 83 switch~; +#X connect 0 0 34 0; +#X connect 1 0 0 1; +#X connect 1 0 11 1; +#X connect 2 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 22 0; +#X connect 5 0 15 0; +#X connect 6 0 14 0; +#X connect 7 0 8 0; +#X connect 8 0 9 0; +#X connect 9 0 32 0; +#X connect 10 0 11 0; +#X connect 10 0 20 0; +#X connect 11 0 35 0; +#X connect 12 0 13 0; +#X connect 13 0 9 1; +#X connect 14 0 5 0; +#X connect 14 1 5 1; +#X connect 15 0 16 0; +#X connect 16 0 0 0; +#X connect 16 0 18 0; +#X connect 16 0 17 0; +#X connect 17 0 10 0; +#X connect 18 0 19 0; +#X connect 19 0 7 0; +#X connect 20 0 21 0; +#X connect 21 0 12 0; +#X connect 22 0 24 0; +#X connect 23 0 3 0; +#X connect 24 0 5 0; +#X connect 31 0 40 0; +#X connect 33 0 23 0; +#X connect 34 0 8 1; +#X connect 35 0 13 1; +#X connect 36 0 37 0; +#X connect 37 0 38 0; +#X connect 38 0 2 0; +#X connect 38 0 6 0; +#X connect 39 0 38 0; +#X connect 41 0 42 0; +#X restore 238 140 pd pitchshift; +#N canvas 313 84 906 756 pitchshift 0; +#X obj 94 420 *~; +#X obj 202 351 line~; +#X obj 202 325 pack 0 200; +#X obj 29 204 exp; +#X floatatom 29 230 0 0 0 0 - - -; +#X obj 29 320 /; +#X obj 156 250 * 0.001; +#X obj 29 471 cos~; +#X obj 29 498 *~; +#X obj 29 527 +~; +#X obj 116 378 wrap~; +#X obj 261 421 *~; +#X obj 198 481 cos~; +#X obj 198 508 *~; +#X obj 156 277 t b f; +#X floatatom 29 346 0 0 0 0 - - -; +#X obj 29 373 phasor~ 0; +#X obj 116 351 +~ 0.5; +#X obj 29 419 -~ 0.5; +#X obj 29 445 *~ 0.5; +#X obj 198 420 -~ 0.5; +#X obj 198 453 *~ 0.5; +#X obj 29 257 - 1; +#X obj 29 178 * 0.05776; +#X obj 29 283 * -1; +#X text 78 123 <-- transposition; +#X text 116 138 (halpn_lftones); +#X text 96 238 speed; +#X text 95 252 change; +#X text 64 313 tape head; +#X text 65 326 rotation speed; +#X obj -131 115 inlet~; +#X obj 28 607 outlet~; +#X obj 29 122 inlet; +#X obj 267 147 loadbang; +#X obj 271 176 f 10; +#X obj 271 204 clip 1 1e+07; +#X msg 373 157 128; +#X obj 260 483 vd~ \$0delay2; +#X obj 93 471 vd~ \$0delay2; +#X obj -129 147 delwrite~ \$0delay2 10; +#X obj 636 41 inlet; +#X obj 644 73 switch~; +#X connect 0 0 39 0; +#X connect 1 0 0 1; +#X connect 1 0 11 1; +#X connect 2 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 22 0; +#X connect 5 0 15 0; +#X connect 6 0 14 0; +#X connect 7 0 8 0; +#X connect 8 0 9 0; +#X connect 9 0 32 0; +#X connect 10 0 11 0; +#X connect 10 0 20 0; +#X connect 11 0 38 0; +#X connect 12 0 13 0; +#X connect 13 0 9 1; +#X connect 14 0 5 0; +#X connect 14 1 5 1; +#X connect 15 0 16 0; +#X connect 16 0 0 0; +#X connect 16 0 18 0; +#X connect 16 0 17 0; +#X connect 17 0 10 0; +#X connect 18 0 19 0; +#X connect 19 0 7 0; +#X connect 20 0 21 0; +#X connect 21 0 12 0; +#X connect 22 0 24 0; +#X connect 23 0 3 0; +#X connect 24 0 5 0; +#X connect 31 0 40 0; +#X connect 33 0 23 0; +#X connect 34 0 35 0; +#X connect 35 0 36 0; +#X connect 36 0 2 0; +#X connect 36 0 6 0; +#X connect 37 0 36 0; +#X connect 38 0 13 1; +#X connect 39 0 8 1; +#X connect 41 0 42 0; +#X restore 328 140 pd pitchshift; +#X obj 313 64 tof/param /method 0 /g tgl; +#X obj 313 85 == 0; +#X obj 548 65 tof/param route; +#X connect 0 0 8 2; +#X connect 0 1 8 3; +#X connect 1 0 0 0; +#X connect 1 0 8 0; +#X connect 1 0 16 0; +#X connect 2 0 0 1; +#X connect 2 0 8 1; +#X connect 2 0 17 0; +#X connect 8 0 3 0; +#X connect 8 1 4 0; +#X connect 9 0 20 0; +#X connect 11 0 0 2; +#X connect 11 0 16 1; +#X connect 11 0 17 1; +#X connect 12 0 13 0; +#X connect 13 0 14 0; +#X connect 14 0 15 0; +#X connect 15 0 8 4; +#X connect 16 0 8 2; +#X connect 17 0 8 3; +#X connect 18 0 19 0; +#X connect 18 0 0 3; +#X connect 19 0 16 2; +#X connect 19 0 17 2; +#X connect 20 0 10 0; diff --git a/player~-help.pd b/player~-help.pd new file mode 100644 index 0000000..557ec6a --- /dev/null +++ b/player~-help.pd @@ -0,0 +1,75 @@ +#N canvas 570 214 919 638 10; +#X floatatom 237 475 10 0 0 1 samples - -; +#X obj 261 436 bng 15 250 50 0 empty empty stopped 0 -6 0 10 -262144 +-1 -1; +#X msg 48 33 1; +#X msg 92 73 2; +#X msg 71 52 0; +#X obj 30 15 bng 15 250 50 0 empty empty empty 0 -6 0 10 -262144 -1 +-1; +#X text 52 12 Play at speed 1; +#X text 77 29 Play at speed 1; +#X text 102 48 Stop; +#X text 120 74 Play at speed 2; +#X text 207 526 Progress; +#X text 590 158 Load a sound file; +#X msg 192 263 set table; +#X msg 136 140 1 0.5; +#X text 206 167 Play at speed 1 from 3/4 of the table; +#X text 179 134 Play at speed 1 from halfway; +#X msg 159 169 1 0.75; +#X obj 571 183 openpanel; +#X obj 571 158 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 18 538 mtl/out~; +#X msg 570 343 set \$1 \, bang; +#X text 13 -23 tags: tables play~; +#X obj 193 348 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 199 545 mtl/nbx~; +#X text 212 344 Loop (stops looping when the end is reached); +#X text 652 345 Sets the table and play it.; +#X text 259 259 You can change the table with a set message; +#X msg 103 96 -0.5; +#X text 137 95 Play backwards at speed 0.5; +#X msg 172 201 -1 0.5; +#X text 219 202 Play backwards from 1/2 of the table; +#X obj 118 397 mtl/player~ 1; +#X msg 200 292 panel; +#X text 132 118 ------------ offset ------------; +#X text 26 -5 ------------ playback ------------; +#X text 190 240 ------------ table/file management ------------; +#X text 13 -38 Description: Plays tables and soundfiles.; +#X obj 569 106 table \$0table; +#X obj 571 209 list append \$0table; +#X obj 570 263 soundfiler; +#X msg 570 235 read -resize \$1 \$2; +#X obj 570 291 b; +#X obj 570 315 symbol \$0table; +#X text 242 383 Arguments (in any order): The name of the an external +table and the loop flag.; +#X text 244 292 You can load a sound file in the internal table; +#X connect 2 0 31 0; +#X connect 3 0 31 0; +#X connect 4 0 31 0; +#X connect 5 0 31 0; +#X connect 12 0 31 0; +#X connect 13 0 31 0; +#X connect 16 0 31 0; +#X connect 17 0 38 0; +#X connect 18 0 17 0; +#X connect 20 0 31 0; +#X connect 22 0 31 1; +#X connect 27 0 31 0; +#X connect 29 0 31 0; +#X connect 31 0 19 0; +#X connect 31 0 19 1; +#X connect 31 1 23 0; +#X connect 31 2 0 0; +#X connect 31 3 1 0; +#X connect 32 0 31 0; +#X connect 38 0 40 0; +#X connect 39 0 41 0; +#X connect 40 0 39 0; +#X connect 41 0 42 0; +#X connect 42 0 20 0; diff --git a/player~.pd b/player~.pd new file mode 100644 index 0000000..47169d1 --- /dev/null +++ b/player~.pd @@ -0,0 +1,137 @@ +#N canvas 1028 25 1005 686 10; +#X obj 23 -189 inlet speed; +#X msg 381 -13 set \$1; +#X obj 389 -82 symbol; +#X obj 31 544 outlet~; +#X obj 328 545 outlet~; +#X obj 387 541 outlet size; +#X obj 521 533 outlet done; +#X obj 142 -35 sel 0; +#X obj 34 515 *~; +#X msg 130 475 \$1 5; +#X msg 140 445 1; +#X obj 188 527 spigot; +#X obj 262 390 t b b; +#X msg 260 456 1; +#X obj 159 396 t b b; +#X msg 179 448 0; +#X msg 205 475 0; +#X obj 115 -11 s \$0stop; +#X obj 261 365 r \$0stop; +#X msg 13 -6 1 0; +#X msg 186 21 \$1 0; +#X obj 44 102 unpack f f; +#X obj 105 502 cyclone/Line~; +#X obj 444 104 flatspace/arraysize; +#X msg 444 76 set \$1 \, bang; +#X obj 24 -62 route bang list float; +#X obj 580 -21 iemlib/dollarg; +#X obj 581 -62 loadbang; +#X obj 555 207 table \$0t 3; +#X obj 395 -51 t s s; +#X obj 29 418 cyclone/wave~; +#X obj 32 277 tof/phasorshot~; +#X obj 231 228 ./smpToFreq; +#X obj 30 232 *; +#X msg 187 551 0; +#X obj 816 -118 inlet loop; +#X obj 298 266 spigot 1; +#X obj 350 236 == 0; +#X obj 459 405 t b b b; +#X msg 252 316 0 0; +#X obj 146 136 clip 0 1; +#X obj 585 4 tof/listUnfold; +#X obj 589 30 route symbol float; +#X obj 595 121 f; +#X obj 26 139 moses 0; +#X obj 122 188 -; +#X obj 118 213 abs; +#X obj 15 160 t f b; +#X obj 65 162 t f b; +#X msg 107 159 0; +#X msg 67 195 1; +#X obj 24 -156 route set panel; +#X obj 216 -228 openpanel; +#X obj 216 -154 soundfiler; +#X msg 216 -178 read -resize \$1 \$2; +#X obj 216 -202 list append \$0t; +#X obj 224 -68 t b s; +#X obj 42 65 t a b b; +#X obj 216 -125 b; +#X obj 218 -94 symbol \$0t; +#X connect 0 0 51 0; +#X connect 1 0 30 0; +#X connect 2 0 29 0; +#X connect 7 0 17 0; +#X connect 7 1 20 0; +#X connect 8 0 3 0; +#X connect 9 0 22 0; +#X connect 10 0 9 0; +#X connect 11 0 34 0; +#X connect 12 0 15 0; +#X connect 12 1 13 0; +#X connect 13 0 11 1; +#X connect 14 0 10 0; +#X connect 14 1 16 0; +#X connect 15 0 9 0; +#X connect 16 0 11 1; +#X connect 18 0 12 0; +#X connect 19 0 57 0; +#X connect 20 0 57 0; +#X connect 21 0 44 0; +#X connect 21 1 40 0; +#X connect 22 0 8 1; +#X connect 22 1 11 0; +#X connect 23 0 5 0; +#X connect 23 0 32 0; +#X connect 24 0 23 0; +#X connect 25 0 19 0; +#X connect 25 1 57 0; +#X connect 25 2 7 0; +#X connect 26 0 41 0; +#X connect 27 0 26 0; +#X connect 29 0 1 0; +#X connect 29 1 24 0; +#X connect 30 0 8 0; +#X connect 31 0 30 0; +#X connect 31 0 4 0; +#X connect 31 1 36 0; +#X connect 31 2 36 0; +#X connect 32 0 33 1; +#X connect 33 0 31 0; +#X connect 34 0 31 0; +#X connect 35 0 43 0; +#X connect 36 0 38 0; +#X connect 37 0 36 1; +#X connect 38 0 6 0; +#X connect 38 2 39 0; +#X connect 39 0 31 0; +#X connect 40 0 45 1; +#X connect 41 0 42 0; +#X connect 42 0 2 0; +#X connect 42 1 43 0; +#X connect 43 0 37 0; +#X connect 43 0 31 2; +#X connect 44 0 47 0; +#X connect 44 1 48 0; +#X connect 45 0 46 0; +#X connect 46 0 31 1; +#X connect 47 0 33 0; +#X connect 47 1 50 0; +#X connect 48 0 33 0; +#X connect 48 1 49 0; +#X connect 49 0 45 0; +#X connect 50 0 45 0; +#X connect 51 0 2 0; +#X connect 51 1 52 0; +#X connect 51 2 25 0; +#X connect 52 0 55 0; +#X connect 53 0 58 0; +#X connect 54 0 53 0; +#X connect 55 0 54 0; +#X connect 56 0 25 0; +#X connect 56 1 2 0; +#X connect 57 0 21 0; +#X connect 57 1 14 0; +#X connect 58 0 59 0; +#X connect 59 0 56 0; diff --git a/punch~-help.pd b/punch~-help.pd new file mode 100644 index 0000000..7962326 --- /dev/null +++ b/punch~-help.pd @@ -0,0 +1,25 @@ +#N canvas 170 114 720 484 10; +#X obj 121 105 *~ 0.2; +#X obj 121 68 osc~ 60; +#X text -20 11 Description: Boost the input signal to it's maximum +amplitude while never clipping.; +#X obj 181 68 osc~ 120; +#X obj 181 105 *~ 0.05; +#X obj 246 104 loadbang; +#X msg 246 124 10; +#X obj 10 178 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X obj 152 178 cyclone/Scope~ 130 130 256 3 128 -1 1 0 0 0 0 102 255 +51 135 135 135 0; +#X obj 151 149 mtl/punch~; +#X floatatom 244 145 5 0 0 0 - - -; +#X text -19 40 tags: mix~; +#X connect 0 0 7 0; +#X connect 0 0 9 0; +#X connect 1 0 0 0; +#X connect 3 0 4 0; +#X connect 4 0 9 1; +#X connect 5 0 6 0; +#X connect 6 0 9 2; +#X connect 9 0 8 0; +#X connect 10 0 9 2; diff --git a/punch~.pd b/punch~.pd new file mode 100644 index 0000000..560bfe8 --- /dev/null +++ b/punch~.pd @@ -0,0 +1,25 @@ +#N canvas 56 298 464 314 10; +#X obj 109 76 inlet~; +#X obj 109 123 *~ 10; +#X obj 324 59 inlet; +#X text 365 59 punch power; +#X obj 93 242 outlet~; +#X text 46 27 NEEDS ZEXY; +#X text 48 16 PUNCH BOOSTS THE AMPLITUDE NEVER EXCEEDING 1 or -1; +#X obj 229 76 inlet~; +#X obj 229 123 *~ 10; +#X obj 213 242 outlet~; +#X obj 301 146 tof/argument 1 10; +#X obj 301 122 loadbang; +#X obj 114 187 ./limit~; +#X connect 0 0 1 0; +#X connect 1 0 12 0; +#X connect 2 0 1 1; +#X connect 2 0 8 1; +#X connect 7 0 8 0; +#X connect 8 0 12 1; +#X connect 10 0 1 1; +#X connect 10 0 8 1; +#X connect 11 0 10 0; +#X connect 12 0 4 0; +#X connect 12 1 9 0; diff --git a/qtrack-help.pd b/qtrack-help.pd new file mode 100644 index 0000000..141fe35 --- /dev/null +++ b/qtrack-help.pd @@ -0,0 +1,73 @@ +#N canvas 679 22 502 640 10; +#X obj 90 205 cnv 15 100 100 empty empty empty 20 12 0 14 -258699 -66577 +0; +#X obj 239 336 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X msg 239 223 record; +#X msg 241 245 stop; +#X msg 239 202 play; +#X msg 241 265 print; +#X msg 241 285 write chart.txt; +#X msg 242 305 read chart.txt; +#X msg 238 179 tempo \$1; +#X floatatom 238 162 5 0 0 0 - - -; +#X text 29 397 This one is an interface to qlist.; +#X msg 236 143 loop \$1; +#X obj 236 125 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 +1; +#X floatatom 97 164 5 0 0 0 - - -; +#X msg 97 181 a \$1; +#X floatatom 135 165 5 0 0 0 - - -; +#X floatatom 137 342 5 0 0 0 - - -; +#X floatatom 95 341 5 0 0 0 - - -; +#X msg 135 182 b \$1; +#X text 26 465 If you want to save your chart \, you will need the +unique id to be the same when you open your patch again and read the +file. Therefore \, I recommend using a symbol or a number as a unique +id \, instead of a dollar-0.; +#X text 308 181 1 is the original speed; +#X text 261 336 Banged when done; +#X text 244 95 GNU public license v2.0; +#X obj 45 145 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 0 1; +#X obj 185 356 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 0 1; +#X text 40 128 Messages to be recorded; +#X obj 188 -5 cnv 15 15 15 empty empty seq.qtrack 20 12 0 24 -262144 +-66577 0; +#X text 27 418 You can record a sequence of any list. It will be played +back with the same timing. You can use arbitrary selectors and lists +of any length.; +#X msg 42 164 foo \$1; +#X obj 96 316 route a b foo; +#X text 39 26 seq.qtrack ; +#X text 40 40 Description: Can record any stream of messages and play +it back at different speeds in loop or not.; +#X text 29 532 Comments: This patch is quite powerful and you should +really think about using it if you want to play back complex rhythms +and such. It wraps qlist.; +#X text 30 580 Todo: create a multitrack version; +#X text 243 80 Author: Alexandre Quessy 2006; +#X obj 92 241 mtl/qtrack id; +#X text 40 72 tags: sequencing; +#X connect 2 0 35 1; +#X connect 3 0 35 1; +#X connect 4 0 35 1; +#X connect 5 0 35 1; +#X connect 6 0 35 1; +#X connect 7 0 35 1; +#X connect 8 0 35 1; +#X connect 9 0 8 0; +#X connect 11 0 35 1; +#X connect 12 0 11 0; +#X connect 13 0 14 0; +#X connect 14 0 35 0; +#X connect 15 0 18 0; +#X connect 18 0 35 0; +#X connect 23 0 28 0; +#X connect 28 0 35 0; +#X connect 29 0 17 0; +#X connect 29 1 16 0; +#X connect 29 2 24 0; +#X connect 35 0 29 0; +#X connect 35 1 1 0; diff --git a/qtrack.pd b/qtrack.pd new file mode 100644 index 0000000..4c1456e --- /dev/null +++ b/qtrack.pd @@ -0,0 +1,122 @@ +#N canvas 103 299 915 701 10; +#X obj 285 388 cnv 15 100 100 empty empty empty 20 12 0 14 -258699 +-66577 0; +#X obj 71 83 cnv 15 100 100 empty empty empty 20 12 0 14 -258699 -66577 +0; +#X obj 24 277 cnv 15 100 100 empty empty empty 20 12 0 14 -258699 -66577 +0; +#X msg 525 257 clear; +#X text 398 608 This outlet gets a bang when you hit the end of the +sequence.; +#X msg 525 235 print; +#X obj 214 33 inlet; +#X obj 88 13 inlet; +#X obj 112 129 timer; +#X obj 305 427 qlist; +#X msg 526 280 bang; +#X msg 328 130 tempo \$1; +#X obj 115 216 * 1; +#X obj 645 585 outlet; +#X obj 90 89 t a b b; +#X obj 29 186 t b a; +#X msg 243 191 clear; +#X msg 210 189 1; +#X obj 88 58 spigot; +#X obj 307 110 t f f b; +#X msg 327 251 0; +#X obj 298 170 t b b; +#X obj 5 251 f; +#X obj 95 403 list append; +#X text 136 12 inlet: data to be recorded; +#X text 569 284 sequenced automagically; +#X obj 96 425 route list; +#X obj 209 133 t b b b; +#X obj 93 288 loadbang; +#X text 97 450 add