Added utility for converting midi files to csv
This is a pure monophonic converter but should still help quite a bit with importing existing projects from LMMS or OpenMPT.
This commit is contained in:
parent
52c3ce5ac8
commit
75f9938727
30
utils/beep2offitracker.py
Normal file
30
utils/beep2offitracker.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
import sys
|
||||||
|
|
||||||
|
def generate_beep_file(beep_command):
|
||||||
|
lines = beep_command.split('-n')
|
||||||
|
output_lines = ["Frequency1,Effect1,Duration"]
|
||||||
|
|
||||||
|
for line in lines:
|
||||||
|
if '-f' in line:
|
||||||
|
parts = line.split()
|
||||||
|
frequency = int(parts[parts.index('-f') + 1])
|
||||||
|
duration = int(parts[parts.index('-l') + 1])
|
||||||
|
|
||||||
|
output_lines.append(f"{frequency},50,{duration}")
|
||||||
|
|
||||||
|
if '-D' in line:
|
||||||
|
delay = int(parts[parts.index('-D') + 1])
|
||||||
|
if delay > 0:
|
||||||
|
output_lines.append(f"0,0,{delay}")
|
||||||
|
|
||||||
|
output_content = '\n'.join(output_lines)
|
||||||
|
return output_content
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
if len(sys.argv) != 2:
|
||||||
|
print("Usage: python script.py 'beep_command'")
|
||||||
|
else:
|
||||||
|
beep_command = sys.argv[1]
|
||||||
|
result = generate_beep_file(beep_command)
|
||||||
|
print(result)
|
||||||
|
|
2
utils/midi2csv.sh
Normal file
2
utils/midi2csv.sh
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
python3 beep2offitracker.py "beep $(python2 python-midi-beeper-tobash.py $1)"
|
1117
utils/python-midi-beeper-tobash.py
Normal file
1117
utils/python-midi-beeper-tobash.py
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user