the music processing language. da quan rong midium scripting language composition and editing of...

Post on 17-Jan-2016

221 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

The Music Processing Language

Da Quan Rong

Midium

scripting languagecomposition and editing of musicplatform independent architecturesupport for wav, midi and Mp3useful regardless of musical ability

Language Features

InterpretedJava-basedEnables music effects processing

Midium Programsampletrack = open("sample.mp3")play(sampletrack)while(sampletrack.realDuration > 100)

wait(4)changeSpeed(sampletrack,1.2)

endwhilewait(3)stop(sampletrack)

Application Domain

programming language platformsynthesizer

Michael Brotzman

Architecture

MidiumSourceProgram

Controller

Model Disc

View

Output

Midium

Controller

MidiumSourceProgram

Lexer

Model

View

Controller

Interpreter

Grammar

StateManager

Model

Controller DAO

View

Model

Disc

View

Player

Controller

Model

View

Synthesizer

Output

EffectsEngine

Mikhail Aronov

File Types in Midium

.mm .trk .mp

Source Program FileMain.mm

t = open(“track1.trk”)while (t.realDuration >= 2.0)

play(t)changeSpeed(t, .5)

endwhile

Track Filetrack1.trk

0.0 2.0 file1.mp3 2.0 5.0 file2.mp30.0 3.0 /home/PLT/file3.trk1.0 3.0 file4.wav

Wait Time

Duration

Media file

Key Mapping Filesample.mp

a 0.0 file1.mp3b 2.0 file2.mp3c 0.0 /home/PLT/file3.trkd 1.0 file4.wav

Offset

Character

File name/Path

Jacquilene Jacob

Program Functions

system functionseffect functions

System Functions

stopprintmatchcontainswaitstartSynthstopSynth

Sample.mm

t = open(“track1.trk”)while (t.realDuration >= 2.0)

play(t)changeSpeed(t, .5)

endwhile

open

play

Effects

filterfadeloop

compressreverse

Sample.mm

t = open(“track1.trk”)while (t.realDuration >= 2.0)

play(t)changeSpeed(t, .5)

endwhile changeSpeed

Testing and validation

Test cases

EffectsSystem functionsInterpreter

simpleflexiblepowerfulANDno semi-colons!

top related