An Application of the Actor Model of Concurrency in Python: a Euclidean Rhythm Music Sequencer Daniel P
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
PD1: Sequencer
21M.380 Music and Technology Sound Design Pd assignment 1 (pd1) Sequencer Due: Monday, February 22, 2016, 9:30am Submit to: MIT Learning Modules Assignments 5% of total grade 1 Instructions Build a music sequencer in Pure Data. If you do not know what a sequencer is, the Online Sequencer1 will give you a practical under- 1 http://onlinesequencer.net/ standing very quickly. 2 Restrictions • Only Pd objects from Pd vanilla are allowed. Submissions that rely on objects from Pd extended will not be accepted! • Messages, number boxes, GUI elements, symbols, arrays, tables, and comments of all kinds are allowed. • Your patch should not rely on any external hardware besides keyboard and mouse. This rules out any MIDI controllers. 3 Guidelines 3.1 Programming guidelines It might help to think of your sequencer as an engineering problem in three parts and address them in the following order: Sound design Start by trying to build some interesting sounds that can be tested in isolation. Use the three simple sounds from figure 1 as a starting point and create additional sounds by adjusting the parameters in that patch as instructed. Try to introduce variety and come up with something that sounds interesting! 2 Time base Consult our main textbook for inspiration on how 2 Farnell 2010. to provide a time base that organizes the playback of your 1 of 4 21M.380, pd1 assignment HOW TO RUN THIS PATCH: ; 1 Turn on DSP by clicking this in run mode: pd dsp 1 2 In run mode, click either of the two [bang( messages or the square toggle box below 3 Adjust the numbers as instructed to create different sounds. -
Exploring Polyrhythms, Polymeters, and Polytempi with the Universal Grid Sequencer Framework
Exploring Polyrhythms, Polymeters, and Polytempi with the Universal Grid Sequencer framework SAMUEL J. HUNT, Creative Technologies Laboratory Fig. 1. Large format grid controller, made from 4 smaller grid controllers Polyrhythms, Polymeters, and Polytempo are compositional techniques that describe pulses which are desynchronous between two or more sequences of music. Digital systems permit the sequencing of notes to a near-infinite degree of resolution, permitting an exponential number of complex rhythmic attributes in the music. Exploring such techniques within existing popular music sequencing software and notations can be challenging to generally work with and notate effectively. Step sequencers provide a simple and effective interface for exploring any arbitrary division of time into an even number of steps, with such interfaces easily expressible on grid based music controllers. The paper therefore has two differing but related outputs. Firstly, to demonstrate a framework for working with multiple physical grid controllers forming a larger unified grid, and provide a consolidated set of tools for programming music instruments forit. Secondly, to demonstrate how such a system provides a low-entry threshold for exploring Polyrhytms, Polymeters and Polytempo relationships using desynchronised step sequencers. CCS Concepts: • Human-centered computing → User interface programming; • Applied computing → Sound and music computing. Author’s address: Samuel J. Hunt, Creative Technologies Laboratory, UWE Bristol, [email protected]. 2020. Manuscript submitted to ACM Manuscript submitted to ACM 1 2 Samuel Hunt Additional Key Words and Phrases: Polyrhythm, Polymeter, Polytempo, Grid Controllers ACM Reference Format: Samuel J. Hunt. 2020. Exploring Polyrhythms, Polymeters, and Polytempi with the Universal Grid Sequencer framework. 1, 1 (November 2020), 11 pages. -
Music and Tone Sequencer
Music and Tone Sequencer Annie Zhang Boris Chan Cindy Wang Ryan Kim Cornell University Cornell University Cornell University Cornell University Ithaca, NY, USA Ithaca, NY, USA Ithaca, NY, USA Ithaca, NY, USA [email protected] [email protected] [email protected] [email protected] INTRODUCTION grid are set up such that the lower five rows represent The goal of this project is to design a music one full octave while the three remaining higher rows sequencer device that can be used to generate musical represent half an octave. By pressing any of the patterns and rhythms of varying tones and sounds. buttons of their choice, users can effectively create The device will be able to generate a musical patterns of buttons that correlated to rhythms of notes sequence whose notes and rhythm are determined by within a pentatonic scale. a pattern of buttons activated by the user; users can choose which notes to activate by interacting with a Our ultimate design goals consisted of developing an button pad present on the top of the device. The intuitive device that would allow individuals purpose of this project to twofold: firstly it is meant unfamiliar with music theory to still create music. We to help individuals experience music creation without aimed to develop a neat, fully functional prototype needing a background in music, and secondly it can that can correctly process button input, emit sounds, cultivate interaction and social bonding between and accept volume control. individuals by having them work together to generate music without much effort. For example, the device can be used to teach young children about the RELATED WORK fundamentals of chords and rhythm by having them The inspiration of our project stemmed from an see how buttons activate different sounds, which online pentatonic step sequencer [8]. -
An Exploration of the Relationship Between Mathematics and Music
An Exploration of the Relationship between Mathematics and Music Shah, Saloni 2010 MIMS EPrint: 2010.103 Manchester Institute for Mathematical Sciences School of Mathematics The University of Manchester Reports available from: http://eprints.maths.manchester.ac.uk/ And by contacting: The MIMS Secretary School of Mathematics The University of Manchester Manchester, M13 9PL, UK ISSN 1749-9097 An Exploration of ! Relation"ip Between Ma#ematics and Music MATH30000, 3rd Year Project Saloni Shah, ID 7177223 University of Manchester May 2010 Project Supervisor: Professor Roger Plymen ! 1 TABLE OF CONTENTS Preface! 3 1.0 Music and Mathematics: An Introduction to their Relationship! 6 2.0 Historical Connections Between Mathematics and Music! 9 2.1 Music Theorists and Mathematicians: Are they one in the same?! 9 2.2 Why are mathematicians so fascinated by music theory?! 15 3.0 The Mathematics of Music! 19 3.1 Pythagoras and the Theory of Music Intervals! 19 3.2 The Move Away From Pythagorean Scales! 29 3.3 Rameau Adds to the Discovery of Pythagoras! 32 3.4 Music and Fibonacci! 36 3.5 Circle of Fifths! 42 4.0 Messiaen: The Mathematics of his Musical Language! 45 4.1 Modes of Limited Transposition! 51 4.2 Non-retrogradable Rhythms! 58 5.0 Religious Symbolism and Mathematics in Music! 64 5.1 Numbers are God"s Tools! 65 5.2 Religious Symbolism and Numbers in Bach"s Music! 67 5.3 Messiaen"s Use of Mathematical Ideas to Convey Religious Ones! 73 6.0 Musical Mathematics: The Artistic Aspect of Mathematics! 76 6.1 Mathematics as Art! 78 6.2 Mathematical Periods! 81 6.3 Mathematics Periods vs. -
Incorparating the Actor Model Into SCIVE on an Abstract Semantic Level
Incorparating the Actor Model into SCIVE on an Abstract Semantic Level Christian Frohlich¨ ∗ Marc E. Latoschik† AI and VR Group, Bielefeld University AI and VR Group, Bielefeld University. ABSTRACT Since visual perception is very important for generating immer- sive environments, most VR applications focus on the graphical This paper illustrates the temporal synchronization and process flow simulation output. Tools like OpenGL Performer, Open Inven- facilities of a real-time simulation system which is based on the ac- tor [12], Open Scene Graph, OpenSG [11] or the VRML successor tor model. The requirements of such systems are compared against X3D [8] are based upon a hierarchical scene graph structure, which the actor model’s basic features and structures. The paper describes allows for complex rendering tasks. Extension mechanisms like how a modular architecture benefits from the actor model on the field routing or rapid prototyping via scipting interfaces allow for module level and points out how the actor model enhances paral- new customized node types and interconnected application graphs. lelism and concurrency even down to the entity level. The actor idea is incorporated into a novel simulation core for intelligent vir- Purpose-built VR application frameworks adopt and extend these mechanisms, by adding in- and output customization, see e.g. tual environments (SCIVE). SCIVE supports well-known and es- TM tablished Virtual Reality paradigms like the scene graph metaphor, Lightning [4], Avango [13], VR Juggler [3] or the CAVELib . field routing concepts etc. In addition, SCIVE provides an explicit Also network distribution paradigms are often integrated to enable semantic representation of its internals as well as of the specific distributed rendering on a cluster architecture, as can be seen in virtual environments’ contents. -
MUSIC PRODUCTION GUIDE Official News Guide from Yamaha & Easy Sounds for Yamaha Music Production Instruments
MUSIC PRODUCTION GUIDE OFFICIAL NEWS GUIDE FROM YAMAHA & EASY SOUNDS FOR YAMAHA MUSIC PRODUCTION INSTRUMENTS 04|2014 SPECIAL EDITION Contents 40th Anniversary Yamaha Synthesizers 3 40 years Yamaha Synthesizers The history 4 40 years Yamaha Synthesizers Timeline 5 40th Anniversary Special Edition MOTIF XF White 23 40th Anniversary Box MOTIF XF 28 40th Anniversary discount coupons 30 40th Anniversary MX promotion plan 31 40TH 40th Anniversary app sales plan 32 ANNIVERSARY Sounds & Goodies 36 YAMAHA Imprint 41 SYNTHESIZERS 40 YEARS OF INSPIRATION YAMAHA CELEBRATES 40 YEARS IN SYNTHESIZER-DESIGN WITH BRANDNEW MOTIF XF IN A STUNNIG WHITE FINISH SARY PRE ER M V IU I M N N B A O X H T 0 4 G N I D U L C N I • FL1024M FLASH MEMORY Since 1974 Yamaha has set new benchmarks in the design of excellent synthesizers and has developed • USB FLASH MEMORY (4GB) innovative tools of creativity. The unique sounds of the legendary SY1, VL1 and DX7 have influenced a INCL. SOUND LIBRARIES: whole variety of musical styles. Yamaha‘s know-how, inspiring technique and the distinctive sounds of a - CHICK’S MARK V - CS-80 40-years-experience are featured in the new MOTIF XF series that is now available in a very stylish - ULTIMATE PIANO COLLECTION white finish. - VINTAGE SYNTHESIZER COLLECTION YAMAHASYNTHSEU YAMAHA.SYNTHESIZERS.EU YAMAHASYNTHESIZEREU EUROPE.YAMAHA.COM MUSIC PRODUCTION GUIDE 04|2014 40TH ANNIVERSARY YAMAHA SYNTHESIZERS In 1974 Yamaha produced its first portable Yamaha synthesizers and workstations were and still are analog synthesizer with the SY-1. The the first choice for professionals and amateurs in the multi- faceted music business. -
Actor-Based Concurrency by Srinivas Panchapakesan
Concurrency in Java and Actor- based concurrency using Scala By, Srinivas Panchapakesan Concurrency Concurrent computing is a form of computing in which programs are designed as collections of interacting computational processes that may be executed in parallel. Concurrent programs can be executed sequentially on a single processor by interleaving the execution steps of each computational process, or executed in parallel by assigning each computational process to one of a set of processors that may be close or distributed across a network. The main challenges in designing concurrent programs are ensuring the correct sequencing of the interactions or communications between different computational processes, and coordinating access to resources that are shared among processes. Advantages of Concurrency Almost every computer nowadays has several CPU's or several cores within one CPU. The ability to leverage theses multi-cores can be the key for a successful high-volume application. Increased application throughput - parallel execution of a concurrent program allows the number of tasks completed in certain time period to increase. High responsiveness for input/output-intensive applications mostly wait for input or output operations to complete. Concurrent programming allows the time that would be spent waiting to be used for another task. More appropriate program structure - some problems and problem domains are well-suited to representation as concurrent tasks or processes. Process vs Threads Process: A process runs independently and isolated of other processes. It cannot directly access shared data in other processes. The resources of the process are allocated to it via the operating system, e.g. memory and CPU time. Threads: Threads are so called lightweight processes which have their own call stack but an access shared data. -
Liam: an Actor Based Programming Model for Hdls
Liam: An Actor Based Programming Model for HDLs Haven Skinner Rafael Trapani Possignolo Jose Renau Dept. of Computer Engineering Dept. of Computer Engineering Dept. of Computer Engineering [email protected] [email protected] [email protected] ABSTRACT frequency being locked down early in the development process, The traditional model for developing synthesizable digital architec- and adds a high cost in effort and man-hours, to make high-level tures is a clock-synchronous pipeline. Latency-insensitive systems changes to the system. Although these challenges can be managed, are an alternative, where communication between blocks is viewed they represent fundamental obstacles to developing large-scale as message passing. In hardware this is generally managed by con- systems. trol bits such as valid/stop signals or token credit mechanisms. An alternative is a latency-insensitive design, where the system Although prior work has shown that there are numerous benefits is abstractly seen as being comprised of nodes, which communicate to building latency-insensitive digital hardware, a major factor dis- via messages. Synchronous hardware systems can be automatically couraging its use is the difficulty of managing the additional logic transformed to latency-insensitive designs, which we refer to as and infrastructure required to implement it. elastic systems [1–3]. Alternately, the designer can manually con- We propose a new programming paradigm for Hardware Descrip- trol the latency-insensitive backend [4, 5], we call such systems tion Languages, built on the Actor Model, to implicitly implement Fluid Pipelines. The advantage of exposing the elasticity to the latency-insensitive hardware designs. We call this model Liam, for designer is an increase in performance and flexibility in transforma- Latency-Insensitive Actor-based programming Model. -
1 a NEW MUSIC COMPOSITION TECHNIQUE USING NATURAL SCIENCE DATA D.M.A Document Presented in Partial Fulfillment of the Requiremen
A NEW MUSIC COMPOSITION TECHNIQUE USING NATURAL SCIENCE DATA D.M.A Document Presented in Partial Fulfillment of the Requirements for the Degree Doctor of Musical Arts in the Graduate School of The Ohio State University By Joungmin Lee, B.A., M.M. Graduate Program in Music The Ohio State University 2019 D.M.A. Document Committee Dr. Thomas Wells, Advisor Dr. Jan Radzynski Dr. Arved Ashby 1 Copyrighted by Joungmin Lee 2019 2 ABSTRACT The relationship of music and mathematics are well documented since the time of ancient Greece, and this relationship is evidenced in the mathematical or quasi- mathematical nature of compositional approaches by composers such as Xenakis, Schoenberg, Charles Dodge, and composers who employ computer-assisted-composition techniques in their work. This study is an attempt to create a composition with data collected over the course 32 years from melting glaciers in seven areas in Greenland, and at the same time produce a work that is expressive and expands my compositional palette. To begin with, numeric values from data were rounded to four-digits and converted into frequencies in Hz. Moreover, the other data are rounded to two-digit values that determine note durations. Using these transformations, a prototype composition was developed, with data from each of the seven Greenland-glacier areas used to compose individual instrument parts in a septet. The composition Contrast and Conflict is a pilot study based on 20 data sets. Serves as a practical example of the methods the author used to develop and transform data. One of the author’s significant findings is that data analysis, albeit sometimes painful and time-consuming, reduced his overall composing time. -
Computer Mediated Music Production: a Study of Abstraction and Activity
Computer mediated music production: A study of abstraction and activity by Matthew Duignan A thesis for the degree of Doctor of Philosophy in Computer Science. Victoria University of Wellington 2008 Abstract Human Computer Interaction research has a unique challenge in under- standing the activity systems of creative professionals, and designing the user-interfaces to support their work. In these activities, the user is involved in the process of building and editing complex digital artefacts through a process of continued refinement, as is seen in computer aided architecture, design, animation, movie-making, 3D modelling, interactive media (such as shockwave-flash), as well as audio and music production. This thesis exam- ines the ways in which abstraction mechanisms present in music production systems interplay with producers’ activity through a collective case study of seventeen professional producers. From the basis of detailed observations and interviews we examine common abstractions provided by the ubiqui- tous multitrack-mixing metaphor and present design implications for future systems. ii Acknowledgements I would like to thank my supervisors Robert Biddle and James Noble for their endless hours of guidance and feedback during this process, and most of all for allowing me to choose such a fun project. Michael Norris and Lissa Meridan from the Victoria University music department were also invaluable for their comments and expertise. I would also like to thank Alan Blackwell for taking the time to discuss my work and provide valuable advice. I am indebted to all of my participants for the great deal of time they selflessly offered, and the deep insights they shared into their professional world. -
Massachusetts Institute of Technology Artificial Intelligence Laboratory
MASSACHUSETTS INSTITUTE OF TECHNOLOGY ARTIFICIAL INTELLIGENCE LABORATORY Working Paper 190 June 1979 A FAIR POWER DOMAIN FOR ACTOR COMPUTATIONS Will Clinger AI Laboratory Working Papers are produced for internal circulation, and may contain information that is, for example, too preliminary or too detailed for formal publication. Although some will be given a limited external distribution, it is not intended that they should be considered papers to which reference can be made in the literature. This report describes research conducted at the Artificial Intelligence Laboratory of the Massachusetts Institute of Technology. Support for this research was provided in part by the Office of Naval Research of the Department of Defense under Contract N00014-75-C-0522. O MASSAnuTsms INSTTUTE OF TECMGoOry FM DRAFT 1 June 1979 -1- A fair power domain A FAIR POWER DOMAIN FOR ACTOR COMPUTATIONS Will Clingerl 1. Abstract Actor-based languages feature extreme concurrency, allow side effects, and specify a form of fairness which permits unbounded nondeterminism. This makes it difficult to provide a satisfactory mathematical foundation for their semantics. Due to the high degree of parallelism, an oracle semantics would be intractable. A weakest precondition semantics is out of the question because of the possibility of unbounded nondeterminism. The most attractive approach, fixed point semantics using power domains, has not been helpful because the available power domain constructions, although very general, seemed to deal inadequately with fairness. By taking advantage of the relatively complex structure of the actor computation domain C, however, a power domain P(C) can be defined which is similar to Smyth's weak power domain but richer. -
Actor Model of Computation
Published in ArXiv http://arxiv.org/abs/1008.1459 Actor Model of Computation Carl Hewitt http://carlhewitt.info This paper is dedicated to Alonzo Church and Dana Scott. The Actor model is a mathematical theory that treats “Actors” as the universal primitives of concurrent digital computation. The model has been used both as a framework for a theoretical understanding of concurrency, and as the theoretical basis for several practical implementations of concurrent systems. Unlike previous models of computation, the Actor model was inspired by physical laws. It was also influenced by the programming languages Lisp, Simula 67 and Smalltalk-72, as well as ideas for Petri Nets, capability-based systems and packet switching. The advent of massive concurrency through client- cloud computing and many-core computer architectures has galvanized interest in the Actor model. An Actor is a computational entity that, in response to a message it receives, can concurrently: send a finite number of messages to other Actors; create a finite number of new Actors; designate the behavior to be used for the next message it receives. There is no assumed order to the above actions and they could be carried out concurrently. In addition two messages sent concurrently can arrive in either order. Decoupling the sender from communications sent was a fundamental advance of the Actor model enabling asynchronous communication and control structures as patterns of passing messages. November 7, 2010 Page 1 of 25 Contents Introduction ............................................................ 3 Fundamental concepts ............................................ 3 Illustrations ............................................................ 3 Modularity thru Direct communication and asynchrony ............................................................. 3 Indeterminacy and Quasi-commutativity ............... 4 Locality and Security ............................................