Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Max (software)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Visual programming language}} {{distinguish|Autodesk 3ds Max}} {{Infobox software | name = Max | logo = Logo Max 8 software.jpg | logo_size = 140px | screenshot = | caption = | developer = [[Cycling '74]] | latest release version = {{wikidata|property|preferred|references|edit|Q1707206|P348|P548=Q2804309}} | latest release date = {{wikidata|qualifier|preferred|single|Q1707206|P348|P548=Q2804309|P577}} | latest preview version = | latest preview date = | programming language = [[C (programming language)|C]], [[C++]] (on [[JUCE]] platform) | operating system = [[Microsoft Windows]], [[macOS]] | genre = [[Music]] and [[multimedia]] development | license = [[Proprietary software|Proprietary]] | website = {{URL|https://cycling74.com/products/max}} }} '''Max''', also known as '''Max/MSP/Jitter''', is a [[visual programming language]] for [[music]] and [[multimedia]] developed and maintained by [[San Francisco]]-based software company [[Cycling '74]]. Over its more than thirty-year history, it has been used by [[composer]]s, performers, [[software design]]ers, researchers, and artists to create recordings, performances, and installations.<ref>{{Cite news|url=http://www.hopesandfears.com/hopes/culture/music/168579-max-msp-primer|title=Max/MSP for average music junkies|work=Hopes&Fears|access-date=2018-09-16}}</ref> The Max program is modular, with most routines existing as [[shared library|shared libraries]]. An [[application programming interface]] (API) allows third-party development of new routines (named ''external objects''). Thus, Max has a large user base of programmers unaffiliated with Cycling '74 who enhance the software with commercial and non-commercial [[Software extension|extension]]s to the program. Because of this [[Extensibility|extensible]] design, which simultaneously represents both the [[Computer program|program]]'s structure and its [[graphical user interface]] (GUI), Max has been described as the [[lingua franca]] for developing interactive music performance software.<ref>{{cite web|last1=Place|first1=T.|last2=Lossius|first2=T.|website=Jamoma|url=http://www.jamoma.org/papers/jamoma-icmc2006.pdf|title=A modular standard for structuring patches in Max|publisher=In Proc. of the International Computer Music Conference 2006|pages=143β146|location=New Orleans, US|date=2006|access-date=2011-02-16|archive-url=https://web.archive.org/web/20110726201223/http://www.jamoma.org/papers/jamoma-icmc2006.pdf|archive-date=2011-07-26|url-status=dead}}</ref> ==History== === 1980s === [[Miller Puckette]] began work on Max in 1985, at the [[IRCAM|Institut de Recherche et Coordination Acoustique/Musique]] (IRCAM) in [[Paris]].<ref>{{cite journal|url=https://quod.lib.umich.edu/cache//b/b/p/bbp2372.1985.043/bbp2372.1985.043.pdf|archive-url=https://web.archive.org/web/20200815043521/https://quod.lib.umich.edu/cache//b/b/p/bbp2372.1985.043/bbp2372.1985.043.pdf|url-status=dead|archive-date=August 15, 2020|title=Synthetic Rehearsal: Training the Synthetic Performer|access-date=2008-08-22}}</ref><ref>{{cite journal|url=https://quod.lib.umich.edu/i/icmc/bbp2372.1985.043/1/--synthetic-rehearsal-training-the-synthetic-performer?page=root;size=150;view=text |title=Synthetic Rehearsal: Training the Synthetic Performer |journal=International Computer Music Conference Proceedings |publisher=ICMC |date=1985 |volume=1985 |access-date=2018-09-19|last1=Barry |first1=Vercoe |last2=Miller |first2=Puckette }}</ref> Originally called ''The Patcher'', this first version provided composers with a graphical interface for creating interactive [[computer music]] scores on the [[Macintosh]]. At this point in its development Max couldn't perform its own real-time sound synthesis in software, but instead sent control messages to external hardware synthesizers and samplers using [[MIDI]] or a similar [[Protocol (computing)|protocol]].<ref>{{cite journal|url=http://msp.ucsd.edu/Publications/icmc88.pdf |title= The Patcher |author= Puckette, Miller S.|publisher= ICMC|date= 11 August 1988|access-date=2018-08-22}}</ref> Its earliest widely recognized use in composition was for ''Pluton'', a 1988 piano and computer piece by [[Philippe Manoury]]; the software synchronized a computer to a piano and controlled a [[Sogitec 4X]] for audio processing.<ref name="pluton">{{cite web|url=http://www-crca.ucsd.edu/~msp/pdrp/latest/patch/manoury-pluton/doc/history.htm |title=Pd Repertory Project - History of ''Pluton'' |publisher=CRCA |last=Puckette |first=Miller S. |archive-url=https://web.archive.org/web/20040707132901/http://www-crca.ucsd.edu/~msp/pdrp/latest/patch/manoury-pluton/doc/history.htm |archive-date=2004-07-07 |access-date=March 3, 2012}}</ref> In 1989, IRCAM developed ''Max/FTS'' ("Faster Than Sound"), a version of Max ported to the [[ISPW|IRCAM Signal Processing Workstation]] (ISPW) for the [[NeXT]]. Also known as "Audio Max", it would prove a forerunner to Max's MSP audio extensions, adding the ability to do real-time synthesis using an internal hardware [[digital signal processor]] (DSP) board.<ref name="ircam_history">{{cite web| url=http://freesoftware.ircam.fr/article.php3?id_article=5 |title=A brief history of MAX |publisher=IRCAM |archive-url=https://web.archive.org/web/20090603230029/http://freesoftware.ircam.fr/article.php3?id_article=5 |archive-date=2009-06-03 }}</ref><ref name="cycling_'74_history">{{cite web|url=http://www.cycling74.com/twiki/bin/view/FAQs/MaxMSPHistory#Where_did_MaxMSP_come_from |title=Max/MSP History - Where did Max/MSP come from? |publisher=Cycling74 |archive-url=https://web.archive.org/web/20090609205550/http://www.cycling74.com/twiki/bin/view/FAQs/MaxMSPHistory |archive-date=2009-06-09 |access-date=March 3, 2012}}</ref> In 1989, IRCAM worked with Joel Chadabe and Ben Austin of Intelligent Computer Music Systems to license the software for commercial sales in the United States. With the 1990 bankruptcy of Intelligent Computer Music Systems, both the ''Max'' Software and Ben Austin moved to [[Opcode Systems]], which became the publisher of record for ''Max''.<ref>[https://books.google.com/books?id=HZtGs5_z4zIC&dq=max+intelligent+music+joel+chadabe&pg=PA241 The Contemporary Violin: Extended Performance Techniques By Patricia Strange, Allen Strange] Accessed 10 September 2018</ref> === 1990s === Although Opcode launched its commercial version named ''Max'' in 1990, developed and extended by [[David Zicarelli]], the product was becoming a poor fit for Opcode, which was squarely towards commercial music production. Thus Zicarelli in 1997 acquired the publishing rights and founded a new company, Cycling '74, to continue commercial development.<ref>{{cite book |last1=Battino |first1=David |last2=Richards |first2=Kelli |title=The Art of Digital Music |date=2005 |publisher=Backbeat Books |isbn=0-87930-830-3 |page=[https://archive.org/details/artofdigitalmusi00davi/page/110 110] |url-access=registration |url=https://archive.org/details/artofdigitalmusi00davi/page/110 }}</ref><ref>{{cite web|url=http://cycling74.com/company/|title=About Us|publisher=Cycling74.com|access-date=March 3, 2012}}</ref><ref>{{cite web|url=http://cycling74.com/support/faq_max4/|title=FAQ Max4|publisher=Cycling74.com|access-date=March 3, 2012}}</ref> The timing was fortunate, as Opcode was acquired by [[Gibson Guitar Corporation|Gibson Guitar]] in 1998 and ended operations in 1999.<ref>{{Cite web |url=http://news.harmony-central.com/News/1999/Opcode-Changes.html |title=Harmony Central News |access-date=2018-08-23 |archive-url=https://web.archive.org/web/20071027094815/http://news.harmony-central.com/News/1999/Opcode-Changes.html |archive-date=2007-10-27 |url-status=dead }}</ref> IRCAM's in-house Max development was also winding down; the last version produced there was ''jMax'', a direct descendant of Max/FTS developed in 1998 for [[Silicon Graphics]] (SGI) and later for [[Linux]] systems. It used Java for its graphical interface and C for its real-time backend, and was eventually released as [[open-source software]]. [[File:Setups @ One Step Beyond at Museum of Natural History 2010-09-09.jpg|thumb|200x200px|Various synthesizers and instruments connected to Max]] Meanwhile, Puckette had independently released a fully redesigned open-source composition tool named ''[[Pure Data]]'' (Pd) in 1996, which, despite some underlying engineering differences from the IRCAM versions, continued in the same tradition. Cycling '74's first Max release, in 1997, was derived partly from Puckette's work on Pure Data. Called ''Max/MSP'' ("Max Signal Processing", or the initials Miller Smith Puckette), it remains the most notable of Max's many extensions and incarnations: it made Max capable of manipulating real-time [[digital audio]] signals without dedicated DSP hardware. This meant that composers could now create their own complex synthesizers and effects processors using only a general-purpose computer like the Macintosh [[PowerBook G3]]. In 1999, the [[Netochka Nezvanova (author)|Netochka Nezvanova]] collective released ''[[nato.0+55+3d|NATO.0+55+3d]]'', a suite of externals that added extensive real-time video control to Max. === 2000s === Though NATO.0+55+3d became increasingly popular among multimedia artists, its development stopped abruptly in 2001. ''[[SoftVNS]]'', another set of extensions for visual processing in Max, was released in 2002 by Canadian media artist [[David Rokeby]]. Cycling '74 released their own set of video extensions, ''Jitter'', alongside Max 4 in 2003, adding real-time video, [[OpenGL]] graphics, and [[matrix (mathematics)|matrix]] processing capabilities. Max 4 was also the first version to run on [[Windows]]. Max 5, released in 2008, redesigned the patching GUI for the first time in Max's commercial history. === 2010s === In 2011, Max 6 added a new audio engine compatible with 64-bit operating systems, integration with [[Ableton Live]] sequencer software, and an extension called Gen, which can compile optimized Max patches for higher performance.<ref>{{cite web|url=http://cycling74.com/products/gen/|title=GEN - Extend the power of Max|publisher=Cycling74.com}}</ref> Max 7 was released in 2014 and focused on 3D rendering improvements.<ref>{{cite web|publisher=Cycling '74|date=2014|title=Max 7 is Patching Reimagined|url=https://cycling74.com/max7/}}</ref> On June 6, 2017, [[Ableton]] announced its purchase of Cycling '74, with Max continuing to be published by Cycling '74 and David Zicarelli remaining with the company.<ref>[http://cdm.link/2017/06/conversation-david-zicarelli-gerhard-behles/ A conversation with David Zicarelli and Gerhard Behles, Peter Kirn - June 6, 2017] Accessed 10 September 2018</ref> On September 25, 2018, Max 8 was released.<ref>{{Cite web|url=https://cycling74.com/articles/max-8-is-here|title=Article: Max 8 is here {{!}} Cycling '74|website=cycling74.com|language=en|access-date=2019-01-13}}</ref> Some of the new features include MC, a new way to work with multiple channels, JavaScript support with Node for Max, and Vizzie 2.<ref>{{Cite web|url=https://cycling74.com/products/max-features|title=What's New in Max 8? {{!}} Cycling '74|website=cycling74.com|language=en|access-date=2019-01-13}}</ref> === 2020s === On October 29, 2024, Max 9, the most recent major version of the software, was released. ==Language== {{Unreferenced section|date=January 2015}} [[File:LandMap Max patcher.jpg|thumb|356x356px|Screenshot of an older Max/Msp interface]] Max is named after composer [[Max Mathews]], and can be considered a descendant of his [[MUSIC-N|MUSIC]] language, though its graphical nature disguises that fact.<ref>{{Cite web |last=Puckette |first=Miller |title=Max at Seventeen |url=http://msp.ucsd.edu/Publications/dartmouth-reprint.dir/dartmouth-reprint.html |access-date=2023-06-23 |website=msp.ucsd.edu}}</ref> Like most [[MUSIC-N]] languages, Max distinguishes between two levels of time: that of an ''event'' scheduler, and that of the DSP (this corresponds to the distinction between k-rate and a-rate processes in [[Csound]], and control rate vs. audio rate in [[SuperCollider]]). The basic language of Max and its sibling programs is that of a data-flow system: Max programs (named ''patches'') are made by arranging and connecting building-blocks of ''objects'' within a ''patcher'', or visual canvas. These objects act as self-contained programs (in reality, they are dynamically linked libraries), each of which may receive input (through one or more visual ''inlets''), generate output (through visual ''outlets''), or both. Objects pass messages from their outlets to the inlets of connected objects. Max supports six basic atomic data types that can be transmitted as messages from object to object: int, float, list, symbol, bang, and signal (for MSP audio connections). Several more complex data structures exist within the program for handling numeric arrays (''table'' data), hash tables (''coll'' data), XML information (''pattr'' data), and JSON-based dictionaries (''dict'' data). An MSP data structure (''buffer~'') can hold digital audio information within program memory. In addition, the Jitter package adds a scalable, multi-dimensional data structure for handling large sets of numbers for storing video and other datasets (''matrix'' data). Max is typically learned through acquiring a vocabulary of objects and how they function within a patcher; for example, the ''metro'' object functions as a simple metronome, and the ''random'' object generates random integers. Most objects are non-graphical, consisting only of an object's name and several arguments-attributes (in essence class properties) typed into an ''object box''. Other objects are graphical, including sliders, number boxes, dials, table editors, pull-down menus, buttons, and other objects for running the program interactively. Max/MSP/Jitter comes with about 600 of these objects as the standard package; extensions to the program can be written by third-party developers as Max patchers (e.g. by encapsulating some of the functionality of a patcher into a sub-program that is itself a Max patch), or as objects written in [[C (programming language)|C]], [[C++]], [[Java (programming language)|Java]], or [[JavaScript]]. The order of execution for messages traversing through the graph of objects is defined by the visual organization of the objects in the patcher itself. As a result of this organizing principle, Max is unusual in that the program logic and the interface as presented to the user are typically related, though newer versions of Max provide several technologies for more standard GUI design. Max documents (named patchers) can be bundled into stand-alone applications and distributed free or sold commercially. In addition, Max can be used to author audio and MIDI [[Plug-in (computing)|plugin]] software for [[Ableton Live]] through the Max for Live extension. With the increased integration of [[laptop]] computers into live music performance (in [[electronic music]] and elsewhere), Max/MSP and Max/Jitter have received attention as a development environment available to those serious about laptop music/video performance. Programs sharing Max's visual programming concepts are now commonly used for real-time audio and video synthesis and processing. ==See also== * [[Pure Data]] * [[Comparison of audio synthesis environments]] * [[List of music software]] * [[Visual programming language]] ==References== {{Reflist}} ==External links== *{{Official website|//cycling74.com/products/max/}} {{Computer music}} {{DEFAULTSORT:Max (Software)}} [[Category:Audio programming languages]] [[Category:MacOS multimedia software]] [[Category:Software synthesizers]] [[Category:Visual programming languages]] [[Category:Windows multimedia software]] [[Category:Creative coding]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Ambox
(
edit
)
Template:Cite book
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite news
(
edit
)
Template:Cite web
(
edit
)
Template:Computer music
(
edit
)
Template:Distinguish
(
edit
)
Template:Infobox
(
edit
)
Template:Infobox software
(
edit
)
Template:Main other
(
edit
)
Template:Official website
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Template other
(
edit
)
Template:Unreferenced
(
edit
)
Template:Unreferenced section
(
edit
)