Giter Site home page Giter Site logo

csound-plugins's Introduction

External plugins for csound

This is a repository for plugins for csound. It includes multiple plugins, where each plugin contains a series of opcodes.


Documentation of all plugins

Go to Documentation


Plugins in this repository

klib

very efficient hashtables (dictionaries) and other data structures for csound

poly

Parallel and sequential multiplexing opcodes, they enable the creation and control of multiple instances of a csound opcode

beosc

additive synthesis implementing the loris model sine+noise

else

A miscellaneous collection of effects (distortion, saturation, ring-modula generators (low freq. noise, chaos attractors, etc), envelope generators, etc.

jsfx

jsfx support in csound, allows any REAPER's jsfx plugin to be loaded and controlled inside csound

pathtools

opcodes to handle paths and filenames in a cross-platform manner


Installation

The recommended way to install plugins is via risset (https://github.com/csound-plugins/risset). Risset itself can be installed via pip install risset.

Then, to install any plugin:

risset update
risset install <pluginname>

For example, to install klib and poly:

risset install klib poly

Using risset to install plugins also ensures integration with other tools like CsoundQt. Risset also can be used to show manual pages, list opcodes, etc.


Manual Installation

Plugins can be manually downloaded from the releases page:

https://github.com/csound-plugins/csound-plugins/releases

The binaries need to be copied to the plugins directory. The directory needs to be created if it does not exist.

Platform Csound Version Plugins Path
linux 6 $HOME/.local/lib/csound/6.0/plugins64
linux 7 $HOME/.local/lib/csound/7.0/plugins64
windows 6 C:\\Users\\$USERNAME\\AppData\\Local\\csound\\6.0\\plugins64
windows 7 C:\\Users\\$USERNAME\\AppData\\Local\\csound\\7.0\\plugins64
macos 6 $HOME/Library/csound/6.0/plugins64
macos 7 $HOME/Library/csound/7.0/plugins64

Note for Mac Users

You will probably have to overcome Apple's security mechanism to use the plugins. Right-click on each plugin and choose "Open with Terminal". Confirm "Open" in the dialog panel.


Build

git clone  https://github.com/csound-plugins/csound-plugins
cd csound-plugins
git submodule update --init --recursive
mkdir build
cd build
cmake ..
cmake --build . --parallel
cmake --install .

csound-plugins's People

Contributors

gesellkammer avatar joachimheintz avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar

csound-plugins's Issues

manual syntax error diode_ringmod

Syntax in manual is wrong.
Must be
aout diode_ringmod ain, kfreq, kdiode=0, kfeedback=0, knonlinear=0, koversample=0
instead of
aout diode_ringmode ain, kfreq, kdiode=0, kfeedback=0, knonlinear=0, koversample=0

building on Windows...

Just tried to do a quick build here on Windows, I have nasm installed. It throws the following build errors:

1>------ Build started: Project: else, Configuration: Debug x64 ------
2>------ Build started: Project: klib, Configuration: Debug x64 ------
3>------ Build started: Project: poly, Configuration: Debug x64 ------
4>------ Build started: Project: sched, Configuration: Debug x64 ------
5>------ Build started: Project: jsusfx_csound_project, Configuration: Debug x64 ------
1>Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26132 for x64
1>Copyright (C) Microsoft Corporation. All rights reserved.
1>
3>Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26132 for x64
4>Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26132 for x64
4>Copyright (C) Microsoft Corporation. All rights reserved.
4>
1>cl /c /I"C:\Program Files\Csound6_x64\include\csound" /I"C:\Users\rory\sourcecode\vcpkg\installed\x64-windows\include" /Zi /Wall /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D USE_DOUBLE /D B64BIT /D "CMAKE_INTDIR="Debug"" /D else_EXPORTS /D _WINDLL /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"else.dir\Debug\" /Fd"else.dir\Debug\vc141.pdb" /Gd /TC /errorReport:prompt /W3";"-std=c99 -fPIC "C:\Users\rory\sourcecode\csound-plugins\src\else\src\else.c"
1>cl : Command line error D8021: invalid numeric argument '/W3;-std=c99'
1>Done building project "else.vcxproj" -- FAILED.
3>Copyright (C) Microsoft Corporation. All rights reserved.
3>
3>cl /c /I"C:\Program Files\Csound6_x64\include\csound" /I"C:\Users\rory\sourcecode\vcpkg\installed\x64-windows\include" /Zi /Wall /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D USE_DOUBLE /D B64BIT /D "CMAKE_INTDIR="Debug"" /D poly_EXPORTS /D _WINDLL /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"poly.dir\Debug\" /Fd"poly.dir\Debug\vc141.pdb" /Gd /TC /errorReport:prompt /W3";"-std=c99 -fPIC "C:\Users\rory\sourcecode\csound-plugins\src\poly\src\poly.c"
3>cl : Command line error D8021: invalid numeric argument '/W3;-std=c99'
3>Done building project "poly.vcxproj" -- FAILED.
4>cl /c /I"C:\Program Files\Csound6_x64\include\csound" /I"C:\Users\rory\sourcecode\vcpkg\installed\x64-windows\include" /Zi /Wall /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D USE_DOUBLE /D B64BIT /D "CMAKE_INTDIR="Debug"" /D sched_EXPORTS /D _WINDLL /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"sched.dir\Debug\" /Fd"sched.dir\Debug\vc141.pdb" /Gd /TC /errorReport:prompt /W3";"-std=c99 -fPIC "C:\Users\rory\sourcecode\csound-plugins\src\sched\src\sched.c"
4>cl : Command line error D8021: invalid numeric argument '/W3;-std=c99'
4>Done building project "sched.vcxproj" -- FAILED.
2>Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26132 for x64
2>Copyright (C) Microsoft Corporation. All rights reserved.
2>
2>cl /c /I"C:\Program Files\Csound6_x64\include\csound" /I"C:\Users\rory\sourcecode\vcpkg\installed\x64-windows\include" /Zi /Wall /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D USE_DOUBLE /D B64BIT /D "CMAKE_INTDIR="Debug"" /D klib_EXPORTS /D _WINDLL /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"klib.dir\Debug\" /Fd"klib.dir\Debug\vc141.pdb" /Gd /TC /errorReport:prompt /W3";"-std=c99 -fPIC "C:\Users\rory\sourcecode\csound-plugins\src\klib\src\klib.c"
2>cl : Command line error D8021: invalid numeric argument '/W3;-std=c99'
2>Done building project "klib.vcxproj" -- FAILED.
5>Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26132 for x64
5>Copyright (C) Microsoft Corporation. All rights reserved.
5>
5>cl /c /I"C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\jsfx-src" /I"C:\Program Files\Csound6_x64\include\csound" /I"C:\Users\rory\sourcecode\vcpkg\installed\x64-windows\include" /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D WDL_FFT_REALSIZE=8 /D "CMAKE_INTDIR="Debug"" /D jsusfx_csound_project_EXPORTS /D _WINDLL /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"jsusfx_csound_project.dir\Debug\" /Fd"jsusfx_csound_project.dir\Debug\vc141.pdb" /Gd /TP /wd4091 /wd4996 /errorReport:prompt /EHsc";"-std=c++11 "C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp"
5>
5>cl : Command line warning D9002: ignoring unknown option '/EH;'
5>cl : Command line warning D9002: ignoring unknown option '/EH-'
5>cl : Command line warning D9002: ignoring unknown option '/EHt'
5>cl : Command line warning D9002: ignoring unknown option '/EHd'
5>cl : Command line warning D9002: ignoring unknown option '/EH='
5>cl : Command line warning D9002: ignoring unknown option '/EH+'
5>cl : Command line warning D9002: ignoring unknown option '/EH+'
5>cl : Command line warning D9002: ignoring unknown option '/EH1'
5>cl : Command line warning D9002: ignoring unknown option '/EH1'
5>jsusfx_csound.cpp
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\jsfx-src\jsusfx.h(97): warning C4244: 'return': conversion from 'EEL_F' to 'float', possible loss of data
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(198): warning C4244: '=': conversion from 'EEL_F' to 'uint8_t', possible loss of data
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(200): warning C4244: '=': conversion from 'EEL_F' to 'uint8_t', possible loss of data
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(201): warning C4244: '=': conversion from 'EEL_F' to 'uint8_t', possible loss of data
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(203): warning C4244: 'initializing': conversion from 'EEL_F' to 'int', possible loss of data
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(1242): warning C4003: not enough actual parameters for macro 'min'
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(1242): error C2589: '(': illegal token on right side of '::'
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(1242): error C2062: type 'unknown-type' unexpected
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(1242): error C2059: syntax error: ')'
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(1396): warning C4003: not enough actual parameters for macro 'min'
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(1396): error C2589: '(': illegal token on right side of '::'
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(1396): error C2062: type 'unknown-type' unexpected
5>C:\Users\rory\sourcecode\csound-plugins\src\jsusfx\csound\jsusfx_csound.cpp(1396): error C2059: syntax error: ')'
5>Done building project "jsusfx_csound_project.vcxproj" -- FAILED.
6>------ Skipped Build: Project: INSTALL, Configuration: Debug x64 ------
6>Project not selected to build for this solution configuration
========== Build: 0 succeeded, 5 failed, 3 up-to-date, 1 skipped ==========

[edit] I'm reluctant to modify the Visual Studio projects to fix these, they should probably be addressed in the cmake config right?

[edit] the source file compile error relating to std::numeric_limits can be fixed by wrapping the call in parenthesis. I'm not sure how to address the command line compiler parameters..

beadsynt segmentation violation

CSound version 6.18.1
risset version 2.1.0
beosc version 1.14.1

Windows 10 and Windows 11

The beadsynt.csd example now generates this output:

PS C:\Users\falkd\Desktop\csdresynt> csound beadsynt.csd
UnifiedCSD:  beadsynt.csd
rtaudio: PortAudio module enabled ...
using callback interface
rtmidi: PortMIDI module enabled
Elapsed time at end of orchestra compile: real: 0.044s, CPU: 0.044s
sorting score ...
        ... done
Elapsed time at end of score sort: real: 0.045s, CPU: 0.045s
--Csound version 6.18 (double samples) Nov 23 2022
[commit: a1580f9cdf331c35dceb486f4231871ce0b00266]
libsndfile-1.1.0
graphics suppressed, ascii substituted
sr = 44100.0, kr = 344.531, ksmps = 128
0dBFS level = 1.0, A4 tuning = 440.0
ftable 101:
deferred alloc for fox.mtx
audio sr = 44100, monaural
opening WAV infile fox.mtx
  defer length 318315
ftable 101:     318315 points, scalemax 20268.840
          _
                            -


                     '                                              -
                 _ _                 _     -    '          _
        .              _      _                          .   '        .        -
_._-________-___________________-________-__________-___________________.____'__
orch now loaded
audio buffered in 4096 sample-frame blocks
PortAudio V19.7.0-devel, revision unknown
   0: dac0 (Microsoft Sound Mapper - Output [MME, 0 in, 2 out])
   1: dac1 (Speakers/Headphones (Intel SST  [MME, 0 in, 2 out])
   2: dac2 (SMT27A550 (Intel SST Audio Devi [MME, 0 in, 2 out])
   4: dac4 (Speakers/Headphones (Intel SST Audio Device (WDM)) [Windows DirectSound, 0 in, 2 out])
   5: dac5 (SMT27A550 (Intel SST Audio Device (WDM)) [Windows DirectSound, 0 in, 2 out])
   6: dac6 (ReaRoute ASIO (x64) [ASIO, 16 in, 16 out])
   7: dac7 (Speakers/Headphones (Intel SST Audio Device (WDM)) [Windows WASAPI, 0 in, 2 out])
   8: dac8 (SMT27A550 (Intel SST Audio Device (WDM)) [Windows WASAPI, 0 in, 2 out])
   9: dac9 (Output (IntelSST Audio Wave for Hdmi) [Windows WDM-KS, 0 in, 2 out])
  10: dac10 (Speakers (IntelSST Audio Wave for IHF) [Windows WDM-KS, 0 in, 2 out])
PortAudio: selected output device 'Speakers/Headphones (Intel SST '
writing 8192 sample blks of 64-bit floats to dac
SECTION 1:
new alloc for instr 1:

csound command: Segmentation violation

After this, CSound quits without playing any sound.

error in naming findFileInPath

in the exmample for findFileInPath ,
i think there is an error:

Spath findFile "fileFind.csd"

must be

Spath findFileInPath "fileFind.csd"

beadsynt example

My goal is to analyze and save a wav file, giving it the extension .mtx, with loristrck_pack, and then then in Csound using beadsynt to read this mtx file again.
I read in the documentation for loristrck_pack:
This is mostly thought to be used in tandem with csound's beadsynt opcode, which performs band-enhanced-additive-synthesis in realtime

In the manual/examples folder of the Csound manual i found the fox.mtx

I tried running the example from the beadsynt documentation https://csound-plugins.github.io/csound-plugins/opcodes/beadsynt.html
but get an error:

INIT ERROR in instr 1 (opcode beadsynt) line 63: bandwidths array is too small
 from file /media/menno/datae/onderzoek/manualExamples/beadsynthNEW.csd (1),aout	beadsynt	kF	kA	kB	-1	iflags	ifreqscale	1	-1	-1	
		   T  0.000 - note deleted.  i1 had 1 init errors

Not yet being familiar with beadsynt, can you please check if the example still works for you?

small issue, but

nevertheless i just file them:

i run the example for the defer opcode, and the printing in the output console is a bit messy here (Linux)
This can be more readable when:
prints "Instr 1 started\n"
defer "prints", "Instr 1 stopped after %.3f seconds\n", kt

security issues on mac

thanks for the great repo, including good documentation. i tried to install together with a student the mac version in our electronic studio (https://github.com/csound-plugins/csound-plugins/releases/download/v1.18.0/csound-plugins--macos-arm64.zip). we followed the steps, but we finally failed because mac os considered the dylibs as "illegal". usually there is a way to allow this via the security panel in the system preferences. but here, it did not work at all in CsoundQt, and for commandline csound only by allowing lib by lib ...
is there any possibility to get this to work on a mac?

Azure pipelines build..

Note really an issue, but I created an Azure pipeline build for OSX that will build and host the compiled plugin binaries. It might be useful for anyone who wants to try out these opcodes. It would be nice to have a Windows build too. Have you ever tried building them on Windows?

Usage of hdf5read crashes the instrument at compile time

Hello everybody
I’m using Cabbage as a frontend for CSound and I’m trying to user hdf5write/hdf5read to save and restore datas to disk.
In a test file I have a line like this:

printks"before hdf5read:\n", 0
;        aArray[], aVar, kVar hdf5read "f:/mypath/src/cabbage/example.h5", "aArray*", "aVar", "kVar" ; Open hdf5 file and read variables
printks"after hdf5read:\n", 0

but if I remove the comment Cabbage suddenly crashes without printing anything before, so it should be a compile time issue.
The same issue occurs when I use CSound standalone.

I’m running under the following SW stack:

Windows 10
CSound 6.16 (double samples) Jul 17 2021
Cabbage 2.8.0

I attach:

CSound instrument [test_3.csd.txt](https://github.com/csound-plugins/csound-plugins/files/7958211/test_3.csd.txt)
CSound output [test_3.txt](https://github.com/csound-plugins/csound-plugins/files/7958212/test_3.txt)
Windows Event Viewer crash [EventViewer.txt](https://github.com/csound-plugins/csound-plugins/files/7958213/EventViewer.txt)

Thank you in advance

Sergio

Recommend Projects

  • React photo React

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

  • Vue.js photo Vue.js

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

  • Typescript photo Typescript

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

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

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

Recommend Topics

  • javascript

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

  • web

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

  • server

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

  • Machine learning

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

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

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

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.