Skip to content

Commit

Permalink
Merge pull request #15 from wallysalami/sample-durations
Browse files Browse the repository at this point in the history
Update, sort and add duration of samples
  • Loading branch information
gkvoelkl authored Oct 14, 2017
2 parents e76365d + 6076e3b commit b891e9c
Showing 1 changed file with 144 additions and 122 deletions.
266 changes: 144 additions & 122 deletions psonic.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,9 @@ class Sample:
Sample
"""

def __init__(self, name):
def __init__(self, name, duration):
self.name = name
self.duration = duration


class ChordQuality:
Expand Down Expand Up @@ -462,145 +463,157 @@ def wrapper():
## Sample ##

## Drum Sounds
DRUM_HEAVY_KICK = Sample('drum_heavy_kick')
DRUM_TOM_MID_SOFT = Sample('drum_tom_mid_soft')
DRUM_TOM_MID_HARD = Sample('drum_tom_mid_hard')
DRUM_TOM_LO_SOFT = Sample('drum_tom_lo_soft')
DRUM_TOM_LO_HARD = Sample('drum_tom_lo_hard')
DRUM_TOM_HI_SOFT = Sample('drum_tom_hi_soft')
DRUM_TOM_HI_HARD = Sample('drum_tom_hi_hard')
DRUM_SPLASH_SOFT = Sample('drum_splash_soft')
DRUM_SPLASH_HARD = Sample('drum_splash_hard')
DRUM_SNARE_SOFT = Sample('drum_snare_soft')
DRUM_SNARE_HARD = Sample('drum_snare_hard')
DRUM_CYMBAL_SOFT = Sample('drum_cymbal_soft')
DRUM_CYMBAL_HARD = Sample('drum_cymbal_hard')
DRUM_CYMBAL_OPEN = Sample('drum_cymbal_open')
DRUM_CYMBAL_CLOSED = Sample('drum_cymbal_closed')
DRUM_CYMBAL_PEDAL = Sample('drum_cymbal_pedal')
DRUM_BASS_SOFT = Sample('drum_bass_soft')
DRUM_BASS_HARD = Sample('drum_bass_hard')
DRUM_COWBELL = Sample('drum_cowbell')
DRUM_ROLL = Sample('drum_roll')
DRUM_BASS_HARD = Sample('drum_bass_hard', 0.6951927437641723)
DRUM_BASS_SOFT = Sample('drum_bass_soft', 0.5624489795918367)
DRUM_COWBELL = Sample('drum_cowbell', 0.34988662131519277)
DRUM_CYMBAL_CLOSED = Sample('drum_cymbal_closed', 0.2069387755102041)
DRUM_CYMBAL_HARD = Sample('drum_cymbal_hard', 1.6388208616780044)
DRUM_CYMBAL_OPEN = Sample('drum_cymbal_open', 1.8043764172335601)
DRUM_CYMBAL_PEDAL = Sample('drum_cymbal_pedal', 0.2721995464852608)
DRUM_CYMBAL_SOFT = Sample('drum_cymbal_soft', 0.9497278911564626)
DRUM_HEAVY_KICK = Sample('drum_heavy_kick', 0.2701360544217687)
DRUM_ROLL = Sample('drum_roll', 6.241678004535148)
DRUM_SNARE_HARD = Sample('drum_snare_hard', 0.44492063492063494)
DRUM_SNARE_SOFT = Sample('drum_snare_soft', 0.3147845804988662)
DRUM_SPLASH_HARD = Sample('drum_splash_hard', 2.5961904761904764)
DRUM_SPLASH_SOFT = Sample('drum_splash_soft', 1.857981859410431)
DRUM_TOM_HI_HARD = Sample('drum_tom_hi_hard', 0.7376643990929705)
DRUM_TOM_HI_SOFT = Sample('drum_tom_hi_soft', 0.6290249433106576)
DRUM_TOM_LO_HARD = Sample('drum_tom_lo_hard', 1.0002267573696144)
DRUM_TOM_LO_SOFT = Sample('drum_tom_lo_soft', 0.8634013605442177)
DRUM_TOM_MID_HARD = Sample('drum_tom_mid_hard', 0.7342176870748299)
DRUM_TOM_MID_SOFT = Sample('drum_tom_mid_soft', 0.6721315192743764)

## Electric Sounds
ELEC_TRIANGLE = Sample('elec_triangle')
ELEC_SNARE = Sample('elec_snare')
ELEC_LO_SNARE = Sample('elec_lo_snare')
ELEC_HI_SNARE = Sample('elec_hi_snare')
ELEC_MID_SNARE = Sample('elec_mid_snare')
ELEC_CYMBAL = Sample('elec_cymbal')
ELEC_SOFT_KICK = Sample('elec_soft_kick')
ELEC_FILT_SNARE = Sample('elec_filt_snare')
ELEC_FUZZ_TOM = Sample('elec_fuzz_tom')
ELEC_CHIME = Sample('elec_chime')
ELEC_BONG = Sample('elec_bong')
ELEC_TWANG = Sample('elec_twang')
ELEC_WOOD = Sample('elec_wood')
ELEC_POP = Sample('elec_pop')
ELEC_BEEP = Sample('elec_beep')
ELEC_BLIP = Sample('elec_blip')
ELEC_BLIP2 = Sample('elec_blip2')
ELEC_PING = Sample('elec_ping')
ELEC_BELL = Sample('elec_bell')
ELEC_FLIP = Sample('elec_flip')
ELEC_TICK = Sample('elec_tick')
ELEC_HOLLOW_KICK = Sample('elec_hollow_kick')
ELEC_TWIP = Sample('elec_twip')
ELEC_PLIP = Sample('elec_plip')
ELEC_BLUP = Sample('elec_blup')
ELEC_BEEP = Sample('elec_beep', 0.10578231292517007)
ELEC_BELL = Sample('elec_bell', 0.27825396825396825)
ELEC_BLIP = Sample('elec_blip', 0.15816326530612246)
ELEC_BLIP2 = Sample('elec_blip2', 0.1840816326530612)
ELEC_BLUP = Sample('elec_blup', 0.6632199546485261)
ELEC_BONG = Sample('elec_bong', 0.3464852607709751)
ELEC_CHIME = Sample('elec_chime', 2.2775510204081635)
ELEC_CYMBAL = Sample('elec_cymbal', 0.563219954648526)
ELEC_FILT_SNARE = Sample('elec_filt_snare', 1.5158503401360544)
ELEC_FLIP = Sample('elec_flip', 0.07476190476190477)
ELEC_FUZZ_TOM = Sample('elec_fuzz_tom', 0.37179138321995464)
ELEC_HI_SNARE = Sample('elec_hi_snare', 0.19736961451247165)
ELEC_HOLLOW_KICK = Sample('elec_hollow_kick', 0.15564625850340136)
ELEC_LO_SNARE = Sample('elec_lo_snare', 0.6607936507936508)
ELEC_MID_SNARE = Sample('elec_mid_snare', 0.7256235827664399)
ELEC_PING = Sample('elec_ping', 0.21226757369614513)
ELEC_PLIP = Sample('elec_plip', 0.19882086167800453)
ELEC_POP = Sample('elec_pop', 0.08680272108843537)
ELEC_SNARE = Sample('elec_snare', 0.3893197278911565)
ELEC_SOFT_KICK = Sample('elec_soft_kick', 0.1364172335600907)
ELEC_TICK = Sample('elec_tick', 0.01943310657596372)
ELEC_TRIANGLE = Sample('elec_triangle', 0.22294784580498866)
ELEC_TWANG = Sample('elec_twang', 0.6243083900226757)
ELEC_TWIP = Sample('elec_twip', 0.10140589569160997)
ELEC_WOOD = Sample('elec_wood', 0.47811791383219954)

## Sounds featuring guitars
GUIT_HARMONICS = Sample('guit_harmonics')
GUIT_E_FIFTHS = Sample('guit_e_fifths')
GUIT_E_SLIDE = Sample('guit_e_slide')
GUIT_E_FIFTHS = Sample('guit_e_fifths', 5.971791383219955)
GUIT_E_SLIDE = Sample('guit_e_slide', 4.325192743764172)
GUIT_EM9 = Sample('guit_em9', 9.972063492063493)
GUIT_HARMONICS = Sample('guit_harmonics', 3.5322675736961453)

## Miscellaneous Sounds
MISC_BURP = Sample('misc_burp')
MISC_CROW = Sample('misc_crow')
MISC_CINEBOOM = Sample('misc_cineboom')
MISC_BURP = Sample('misc_burp', 0.7932879818594104)
MISC_CINEBOOM = Sample('misc_cineboom', 7.922675736961451)
MISC_CROW = Sample('misc_crow', 0.48063492063492064)

## Percurssive Sounds
PERC_BELL = Sample('perc_bell')
PERC_SWASH = Sample('perc_swash')
PERC_TILL = Sample('perc_till')
PERC_BELL = Sample('perc_bell', 6.719206349206349)
PERC_SNAP = Sample('perc_snap', 0.30795918367346936)
PERC_SNAP2 = Sample('perc_snap2', 0.17414965986394557)
PERC_SWASH = Sample('perc_swash', 0.3195011337868481)
PERC_TILL = Sample('perc_till', 2.665736961451247)

## Ambient Sounds
AMBI_SOFT_BUZZ = Sample('ambi_soft_buzz')
AMBI_SWOOSH = Sample('ambi_swoosh')
AMBI_DRONE = Sample('ambi_drone')
AMBI_GLASS_HUM = Sample('ambi_glass_hum')
AMBI_GLASS_RUB = Sample('ambi_glass_rub')
AMBI_HAUNTED_HUM = Sample('ambi_haunted_hum')
AMBI_PIANO = Sample('ambi_piano')
AMBI_LUNAR_LAND = Sample('ambi_lunar_land')
AMBI_DARK_WOOSH = Sample('ambi_dark_woosh')
AMBI_CHOIR = Sample('ambi_choir')
AMBI_CHOIR = Sample('ambi_choir', 1.5715419501133787)
AMBI_DARK_WOOSH = Sample('ambi_dark_woosh', 3.7021315192743764)
AMBI_DRONE = Sample('ambi_drone', 4.40843537414966)
AMBI_GLASS_HUM = Sample('ambi_glass_hum', 10.0)
AMBI_GLASS_RUB = Sample('ambi_glass_rub', 3.1493650793650794)
AMBI_HAUNTED_HUM = Sample('ambi_haunted_hum', 9.78156462585034)
AMBI_LUNAR_LAND = Sample('ambi_lunar_land', 7.394240362811791)
AMBI_PIANO = Sample('ambi_piano', 2.811746031746032)
AMBI_SOFT_BUZZ = Sample('ambi_soft_buzz', 0.7821541950113379)
AMBI_SWOOSH = Sample('ambi_swoosh', 1.8484580498866212)

## Bass Sounds
BASS_HIT_C = Sample('bass_hit_c')
BASS_HARD_C = Sample('bass_hard_c')
BASS_THICK_C = Sample('bass_thick_c')
BASS_DROP_C = Sample('bass_drop_c')
BASS_WOODSY_C = Sample('bass_woodsy_c')
BASS_VOXY_C = Sample('bass_voxy_c')
BASS_VOXY_HIT_C = Sample('bass_voxy_hit_c')
BASS_DNB_F = Sample('bass_dnb_f')

BD_808 = Sample('bd_808')
BD_ADA = Sample('bd_ada')
BD_BOOM = Sample('bd_boom')
BD_FAT = Sample('bd_fat')
BD_GAS = Sample('bd_gas')
BD_HAUS = Sample('bd_haus')
BD_KLUB = Sample('bd_klub')
BD_PURE = Sample('bd_pure')
BD_SONE = Sample('bd_sone')
BD_TEK = Sample('bd_tek')
BD_ZOME = Sample('bd_zome')
BD_ZUM = Sample('bd_zum')
BASS_DNB_F = Sample('bass_dnb_f', 0.8705442176870748)
BASS_DROP_C = Sample('bass_drop_c', 2.3589115646258505)
BASS_HARD_C = Sample('bass_hard_c', 1.5)
BASS_HIT_C = Sample('bass_hit_c', 0.6092517006802721)
BASS_THICK_C = Sample('bass_thick_c', 3.9680725623582767)
BASS_VOXY_C = Sample('bass_voxy_c', 6.23469387755102)
BASS_VOXY_HIT_C = Sample('bass_voxy_hit_c', 0.457437641723356)
BASS_WOODSY_C = Sample('bass_woodsy_c', 3.252267573696145)

## Snare Drums Sounds
SN_DOLF = Sample('sn_dolf', 0.37759637188208617)
SN_DUB = Sample('sn_dub', 0.2781179138321995)
SN_ZOME = Sample('sn_zome', 0.4787528344671202)

## Bass Drums Sounds
BD_808 = Sample('bd_808', 0.5597505668934241)
BD_ADA = Sample('bd_ada', 0.10179138321995465)
BD_BOOM = Sample('bd_boom', 1.7142857142857142)
BD_FAT = Sample('bd_fat', 0.23219954648526078)
BD_GAS = Sample('bd_gas', 0.4471428571428571)
BD_HAUS = Sample('bd_haus', 0.21993197278911564)
BD_KLUB = Sample('bd_klub', 0.368843537414966)
BD_PURE = Sample('bd_pure', 0.43324263038548755)
BD_SONE = Sample('bd_sone', 0.4089115646258503)
BD_TEK = Sample('bd_tek', 0.24024943310657595)
BD_ZOME = Sample('bd_zome', 0.45972789115646256)
BD_ZUM = Sample('bd_zum', 0.13158730158730159)

## Sounds for Looping
LOOP_INDUSTRIAL = Sample('loop_industrial')
LOOP_COMPUS = Sample('loop_compus')
LOOP_AMEN = Sample('loop_amen')
LOOP_AMEN_FULL = Sample('loop_amen_full')
LOOP_SAFARI = Sample('loop_safari')
LOOP_TABLA = Sample('loop_tabla')
LOOP_AMEN = Sample('loop_amen', 1.753310657596372)
LOOP_AMEN_FULL = Sample('loop_amen_full', 6.857142857142857)
LOOP_BREAKBEAT = Sample('loop_breakbeat', 1.9047619047619047)
LOOP_COMPUS = Sample('loop_compus', 6.486485260770975)
LOOP_GARZUL = Sample('loop_garzul', 8.0)
LOOP_INDUSTRIAL = Sample('loop_industrial', 0.8837414965986394)
LOOP_MIKA = Sample('loop_mika', 8.0)
LOOP_SAFARI = Sample('loop_safari', 8.005079365079364)
LOOP_TABLA = Sample('loop_tabla', 10.673990929705216)

## Tabla
TABLA_TAS1 = Sample('tabla_tas1')
TABLA_TAS2 = Sample('tabla_tas2')
TABLA_TAS3 = Sample('tabla_tas3')
TABLA_KE1 = Sample('tabla_ke1')
TABLA_KE2 = Sample('tabla_ke2')
TABLA_KE3 = Sample('tabla_ke3')
TABLA_NA = Sample('tabla_na')
TABLA_NA_O = Sample('tabla_na_o')
TABLA_TUN1 = Sample('tabla_tun1')
TABLA_TUN2 = Sample('tabla_tun2')
TABLA_TUN3 = Sample('tabla_tun3')
TABLA_TE1 = Sample('tabla_te1')
TABLA_TE2 = Sample('tabla_te2')
TABLA_TE_NE = Sample('tabla_te_ne')
TABLA_TE_M = Sample('tabla_te_m')
TABLA_GHE1 = Sample('tabla_ghe1')
TABLA_GHE2 = Sample('tabla_ghe2')
TABLA_GHE3 = Sample('tabla_ghe3')
TABLA_GHE4 = Sample('tabla_ghe4')
TABLA_GHE5 = Sample('tabla_ghe5')
TABLA_GHE6 = Sample('tabla_ghe6')
TABLA_GHE7 = Sample('tabla_ghe7')
TABLA_GHE8 = Sample('tabla_ghe8')
TABLA_DHEC = Sample('tabla_dhec')
TABLA_NA_S = Sample('tabla_na_s')
TABLA_RE = Sample('tabla_re')
TABLA_DHEC = Sample('tabla_dhec', 0.3250793650793651)
TABLA_GHE1 = Sample('tabla_ghe1', 0.5912244897959184)
TABLA_GHE2 = Sample('tabla_ghe2', 2.6607256235827665)
TABLA_GHE3 = Sample('tabla_ghe3', 2.3908163265306124)
TABLA_GHE4 = Sample('tabla_ghe4', 0.7960997732426304)
TABLA_GHE5 = Sample('tabla_ghe5', 3.560045351473923)
TABLA_GHE6 = Sample('tabla_ghe6', 3.6011337868480724)
TABLA_GHE7 = Sample('tabla_ghe7', 2.1512698412698414)
TABLA_GHE8 = Sample('tabla_ghe8', 0.5817913832199546)
TABLA_KE1 = Sample('tabla_ke1', 0.04342403628117914)
TABLA_KE2 = Sample('tabla_ke2', 0.04403628117913832)
TABLA_KE3 = Sample('tabla_ke3', 0.07571428571428572)
TABLA_NA = Sample('tabla_na', 0.7198185941043084)
TABLA_NA_O = Sample('tabla_na_o', 1.4889795918367348)
TABLA_NA_S = Sample('tabla_na_s', 0.23582766439909297)
TABLA_RE = Sample('tabla_re', 0.2815419501133787)
TABLA_TAS1 = Sample('tabla_tas1', 1.1116553287981858)
TABLA_TAS2 = Sample('tabla_tas2', 1.4338321995464853)
TABLA_TAS3 = Sample('tabla_tas3', 1.2364625850340136)
TABLA_TE1 = Sample('tabla_te1', 0.17777777777777778)
TABLA_TE2 = Sample('tabla_te2', 0.33233560090702946)
TABLA_TE_M = Sample('tabla_te_m', 0.28879818594104306)
TABLA_TE_NE = Sample('tabla_te_ne', 0.15310657596371882)
TABLA_TUN1 = Sample('tabla_tun1', 2.3394104308390022)
TABLA_TUN2 = Sample('tabla_tun2', 2.693514739229025)
TABLA_TUN3 = Sample('tabla_tun3', 2.0956009070294783)

# Vinyl
VINYL_BACKSPIN = Sample('vinyl_backspin')
VINYL_REWIND = Sample('vinyl_rewind')
VINYL_SCRATCH = Sample('vinyl_scratch')
VINYL_HISS = Sample('vinyl_hiss')
VINYL_BACKSPIN = Sample('vinyl_backspin', 1.06124716553288)
VINYL_HISS = Sample('vinyl_hiss', 8.0)
VINYL_REWIND = Sample('vinyl_rewind', 2.6804761904761905)
VINYL_SCRATCH = Sample('vinyl_scratch', 0.27383219954648524)

## FX
BITCRUSHER = FxName('bitcrusher')
Expand Down Expand Up @@ -735,6 +748,15 @@ def sleep(duration):
synth_server.sleep(duration)
_debug('sleep', duration)

def sample_duration(sample):
"""
Returns the duration of the sample (in seconds)
:param sample:
:return: number
"""
return sample.duration


def one_in(max):
"""
Expand Down

0 comments on commit b891e9c

Please sign in to comment.