Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3678299.3678336acmotherconferencesArticle/Chapter ViewAbstractPublication PagesamConference Proceedingsconference-collections
research-article
Open access

Live Coding Melody and Harmony in JavaScript

Published: 18 September 2024 Publication History

Abstract

This paper introduces a representation of melody and harmony for a live coding JavaScript library, Konduktiva, capable of generating and playing music in real time. That representation further targets flexibility and integration with Konduktiva’s agents. By improving Konduktiva to provide an API that is compatible with basic music theory and designed for ease of use in live coding, we have produced a platform for music production and future research on live coding and algorithmic composition.

References

[1]
[1 ] Aaron, Sam. 2011. “Sonic Pi.” https://sonic-pi.net/.
[2]
[2 ] Aaron, Samuel, and Alan F Blackwell. 2013. “From Sonic Pi to Overtone: Creative Musical Experiences with Domain-Specific and Functional Languages.” In Proceedings of the First ACM SIGPLAN Workshop on Functional Art, Music, Modeling & Design, 35–46.
[3]
[3 ] Bell, Renick. 2010. “Conductive-Base.” https://hackage.haskell.org/package/conductive-base.
[4]
[4 ] ———. 2013. “An Approach to Live Algorithmic Composition Using Conductive.” In Linux Audio Conference 2013, 29. Citeseer.
[5]
[5 ] ———. 2014. “Experimenting with a Generalized Rhythmic Density Function for Live Coding.” In Linux Audio Conference.
[6]
[6 ] ———. 2022. “Konduktiva.” https://konduktiva.org/doku.php?id=start.
[7]
[7 ] Bell, Renick, and Joana Chicau. 2018. “A Trans-Disciplinary Tool for Collaborative, Choreographed, and Embodied Audio-Visual Live Coding.”
[8]
[8 ] Bellman, Richard. 1954. “The Theory of Dynamic Programming.” Bulletin of the American Mathematical Society 60 (6): 503–15. https://doi.org/10.1090/S0002-9904-1954-09848-8.
[9]
[9 ] Benetos, Emmanouil, Simon Dixon, Zhiyao Duan, and Sebastian Ewert. 2018. “Automatic Music Transcription: An Overview.” IEEE Signal Processing Magazine 36 (1): 20–30.
[10]
[10 ] Blackwell, Alan F. 2015. “Patterns of User Experience in Performance Programming.” In Proc. First International Conference on Live Coding.
[11]
[11 ] Blackwell, Alan F, and Nick Collins. 2005. “The Programming Language as a Musical Instrument.” In PPIG, 11.
[12]
[12 ] Boulanger, Richard. 2000. The Csound Book: Perspectives in Software Synthesis, Sound Design, Signal Processing, and Programming. MIT press.
[13]
[13 ] Chen, Ke, Cheng-i Wang, Taylor Berg-Kirkpatrick, and Shlomo Dubnov. 2020. “Music Sketchnet: Controllable Music Generation via Factorized Representations of Pitch and Rhythm.” arXiv Preprint arXiv:2008.01291.
[14]
[14 ] Chomsky, Noam. 1956. “Three Models for the Description of Language.” IRE Transactions on Information Theory 2 (3): 113–24.
[15]
[15 ] Cope, David. 1991. Computers and Musical Style. Vol. 6. Citeseer.
[16]
[16 ] Dahl, Ryan et al. 2009. “Node. Js.” https://youtu.be/ztspvPYybIY?si=frhsmsJ6YDXrl1xH.
[17]
[17 ] Dahl, Ryan, and OpenJS Foundation. 2009. “Node.js.” https://nodejs.org/en.
[18]
[18 ] Danigb. 2015. “Tonaljs/Tonal.” https://github.com/tonaljs/tonal.git.
[19]
[19 ] Dannenberg, Roger B. 1993. “Music Representation Issues, Techniques, and Systems.” Computer Music Journal 17 (3): 20–30.
[20]
[20 ] Davis, Paul. 1999. “Ardour.” https://ardour.org/.
[21]
[21 ] Dinchak, Tom. 2015. “Node-Easymidi.” https://github.com/dinchak/node-easymidi.
[22]
[22 ] DuBois, Roger Luke. 2003. Applications of Generative String-Substitution Systems in Computer Music. Columbia University.
[23]
[23 ] Ebcioglu, Kemal. 1986. “An Expert System for Harmonizing Four-Part Chorales.” In ICMC.
[24]
[24 ] Foundation, JS. 2012. “Lodash.” https://lodash.com/.
[25]
[25 ] Green, Thomas RG. 1989. “Cognitive Dimensions of Notations.” People and Computers V, 443–60.
[26]
[26 ] Harkins, James. 2009. “A Practical Guide to Patterns.” Document d’aide Intégré à SuperCollider 3 (4).
[27]
[27 ] Hughes, John. 1989. “Why Functional Programming Matters.” The Computer Journal 32 (2): 98–107.
[28]
[28 ] Jack, Olivia. 2017. “Hydra-Synth/Hydra.” https://github.com/hydra-synth/hydra.
[29]
[29 ] ———. 2024. “Hydra Video Synth: Documentation Portal \Textbar Hydra Video Synth.” https://hydra.ojack.xyz/docs/.
[30]
[30 ] Johanson, Claes. 2005. “Surge XT.” https://surge-synthesizer.github.io/.
[31]
[31 ] Kennedy, Michael, and Joyce Bourne. 2004. The Concise Oxford Dictionary of Music. OUP Oxford.
[32]
[32 ] Kirkbride, Ryan Philip. 2015. “FoxDot.” https://foxdot.org/.
[33]
[33 ] ———. 2020. “Collaborative Interfaces for Ensemble Live Coding Performance.” {PhD} {Thesis}, University of Leeds. https://etheses.whiterose.ac.uk/28901/1/Collaborative_Interfaces_for_Ensemble_Live_Coding_Performance%20-%20resubmission.pdf.
[34]
[34 ] Laitz, Steven G. 2012. The Complete Musician: An Integrated Approach to Tonal Theory, Analysis, and Listening. 3rd ed. New York: Oxford University Press.
[35]
[35 ] Levin, Oscar. 2021. “Discrete Mathematics: An Open Introduction.” http://debracollege.dspaces.org/bitstream/123456789/102/1/Discrete%20Mathematics%20by%20Oscar%20Levin.pdf.
[36]
[36 ] Lindenmayer, Aristid. 1968. “Mathematical Models for Cellular Interactions in Development I. Filaments with One-Sided Inputs.” Journal of Theoretical Biology 18 (3): 280–99.
[37]
[37 ] Magerko, Brian, Jason Freeman, Tom Mcklin, Mike Reilly, Elise Livingston, Scott Mccoid, and Andrea Crews-Brown. 2016. “Earsketch: A Steam-Based Approach for Underrepresented Populations in High School Computer Science Education.” ACM Transactions on Computing Education (TOCE) 16 (4): 1–25.
[38]
[38 ] Mann, Yotam. 2015a. “Interactive Music with Tone. Js.” In Proceedings of the 1st Annual Web Audio Conference. Citeseer.
[39]
[39 ] ———. 2015b. “Tone.js.” https://tonejs.github.io/.
[40]
[40 ] Manousakis, Stelios. 2006. “Musical L-Systems.” Koninklijk Conservatorium, The Hague (Master Thesis). https://www.modularbrains.net/support/SteliosManousakis-Musical_L-systems.pdf.
[41]
[41 ] McCarthy, Lauren. 2013. “P5.js.” https://p5js.org/.
[42]
[42 ] McCartney, James. 1996. “SuperCollider.” https://supercollider.github.io/.
[43]
[43 ] ———. 2002. “Rethinking the Computer Music Language: Super Collider.” Computer Music Journal 26 (4): 61–68.
[44]
[44 ] McLean, Alex. 2024. “Tidal Cycles.” https://tidalcycles.org/.
[45]
[45 ] McLean, Alex, and Geraint Wiggins. 2010. “Tidal–Pattern Language for the Live Coding of Music.” In Proceedings of the 7th Sound and Music Computing Conference, 331–34.
[46]
[46 ] Papadopoulos, George, and Geraint Wiggins. 1999. “AI Methods for Algorithmic Composition: A Survey, a Critical View and Future Prospects.” In AISB Symposium on Musical Creativity, 124:110–17. Edinburgh, UK.
[47]
[47 ] Parkinson, Adam, and Renick Bell. 2015. “Deadmau5, Derek Bailey, and the Laptop Instrument–Improvisation, Composition, and Liveness in Live Coding.”
[48]
[48 ] PG Music. 1990. “PG Music Inc. - Band-in-a-Box, RealBand, and More.” https://www.pgmusic.com/.
[49]
[49 ] Puckette, Miller. 2002. “Max at Seventeen.” Computer Music Journal 26 (4): 31–43.
[50]
[50 ] Roberts, Charles, and Graham Wakefield. 2017. “Gibberwocky: New Live-Coding Instruments for Musical Performance.” In NIME, 121–26.
[51]
[51 ] Roberts, Charles, Graham Wakefield, and Matthew Wright. 2013. “The Web Browser as Synthesizer and Interface.” In NIME, 313–18.
[52]
[52 ] Roberts, Charlie, and JoAnn Kuchera-Morin. 2012. “Gibber: Live Coding Audio in the Browser.” In ICMC, 11:6.
[53]
[53 ] Roos, Felix, and Alex McLean. 2023. “Strudel: Live Coding Patterns on the Web.” In Proceedings of the International Conference on Live Coding.
[54]
[54 ] Russell, Stuart J, and Peter Norvig. 2020. Artificial Intelligence: A Modern Approach. Fourth. Pearson.
[55]
[55 ] Sauyet, Scott, and Michael Hurley. 2013. “Ramda.” https://ramdajs.com/.
[56]
[56 ] Schaedler, Jack. 2017. “Jazzari.” https://jackschaedler.github.io/jazzari/.
[57]
[57 ] Schoenberg, Arnold. 1983. Theory of Harmony. Univ of California Press.
[58]
[58 ] Schoenberg, Arnold, and Leonard Stein. 1969. Structural Functions of Harmony. 478. WW Norton & Company.
[59]
[59 ] Simoni, Mary. 2003. Algorithmic Composition: A Gentle Introduction to Music Composition Using Common LISP and Common Music. Michigan Publishing, University of Michigan Library. https://quod.lib.umich.edu/s/spobooks/bbv9810.0001.001/1:5/–algorithmic-composition-a-gentle-introduction-to-music?rgn=div1;view=fulltext.
[60]
[60 ] Siphocly, Nermin Naguib J, El-Sayed M El-Horbaty, and Abdel-Badeeh M Salem. 2021. “Top 10 Artificial Intelligence Algorithms in Computer Music Composition.” International Journal of Computing and Digital Systems 10 (01): 373–94.
[61]
[61 ] Smaill, Alan, Geraint Wiggins, and Mitch Harris. 1993. “Hierarchical Music Representation for Composition and Analysis.” Computers and the Humanities 27: 7–17.
[62]
[62 ] Todd, Peter M. 1989. “A Connectionist Approach to Algorithmic Composition.” Computer Music Journal 13 (4): 27–43. http://www.jstor.org/stable/3679551.
[63]
[63 ] TOPLAP. 2011. “HistoricalPerformances - Toplap.” https://toplap.org/wiki/HistoricalPerformances.
[64]
[64 ] Widmer, Gerhard. 1992. “Qualitative Perception Modeling and Intelligent Musical Learning.” Computer Music Journal 16 (2): 51–68.
[65]
[65 ] Zicarelli, David. 1987. “M and Jam Factory.” Computer Music Journal 11 (4): 13–29.

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
AM '24: Proceedings of the 19th International Audio Mostly Conference: Explorations in Sonic Cultures
September 2024
565 pages
ISBN:9798400709685
DOI:10.1145/3678299
This work is licensed under a Creative Commons Attribution International 4.0 License.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 September 2024

Check for updates

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

AM '24

Acceptance Rates

Overall Acceptance Rate 177 of 275 submissions, 64%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 83
    Total Downloads
  • Downloads (Last 12 months)83
  • Downloads (Last 6 weeks)47
Reflects downloads up to 17 Dec 2024

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media