Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wiki:programming_audio [2011/04/12 15:55]
201.83.51.4
wiki:programming_audio [2017/03/24 12:41] (current)
djay Add Gwion
Line 3: Line 3:
 {{topic>​programming}} {{topic>​programming}}
  
-.+\\ 
 +\\ 
 + 
 +Note: Before starting a new project, perhaps you would like to join an existing project, or take over any of the [[/​apps/​categories/​unmaintained| Unmaintained Projects ]] ! 
 + 
 +\\ 
 +\\
  
 **Misc information related to dsp/audio programming and development.** **Misc information related to dsp/audio programming and development.**
  
-.+\\ 
 Related pages: Related pages:
-  * midi resources: ​[[http://​wiki.linuxaudio.org/apps/categories/​midi_programming_resources]] +  * [[/apps/dev_apps|List of resources for audio developers]] 
-  * libraries, APIs: [[:​wiki:​programming_libraries|APIs,Code-Libraries for audio,​graphics,​media,​GUIs]] +  * [[:​wiki:​programming_libraries|APIs ​and Code-Libraries for audio,​graphics,​media,​GUIs]] 
-.+\\ 
 + 
 +\\ 
 + 
 +==== Project funding and crowd fund raising ==== 
 + 
 +NOTE: Today, there are many funding sitesHere only those with the following criteria should be listed: 
 +international,​ accept code (open source) projects or musical projects 
 + 
 +  * [[http://​cofundos.org/​]] 
 +  * [[http://​www.kickstarter.com/​start]] 
 +  * [[http://​www.chipin.com/​]] 
 +  * [[http://​www.pledgemusic.com/​sign_up/​artist]] 
 +  * [[https://​www.sellaband.com/​]] 
 +  * [[http://​micropledge.com/​help/​hiw]] 
 +  * [[http://​www.pledgebank.com/​]] 
 +  * [[http://​www.8bitfunding.com/​static.php?​static_id=2]] 
 +  * [[http://​www.indiegogo.com/​about/​howitworks]] 
 +  * [[http://​www.my10dollarfundraiser.com/​]] 
 +  * [[http://​filminteractor.com/​become-sponsor/​iron-sky-21.html]] 
 +  * [[http://​www.mysherpas.com/​en/​base-camp/​general.html]] 
 +  * [[http://​www.inkubato.com/​blog/​en/​learn-more/​]] 
 +  * [[http://​www.startnext.de/​home.html?​newLanguage=en]] 
 +  * [[http://​www.rockethub.com/​learnmore/​intro]] 
 +  * [[http://​www.pozible.com/​]] 
 +  * [[http://​www.sonicangel.com/​docs/​en/​index]] 
 + 
 +\\
  
 ==== Higher-level real-time programming languages ==== ==== Higher-level real-time programming languages ====
   * JStar [[http://​www.cs.waikato.ac.nz/​research/​jstar/​index.html]]   * JStar [[http://​www.cs.waikato.ac.nz/​research/​jstar/​index.html]]
   * " We aim to make it easy to write high-performance parallel programs that can be retargeted to a wide variety of computer architectures. We are developing a new style of parallel programming,​ which separates the program logic from the parallelism details, and enables a program to be moved easily from one computer architecture to another. "   * " We aim to make it easy to write high-performance parallel programs that can be retargeted to a wide variety of computer architectures. We are developing a new style of parallel programming,​ which separates the program logic from the parallelism details, and enables a program to be moved easily from one computer architecture to another. "
-.+\\ 
   * SuperCollider [[http://​supercollider.sourceforge.net/​]]   * SuperCollider [[http://​supercollider.sourceforge.net/​]]
   * SuperCollider is an environment and programming language for real time audio synthesis and algorithmic composition. It provides an interpreted object-oriented language which functions as a network client to a state of the art, realtime sound synthesis server.   * SuperCollider is an environment and programming language for real time audio synthesis and algorithmic composition. It provides an interpreted object-oriented language which functions as a network client to a state of the art, realtime sound synthesis server.
-.+\\ 
 + 
 +  * FAUST- "Is a functional programming language for realtime audio signal processingThe Faust compiler translates DSP \\ specifications into efficient Cpp code. A variety of plateforms and plugin are supported (jack, alsa, ladspa, max, Q, vst, ...) " \\ 
 +  * [[/​apps/​all/​faust| wiki page]]  
 +  * [[/​apps/​all/​faust_online| online compiler ]] 
 +\\ 
 +  * [[http://​www.csounds.com/​about| CSound]] - << Csound is a programming language designed and optimized for sound rendering and signal processing. The language consists of over 1300 opcodes - the operational codes that the sound designer uses to build "​instruments"​ or patches. Although there are an increasing number of graphical "​front-ends"​ for the language, you typically design and modify your patches using a word processor. Usually, you create two text files - a .orc (orchestra) file containing the "​instruments,"​ and a .sco (score) file containing the "​notes. >> 
 +\\
   * Squirrel [[http://​www.squirrel-lang.org/#​overview]]   * Squirrel [[http://​www.squirrel-lang.org/#​overview]]
   * "​Squirrel is a high level imperative, ​ object-oriented programming language, designed to be a light-weight scripting language that fits in the size, memory bandwidth, and real-time requirements of applications like video games. "   * "​Squirrel is a high level imperative, ​ object-oriented programming language, designed to be a light-weight scripting language that fits in the size, memory bandwidth, and real-time requirements of applications like video games. "
-.+\\
   * Serpent [[http://​www.cs.cmu.edu/​~music/​aura/​serpent-info.htm]]   * Serpent [[http://​www.cs.cmu.edu/​~music/​aura/​serpent-info.htm]]
   * " A real-time language for music and animation. Serpent was designed and implemented as a stand-alone,​ general purpose interpreter. Serpent is perhaps ideal as a game scripting language due to its real-time design and support for external C++ objects and C functions. ​ "   * " A real-time language for music and animation. Serpent was designed and implemented as a stand-alone,​ general purpose interpreter. Serpent is perhaps ideal as a game scripting language due to its real-time design and support for external C++ objects and C functions. ​ "
-.+\\
   * UrbiScript [[http://​www.urbiforge.org/​]]   * UrbiScript [[http://​www.urbiforge.org/​]]
   * " Urbi is an open-source software platform to control robots or complex systems in general. It includes a C++ component library called UObject. "   * " Urbi is an open-source software platform to control robots or complex systems in general. It includes a C++ component library called UObject. "
-.+\\
   * Java - with RTSJ-JRE (Real-Time-Specification for Java - Runtime Environment) ​   * Java - with RTSJ-JRE (Real-Time-Specification for Java - Runtime Environment) ​
   * [[http://​www.rtj.org/​| RTSJ Specification etc. ]]    * [[http://​www.rtj.org/​| RTSJ Specification etc. ]] 
Line 35: Line 77:
   * [[http://​www.rtjcom.com/​main.php?​p=home| Real time JVM for embedded devices ]]   * [[http://​www.rtjcom.com/​main.php?​p=home| Real time JVM for embedded devices ]]
   * [[http://​www.jython.org/​| Jython - Write Java with Python]]   * [[http://​www.jython.org/​| Jython - Write Java with Python]]
-. +\\ 
-  * [[http://​www.cython.org/​| Cython]] - Makes possible to write C-like code with Python-Style Syntax (strange ​mix of python and c) +  * [[http://​www.cython.org/​| Cython]] - Makes possible to write C-like code with Python-Style Syntax (mix of python and c) 
-.+\\
   * EEL - hard real-time language, C-like. Home: [[http://​eel.olofson.net/​]] - Article: [[http://​mstation.org/​EEL.php]]   * EEL - hard real-time language, C-like. Home: [[http://​eel.olofson.net/​]] - Article: [[http://​mstation.org/​EEL.php]]
-.+\\
   * Eiffel - "​Eiffel is more than a language; it is a framework for thinking about, designing and implementing object-oriented software. " [[http://​docs.eiffel.com/​book/​why-eiffel/​why-eiffel]]   * Eiffel - "​Eiffel is more than a language; it is a framework for thinking about, designing and implementing object-oriented software. " [[http://​docs.eiffel.com/​book/​why-eiffel/​why-eiffel]]
-.+\\ 
 +  * [[http://​q-lang.sourceforge.net/​| Q - Equational Programming Language ]] - An interpreted,​ dynamically typed functional programming language based on term rewriting which allows you to define functions using symbolic equations. 
 +\\ 
 + 
 +  * [[http://​lua-av.mat.ucsb.edu/​blog/?​page_id=195| LuaAV ]] - "LuaAV is a real-time audiovisual scripting environment based around the Lua scripting language and a collection of libraries."​ 
 +\\ 
 +  * [[http://​chuck.cs.princeton.edu/​| Chuck Progr. Language ]] - Life-Coding,​ "​on-the-fly",​ "​concurrent audio programming language for real-time synthesis, composition,​ performance,​ and analysis."​ 
 +\\ 
 +  * [[http://​embedded.eecs.berkeley.edu/​giotto/​|Giotto Language]] - "The Giotto system consists of a time-triggered programming language, a compiler, and a runtime system. Giotto aims at hard real-time applications with periodic behavior. " 
 +\\ 
 +  * [[http://​ptolemy.eecs.berkeley.edu/​ptolemyII/​tutorial.htm|PtolemyII]] - "​Ptolemy II is an open-source software framework supporting experimentation with actor-oriented design. Actors are software components that execute concurrently and communicate through messages sent via interconnected ports. A model is a hierarchical interconnection of actors."​ 
 +\\ 
 +  * [[http://​archhaskell.wordpress.com/​2009/​08/​01/​atom-a-domain-specific-language-for-hard-realtime-applications/​| Atom (Haskell) ]] - "Atom is a Haskell DSL (domain specific language) for designing hard realtime embedded software. Based on guarded atomic actions (similar to STM (Software Transactional Memory)). " 
 +\\ 
 +\\ 
 +\\ 
 + 
 +  * [[http://​x10-lang.org/​home/​introduction.html| X10 programming language ]] - X10 is a strongly typed, concurrent, imperative, object-oriented programming language designed for productivity and performance on modern multi-core and clustered architectures. X10 augments the familiar class-based object-oriented programming model with constructs to support execution across multiple address spaces, including constructs for a global object model, asynchrony and atomicity. 
 +\\ 
 +  * [[http://​chapel.cray.com/​| Chapel programming language ]]  - << A parallel programming language, designed to improve the productivity of high-end computer users while also serving as a portable parallel programming model that can be used on commodity clusters or desktop multicore systems. Chapel strives to vastly improve the programmability of large-scale parallel computers while matching or beating the performance and portability of current programming models like MPI. >> 
 +\\ 
 +  * [[http://​upc.lbl.gov/​| Berkeley UPC - Unified Parallel C ]] - An extension of the C programming language designed for high performance computing on large-scale parallel machines. 
 +\\ 
 +  * [[http://​www.mcs.anl.gov/​research/​projects/​mpi/​| MPI - The Message Passing Interface Standard]] ​ -  A library specification for message-passing,​ proposed as a standard by a broadly based committee of vendors, implementors,​ and users. 
 + 
 +\\ 
 + 
 +  * [[http://​haxe.org/​doc/​intro| haxe.org]] - A language that translates to different target languages. 
 + 
 +\\ 
 +  * [[https://​github.com/​fennecdjay/​Gwion | Gwion]] - A strongly timed musical language 
 +features templates, function pointers, enum, variadic and more.
  
wiki/programming_audio.1302616545.txt.gz · Last modified: 2011/04/12 15:55 by 201.83.51.4