Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Converting a MIDI file to text (csv, tab-delimited, etc.) and back again?
#1
I could see these being a couple useful routines, and I even had (have? somewhere?) a couple ancient DOS EXEs that do it, but no source code and they may not work under modern Windows. If anyone has done this in QuickBasic or VB or a non-OO language like C, and would share your code, or even any experience with this, I would be willing to give it the old college try! :-D
Reply
#2
You might want to check this out: https://github.com/a740g/QB64-MIDI-Player
Reply
#3
(08-20-2022, 12:04 AM)SMcNeill Wrote: You might want to check this out: https://github.com/a740g/QB64-MIDI-Player

This is a start - thanks!

UPDATE: I found a bunch of info, starting with this, will look at it when back at the computer:
https://www.fourmilab.ch/webtools/midicsv/#Download
Reply
#4
(08-20-2022, 12:04 AM)SMcNeill Wrote: You might want to check this out: https://github.com/a740g/QB64-MIDI-Player

Here are some pages I found on this topic... I will wade through these in the next few months, but figured I would post this for anyone interested. 

  1. (PDF) Midi-Lab, A Powerful Visual Basic Program for Creating Midi Music
  2. (PDF) MidiTok: A Python package for MIDI file tokenization
  3. [1910.02049] Midi Miner -- A Python library for tonal tension and track classification
  4. | notebook.community
  5. + MIDI To CSV Spreadsheet + - PG Music Forums
  6. 14 Popular Sites Like Midisite (Updated: Aug 14th, 2022) | moreofit.com
  7. 4NT/4DOS (BTM) files, Visual Basic Scripts (VBS/VBA)
  8. A MIDI to Text converter to analyze of hidden MIDI Problems - Community
  9. A Python port and library-fication of the midicsv tool by John Walker. | PythonRepo
  10. A Python port and library-fication of the midicsv tool by John Walker. | PythonRepo
  11. adafruit_midi — Adafruit MIDI Library 1.0 documentation
  12. Advanced MIDI Programming / Utility | CodeGuru
  13. Algorithmic Composition based on Complex Network Analysis
  14. any sequencer with text based song data (or easy to hack into text based)?? - Hosts & Applications (Sequencers, DAWs, Audio Editors, etc.) Forum - KVR Audio
  15. archives.ismir.net
  16. arxiv.org
  17. Ask an Expert: Python Midi File Generation
  18. audio - Extracting note onset from MIDI - Stack Overflow
  19. BandTrax Australia MIDIfiles for MIDIphiles. Titles/Catalogues
  20. Batch editing midi files - Tutorials - Scaler Plugin - Community Forum
  21. Changing pictures and playing MIDI files - Visual Basic 4 / 5 / 6
  22. chickensys.com
  23. citeseerx.ist.psu.edu
  24. Controlling Excel Via Midi Controller
  25. Convert (.csv) spreadsheet to MIDI file
  26. Convert CSV to MIDI
  27. Convert csv to midi - 101convert.com
  28. Convert midi file to numpy array (Piano Roll) | by Huangwei Wieniawska | Analytics Vidhya | Medium
  29. Convert Text File To Midi App - download for Mac
  30. converting .csv files to midi - Music: Practice & Theory Stack Exchange
  31. converting .csv files to midi - Music: Practice & Theory Stack Exchange
  32. Converting .CSV to MIDI / play through modular: synthesizers
  33. Converting midi files into simple text?: arduino
  34. Create a midi file with code: AdvancedProduction
  35. cs.columbia.edu
  36. cs.columbia.edu
  37. cs.columbia.edu
  38. cs.columbia.edu
  39. cs.columbia.edu
  40. cs.columbia.edu
  41. csv to midi vbscript - Google Search
  42. csv2midi
  43. csv2midi - Google Search
  44. dblp: MIDI-LAB, a Powerful Visual Basic Program for Creating MIDI Music
  45. Developing a MIDI interface in VB6 | Next Generation Emulation
  46. Editing MIDI files with Python - DEV Community
  47. Ejemplos de ask_savefile en Python, ejemplos de midirender_util.ask_savefile en Python - HotExamples
  48. Excel MIDI Activity
  49. Excel MIDI download for Windows
  50. excel midi, vba midi, excel drum machine, midi to spreadsheet, music excel spreadsheet, excel daw, create music with excel, how to make music in excel,
  51. Excel VBA import several TXT file delimited text into sheet - Stack Overflow
  52. explode polyphonic MIDI to monophonic parts? [Archive] - Cockos Incorporated Forums
  53. Extracting information from MIDI files — Musikinformatik SoSe2021
  54. Free - MidiKey2Key translates MIDI-Events to key-shortcuts | OBS Forums
  55. Free MIDI to EXCEL converter – MIDI2XLS | Audiohotshot
  56. Full text of "Microsoft Excel VBA User Manual"
  57. General Error
  58. Generate music with an RNN  |  TensorFlow Core
  59. GitHub - 8enmann/midilc: Music composition programming language, written in OCAML
  60. GitHub - a740g/QB64-MIDI-Player: A MIDI player & library written in QB64 + C
  61. GitHub - ahlstromcj/midicvt: Extension of midicomp/midi2text to convert between MIDI and ASCII text format. C and C++ libraries and applications. Now provided is a source tarball. Updated 2018-03-28.
  62. GitHub - Audiohotshot/MIDI2EXCELConverter: Convert MIDI files to XLS sheets with this VBA macro for Excel
  63. GitHub - bburdette/ChordPredictor: Analyse and generate chord sequences
  64. GitHub - bonnetn/midiparser: Small script to parse MIDI files into CSV files containing the time, frequency and the duration of the notes.
  65. GitHub - codenotes/mf2t: midi file to text from old atari app, ported to windows
  66. GitHub - crawfo/vba-midi-file: A set of classes, functions, and methods for reading and writing MIDI files from Excel written in VBA.
  67. GitHub - moutend/csv2midi: The command line tool for converting CSV to standard MIDI file.
  68. GitHub - moutend/go-midi: Package midi implements reading and writing standard MIDI file.
  69. GitHub - schellingb/TinySoundFont: SoundFont2 synthesizer library in a single C/C++ file
  70. GitHub - stephwag/midi-text: Scripts to convert midi files to text and back for training neural networks.
  71. GitHub - timwedde/py_midicsv: A Python port and library-fication of the midicsv tool by John Walker. If you need to convert MIDI files to human-readable text files and back, this is the library for you.
  72. GitHub - yunoda-3DCG/Midi2csv
  73. GN MIDI Tools
  74. Google Code Archive - Long-term storage for Google Code Project Hosting.
  75. Google Code Archive - Long-term storage for Google Code Project Hosting.
  76. How Can I Create a CSV File? - Scripting Blog
  77. How to extract the melody from an audio file and export it to MIDI (generate quantized MIDI) using Python in Ubuntu 18.04 | Our Code World
  78. https://freesoft.dev/program/114462456
  79. https://github.com/moutend/csv2midi
  80. https://qb64phoenix.com/forum/showthread.php?tid=788&pid=5614#pid5614
  81. https://www.fourmilab.ch/webtools/midicsv/
  82. Image to midi - Python Similar Projects List
  83. Is it possible to Avoid Excel VBA Crashing with MIDI Input? - Stack Overflow
  84. Is there any way to send MIDI commands from MS Excel?: midi
  85. lexiconpro.com
  86. linux-audio-user: Re: [linux-audio-user] utility to convert midi
  87. List Music File Metadata in a CSV and Open in Excel with PowerShell - Scripting Blog
  88. List of file formats - Wikipedia
  89. little-scale: MIDI to QBASIC Converter
  90. loading a midi file - QBasic - Tek-Tips
  91. Making MIDI Art from Text
  92. Manipulating MIDI Files in Python - Stack Overflow
  93. Manipulating MIDI Files in Python - Stack Overflow
  94. Manually parsing midi python | Peatix
  95. MIDI - Things and Stuff Wiki
  96. midi · GitHub Topics · GitHub
  97. midi · GitHub Topics · GitHub
  98. MIDI 2 TEXT and TEXT 2 MIDI in Matlab | Forum for Electronics
  99. Midi Disassembler - plus a toy - PureBasic Forums - English
  100. MIDI Files — Mido 1.2.10 documentation
  101. MIDI Keyboard MACROS - Turn your MIDI pads, keyboards or controllers into the most sophisticated Macro triggers, app launchers, clipboard processor and more
  102. MIDI Monitor Written in Visual Basic - CodeProject
  103. MIDI Music Data Extraction using Music21 and Word2Vec on Kaggle | by Waldecir Faria | Towards Data Science
  104. Midi on a shoe-string - General - in_thread
  105. MIDI PLAYER EXAMPLE PROGRAM COPYRIGHT (C) 2010 JOEL YLILUOMA
  106. Midi Questions
  107. MIDI REXX
  108. MIDI Sample Code (Python) — Robotics for Creative Practice - Fall 2021
  109. MIDI text events | MuseScore
  110. MIDI to CSV
  111. MIDI to CSV (midicsv by John Walker): midi
  112. MIDI to NOTES in .txt: midi
  113. midi to text converter free download - SourceForge
  114. MIDI Translator Pro | Bome Software
  115. MIDI Tutorial - learn.sparkfun.com
  116. MIDI tutorial for programmers
  117. MIDI: Tour of the mf2t / t2mf MIDI-to-text conversion utilities - YouTube
  118. MIDICSV: Convert MIDI File to and from CSV
  119. MIDIOX
  120. Midi-Standard
  121. MIDIUtil — MIDIUtil 1.1.1 documentation
  122. Mido is a python library for working with MIDI messages and ports
  123. MUDCAT USERS - Download the MIDItext program here
  124. music21.midi.translate — music21 Documentation
  125. Overview | MIDI for Makers | Adafruit Learning System
  126. PianoTuner V2.4b
  127. Play Scales from Excel????? - PG Music Forums
  128. Pocket MIDI
  129. PolyPhontics MIDI File Utilities
  130. PolyPhontics MIDI File Utilities - Free download and software reviews - CNET Download
  131. pretty_midi — pretty_midi 0.2.9 documentation
  132. py-midicsv · PyPI
  133. python - Can't parse midi file (time signature error) - Stack Overflow
  134. python - Light-weight MIDI playback for a Text Adventure? - Stack Overflow
  135. Python interface for outputting MIDI files or text that's readable by audio programs - Stack Overflow
  136. Python midi.write_midifile函数代码示例 - 纯净天空
  137. Python Print Midi Skirt | Boston Proper
  138. Python write_midifile Examples, midi.write_midifile Python Examples - HotExamples
  139. Python: MIDI write/read .txt files - Stack Overflow
  140. Python: module MIDI
  141. PythonInMusic - Python Wiki
  142. Qbasic/QuickBasic Programming - qb45.org
  143. Re: [Rosegarden-user] exporting single MIDI segment? | Rosegarden
  144. readthedocs.org
  145. RED-LINE – csv2midi
  146. Resolving MIDI Device Issues on PC and Mac | Sweetwater
  147. Scripting with MIDI
  148. Search Code Snippets | python read midi file
  149. Send MIDI Value
  150. Services offered by GN MIDI Solutions
  151. sibelius.com
  152. Software to convert midi to readable text for a program?: midi
  153. Standard MIDI File
  154. support.sas.com
  155. Tabelle (.csv) in MIDI konvertieren
  156. Tenday Notes 11 June - 20 June 2022
  157. Text to midi & midi to text - C++ - Киберфорум
  158. text to midi converter free download - SourceForge
  159. text to midi converter free download - SourceForge
  160. Text-based MIDI sequencer | Zack Scholl
  161. The big review - freebasic.net
  162. The MIDI Standard: Introduction to MIDI and Computer Music: Center for Electronic and Computer Music: Jacobs School of Music
  163. theory - How to decode this CSV from a MIDI file? - Music: Practice & Theory Stack Exchange
  164. This Connection Is Not Private
  165. Thread OpenMIDIProject forum:Create MIDI File - OpenMIDIProject - OSDN
  166. Time in MIDI files - Music: Practice & Theory Stack Exchange
  167. Ubuntu Forums
  168. Ubuntu Manpage: midicsv - MIDI Comma-Separated Value (CSV) file format
  169. Understanding MIDI text files fields and form - Music: Practice & Theory Stack Exchange
  170. Use PowerShell to Sort CSV Files in Order - Scripting Blog
  171. Useful MIDI Software Utilities
  172. vb.net - Converting MIDI into CSV in Visual Basic - Stack Overflow
  173. vb.net - Converting MIDI into CSV in Visual Basic - Stack Overflow
  174. vba - Controlling Excel via Midi controller - Stack Overflow
  175. vba macro - midiOutShortMsg - AutoIt General Help and Support - AutoIt Forums
  176. VBScript Windows MediaPlayer - Super User
  177. VBScript Windows MediaPlayer - Super User
  178. Veni, MIDI, Vici: Generating a simple MIDI file using VB, part 1 (Matt Gertz) - Visual Basic Blog
  179. Veni, MIDI, Vici: Generating a simple MIDI file using VB, part 2 (Matt Gertz) - Visual Basic Blog
  180. VPN Update
  181. Windows Media Player Created with Visual Basic
  182. Working with MIDI data in Python using Mido
  183. Working with MIDI data in Python using Mido
  184. 読み人知らず: ExcelでMIDI
Reply
#5
UPDATE: 

This looks like what I'm looking for, done in C:
The files are
Now comes the (not so) fun part of trying to make sense of this and translating it to QB64.
Hey, it can't hurt to ask for help!

Discussion around converting these to QB64 is continued Any C programmers wanna help convert code to convert between MIDI + CSV?]here:
Reply




Users browsing this thread: 1 Guest(s)