Hey everyone,
I made this "Midi Visualizer" with Love, What do you think of it?
https://github.com/AhmedDawoud3/Love2d-Midi-Visualizer
Midi Visualizer
-
- Prole
- Posts: 3
- Joined: Mon Jun 07, 2021 8:39 pm
- Contact:
Re: Midi Visualizer
I would never have imagined "MIDI" and "boids" being in the same sentence. :d
Tools: Hot Particles, LuaPreprocess, InputField, (more) Games: Momento Temporis
"If each mistake being made is a new one, then progress is being made."
"If each mistake being made is a new one, then progress is being made."
- zorg
- Party member
- Posts: 3468
- Joined: Thu Dec 13, 2012 2:55 pm
- Location: Absurdistan, Hungary
- Contact:
Re: Midi Visualizer
A very nice tool!
I do think there are a few parts where this could be made better:
- It doesn't use the actual instruments, forces piano for everything; it should not do that.
- One midi file i tested with (that used multiple channels) generated 3000+ boids that never died, tanking the FPS and the thing itself... code needs to be optimized. (e.g. set a time to live on them, instead of just checking if they are too far away from the visible window area)
- Code it so people can just execute the program, and /drop/ files onto the window; löve supports detecting dropped files, so there's no reason to expect people to give command-line parameters to it. I might fork and tinker with this one.
- Not depending on an external dll like luamidi; visualizers needn't have sound to be honest, and from what i've seen, that's the only reason why it's needed... alternatively to that, using a queueable source with a buffer and some sample data, one could just play those back depending on the notes received. (this would also mean it'd sound the same for everyone... not that that's the selling point here )
- Not depending on an external midi->json conversion tool; just dropping a midi file should work in my opinion, which would imply that a midi to lua (instead of json) converter might be the best solution to this... a tool i was writing, but couldn't complete due to some bugs i couldn't iron out.
The last two are very high effort things, the rest aren't.
I do think there are a few parts where this could be made better:
- It doesn't use the actual instruments, forces piano for everything; it should not do that.
- One midi file i tested with (that used multiple channels) generated 3000+ boids that never died, tanking the FPS and the thing itself... code needs to be optimized. (e.g. set a time to live on them, instead of just checking if they are too far away from the visible window area)
- Code it so people can just execute the program, and /drop/ files onto the window; löve supports detecting dropped files, so there's no reason to expect people to give command-line parameters to it. I might fork and tinker with this one.
- Not depending on an external dll like luamidi; visualizers needn't have sound to be honest, and from what i've seen, that's the only reason why it's needed... alternatively to that, using a queueable source with a buffer and some sample data, one could just play those back depending on the notes received. (this would also mean it'd sound the same for everyone... not that that's the selling point here )
- Not depending on an external midi->json conversion tool; just dropping a midi file should work in my opinion, which would imply that a midi to lua (instead of json) converter might be the best solution to this... a tool i was writing, but couldn't complete due to some bugs i couldn't iron out.
The last two are very high effort things, the rest aren't.
Me and my stuff True Neutral Aspirant. Why, yes, i do indeed enjoy sarcastically correcting others when they make the most blatant of spelling mistakes. No bullying or trolling the innocent tho.
Who is online
Users browsing this forum: No registered users and 8 guests