2019-08-20 01:18:57 +00:00
|
|
|
{
|
|
|
|
p_ac: {
|
|
|
|
|
|
|
|
|
|
|
|
# Audio device setup
|
2020-11-25 19:44:19 +00:00
|
|
|
audio: {
|
|
|
|
inPortLabel: "8 USB Audio CODEC:", #"HDA Intel PCH: CS4208", # "5 USB Audio CODEC:", #"5 USB Sound Device",
|
2021-01-18 15:30:55 +00:00
|
|
|
#inPortLabel: "8 Scarlett 18i20 USB: Audio",
|
2019-08-20 01:18:57 +00:00
|
|
|
outPortLabel: ,
|
2019-11-25 01:07:47 +00:00
|
|
|
},
|
2019-08-20 01:18:57 +00:00
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
midi: {
|
2019-11-25 01:07:47 +00:00
|
|
|
inMonitorFl: False,
|
|
|
|
outMonitorFl: False,
|
|
|
|
throughFl: False,
|
2021-01-18 15:30:55 +00:00
|
|
|
#inPortLabel: "MIDI9/QRS PNOScan:MIDI9/QRS PNOScan MIDI 1",
|
|
|
|
#outPortLabel: "MIDI9/QRS PNOScan:MIDI9/QRS PNOScan MIDI 1"
|
|
|
|
#inPortLabel: "Fastlane:Fastlane MIDI A",
|
|
|
|
#outPortLabel: "Fastlane:Fastlane MIDI A",
|
2020-11-25 19:44:19 +00:00
|
|
|
#inPortLabel: "picadae:picadae MIDI 1",
|
2021-01-18 15:30:55 +00:00
|
|
|
#outPortLabel: "picadae:picadae MIDI 1"
|
|
|
|
},
|
|
|
|
|
|
|
|
NoteTester:
|
|
|
|
{
|
|
|
|
noteCount: 200,
|
|
|
|
minNoteDurMs: 100,
|
|
|
|
maxNoteDurMs: 1000,
|
|
|
|
minPauseDurMs: 5,
|
|
|
|
maxPauseDurMs: 500,
|
|
|
|
pitch: 60,
|
|
|
|
minAttackUsec: 4000,
|
|
|
|
maxAttackUsec: 20000,
|
|
|
|
filename: "note_tester.json"
|
|
|
|
},
|
|
|
|
|
|
|
|
PolyNoteTester:
|
|
|
|
{
|
|
|
|
mode: "simple",
|
|
|
|
noteCount: 11,
|
|
|
|
minPitch: 21,
|
|
|
|
maxPitch: 31,
|
|
|
|
skipPitchL: [22,68,102],
|
|
|
|
minNoteDurMs: 1000,
|
|
|
|
maxNoteDurMs: 2000,
|
|
|
|
minInterOnsetMs: 100,
|
|
|
|
maxInterOnsetMs: 1000,
|
|
|
|
minAttackUsec: 4000,
|
|
|
|
maxAttackUsec: 20000,
|
|
|
|
holdDutyPct: 35,
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
ChordTester:
|
|
|
|
{
|
|
|
|
useVelTableFl: False,
|
|
|
|
#pitchL: [24,36,48,60,72,84,96],
|
|
|
|
#pitchL: [24,96,48,72,36,84,60],
|
|
|
|
#pitchL: [ 36,40,43,47, 48, 52, 55, 59],
|
|
|
|
#pitchL: [ 36,39,41,33 ],
|
|
|
|
pitchL: [ 21,23,24,25,26,27,28,29,30,31],
|
|
|
|
#pitchL: [ 36,33,35,34,37,40,43,42,38,39,41],
|
|
|
|
#pitchL: [ 43,44,45,46,47,48,49,50,51,52,53],
|
|
|
|
#pitchL: [ 54,55,56,57,58,59,60,61,62,63,64 ],
|
|
|
|
repeatCnt: 3,
|
|
|
|
atkUsec: 10000,
|
|
|
|
durMs: 1000,
|
|
|
|
pauseMs: 1000,
|
|
|
|
holdDuty: 35,
|
2019-11-25 01:07:47 +00:00
|
|
|
},
|
2019-08-20 01:18:57 +00:00
|
|
|
|
|
|
|
# Picadae API args
|
|
|
|
serial_dev: "/dev/ttyACM0",
|
|
|
|
serial_baud: 38400,
|
|
|
|
i2c_base_addr: 21,
|
|
|
|
prescaler_usec: 16,
|
2020-11-25 19:44:19 +00:00
|
|
|
pwm_div: 5,
|
2019-08-20 01:18:57 +00:00
|
|
|
serial_sync_timeout_ms: 10000,
|
2020-11-30 15:37:09 +00:00
|
|
|
|
2019-08-20 01:18:57 +00:00
|
|
|
|
|
|
|
# MeasureSeq args
|
2021-01-18 15:30:55 +00:00
|
|
|
outDir: "~/temp/p_ac_3_ok",
|
2020-02-29 05:01:58 +00:00
|
|
|
noteDurMs: 500,
|
|
|
|
pauseDurMs: 500,
|
|
|
|
reversePulseListFl: True,
|
2021-01-18 15:30:55 +00:00
|
|
|
useFullPulseListFl: True, # don't select a new set of resample points based on the previous samples from this pitch
|
2020-02-29 05:01:58 +00:00
|
|
|
maxSilentNoteCount: 4,
|
|
|
|
silentNoteMaxPulseUs: 15000,
|
2020-11-25 19:44:19 +00:00
|
|
|
silentNoteMinDurMs: 180, #250,
|
2020-02-29 05:01:58 +00:00
|
|
|
|
2020-11-30 15:37:09 +00:00
|
|
|
defaultHoldDelayUsecs: 1000,
|
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
# Midi file player
|
2021-01-18 15:30:55 +00:00
|
|
|
midiFileFn: "/home/kevin/media/audio/midi/txt/988-v25.txt",
|
2020-02-29 05:01:58 +00:00
|
|
|
|
|
|
|
|
2019-08-20 01:18:57 +00:00
|
|
|
|
2019-09-01 14:54:09 +00:00
|
|
|
full_pulse0L: [ 500, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 7000, 8000, 9000, 10000, 12000, 14000, 18000, 22000, 26000, 30000, 34000, 40000],
|
|
|
|
full_pulse1L: [ 10000, 11000, 12000, 13000, 14000, 15000, 16000, 17000, 18000, 20000, 22000, 24000, 26000, 30000, 32000, 34000, 36000, 40000],
|
2019-11-09 16:13:34 +00:00
|
|
|
full_pulse2L: [ 10000, 10500, 11000, 11500, 12000, 12500, 13000, 13500, 14000, 14500, 15000, 15500, 16000, 16500, 17000, 17500, 18000, 18500, 20000, 22000, 24000, 26000, 30000, 32000, 34000, 36000, 40000],
|
2019-09-01 14:54:09 +00:00
|
|
|
|
2019-11-09 16:13:34 +00:00
|
|
|
full_pulse3L: [ 10000, 10125, 10250, 10500, 10625, 10750, 10875, 11000, 11125, 11250, 11500, 11625, 11750, 11875, 12000, 12125, 12250, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13500, 13625, 13750, 13875, 14000, 14125, 14250, 14500, 14625, 14750, 14875, 15000, 15500, 16000, 16500, 17000, 17500, 18000, 18500, 20000, 22000, 24000, 26000, 30000, 32000, 34000, 36000, 40000],
|
|
|
|
|
|
|
|
full_pulse4L: [ 8000, 8125, 8250, 8375, 8500, 8625, 8750, 8875, 9000, 9125, 9250, 9375, 9500, 9625, 9750, 9875, 10000, 10125, 10250, 10375, 10500, 10625, 10750, 10875, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13375, 13500, 13625, 13750, 13875, 14000, 14125, 14375, 14250, 14500, 14625, 14750, 14875, 15000, 15250, 15375, 15500, 15750, 16000, 16250, 16500, 16750, 17000, 17250, 17500, 17750, 18000, 18250, 18500, 18750, 20000, 21000, 22000, 23000, 24000, 25000, 26000, 27000, 28000, 30000, 32000, 34000, 36000, 40000],
|
|
|
|
|
|
|
|
full_pulse5L: [ 10000, 10125, 10250, 10375, 10500, 10625, 10750, 10875, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13375, 13500, 13625, 13750, 13875, 14000, 14125, 14250, 14375, 14500, 14625, 14750, 14875, 15000, 15250, 15375, 15500, 15750, 16000, 16250, 16500, 16750, 17000, 17250, 17500, 17750, 18000, 18250, 18500, 18750, 20000, 21000, 22000, 23000, 24000, 25000, 26000, 27000, 28000, 30000, 32000, 34000, 36000, 40000],
|
|
|
|
|
|
|
|
full_pulse6L: [ 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13375, 13500, 13625, 13750, 13875, 14000, 14125, 14250, 14375, 14500, 14625, 14750, 14875, 15000, 15250, 15375, 15500, 15750, 16000, 16250, 16500, 16750, 17000, 17250, 17500, 17750, 18000, 18250, 18500, 18750, 19000, 19500, 20000, 20500, 21000, 21500, 22000, 22500, 23000, 23500, 24000, 24500, 25000, 25500, 26000, 26500, 27000, 27500, 28000, 28500, 29000, 30000, 31000, 32000, 33000, 34000, 35000, 36000, 37000, 38000, 39000, 40000 ],
|
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
full_pulseMainL: [ 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13375, 13500, 13625, 13750, 13875, 14000, 14125, 14250, 14375, 14500, 14625, 14750, 14875, 15000, 15250, 15375, 15500, 15750, 16000, 16250, 16500, 16750, 17000, 17250, 17500, 17750, 18000, 18250, 18500, 18750, 19000, 19500, 20000, 20500, 21000, 21500, 22000, 22500, 23000, 23500, 24000, 24500, 25000, 25500, 26000, 26500, 27000, 27500, 28000, 28500, 29000, 30000, 31000, 32000, 33000, 34000, 35000, 36000, 37000, 38000, 39000, 40000 ],
|
2019-11-09 16:13:34 +00:00
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
full_pulse8L: [ 10000, 10050, 10100, 10150, 10200, 10250, 10300, 10350, 10400, 10450, 10500, 10550, 10600, 10650, 10700, 10750, 10800, 10850, 10900, 10950, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13375, 13500, 13625, 13750, 13875, 14000, 14125, 14250, 14375, 14500, 14625, 14750, 14875, 15000, 15250, 15375, 15500, 15750, 16000, 16250, 16500, 16750, 17000, 17250, 17500, 17750, 18000, 18250, 18500, 18750, 19000, 19500, 20000, 20500, 21000, 21500, 22000, 22500, 23000, 23500, 24000, 24500, 25000, 25500, 26000, 26500, 27000, 27500, 28000, 28500, 29000, 30000, 31000, 32000, 33000, 34000, 35000, 36000, 37000, 38000, 39000, 40000 ],
|
|
|
|
|
2020-11-25 19:44:19 +00:00
|
|
|
# full_pulse9L was the last pulse list used on Matt's piano
|
|
|
|
full_pulse9L: [11000, 11075, 11150, 11225, 11300, 11375, 11450, 11525, 11600,11675, 11750, 11825, 11900, 11975, 12050, 12125, 12200, 12275,12350, 12425, 12500, 12575, 12650, 12725, 12800, 12875, 12950, 13025, 13100, 13175, 13250, 13325, 13400, 13475, 13550, 13625, 13700, 13775, 13850, 13925, 14000, 14075, 14150, 14225, 14300, 14375, 14450, 14525, 14600, 14675, 14750, 14825, 14900, 14975],
|
2020-02-29 05:01:58 +00:00
|
|
|
|
|
|
|
full_pulse10L: [ 8750, 8800, 8850, 8900, 8950, 9000, 9050, 9100, 9150, 9200, 9250, 9300, 9350, 9400, 9450,9500, 9550, 9600, 9650, 9700, 9750, 9800, 9850, 9900, 9950, 10000, 10050, 10100, 10150, 10200, 10250, 10300, 10350, 10400, 10450, 10500, 10550, 10600, 10650, 10700, 10750, 10800, 10850, 10900, 10950, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13375, 13500, 13625, 13750, 13875, 14000, 14125, 14250, 14375, 14500, 14625, 14750, 14875, 15000, 15250, 15375, 15500, 15750, 16000, 16250, 16500, 16750, 17000, 17250, 17500, 17750, 18000, 18250, 18500, 18750, 19000, 19500, 20000, 20500, 21000, 21500, 22000, 22500, 23000, 23500, 24000, 24500, 25000, 25500, 26000, 26500, 27000, 27500, 28000, 28500, 29000, 30000, 31000, 32000, 33000, 34000, 35000, 36000, 37000, 38000, 39000, 40000 ],
|
2019-11-09 16:13:34 +00:00
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
full_pulse11L: [ 9000, 9050, 9100, 9150, 9200, 9250, 9300, 9350, 9400, 9450,9500, 9550, 9600, 9650, 9700, 9750, 9800, 9850, 9900, 9950, 10000, 10050, 10100, 10150, 10200, 10250, 10300, 10350, 10400, 10450, 10500, 10550, 10600, 10650, 10700, 10750, 10800, 10850, 10900, 10950, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13375, 13500, 13625, 13750, 13875, 14000, 14125, 14250, 14375, 14500, 14625, 14750, 14875, 15000 ],
|
|
|
|
|
|
|
|
full_pulse12L: [ 8750, 8800, 8850, 8900, 8950, 9000, 9050, 9100, 9150, 9200, 9250, 9300, 9350, 9400, 9450,9500, 9550, 9600, 9650, 9700, 9750, 9800, 9850, 9900, 9950, 10000, 10050, 10100, 10150, 10200, 10250, 10300, 10350, 10400, 10450, 10500, 10550, 10600, 10650, 10700, 10750, 10800, 10850, 10900, 10950, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13125, 13250, 13375, 13500, 13625, 13750, 13875, 14000, 14125, 14250, 14375, 14500, 14625, 14750, 14875, 15000 ],
|
2020-11-25 19:44:19 +00:00
|
|
|
|
|
|
|
# pulse lists below this line were developed on Steinway D (11/14/20)
|
|
|
|
# 60
|
|
|
|
full_pulse13L: [8000, 8250, 8500, 8750, 9000, 9250, 9500, 9750, 10000, 10250, 10500, 10750, 11000, 11250, 11500, 11750, 12000, 12250, 12500, 12750, 13000, 13500, 14000, 14500, 15000, 15500, 16000, 16500, 17000, 17500, 18000, 18500, 19000, 19500, 20000 ],
|
|
|
|
|
|
|
|
full_pulse14L: [ 9000, 9125, 9250, 9375, 9500, 9625, 9750, 9875, 10000, 10125, 10250, 10375, 10500, 10625, 10750, 10875, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12250, 12500, 12750, 13000, 13500, 14000, 14500, 15000, 15500, 16000, 16500, 17000, 17500, 18000, 18500, 19000, 19500, 20000, 20500, 21000, 21500, 22000 ],
|
2019-11-09 16:13:34 +00:00
|
|
|
|
2020-11-25 19:44:19 +00:00
|
|
|
full_pulse15L: [ 8000, 9000,10000, 11000, 12000, 13000, 14000, 15000, 16000, 17000, 18000, 19000, 20000 ],
|
|
|
|
|
|
|
|
full_pulse16L: [ 8000, 8125, 8250, 8375, 8500, 8625, 8750, 8875, 9000, 9125, 9250, 9375, 9500, 9625, 9750, 9875, 10000, 10125, 10250, 10375, 10500, 10625, 10750, 10875, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12250, 12500, 12750, 13000, 13500, 14000, 14500, 15000, 15500, 16000, 16500, 17000, 17500, 18000, 18500, 19000, 19500, 20000, 20500, 21000, 21500, 22000 ],
|
|
|
|
|
|
|
|
full_pulse17L: [ 8100, 8150, 8200, 8250, 8300, 8350, 8400, 8450, 8500, 8550, 8600, 8650, 8700, 8750, 8800, 8850, 8900, 8950, 9000, 9125, 9250, 9375, 9500, 9625, 9750, 9875, 10000, 10125, 10250, 10375, 10500, 10625, 10750, 10875, 11000, 11125, 11250, 11375, 11500, 11625, 11750, 11875, 12000, 12250, 12500, 12750, 13000, 13500, 14000, 14500, 15000, 15500, 16000, 16500, 17000, 17500, 18000, 18500, 19000, 19500, 20000, 20500, 21000, 21500, 22000 ],
|
|
|
|
|
|
|
|
full_pulse18L: [ 11500, 11625, 11750, 11875, 12000, 12250, 12500, 12750, 13000, 13500, 14000, 14500, 15000, 15500 ],
|
|
|
|
|
|
|
|
full_pulse19L: [ 11875, 12000, 12125, 12250, 12375, 12500, 12625, 12750, 12875, 13000, 13250, 13500, 13750, 14000, 14500, 15000, 15500, 16000, 16500 ],
|
|
|
|
|
|
|
|
# pulse lists below this line were developed on Steinway D w/ new firmware (11/21/20)
|
|
|
|
|
|
|
|
full_pulse20L: [ 1000, 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000, 3250, 3500, 3750, 4000, 4250, 4500, 4750, 5000, 5250, 5500, 5750, 6000, 6250, 6500, 6750, 7000, 7250, 7500, 7750, 8000, 8250, 8500, 8750, 9000, 9250, 9500, 9750, 10000, 10250, 10500, 10750, 11000, 11250, 11500, 11750, 12000, 12250, 12500, 12750, 13000, 13500, 14000, 14500, 15000, 15500 ],
|
|
|
|
|
|
|
|
full_pulse21L: [ 1000, 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000, 3250, 3500, 3750, 4000, 4500, 5000, 5500, 6000, 6500, 7000, 7500, 8000, 8500, 9000, 10000, 11000, 12000, 13000, 14000, 15000, 16000, 17000, 18000, 19000 ],
|
|
|
|
|
|
|
|
full_pulse22L: [ 3500, 3750, 4000, 4250, 4500, 4750, 5000, 5250, 5500, 5750, 6000, 6250, 6500, 6750, 7000, 7500, 8000, 8500, 9000, 9500, 10000, 10500, 11000, 12000, 12500, 13000, 14000, 15000, 16000, 17000, 18000, 19000 ],
|
|
|
|
|
2020-11-30 15:37:09 +00:00
|
|
|
# 60,72,84
|
2021-01-18 15:30:55 +00:00
|
|
|
full_pulse23L: [ 2000, 2250, 2500,2750, 3000, 3250, 3500, 3750, 4000, 4250, 4500, 4750, 5000, 5250, 5500, 5750, 6000, 6250, 6500, 6750, 7000, 7500, 8000, 8500, 9000, 9500, 10000, 10500, 11000, 11500, 12000, 12500, 13000, 14000, 15000, 16000, 17000, 18000, 19000, 20000, 22000 ],
|
|
|
|
|
|
|
|
full_pulseL24: [ 5000, 5125, 5250, 5375, 5500, 5625, 5750, 5875, 6000, 6125, 6250, 6500, 6750, 7000, 7500, 8000, 8500, 9000, 9500, 10000, 10500, 11000, 11500, 12000, 12500, 13000, 14000, 15000, 16000, 17000, 18000, 19000, 20000, 22000 ],
|
|
|
|
|
|
|
|
# 23-40
|
|
|
|
full_pulseL25: [ 3500, 3625, 3750, 3875, 4000, 4125, 4250, 4375, 4500, 4625, 4750, 4875, 5000, 5125, 5250, 5375, 5500, 5625, 5750, 5875, 6000, 6125, 6250, 6375, 6500, 6625, 6750, 6875, 7000, 7250, 7500, 7750, 8000, 8250, 8500, 9000, 9500, 10000, 10500, 11000, 11500, 12000, 12500, 13000, 14000, 15000, 16000, 17000, 18000, 19000, 20000 ],
|
|
|
|
|
|
|
|
full_pulse25aL: [ 2000, 2050, 2100, 2150, 2200, 2250, 2300, 2350, 2400, 2450, 2500, 2550, 2600, 2650, 2700, 2750, 2800, 2850, 2900, 2950, 3000, 3050, 3100, 3150, 3200, 3250, 3300, 3350, 3400, 3450, 3500, 3550, 3600, 3650, 3700, 3750, 3800, 3850, 3900, 3950, 4000, 4050, 4100, 4150, 4200, 4250, 4300, 4350, 4400, 4450, 4500, 4550, 4600, 4650, 4700, 4750, 4800, 4850, 4900, 4950, 5000, 5050, 5100, 5150, 5200, 5250, 5300, 5350, 5400, 5450, 5500, 5550, 5600, 5650, 5700, 5750, 5800, 5850, 5900, 5950, 6000, 6125, 6250, 6375, 6500, 6625, 6750, 6875, 7000, 7250, 7500, 7750, 8000, 8250, 8500, 9000, 9500, 10000, 10500, 11000, 11500, 12000, 12500, 13000, 14000, 15000, 16000, 17000, 18000, 19000, 20000 ],
|
|
|
|
|
|
|
|
# 21-
|
|
|
|
full_pulse26L: [ 1500, 1625, 1750, 1875, 2000, 2125, 2250, 2375, 2500, 2625, 2750, 2875, 3000, 3125, 3250, 3375,3500, 3625, 3750, 3875, 4000, 4125, 4250, 4375, 4500, 4625, 4750, 4875, 5000, 5125, 5250, 5375, 5500, 5625, 5750, 5875, 6000, 6125, 6250, 6375, 6500, 6625, 6750, 6875, 7000, 7250, 7500, 7750, 8000, 8250, 8500, 9000, 9500, 10000, 10500, 11000, 11500, 12000, 12500, 13000, 14000, 15000, 16000, 17000, 18000, 19000, 20000, 22000 ],
|
|
|
|
|
|
|
|
full_pulseL: [ 1500, 1600, 1700, 1800, 1900, 2000, 2100, 2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900, 3000, 3100, 3200, 3300, 3400, 3500, 3625, 3750, 3875, 4000, 4125, 4250, 4375, 4500, 4625, 4750, 4875, 5000, 5125, 5250, 5375, 5500, 5625, 5750, 5875, 6000, 6125, 6250, 6375, 6500, 6625, 6750, 6875, 7000, 7250, 7500, 7750, 8000, 8250, 8500, 9000, 9500, 10000, 10500, 11000, 11500, 12000, 12500, 13000, 14000, 15000, 16000, 17000, 18000, 19000, 20000, 22000 ],
|
|
|
|
|
|
|
|
# 92
|
|
|
|
full_pulse27L: [ 1500, 1625, 1750, 1875, 2000, 2125, 2250, 2375, 2500, 2625, 2750, 2875, 3000, 3125, 3250, 3375, 3500, 3625, 3750, 3875, 4000, 4125, 4250, 4375, 4500, 4625, 4750, 4875, 5000, 5125, 5250, 5375, 5500, 5625, 5750, 5875, 6000, 6125, 6250, 6375, 6500, 6625, 6750, 6875, 7000, 7250, 7500, 7750, 8000, 8250, 8500, 9000, 9500, 10000, 10500, 11000, 11500, 12000, 12500, 13000, 14000, 15000, 16000, 17000, 18000, 19000 ],
|
|
|
|
|
|
|
|
full_pulse28L: [ 4000, 8000, 12000, 16000 ],
|
|
|
|
|
|
|
|
full_pulse29L: [ 500, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 7000, 7500, 8000, 8500, 9000, 9500, 10000, 10500, 11000, 11500, 12000, 12500, 13000, 13500, 14000, 14500, 15000, 15500, 16000, 16500, 17000, 17500, 18000, 18500, 19000, 19500, 20000 ],
|
2020-11-25 19:44:19 +00:00
|
|
|
|
2019-09-01 14:54:09 +00:00
|
|
|
# RMS analysis args
|
|
|
|
analysisArgs: {
|
|
|
|
rmsAnalysisArgs: {
|
|
|
|
rmsWndMs: 300, # length of the RMS measurment window
|
|
|
|
rmsHopMs: 30, # RMS measurement inter window distance
|
2019-12-09 22:37:24 +00:00
|
|
|
dbLinRef: 0.01, # length of initial portion of signal to use to calculate the dB reference level
|
2019-09-01 14:54:09 +00:00
|
|
|
harmCandN: 5, # count of harmonic candidates to locate during harmonic based RMS analysis
|
|
|
|
harmN: 3, # count of harmonics to use to calculate harmonic based RMS analysis
|
2019-12-09 22:37:24 +00:00
|
|
|
durDecayPct: 40, # percent drop in RMS to indicate the end of a note
|
2019-09-01 14:54:09 +00:00
|
|
|
},
|
2019-12-09 22:37:24 +00:00
|
|
|
|
2020-11-25 19:44:19 +00:00
|
|
|
resampleMinDb: -5.0, # note's less than this will be skipped
|
2020-02-29 05:01:58 +00:00
|
|
|
resampleNoiseLimitPct: 5.0, #
|
2020-11-25 19:44:19 +00:00
|
|
|
resampleMinDurMs: 150, # notes's whose duration is less than this will be skipped
|
|
|
|
|
|
|
|
useLastTakeOnlyFl: True,
|
2021-01-18 15:30:55 +00:00
|
|
|
minAttkDb: -5.0, # threshold of silence level
|
|
|
|
maxDbOffset: 0.25, # travel down the from the max. note level by at most this amount to locate the max. peak
|
|
|
|
maxDeltaDb: 1.5, # maximum db change between volume samples (changes greater than this will trigger resampling)
|
|
|
|
samplesPerDb: 4, # count of samples per dB to resample ranges whose range is less than maxDeltaDb
|
|
|
|
minSampleDistUs: 50, # minimum distance between sample points in microseconds
|
2019-11-18 16:44:47 +00:00
|
|
|
auditionNoteN: 19, # count of notes to play for audition
|
|
|
|
|
|
|
|
finalPulseListCacheFn: "/home/kevin/temp/final_pulse_list_cache.pickle",
|
|
|
|
rmsAnalysisCacheFn: "/home/kevin/temp/rms_analysis_cache.pickle"
|
2019-09-01 14:54:09 +00:00
|
|
|
},
|
2019-11-25 01:07:47 +00:00
|
|
|
|
2021-01-18 15:30:55 +00:00
|
|
|
# used by plot_seq_1.gen_vel_map()
|
|
|
|
velTableDbL: [ 2, 7, 10, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 27, 29 ],
|
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
manualMinD: {
|
2021-01-18 15:30:55 +00:00
|
|
|
21:[-1,6],
|
|
|
|
23:[-1,1], # 10
|
|
|
|
24:[-1,11], # 11
|
|
|
|
25:[-1,8],
|
|
|
|
26:[-1,9], # 13
|
|
|
|
27:[-1,11],
|
|
|
|
28:[-1,2],
|
|
|
|
29:[-1,16],
|
|
|
|
30:[-1,4],
|
|
|
|
31:[-1,8],
|
|
|
|
32:[-1,9],
|
|
|
|
33:[-1,10],
|
|
|
|
34:[-1,9], # 15
|
|
|
|
35:[-1,9],
|
|
|
|
36:[-1,4],
|
|
|
|
37:[-1,7],
|
|
|
|
38:[-1,5],
|
|
|
|
39:[-1,5],
|
|
|
|
40:[-1,6], # 2 lwr
|
|
|
|
41:[-1,10], # 24 lwr
|
|
|
|
42:[-1,2],
|
|
|
|
43:[-1,4],
|
|
|
|
44:[-1,5],
|
|
|
|
45:[-1,10],
|
|
|
|
46:[-1,4],
|
|
|
|
47:[-1,7],
|
|
|
|
48:[-1,9],
|
|
|
|
49:[-1,2],
|
|
|
|
50:[-1,5],
|
|
|
|
51:[-1,4],
|
|
|
|
52:[-1,8],
|
|
|
|
53:[-1,0], # 16
|
|
|
|
54:[-1,8],
|
|
|
|
55:[-1,14],
|
|
|
|
56:[-1,8],
|
|
|
|
57:[-1,9],
|
|
|
|
58:[-1,10],
|
|
|
|
59:[-1,7],
|
|
|
|
60:[-1,7], # 14
|
|
|
|
61:[-1,10], # 14
|
|
|
|
62:[-1,1], # 7
|
|
|
|
63:[-1,5],
|
|
|
|
64:[-1,2],
|
|
|
|
65:[-1,8],
|
|
|
|
66:[-1,3],
|
|
|
|
67:[-1,3], # 17 lwr
|
|
|
|
68:[-1,3],
|
|
|
|
69:[-1,9],
|
|
|
|
70:[-1,15], # 15 lwr
|
|
|
|
71:[-1,0], # 7 lwr
|
|
|
|
72:[-1,3],# 12 lwr
|
|
|
|
73:[-1,0],# 21 lwr
|
|
|
|
74:[-1,0],# 24 lwr
|
|
|
|
75:[-1,0],# 18 lwr
|
|
|
|
76:[-1,0],# 13 lwr
|
|
|
|
77:[-1,0],# 22 lwr
|
|
|
|
78:[-1,0],# 14 lwr
|
|
|
|
79:[-1,8],
|
|
|
|
80:[-1,3],
|
|
|
|
81:[-1,2], # 14 lwr
|
|
|
|
82:[-1,5], # 11
|
|
|
|
83:[-1,7],
|
|
|
|
84:[-1,3], # 13
|
|
|
|
85:[-1,5],
|
|
|
|
86:[-1,4],
|
|
|
|
87:[-1,7],
|
|
|
|
88:[-1,5], # 22
|
|
|
|
89:[-1,19],
|
|
|
|
90:[-1,2], # 10
|
|
|
|
91:[-1,10],
|
|
|
|
92:[-1,8],
|
|
|
|
93:[-1,7],
|
|
|
|
94:[-1,5], # 10
|
|
|
|
95:[-1,9],
|
|
|
|
96:[-1,13],
|
|
|
|
97:[-1,12],
|
|
|
|
98:[-1,14],
|
|
|
|
99:[-1,14],
|
|
|
|
100:[-1,18],
|
|
|
|
101:[-1,18],
|
|
|
|
103:[-1,25],
|
|
|
|
104:[-1,26],
|
|
|
|
105:[-1,18],
|
|
|
|
106:[-1,26],
|
|
|
|
107:[-1,29],
|
|
|
|
108:[-1,28],
|
|
|
|
},
|
2020-11-25 19:44:19 +00:00
|
|
|
|
2021-01-18 15:30:55 +00:00
|
|
|
manualAnchorPitchMinDbL: [ 24, 36,48,60,72,84,96 ],
|
|
|
|
manualAnchorPitchMaxDbL: [ 24, 36,48,60,72,84,96 ],
|
|
|
|
|
|
|
|
manualLastFl: true,
|
2020-11-25 19:44:19 +00:00
|
|
|
|
|
|
|
manualMinD_0: {
|
2020-02-29 05:01:58 +00:00
|
|
|
23: [2, 24],
|
|
|
|
24: [2, 18],
|
|
|
|
25: [2, 41],
|
|
|
|
26: [2, 26], #
|
|
|
|
27: [2, 35], # (36 is an outlier)
|
|
|
|
28: [2, 35], # /36 (resample?)
|
|
|
|
29: [2, 22], # /23 (resample?)
|
|
|
|
30: [2, 28], # /29
|
|
|
|
31: [2, 39], #
|
|
|
|
32: [2, 27], #
|
|
|
|
33: [2, 10], #
|
|
|
|
34: [2, 27], # (29 outlier)
|
|
|
|
35: [2, 15], #
|
|
|
|
36: [2, 16], # ngz: (0 32 36) (1 31 36)
|
|
|
|
37: [2, 18], #
|
|
|
|
38: [2, 33], #
|
|
|
|
39: [2, 18], #
|
|
|
|
40: [2, 6], # ngz: (0 25 41)
|
|
|
|
41: [2, 22], # ngz: (2 9 22)
|
|
|
|
42: [2, 11], #
|
|
|
|
43: [2, 7], #(8 outlier)], #
|
|
|
|
44: [2, 19],
|
|
|
|
45: [4, 7], # 5 sample traes
|
|
|
|
46: [2, 4],
|
|
|
|
47: [2, 11], # /12
|
|
|
|
48: [2, 27], # /28
|
|
|
|
49: [2, 12],
|
|
|
|
50: [2, 6],
|
|
|
|
51: [2, 14],
|
|
|
|
52: [2, 26],
|
|
|
|
53: [3, 24 ], # ngz at onset
|
|
|
|
54: [2, 21], # /22
|
|
|
|
55: [2, 10], # /11
|
|
|
|
56: [2, 5],
|
|
|
|
57: [2, 6],
|
|
|
|
58: [2, 11],
|
|
|
|
59: [2, 5],
|
|
|
|
60: [2, 13],
|
|
|
|
61: [4, 5],
|
|
|
|
62: [2, 7],
|
|
|
|
63: [2, 12],
|
|
|
|
64: [3, 33],
|
|
|
|
65: [2, 23],
|
|
|
|
66: [2, 36],
|
|
|
|
67: [2, 16],
|
|
|
|
68: [2, 1], # needs decreased start us
|
|
|
|
69: [1, 7],
|
|
|
|
70: [2, 34],
|
|
|
|
71: [2, 23],
|
|
|
|
72: [2, 14],
|
|
|
|
73: [2, 30],
|
|
|
|
74: [2, 26],
|
|
|
|
75: [2, 31],
|
|
|
|
76: [2, 20],
|
|
|
|
77: [2, 28],
|
|
|
|
78: [2, 28],
|
|
|
|
79: [2, 44],
|
|
|
|
80: [2, 25],
|
|
|
|
81: [2, 36],
|
|
|
|
82: [2, 51], # incorrect hold voltages (resample)
|
|
|
|
83: [2, 43],
|
|
|
|
84: [2, 38],
|
|
|
|
85: [2, 27],
|
|
|
|
86: [2, 43],
|
|
|
|
87: [2, 33],
|
|
|
|
88: [2, 42],
|
|
|
|
89: [3, 21], # ngz (3 15 19)
|
|
|
|
91: [2, 4], # bad samples (resample)
|
|
|
|
92: [2, 10],
|
|
|
|
93: [2, 42],
|
|
|
|
94: [2, 39],
|
|
|
|
95: [2, 19],
|
|
|
|
96: [2, 1], # needs decreaed start us ngz: (0 22 38)
|
|
|
|
97: [2, 51],
|
|
|
|
98: [2, 30],
|
|
|
|
99: [2, 41],
|
|
|
|
100: [2, 24],
|
|
|
|
101: [2, 39],
|
|
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
2020-11-25 19:44:19 +00:00
|
|
|
manualAnchorPitchMinDbL_0: [ 23, 27, 31, 34, 44, 51, 61, 70, 74, 81, 87, 93, 96, 101 ],
|
|
|
|
manualAnchorPitchMaxDbL_0: [ 23, 32, 49, 57, 67, 76, 83, 93, 99, 101 ],
|
2019-11-25 01:07:47 +00:00
|
|
|
|
|
|
|
calibrateArgs: {
|
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
outDir: "~/temp/calib2",
|
|
|
|
outLabel: "test_3",
|
|
|
|
|
|
|
|
inDir: "~/temp/p_ac_3f",
|
2019-11-25 01:07:47 +00:00
|
|
|
|
|
|
|
analysisD: {
|
|
|
|
rmsWndMs: 300, # length of the RMS measurment window
|
|
|
|
rmsHopMs: 30, # RMS measurement inter window distance
|
2019-12-09 22:37:24 +00:00
|
|
|
dbLinRef: 0.01, # length of initial portion of signal to use to calculate the dB reference level
|
2019-11-25 01:07:47 +00:00
|
|
|
harmCandN: 5, # count of harmonic candidates to locate during harmonic based RMS analysis
|
|
|
|
harmN: 3, # count of harmonics to use to calculate harmonic based RMS analysis
|
|
|
|
durDecayPct: 40 # percent drop in RMS to indicate the end of a note
|
|
|
|
},
|
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
noteOnDurMs: 500,
|
|
|
|
noteOffDurMs: 500,
|
2019-11-25 01:07:47 +00:00
|
|
|
|
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
#pitchL: [ 31, 33, 34, 35 ], # list of pitches
|
|
|
|
#pitchL: [ 80,81,82 ], # 8
|
|
|
|
pitchL: [ 40,41,42 ], # 12
|
|
|
|
targetDbL: [ 13 ], # list of target db
|
2019-11-25 01:07:47 +00:00
|
|
|
|
2020-02-29 05:01:58 +00:00
|
|
|
minMeasDurMs: 140, # minimum candidate note duration
|
2019-12-09 22:37:24 +00:00
|
|
|
tolDbPct: 2.0, # tolerance as a percent of targetDb above/below used to form match db window
|
2019-11-25 01:07:47 +00:00
|
|
|
maxPulseUs: 45000, # max. allowable pulse us
|
2020-11-30 15:37:09 +00:00
|
|
|
minPulseUs: 2000, # min. allowable pulse us
|
2019-11-25 01:07:47 +00:00
|
|
|
initPulseUs: 15000, # pulseUs for first note
|
|
|
|
minMatchN: 3, # at least 3 candidate notes must be within tolDbPct to move on to a new targetDb
|
|
|
|
maxAttemptN: 30, # give up if more than 20 candidate notes fail for a given targetDb
|
2020-02-29 05:01:58 +00:00
|
|
|
dbSrcLabel: 'hm', # source of the db measurement 'td' (time-domain) or 'hm' (harmonic)
|
2019-11-25 01:07:47 +00:00
|
|
|
|
|
|
|
holdDutyPctD: {
|
2021-01-18 15:30:55 +00:00
|
|
|
21: [[0, 50]],
|
|
|
|
23: [[0, 50]],
|
|
|
|
24: [[0, 50]],
|
|
|
|
25: [[0, 50]],
|
|
|
|
26: [[0, 50]],
|
|
|
|
27: [[0, 50]],
|
|
|
|
28: [[0, 50]],
|
|
|
|
29: [[0, 50]],
|
|
|
|
30: [[0, 50]],
|
|
|
|
31: [[0, 50]],
|
|
|
|
32: [[0, 50]],
|
|
|
|
33: [[0, 50]],
|
|
|
|
34: [[0, 50]],
|
|
|
|
35: [[0, 50]],
|
|
|
|
36: [[0, 50]],
|
|
|
|
37: [[0, 50]],
|
|
|
|
38: [[0, 50]],
|
|
|
|
39: [[0, 50]],
|
|
|
|
40: [[0, 50]],
|
|
|
|
41: [[0, 45]],
|
|
|
|
42: [[0, 45]],
|
|
|
|
43: [[0, 45]],
|
|
|
|
44: [[0, 45]],
|
|
|
|
45: [[0, 45]],
|
|
|
|
46: [[0, 40],[10000,45]],
|
|
|
|
47: [[0, 40],[10000,45]],
|
|
|
|
48: [[0, 40],[10000,45]],
|
|
|
|
49: [[0, 40],[10000,45]],
|
|
|
|
50: [[0, 40],[10000,45]],
|
|
|
|
51: [[0, 40],[10000,45]],
|
|
|
|
52: [[0, 40],[10000,45]],
|
|
|
|
53: [[0, 40],[10000,45]],
|
|
|
|
54: [[0, 40],[10000,45]],
|
|
|
|
55: [[0, 40],[10000,45]],
|
|
|
|
56: [[0, 40],[10000,45]],
|
|
|
|
57: [[0, 40],[10000,45]],
|
|
|
|
58: [[0, 40],[10000,45]],
|
|
|
|
59: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
60: [[0, 40],[10000,43],[11000,45],[12000,45], [13000,50],[14000,55],[15000,60],[16000,65]],
|
|
|
|
61: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
62: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
63: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
64: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
65: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
66: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
67: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
68: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
69: [[0, 32],[5000,64] ],
|
|
|
|
70: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
71: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
72: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
73: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
74: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
75: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
76: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
77: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55],[15000,60]],
|
|
|
|
78: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
79: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
80: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
81: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
82: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
83: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
84: [[0, 35],[8000,40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
85: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
86: [[0, 40],[10000,45],[12000,48],[13000,50],[14000,55]],
|
|
|
|
87: [[0, 40],[10000,45],[12000,48],[13000,50]],
|
|
|
|
88: [[0, 40],[10000,45],[12000,48],[13000,50]],
|
|
|
|
89: [[0, 40],[10000,45],[12000,48],[13000,50]],
|
|
|
|
90: [[0, 40],[10000,45],[12000,48],[13000,50]],
|
|
|
|
91: [[0, 40],[10000,45],[12000,48],[13000,50]],
|
|
|
|
92: [[0, 37]],
|
|
|
|
93: [[0, 37]],
|
|
|
|
94: [[0, 37]],
|
|
|
|
95: [[0, 37]],
|
|
|
|
96: [[0, 37]],
|
2020-11-25 19:44:19 +00:00
|
|
|
97: [[0, 40]],
|
|
|
|
98: [[0, 40]],
|
2021-01-18 15:30:55 +00:00
|
|
|
99: [[0, 37]],
|
|
|
|
100: [[0, 37]],
|
|
|
|
101: [[0, 37]],
|
|
|
|
102: [[0, 37]],
|
|
|
|
103: [[0, 40],[10000,45],[15000,50]],
|
|
|
|
104: [[0, 40],[7500,45],[15000,50]],
|
|
|
|
105: [[0, 40],[10000,45],[15000,50]],
|
|
|
|
106: [[0, 37]],
|
|
|
|
107: [[0, 37]],
|
|
|
|
108: [[0, 37]],
|
2020-11-25 19:44:19 +00:00
|
|
|
},
|
|
|
|
|
|
|
|
# Final for Matt's piano
|
|
|
|
holdDutyPct0D: {
|
2019-11-25 01:07:47 +00:00
|
|
|
23: [[0, 70]],
|
|
|
|
24: [[0, 75]],
|
|
|
|
25: [[0, 70]],
|
|
|
|
26: [[0, 65]],
|
|
|
|
27: [[0, 70]],
|
|
|
|
28: [[0, 70]],
|
|
|
|
29: [[0, 65]],
|
|
|
|
30: [[0, 65]],
|
|
|
|
31: [[0, 65]],
|
|
|
|
32: [[0, 60]],
|
|
|
|
33: [[0, 65]],
|
|
|
|
34: [[0, 65]],
|
|
|
|
35: [[0, 65]],
|
|
|
|
36: [[0, 65]],
|
|
|
|
37: [[0, 65]],
|
|
|
|
38: [[0, 60]],
|
|
|
|
39: [[0, 60]],
|
|
|
|
40: [[0, 55]],
|
|
|
|
41: [[0, 60]],
|
|
|
|
42: [[0, 60]],
|
|
|
|
43: [[0, 65]],
|
|
|
|
44: [[0, 60]],
|
|
|
|
45: [[0, 60]],
|
|
|
|
46: [[0, 60]],
|
|
|
|
47: [[0, 60]],
|
|
|
|
48: [[0, 70]],
|
|
|
|
49: [[0, 60]],
|
|
|
|
50: [[0, 50]],
|
|
|
|
51: [[0, 50]],
|
|
|
|
52: [[0, 55]],
|
|
|
|
53: [[0, 50]],
|
|
|
|
54: [[0, 50]],
|
|
|
|
55: [[0, 50], [22000, 55]],
|
|
|
|
56: [[0, 50]],
|
|
|
|
57: [[0, 50]],
|
|
|
|
58: [[0, 50]],
|
|
|
|
59: [[0, 60]],
|
|
|
|
60: [[0, 50]],
|
|
|
|
61: [[0, 50]],
|
|
|
|
62: [[0, 55]],
|
|
|
|
63: [[0, 50]],
|
|
|
|
64: [[0, 50]],
|
|
|
|
65: [[0, 50], [17000, 65]],
|
|
|
|
66: [[0, 53]],
|
|
|
|
67: [[0, 55]],
|
|
|
|
68: [[0, 53]],
|
|
|
|
69: [[0, 55]],
|
|
|
|
70: [[0, 50]],
|
|
|
|
71: [[0, 50]],
|
|
|
|
72: [[0, 60]],
|
|
|
|
73: [[0, 50]],
|
|
|
|
74: [[0, 60]],
|
|
|
|
75: [[0, 55]],
|
|
|
|
76: [[0, 70]],
|
|
|
|
77: [[0, 50], [15000, 60], [19000, 70]],
|
|
|
|
78: [[0, 60]],
|
|
|
|
79: [[0, 50], [15000, 60], [19000, 70]],
|
|
|
|
80: [[0, 45]],
|
|
|
|
81: [[0, 50], [15000, 70]],
|
|
|
|
82: [[0, 50], [12500, 60], [14000, 65], [17000, 70]],
|
|
|
|
83: [[0, 50], [15000, 65]],
|
|
|
|
84: [[0, 50], [12500, 60], [14000, 65], [17000, 70]],
|
|
|
|
85: [[0, 50], [12500, 60], [14000, 65], [17000, 70]],
|
|
|
|
86: [[0, 50], [12500, 60], [14000, 65], [17000, 70]],
|
|
|
|
87: [[0, 50], [14000, 60]],
|
|
|
|
88: [[0, 50], [12500, 60], [14000, 65], [17000, 70]],
|
|
|
|
89: [[0, 50], [12500, 60], [14000, 65], [17000, 70]],
|
|
|
|
91: [[0, 40], [12500, 50], [14000, 60], [17000, 65]],
|
|
|
|
92: [[0, 40], [14000, 50]],
|
|
|
|
93: [[0, 40], [12500, 50], [14000, 60], [17000, 65]],
|
|
|
|
94: [[0, 40], [14000, 50]],
|
|
|
|
95: [[0, 40], [12500, 50], [14000, 60], [17000, 65]],
|
|
|
|
96: [[0, 40], [12500, 50], [14000, 60], [17000, 65]],
|
|
|
|
97: [[0, 40], [14000, 50]],
|
|
|
|
98: [[0, 50]],
|
|
|
|
99: [[0, 50]],
|
|
|
|
100: [[0, 50]],
|
|
|
|
101: [[0, 50]],
|
|
|
|
106: [[0, 50]]
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
2019-08-20 01:18:57 +00:00
|
|
|
|
|
|
|
key_mapL: [
|
|
|
|
|
|
|
|
{ index: 0, board: 1, ch: 1, type: 'wB', midi: 21, class: 'A' },
|
|
|
|
{ index: 1, board: 1, ch: 2, type: 'Bl', midi: 22, class: 'A#' },
|
|
|
|
{ index: 2, board: 1, ch: 3, type: 'wF', midi: 23, class: 'B' },
|
|
|
|
{ index: 3, board: 1, ch: 4, type: 'wB', midi: 24, class: 'C' },
|
|
|
|
{ index: 4, board: 1, ch: 5, type: 'Bl', midi: 25, class: 'C#' },
|
|
|
|
{ index: 5, board: 1, ch: 6, type: 'wF', midi: 26, class: 'D' },
|
|
|
|
{ index: 6, board: 1, ch: 7, type: 'Bl', midi: 27, class: 'D#' },
|
|
|
|
{ index: 7, board: 1, ch: 8, type: 'wB', midi: 28, class: 'E' },
|
|
|
|
{ index: 8, board: 1, ch: 9, type: 'wF', midi: 29, class: 'F' },
|
|
|
|
{ index: 9, board: 1, ch: 10, type: 'Bl', midi: 30, class: 'F#' },
|
|
|
|
{ index: 10, board: 1, ch: 11, type: 'wB', midi: 31, class: 'G' },
|
|
|
|
|
|
|
|
{ index: 11, board: 2, ch: 1, type: 'Bl', midi: 32, class: 'G#' },
|
|
|
|
{ index: 12, board: 2, ch: 2, type: 'wF', midi: 33, class: 'A' },
|
|
|
|
{ index: 13, board: 2, ch: 3, type: 'Bl', midi: 34, class: 'A#' },
|
|
|
|
{ index: 14, board: 2, ch: 4, type: 'wB', midi: 35, class: 'B' },
|
|
|
|
{ index: 15, board: 2, ch: 5, type: 'wF', midi: 36, class: 'C' },
|
|
|
|
{ index: 16, board: 2, ch: 6, type: 'Bl', midi: 37, class: 'C#' },
|
|
|
|
{ index: 17, board: 2, ch: 7, type: 'wB', midi: 38, class: 'D' },
|
|
|
|
{ index: 18, board: 2, ch: 8, type: 'Bl', midi: 39, class: 'D#' },
|
|
|
|
{ index: 19, board: 2, ch: 9, type: 'wF', midi: 40, class: 'E' },
|
|
|
|
{ index: 20, board: 2, ch: 10, type: 'wB', midi: 41, class: 'F' },
|
|
|
|
{ index: 21, board: 2, ch: 11, type: 'Bl', midi: 42, class: 'F#' },
|
|
|
|
|
|
|
|
{ index: 22, board: 3, ch: 1, type: 'wF', midi: 43, class: 'G' },
|
|
|
|
{ index: 23, board: 3, ch: 2, type: 'Bl', midi: 44, class: 'G#' },
|
|
|
|
{ index: 24, board: 3, ch: 3, type: 'wB', midi: 45, class: 'A' },
|
|
|
|
{ index: 25, board: 3, ch: 4, type: 'Bl', midi: 46, class: 'A#' },
|
|
|
|
{ index: 26, board: 3, ch: 5, type: 'wF', midi: 47, class: 'B' },
|
|
|
|
{ index: 27, board: 3, ch: 6, type: 'wB', midi: 48, class: 'C' },
|
|
|
|
{ index: 28, board: 3, ch: 7, type: 'Bl', midi: 49, class: 'C#' },
|
|
|
|
{ index: 29, board: 3, ch: 8, type: 'wF', midi: 50, class: 'D' },
|
|
|
|
{ index: 30, board: 3, ch: 9, type: 'Bl', midi: 51, class: 'D#' },
|
|
|
|
{ index: 31, board: 3, ch: 10, type: 'wB', midi: 52, class: 'E' },
|
|
|
|
{ index: 32, board: 3, ch: 11, type: 'wF', midi: 53, class: 'F' },
|
|
|
|
|
|
|
|
{ index: 33, board: 4, ch: 1, type: 'Bl', midi: 54, class: 'F#' },
|
|
|
|
{ index: 34, board: 4, ch: 2, type: 'wB', midi: 55, class: 'G' },
|
|
|
|
{ index: 35, board: 4, ch: 3, type: 'Bl', midi: 56, class: 'G#' },
|
|
|
|
{ index: 36, board: 4, ch: 4, type: 'wF', midi: 57, class: 'A' },
|
|
|
|
{ index: 37, board: 4, ch: 5, type: 'Bl', midi: 58, class: 'A#' },
|
|
|
|
{ index: 38, board: 4, ch: 6, type: 'wB', midi: 59, class: 'B' },
|
|
|
|
{ index: 39, board: 4, ch: 7, type: 'wF', midi: 60, class: 'C' },
|
|
|
|
{ index: 40, board: 4, ch: 8, type: 'Bl', midi: 61, class: 'C#' },
|
|
|
|
{ index: 41, board: 4, ch: 9, type: 'wB', midi: 62, class: 'D' },
|
|
|
|
{ index: 42, board: 4, ch: 10, type: 'Bl', midi: 63, class: 'D#' },
|
|
|
|
{ index: 43, board: 4, ch: 11, type: 'wF', midi: 64, class: 'E' },
|
|
|
|
|
|
|
|
{ index: 44, board: 5, ch: 1, type: 'wB', midi: 65, class: 'F' },
|
|
|
|
{ index: 45, board: 5, ch: 2, type: 'Bl', midi: 66, class: 'F#' },
|
|
|
|
{ index: 46, board: 5, ch: 3, type: 'wF', midi: 67, class: 'G' },
|
|
|
|
{ index: 47, board: 5, ch: 4, type: 'Bl', midi: 68, class: 'G#' },
|
|
|
|
{ index: 48, board: 5, ch: 5, type: 'wB', midi: 69, class: 'A' },
|
|
|
|
{ index: 49, board: 5, ch: 6, type: 'Bl', midi: 70, class: 'A#' },
|
|
|
|
{ index: 50, board: 5, ch: 7, type: 'wF', midi: 71, class: 'B' },
|
|
|
|
{ index: 51, board: 5, ch: 8, type: 'wB', midi: 72, class: 'C' },
|
|
|
|
{ index: 52, board: 5, ch: 9, type: 'Bl', midi: 73, class: 'C#' },
|
|
|
|
{ index: 53, board: 5, ch: 10, type: 'wF', midi: 74, class: 'D' },
|
|
|
|
{ index: 54, board: 5, ch: 11, type: 'Bl', midi: 75, class: 'D#' },
|
|
|
|
|
|
|
|
{ index: 55, board: 6, ch: 1, type: 'wB', midi: 76, class: 'E' },
|
|
|
|
{ index: 56, board: 6, ch: 2, type: 'wF', midi: 77, class: 'F' },
|
|
|
|
{ index: 57, board: 6, ch: 3, type: 'Bl', midi: 78, class: 'F#' },
|
|
|
|
{ index: 58, board: 6, ch: 4, type: 'wB', midi: 79, class: 'G' },
|
|
|
|
{ index: 59, board: 6, ch: 5, type: 'Bl', midi: 80, class: 'G#' },
|
|
|
|
{ index: 60, board: 6, ch: 6, type: 'wF', midi: 81, class: 'A' },
|
|
|
|
{ index: 61, board: 6, ch: 7, type: 'Bl', midi: 82, class: 'A#' },
|
|
|
|
{ index: 62, board: 6, ch: 8, type: 'wB', midi: 83, class: 'B' },
|
|
|
|
{ index: 63, board: 6, ch: 9, type: 'wF', midi: 84, class: 'C' },
|
|
|
|
{ index: 64, board: 6, ch: 10, type: 'Bl', midi: 85, class: 'C#' },
|
|
|
|
{ index: 65, board: 6, ch: 11, type: 'wB', midi: 86, class: 'D' },
|
|
|
|
|
|
|
|
{ index: 66, board: 6, ch: 1, type: 'Bl', midi: 87, class: 'D#' },
|
|
|
|
{ index: 67, board: 6, ch: 2, type: 'wF', midi: 88, class: 'E' },
|
|
|
|
{ index: 68, board: 6, ch: 3, type: 'wB', midi: 89, class: 'F' },
|
|
|
|
{ index: 69, board: 6, ch: 4, type: 'Bl', midi: 90, class: 'F#' },
|
|
|
|
{ index: 70, board: 6, ch: 5, type: 'wF', midi: 91, class: 'G' },
|
|
|
|
{ index: 71, board: 6, ch: 6, type: 'Bl', midi: 92, class: 'G#' },
|
|
|
|
{ index: 72, board: 6, ch: 7, type: 'wB', midi: 93, class: 'A' },
|
|
|
|
{ index: 73, board: 6, ch: 8, type: 'Bl', midi: 94, class: 'A#' },
|
|
|
|
{ index: 74, board: 6, ch: 9, type: 'wF', midi: 95, class: 'B' },
|
|
|
|
{ index: 75, board: 6, ch: 10, type: 'wB', midi: 96, class: 'C' },
|
|
|
|
{ index: 76, board: 6, ch: 11, type: 'Bl', midi: 97, class: 'C#' },
|
|
|
|
|
|
|
|
{ index: 77, board: 7, ch: 1, type: 'wF', midi: 98, class: 'D' },
|
|
|
|
{ index: 78, board: 7, ch: 2, type: 'Bl', midi: 99, class: 'D#' },
|
|
|
|
{ index: 79, board: 7, ch: 3, type: 'wB', midi: 100, class: 'E' },
|
|
|
|
{ index: 80, board: 7, ch: 4, type: 'wF', midi: 101, class: 'F' },
|
|
|
|
{ index: 81, board: 7, ch: 5, type: 'Bl', midi: 102, class: 'F#' },
|
|
|
|
{ index: 82, board: 7, ch: 6, type: 'wB', midi: 103, class: 'G' },
|
|
|
|
{ index: 83, board: 7, ch: 7, type: 'Bl', midi: 104, class: 'G#' },
|
|
|
|
{ index: 84, board: 7, ch: 8, type: 'wF', midi: 105, class: 'A' },
|
|
|
|
{ index: 85, board: 7, ch: 9, type: 'Bl', midi: 106, class: 'A#' },
|
|
|
|
{ index: 86, board: 7, ch: 10, type: 'wB', midi: 107, class: 'B' },
|
|
|
|
{ index: 87, board: 7, ch: 11, type: 'wF', midi: 108, class: 'C' },
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|