Repository navigation
cloud-5 version 2.0
This is a new major release of the cloud-5 system for making computer music in Web browsers. See the README.md for detailed instructions on installing and using cloud-5.
cloud-5
All music and examples herein are licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Michael Gogins
The cloud-5 system is a toolkit and library designed for creating computer
music that is hosted on Web servers and that runs and plays in the user's Web
browser. In theory, that can be any current Web browser, even on smartphones
and tablets, although performance might be an issue on less powerful systems.
For examples of such music, see
cloud-music.
The cloud-5 system is based on
my own WebAssembly builds of Csound and CsoundAC. Some pieces may use
third party libraries. The home page of Csound itself is
here.
Code written as part of cloud-5 is licensed under the terms of the same
license as Csound, the
GNU Lesser Public License, version 2.1.
Components and libraries used by cloud-5 come under a variety of open source
licenses; see the links to individual packages for more information.
Introduction
The cloud-5 system is designed for making sophisticated computer music purely
in the HTML5 environment. The system is especially suited for pieces that play
online, for pieces that play indefinitely, for visual music, for algorithmic
composition, and for live coding.
cloud-5 runs on every system with an audio output that can run a Web server
and a standards compliant Web browser. That includes all computers
running macOS, Linux, or Windows, as well as the more powerful smartphones and
tablets.
Release Notes
v2.0
-
Moved cloud-5's Web root directory from
cloud-5to
cloud-5/strudel/website/dist. This makes it possible to integrate
Strudel, Csound, and CsoundAC without any patches or other modifications of
Strudel source code. -
Added one-time singleton creation code for Csound and CsoundAC to
csound_loader.js. -
Simplified the integration of Csound, CsoundAC, and Strudel by ensuring
that Csound and CsoundAC exist as fully initialized global objects in the
JavaScript context (asglobalThis.csoundandglobalThis.csoundac),
before any HTML elements run. -
Updated documentation for running cloud-5 pieces in NW.js.
-
Many bug fixes:
- Enable editing in dat.gui text fields.
- Ensure that opening the Controls menu does not affect the layout of other elements.
- Toggle showing piano roll/hiding shader with showing shader/hiding piano roll.
- Fixed logic for diagnostic levels in
statefulpatterns.mjs. - Removed Record button and handler, and other dead code.
- Removed unnecessary files.
- Clarifed source code in
cloud-5.js. - Enabled rendering to soundfile in NW.js.
- Enabled running Strudel in NW.js.
