diff options
author | Oli <olivier.belanger@umontreal.ca> | 2007-07-06 20:21:26 (GMT) |
---|---|---|
committer | Oli <olivier.belanger@umontreal.ca> | 2007-07-06 20:21:26 (GMT) |
commit | 5cfbad2ce430b4c5ab120feff904ec4d0a2fbcb5 (patch) | |
tree | 32fbae5fc4c33adff7f35c01bf0db798b808a50c /Edit | |
parent | 79f4a80f5fb50d5c7dc6cb88c3ad1c9bd1faac05 (diff) |
instruments randomization
Diffstat (limited to 'Edit')
-rw-r--r-- | Edit/MainWindow.py | 34 | ||||
-rw-r--r-- | Edit/TrackInterface.py | 4 |
2 files changed, 25 insertions, 13 deletions
diff --git a/Edit/MainWindow.py b/Edit/MainWindow.py index 4a4b23c..c3317f3 100644 --- a/Edit/MainWindow.py +++ b/Edit/MainWindow.py @@ -17,6 +17,7 @@ from subprocess import Popen import time import os import commands +import random class CONTEXT: PAGE = 0 @@ -58,18 +59,25 @@ class MainWindow( SubActivity ): self._data['track_mute'] = [ 1.0 ] * Config.NUMBER_OF_TRACKS #[ instrument index, ... ] + instrumentsPickup = [] + drumsPickup = ["drum1kit", "drum2kit", "drum3kit", "drum4kit", "drum5kit"] + for name in Config.INSTRUMENTS.keys(): + if Config.INSTRUMENTS[name].soundClass == 'melo' and name[0:7] != 'guidice': + instrumentsPickup.append(name) self.trackInstrumentDefault = [ - Config.INSTRUMENTS["kalimba"], - Config.INSTRUMENTS["kalimba"], - Config.INSTRUMENTS["kalimba"], - Config.INSTRUMENTS["kalimba"], - Config.INSTRUMENTS["drum2kit"] ] + Config.INSTRUMENTS[random.choice(instrumentsPickup)], + Config.INSTRUMENTS[random.choice(instrumentsPickup)], + Config.INSTRUMENTS[random.choice(instrumentsPickup)], + Config.INSTRUMENTS[random.choice(instrumentsPickup)], + Config.INSTRUMENTS[random.choice(drumsPickup)] ] self.trackInstrument = self.trackInstrumentDefault[:] if len(self.trackInstrument) != Config.NUMBER_OF_TRACKS: raise 'error' self.drumIndex = Config.NUMBER_OF_TRACKS - 1 + self._data['volume'] = Config.DEFAULT_VOLUME - self._data['tempo'] = Config.PLAYER_TEMPO + initTempo = random.randint(80, 132) + self._data['tempo'] = initTempo self.playScope = "Selection" self.displayedPage = -1 @@ -514,7 +522,11 @@ class MainWindow( SubActivity ): for tid in range(Config.NUMBER_OF_TRACKS): self.handleInstrumentChanged( ( tid, self.trackInstrument[tid] ) ) - first = self.noteDB.addPage( -1, NoteDB.Page(4) ) + instrumentsIds = [] + for inst in self.trackInstrument: + instrumentsIds.append(inst.instrumentId) + + first = self.noteDB.addPage( -1, NoteDB.Page(4, instruments = instrumentsIds) ) self.displayPage( first ) self.show_all() #gtk command @@ -524,14 +536,14 @@ class MainWindow( SubActivity ): self.GUI["2noteBox"].hide() self.setContext( CONTEXT.PAGE ) - self.pageAdd() - self.pageAdd() - self.pageAdd() + self.pageAdd(instruments = instrumentsIds) + self.pageAdd(instruments = instrumentsIds) + self.pageAdd(instruments = instrumentsIds) self.tuneInterface.selectPages( [1,2,3,4] ) self.displayPage(1) self.generateMode = 'page' self.generate( GenerationParameters() ) - + self.audioRecordState = False def onActivate( self, arg ): diff --git a/Edit/TrackInterface.py b/Edit/TrackInterface.py index 4f9fc64..f99cd44 100644 --- a/Edit/TrackInterface.py +++ b/Edit/TrackInterface.py @@ -467,7 +467,7 @@ class TrackInterface( gtk.EventBox ): if onset >= n.cs.onset and onset < (n.cs.onset + n.cs.duration): self.noteDB.deleteNote(self.curPage, i, n.id) - cs = CSoundNote( onset, + cs = CSoundNote( int(onset), pitch, 0.75, 0.5, @@ -575,7 +575,7 @@ class TrackInterface( gtk.EventBox ): if onset >= n.cs.onset and onset < (n.cs.onset + n.cs.duration): self.noteDB.deleteNote(self.curPage, i, n.id) - cs = CSoundNote( onset, + cs = CSoundNote( int(onset), pitch, 0.75, 0.5, |