Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/TamTamJam.activity/Jam/GenRythm.py
diff options
context:
space:
mode:
authorOli <olivier.belanger@umontreal.ca>2007-10-19 08:08:02 (GMT)
committer Oli <olivier.belanger@umontreal.ca>2007-10-19 08:08:02 (GMT)
commit3e9a586f404b70cda362cf888653de9c940fd849 (patch)
tree427a99619ebf947600a3cc2c0ef9437fb2953f09 /TamTamJam.activity/Jam/GenRythm.py
parent9307df223f0be4193a21fddd48e32ce15b9ed4ef (diff)
switch to instrumentDB
Diffstat (limited to 'TamTamJam.activity/Jam/GenRythm.py')
-rw-r--r--TamTamJam.activity/Jam/GenRythm.py18
1 files changed, 11 insertions, 7 deletions
diff --git a/TamTamJam.activity/Jam/GenRythm.py b/TamTamJam.activity/Jam/GenRythm.py
index 330e174..b9e6d48 100644
--- a/TamTamJam.activity/Jam/GenRythm.py
+++ b/TamTamJam.activity/Jam/GenRythm.py
@@ -1,10 +1,14 @@
import random
import common.Config as Config
+import common.Util.InstrumentDB as InstrumentDB
from common.Generation.GenerationConstants import GenerationConstants
from common.Generation.Utils import *
class GenRythm:
+ def __init__(self):
+ self.instrumentDB = InstrumentDB.getRef()
+
def drumRythmSequence(self, instrumentName, nbeats, density, regularity ):
rythmSequence = []
binSelection = []
@@ -14,28 +18,28 @@ class GenRythm:
countDown = 0
onsetTime = None
- if Config.INSTRUMENTS[instrumentName].instrumentRegister == Config.PUNCH:
+ if self.instrumentDB.instNamed[instrumentName].instrumentRegister == Config.PUNCH:
registerDensity = 0.5
downBeatRecurence = 4
downBeats = [x for x in GenerationConstants.DRUM_PUNCH_ACCENTS[ nbeats ]]
for downBeat in downBeats:
upBeats.append( downBeat + Config.TICKS_PER_BEAT / 2 )
- if Config.INSTRUMENTS[instrumentName].instrumentRegister == Config.LOW:
+ if self.instrumentDB.instNamed[instrumentName].instrumentRegister == Config.LOW:
registerDensity =1
downBeatRecurence = 4
downBeats = [x for x in GenerationConstants.DRUM_LOW_ACCENTS[ nbeats ]]
for downBeat in downBeats:
upBeats.append( downBeat + Config.TICKS_PER_BEAT / 2 )
- if Config.INSTRUMENTS[instrumentName].instrumentRegister == Config.MID:
+ if self.instrumentDB.instNamed[instrumentName].instrumentRegister == Config.MID:
registerDensity = .75
downBeatRecurence = 1
downBeats = [x for x in GenerationConstants.DRUM_MID_ACCENTS[ nbeats ]]
for downBeat in downBeats:
upBeats.append( downBeat + Config.TICKS_PER_BEAT / 4 )
- if Config.INSTRUMENTS[instrumentName].instrumentRegister == Config.HIGH:
+ if self.instrumentDB.instNamed[instrumentName].instrumentRegister == Config.HIGH:
registerDensity = 1.5
downBeatRecurence = 1
downBeats = [x for x in GenerationConstants.DRUM_HIGH_ACCENTS[ nbeats ]]
@@ -48,10 +52,10 @@ class GenRythm:
list = range( int( realDensity * len( downBeats ) ) )
for i in list:
- if random.random() < ( regularity * downBeatRecurence ) and binSelection.count( 1 ) < len( downBeats ):
- binSelection.append( 1 )
+ if random.random() < ( regularity * downBeatRecurence ) and binSelection.count( 1 ) < len( downBeats ):
+ binSelection.append( 1 )
else:
- if binSelection.count( 0 ) < len( downBeats ):
+ if binSelection.count( 0 ) < len( downBeats ):
binSelection.append( 0 )
else:
binSelection.append( 1 )