Presentation is loading. Please wait.

Presentation is loading. Please wait.

Honours project: Interim presentation Amanda Crawford – Comp. Sci. Honours

Similar presentations


Presentation on theme: "Honours project: Interim presentation Amanda Crawford – Comp. Sci. Honours"— Presentation transcript:

1 Honours project: Interim presentation Amanda Crawford – Comp. Sci. Honours Email: Amanda.Crawford@csse.monash.edu.auAmanda.Crawford@csse.monash.edu.au Supervisors: Lloyd Allison, Jon McCormack Music pattern recognition and generating new compositions using the Haskore Computer Music System Semester 1, 2003

2 Slide 2 Overview Introduction Relevant music theory MIDI music Previous research Research methods - Lempel-Ziv, Haskore Progress so far Summary References/further information

3 Slide 3 Introduction Repeating patterns and structure in music Extracting the melody Compare different aspects of music Generation of new music from particular genre MIDI music used

4 Slide 4 Relevant music theory Notes divided into bars Accent on starting beat Time signature

5 Slide 5 Music theory example

6 Slide 6 MIDI music Musical Instrument Digital Interface Computer music Instrument communication Note on/off, key velocity, pitch bend, etc General MIDI instruments Tracks and channels

7 Slide 7 Example of MIDI music data

8 Slide 8 Previous research Shan, Kuo, Chen (2002). Music style mining and classification by melody. Mo, Han, Kim (1999). Melody-based similarity computation algorithm for music information. Shih, Narayanan, Kuo (2001). Automatic main melody extraction with a modified Lempel-Ziv algorithm.

9 Slide 9 Research methods Extend on models from previous research –Lempel-Ziv algorithm Functions for analysis of MIDI data Functions for generating new music Haskore Computer Music System

10 Slide 10 Lempel-Ziv alg. diagram

11 Slide 11 LZ modified diagram

12 Slide 12 Haskore Haskore Computer Music System Paul Hudak - Yale Uni. Modules in Haskell Hugs interpreter Music rather than sound MIDI file input/output

13 Slide 13 Haskore (cont…) More information - Haskore website http://haskell.cs.yale.edu/haskore/ http://haskell.cs.yale.edu/haskore/

14 Slide 14 Example of Haskore module HaskoreExamples_mine (module HaskoreExamples_mine, module Haskore, module IO) where import Haskore import IO -- octave 4, quarter notes cMaj = [ n 4 qn [] | n <- [c,e,g] ] cMajArp = line cMaj cMajChd = chord cMaj

15 Slide 15 Progress so far My own MIDI files Haskore code Extract features from MIDI Extracted time signature MIDI file into bars

16 Slide 16 Example of work so far gm file = do x <- loadMidiFile file let m = removeEOTs $ format x let t = removeMidiEventsNO m print t removeMidiEventsNO :: Track -> Track removeMidiEventsNO ((MidiEvent _ (NoteOff _ _ _)):es) = removeMidiEventsNO es removeMidiEventsNO ((MidiEvent _ (NoteOn _ _ _)):es) = removeMidiEventsNO es removeMidiEventsNO (e:es) = e:(removeMidiEventsNO es) removeMidiEventsNO [] = []

17 Slide 17 Progress so far - still to come Generating new compositions –random notes –harmonic relations –key signature Guitar chord positions

18 Slide 18 Summary Discovering patterns and structure, generating new music Lempel-Ziv algorithm Haskore Computer Music System Haskore + MIDI information Functions to extract certain aspects of MIDI data

19 Slide 19 References/further information Haskore Music Tutorial – Hudak –http://haskell.cs.yale.edu/haskore/http://haskell.cs.yale.edu/haskore/ Computer Music Journal – MIT Press –http://mitpress2.mit.edu/e-journals/Computer- Music-Journal/http://mitpress2.mit.edu/e-journals/Computer- Music-Journal/ Introduction to MIDI –http://hotwired.lycos.com/webmonkey/geektalk /97/21/index4a.htmlhttp://hotwired.lycos.com/webmonkey/geektalk /97/21/index4a.html

20 Slide 20 Questions?


Download ppt "Honours project: Interim presentation Amanda Crawford – Comp. Sci. Honours"

Similar presentations


Ads by Google