Giter VIP home page Giter VIP logo

manual's Introduction

CSOUND

Version 7.0.0 (beta)

This is the the develop branch of the Csound main code repository. At the moment, we are developing the next main version (moving from 6.x to 7.0), and this branch reflects current work-in-progress. This is still undergoing changes and fixes until the first release, scheduled for September 2024. Anyone seeking the latest 6.x version please checkout the csound6 branch (or the master branch, containing the latest and final release of this version).

Build Status

A sound and music computing system.

Csound is copyright (c) 1991-2020 The Csound Developers, see CONTRIBUTORS

Csound is free software; you can redistribute them and/or modify them under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

Csound is distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this software; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

GETTING STARTED

This repository contains the code for the core Csound library, the interfaces library, and the command-line interface frontend. It also contains specific code for ports to various embedded, mobile and web platforms.

For general project information, please look at http://csound.com, where all details about Csound, what it does, its history, music made with it, and many other things can be found.

The Csound Reference Manual can be found online at http://docs.csound.com.

The Csound API application programming interface reference may be found online at http://csound.github.io/docs/api/index.html.

Information on how to build Csound on various platforms is given in the BUILD.md file at the top level directory of this repository.

Information about build pipelines with Azure and Github actions is given in DockerFiles/Readme.md.

CONTRIBUTORS

Csound contains contributions from musicians, scientists, and programmers from around the world. They include (but are not limited to):

  • Allan Lee
  • Andres Cabrera
  • Anthony Kozar
  • Barry Vercoe
  • Bill Gardner
  • Bill Verplank
  • Dan Ellis
  • David Macintyre
  • Ed Costello
  • Eli Breder
  • Fabio P. Bertolotti
  • Felipe Sataler
  • François Pinot
  • Gabriel Maldonado
  • Greg Sullivan
  • Hans Mikelson
  • Henri Manson
  • Ian McCurdy
  • Istvan Varga
  • Jean Piché
  • Joachim Heintz
  • John Ramsdell
  • John ffitch
  • Marc Resibois
  • Mark Dolson
  • Matt Ingalls
  • Max Mathews
  • Michael Casey
  • Michael Clark
  • Michael Gogins
  • Mike Berry
  • Nate Whetsell
  • Paris Smaragdis
  • Perry Cook
  • Peter Neubäcker
  • Peter Nix
  • Rasmus Ekman
  • Richard Dobson
  • Richard Karpen
  • Rob Shaw
  • Robin Whittle
  • Rory Walsh
  • Sean Costello
  • Stephen Kyne
  • Steven Yi
  • Tito Latini
  • Tom Erbe
  • Victor Lazzarini
  • Ville Pulkki

manual's People

Contributors

a1ro avatar ainola avatar artificiel avatar daveseidel avatar eddyc avatar fggp avatar fsateler avatar gareth8118 avatar gesellkammer avatar gogins avatar hlolli avatar joachimheintz avatar joel-binarybrain avatar jpffitch avatar kengregson avatar kunstmusik avatar mantaraya36 avatar ndim avatar noisesmith avatar nwhetsell avatar oeyvind avatar paulbatchelor avatar peteca avatar pvonn avatar rasmus-e avatar rorywalsh avatar ssaue avatar tgrey1 avatar tjingboem avatar vlazzarini avatar

Stargazers

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

Watchers

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

manual's Issues

Cabbage entry

in the section Front Ends some lines about Cabbage can be added.

EXPERIMENTAL: CUDA opcodes for partitioned convolution direct convolution and sliding phase vocoding;

Don't work without special hardware?

  • can they be made to work - even in non-realtime/offline.

WARNING: could not open library '/Users/rboulanger/Desktop/CCsoundQt-d-cs6.app/Contents/MacOS/../Frameworks/CsoundLib64.framework/Resources/Opcodes64/libwiimote.dylib' (-1)
STARTING FILE
Creating options
Creating orchestra
Creating score
rtmidi: virtual_keyboard module enabled
rtaudio: PortAudio module enabled ...
using blocking interface
error: syntax error, unexpected T_IDENT (token "asig") from file /Library/Frameworks/CsoundLib64.framework/Resources/Manual/examples/cudasliding.csd (1)
line 20:

asig <<<
Parsing failed due to invalid input!
Stopping on parser failure
cannot compile orchestra

Realtime Audiosection of Mac

i think the section Real-Time Audio, that starts here: http://csound.github.io/docs/manual/UsingRealTime.html
can be reorganized: under the heading "Using Csound" there is only talk about "Realtime I/O on Linux", while the next page shows "Windows Real-Time Audio". And even one page further there is talk about Realtime Audio for the Mac, but for a long time i read the words: Coming Soon... :)

Is it not better to change all this into a chapter "Realtime I/O", so Audio and Midi, and then talk about: On Linux, On Windows, On the Mac?
I do not have a Mac, i have no idea if something has to be said about Realtime I/O on a Mac.

Duplicate ids cause problems for fop

Using Mac OSX 10.9 with macports version of [email protected]_0 and
[email protected]_0 (Makefile suggests using the 0.20 branch of fop rather
than 1.0), attempted to build pdf version of 6.02 manual, duplicate "ids"
cause errors like:

[ERROR]
file:/Downloads/sourceforge.net/csound/manual6/Csound6.02_manual.fo:81805:256
The id "IndexTurnoff" already exists in this document

It seems there are duplicate id's declared in the source for: FlagsDaemon,
IndexDaemon, FlagsMinusPort, IndexMinusPprt, FlagsMinusSched, IndexSchedule,
and IndexTurnoff. [IndexMinusPprt is correct but may be an unintentional mis-spelling]

Got the pdf to gen by renaming (both instances of) the second occurrence of
each in the .fo file. Not sure what I'm going to do with the 3,296 page pdf
but I have one now.

bmscan?

grep "bmscan" *.html reveals that there still about 20 references to the opcode bmscan.
Is it save to eliminate all these references?

hrtfearly example .csd - can't find the required "hrtf files" from the manual

Note that most examples in the manual that use samples are able to "locate" them from the manual example itself. In this case, one needs to set up paths, or environment variables, or copy the example .csd plus the needed hrtf.dat files to a folder or the desktop. It is working great, but requires more work than most examples to get it to work.

section in the Csound Reference Manual for third-party opcodes

Since the 3 Loris opcodes are no longer part of the Csound tree (since 5.15), i think they can be moved to the Deprecated Orchestra Opcodes and GEN Routines section.

Also, the Loris Opcodes text in Spectral Processing should mention that they are no longer supported.
Perhaps the word Deprecated can be placed in manual/index.html behind Spectral Processing, Loris Opcodes ?

JackoInit

In the JackoInit opcode manual it says:

Syntax
JackoInit SclientName, ServerName

then

SclientName -- The name of the Jack client; normally, should be "csound".
ServerName -- The name of the Jack daemon; normally, will be "default".

But in the example:

instr 1

JackoInit "default", "csound"
JackoInfo

endin

Not sure if the error is in the csound example (switched parameters) or if this opcode is broken as well.

For

JackoInit "jackd", "csound"

I get

csound -b2048 -B4096 -+rtaudio=jack -odac -+jack_client=csnd-aeolus.csd --env:CSNOSTOP=yes /home/hlolli/Programs/csoundqt-0.9.0-src/bin/csnd-aeolus.csd
virtual_keyboard real time MIDI plugin for Csound
WARNING: STK opcodes not available: define environment variable RAWWAVE_PATH
(points to rawwaves directory) to use STK opcodes.
0dBFS level = 32768.0
Csound version 6.07 (double samples) Nov 26 2015
libsndfile-1.0.25
Reading options from $HOME/.csound6rc
UnifiedCSD: /home/hlolli/Programs/csoundqt-0.9.0-src/bin/csnd-aeolus.csd
STARTING FILE
Creating options
Creating orchestra
Creating score
rtaudio: JACK module enabled
rtmidi: ALSA Raw MIDI module enabled
WARNING: STK opcodes not available: define environment variable RAWWAVE_PATH
(points to rawwaves directory) to use STK opcodes.
instr jackin uses instrument number 2
Elapsed time at end of orchestra compile: real: 0.003s, CPU: 0.003s
sorting score ...
... done
Elapsed time at end of score sort: real: 0.003s, CPU: 0.003s
--Csound version 6.07 (double samples) Nov 26 2015
graphics suppressed, ascii substituted
0dBFS level = 1.0
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
Could not create Jack client "csound" -- is Jack server "jackd" running? Status: 17
inactive allocs returned to freespace
end of score. overall amps: 0.00000 0.00000
overall samples out of range: 0 0
0 errors in performance
Elapsed time at end of performance: real: 0.007s, CPU: 0.003s

Press return to continue

(obviously jack is running on my machine)

more information on condtions cuda etc.

In the experimental section all the information about the conditions of experimental opcodes should be given. This allows more people to participate in the experiment - knowing that these are really experimental and not (yet) part of the official edition of Csound.
How to install it, where to find dependent packages...
OR
(even better) create a link on /manual/html/ExperimentalTop.html to point to the Csound Wiki of github : https://github.com/csound/manual/wiki
where all experiments and gained knowledge can be shared

First candidates are: Cuda opcodes and Loris opcodes

VST opcodes

Victor tells me that "due to licensing issues" these opcodes are not distributed with the binary builds of Csound. Perhaps it should be noted in the manual that one needs to build from sources to explore these opcodes - (and there might be others in the category too?) And. there need to be clear, step-by-step instructions in the manual for how to build from sources on each OS.

!= example .csd - perf error vco2 not initialized

STARTING FILE
Creating options
Creating orchestra
Creating score
rtaudio: PortAudio module enabled ...
using blocking interface
Elapsed time at end of orchestra compile: real: 0.001s, CPU: 0.001s
sorting score ...
... done
Elapsed time at end of score sort: real: 0.001s, CPU: 0.001s
--Csound version 6.06 (double samples) Sep 29 2015
midi channel 1 using instr 1
midi channel 2 using instr 1
midi channel 3 using instr 1
midi channel 4 using instr 1
midi channel 5 using instr 1
midi channel 6 using instr 1
midi channel 7 using instr 1
midi channel 8 using instr 1
midi channel 9 using instr 1
midi channel 10 using instr 1
midi channel 11 using instr 1
midi channel 12 using instr 1
midi channel 13 using instr 1
midi channel 14 using instr 1
midi channel 15 using instr 1
midi channel 16 using instr 1
0dBFS level = 1.0
orch now loaded
audio buffered in 1024 sample-frame blocks
PortAudio V19-devel (built Sep 4 2014 22:30:30)
0: adc0 (Built-in Microph)
PortAudio: selected input device 'Built-in Microph'
reading 4096-byte blks of shorts from adc (RAW)
0: dac0 (Built-in Output)
PortAudio: selected output device 'Built-in Output'
writing 2048 sample blks of 64-bit floats to dac
SECTION 1:
ftable 1:
new alloc for instr 1:
new alloc for instr 1:
instr 1: ipch = 277.190
new alloc for instr 1:
PERF ERROR in instr 1: vco2: not initialised
asig vco2 .7 ipch 0 0 0 0
note aborted
PERF ERROR in instr 1: vco2: not initialised
asig vco2 .7 ipch 0 0 0 0
note aborted
B 0.000 .. 0.500 T 0.500 TT 0.500 M: 0.81636 0.81636
Score finished in csoundPerformKsmps().
inactive allocs returned to freespace
end of score. overall amps: 0.81636 0.81636
overall samples out of range: 0 0
2 errors in performance
Elapsed time at end of performance: real: 0.774s, CPU: 0.049s
closing device
22 2048 sample blks of 64-bit floats written to dac

Need Alsa sequencer documentation

According to this mail, we have an Alsa midi sequencer driver, but up until now i don't know how to use it because of the lack of good documentation.

Here is the mail about its announcement:

Selected post Aug 27, 2012; 9:41am
Re: Suggestion for rtmidi=alsa ...
Tito Latini

In reply to this post by jpff
In git (no documentation).

Memorandum about the syntax of the connections:

-M address_list
-Q address_list

where:

address_list ::= address[,address,...]

address ::= client_number[:port_number]
address ::= client_name[:port_number]

client_number and port_number are integers >= 0

The default port_number is 0.

client_name is a string where the first char is not a number
(I can change it if it is a limitation)

Example with `CsOptions':

-odac ; etc -+rtmidi=alsaseq ;; The default name of the client is 'Csound' -+alsaseq_client="Csound ALSA Sequencer Test" ;; If there are spaces in the name of the client, ;; we can put it between the "..." -M 20,"USB MIDI Controller:1",128:3,keykit:1 -Q LinuxSampler,LinuxSampler:1

;; Also the follow is valid
;; -M "20,USB MIDI Controller:1,128:3,keykit:1"
;;
;; Here is an extreme example that uses the characters ','
;; and ':' in the name of the client.
;;
;; -M "Uno,Due,Tre:4"
;;
;; The name of the client is Uno,Due,Tre:4 and the port is 0.
;; Idem but the port is 1 (it also works without escape for ':')
;;
;; -M "Uno,Due,Tre:4:1"
;;

tito

Here is the output in Blue of one of my efforts to understand it:

Render Command ( csound -+msg_color=false -+rtaudio=JACK -o dac:system:playback_ -d -m135 -+rtmidi=alsaseq -M 20,"Csound" /home/menno/bluedata/2015/tempCsd5074643857423571650.csd --env:SFDIR=/home/menno/bluedata/2015 )
UnifiedCSD: /home/menno/bluedata/2015/tempCsd5074643857423571650.csd
STARTING FILE
Creating orchestra
Creating score
Error: define environment variable RAWWAVE_PATH
(points to rawwaves directory) to use STK opcodes.
rtaudio: JACK module enabled
ftable 1:
ftable 2:
ftable 3:
Elapsed time at end of orchestra compile: real: 0.008s, CPU: 0.008s
sorting score ...
... done
Elapsed time at end of score sort: real: 0.008s, CPU: 0.008s
--Csound version 6.04 (double samples) Mar 7 2015
midi channel 1 using instr 1
midi channel 2 using instr 2
midi channel 3 using instr 3
midi channel 4 using instr 4
midi channel 5 using instr 1
midi channel 6 using instr 1
midi channel 7 using instr 1
midi channel 8 using instr 1
midi channel 9 using instr 1
midi channel 10 using instr 1
midi channel 11 using instr 1
midi channel 12 using instr 1
midi channel 13 using instr 1
midi channel 14 using instr 1
midi channel 15 using instr 1
midi channel 16 using instr 1
displays suppressed
0dBFS level = 1.0
ALSASEQ: opened MIDI input sequencer
ALSASEQ: created input port 'Csound' 130:0
ALSASEQ: connected from 20:0
ALSASEQ: connection failed from "Csound", port 0 (Operation not permitted)
orch now loaded
audio buffered in 256 sample-frame blocks
0: dac:system:playback_ (system:playback_)
1: dac:PulseAudio JACK Source:front-left (PulseAudio JACK Source:front-left)
2: dac:PulseAudio JACK Source:front-right (PulseAudio JACK Source:front-right)
3: dac:PulseAudio JACK Source:rear-left (PulseAudio JACK Source:rear-left)
4: dac:PulseAudio JACK Source:rear-right (PulseAudio JACK Source:rear-right)
5: dac:PulseAudio JACK Source:front-center (PulseAudio JACK Source:front-center)
6: dac:PulseAudio JACK Source:lfe (PulseAudio JACK Source:lfe)
7: dac:PulseAudio JACK Source:side-left (PulseAudio JACK Source:side-left)
8: dac:PulseAudio JACK Source:side-right (PulseAudio JACK Source:side-right)
9: dac:PulseAudio JACK Source:aux (PulseAudio JACK Source:aux)
WARNING: not autoconnecting input channel 1
(needs manual connection)
WARNING: not autoconnecting input channel 2
(needs manual connection)
writing 512 sample blks of 64-bit floats to dac:system:playback_
SECTION 1:
ftable 4:
*** error reading MIDI device: -2 (Unknown MIDI error)
*** error reading MIDI device: -2 (Unknown MIDI error)

rifft?

Not a biggie, but why does "rifft" show up in the manual between "inz" and "JackoAudioIn"?

Midi Sequencer

In http://csound.github.io/docs/manual/UsingRealTime.html i read about Linux Midi:
"MIDI Input
Csound does not automatically create its own ALSA sequencer port. It creates an ALSA raw midi port each time it runs"

I am using a Linux system with Jack and have set the Midi Driver option of Alsa to Midi Sequencer - instead of Midi Raw Mode. So this works. But i would like to know more about the differences between them and when to choose one.
At least the option of Midi Sequencer could be mentioned - personally i don't know much about the Midi Sequencer itself, apart from being newer. I'd like more info.

slicearray?

Again - not a biggie, but why does "slicearray" show up in the manual between "tabplay" and "tabsum"?

canonical csound manual entry for location of sources

http://www.csounds.com/manual/html/BuildingCsound.html
opening para etc still refers to obtaining sources from sourceforge and to csound5 git pull:

"This section focuses on the main Csound 5 build system, which uses SCons, a Python program that replaces make for cross-platform configuration and building.
"When building Csound from source instead of using a precompiled package, you first need to obtain the sources for a release of Csound at http://www.sourceforge.net/projects/csound. The source packages have either a zip or tar.gz extension.
"The latest (possibly unstable) Csound source code is also available through GIT. The Csound GIT front page is located at: http://csound.git.sourceforge.net/git/gitweb-index.cgi. Using git for just checking out and compiling is pretty easy. Install GIT for your platform and use this command to clone the Csound5 git repository:
"git clone git://git.code.sf.net/p/csound/csound5-git
"
etc
thanks,

David (Worrall)

manual example not working: vstinit

STARTING FILE
Creating options
Creating orchestra
Creating score
rtaudio: PortAudio module enabled ...
using blocking interface
error: syntax error, unexpected T_IDENT (token "vstinit") from file /Users/rboulanger/Desktop/vst4cs.csd (1)
line 14:

gipianoteq vstinit <<<
Unexpected untyped word gipianoteq when expecting a variable
Parsing failed due to invalid input!
Stopping on parser failure
cannot compile orchestra

+=

the page += is named = , so there are 2 pages named =

update Csound links

the section Csound Links should mention the 2 Csound home pages we have nowadays.

also, in the same section, the links to the csound mailing list can be updated

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.