Tracker DAW with MPE
If anyone recalls the 90s demoscene, you may as well recall the tracker music scene as well. Tracker was a dominant type of music sequencer back then before it was killed off completely in mid-2000s by audio compression formats.
Contrary to piano rolls, trackers are much more flexible, and they look like a spreadsheet that go top-down. To some people it felt a lot like music "programming".
I want to create a fully complete DAW with a tracker sequencer that also supports MPE plugins (popularized by devices such as the Linnstrument and Roli Seaboard). Flexibility of a tracker and the freedom of expressive MPE note patterns could make it the ultimate composer's combo.
(IIRC none of the existing trackers support MPE)
EDIT: It's live! https://github.com/Codename-Corrosion/project-corrosion
GitHub
GitHub - Codename-Corrosion/project-corrosion
Contribute to Codename-Corrosion/project-corrosion development by creating an account on GitHub.
66 Replies
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
"Where"?
This isn't even being developed
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
It's an IDEA
It's not a thing yet
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
If you want to make this a reality however go for it lol
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
I'm for sure ain't starting development on it at most early January next year
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
I've been making a fullblown web app for the past 5 months... so why th not
I'm a fan of trackers and music in general
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
As a first step, it'd make total sense to create a tracker sampling engine and try playing vanilla tracker songs with it, which is what I'm doing now
If you played Unreal Tournament or Deus Ex you may very well know about that
Meanwhile I've been thinking of a name. (It's gonna be written in Rust so I got inspiration from that lol)
- Project Corrosion
- OxiD
- Hybra (if a piano roll gets implemented)
Which one do you guys like?
Note to IT format implementers: modules saved with ModPlug/OpenMPT have absolutely ridiculous song lengths
Pattern orders/positions are being terminated with 0xFF. Beware.
That's why there's tons of em.
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
Quick google search shows OXID being some sort of eCommerce thing. Pretty sure it shouldn't conflict with the stylized name
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
Progress
https://github.com/polyzium/modplayer
Here's my barebones IT player, have fun
GitHub
GitHub - polyzium/modplayer: Very barebones tracker module player (...
Very barebones tracker module player (IT samples only for now) - GitHub - polyzium/modplayer: Very barebones tracker module player (IT samples only for now)
It was made for the sole purpose of getting an idea of how trackers work
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
Wonder if you're old enough to remember trackers?
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
Then this isn't much of a use for you if you aren't a music producer AND a computer nerd
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
OK here's a question for you
Have you:
- played Deus Ex, Unreal or Unreal Tournament
- know the Funky Stars or Rolling Down The Street meme songs
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
Well too bad because all of those use trackers
And the last two are old but gold memes
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
21
Unknown User•3y ago
Message Not Public
Sign In & Join Server To View
Well modern music isn't my forte and I got known of trackers because I played the aforementioned games
They do use tracker music
I'm glad to announce that me and one more person are going to start conceptualising this whole idea before we do any development. The other guy also proposed a bizarre matrix mixer thing, I barely understood anything and it's a long story, the whole spec is worth a paragraph.
If you wish to join the GItHub organization, let me know.
I uploaded basic schema code to the repository, it doesn't work yet but if anyone's interested in the guts, it's publicly available
I've implemented basic timing logic for now, but it works only on patterns. Next I'll have to adapt it for the playlist, and after that I'll try implementing some built-in plugins for basic audio output.
Then I can move over to the GUI.
The code isn't live on Github yet
There has been a slight setback regarding ticking logic for patterns, but after trial and error I managed to fix it, interestingly enough.
The code is live on Github now
wallabra just uploaded a basic skeleton boilerplate code and some of the implementation for his experimental matrix routing architecture. There are some of the issues explaining the concepts in more detail, check them out if you want, they're in the project tab
I made an issue to make tracking features a bit easier, please check the repository
Hi guys, I just wanted to say that Corrosion has been put on an indefinite hiatus due to me getting employed among other things. If anyone wants to partake in its development then feel free to DM me
Unknown User•2y ago
Message Not Public
Sign In & Join Server To View
What?
I did not state I used MSVC
Unknown User•2y ago
Message Not Public
Sign In & Join Server To View
Cargo.toml does not state MSVC as a dependency
only SDL2 and CPAL
Unknown User•2y ago
Message Not Public
Sign In & Join Server To View
Maybe because Rust on Windows uses MSVC for linking?
Unknown User•2y ago
Message Not Public
Sign In & Join Server To View
Hi, so after a long hiatus I'm finally coming back to the project. In the meantime I have been making a small UI library and I'd hope to get at least an alpha release soon (in several months).
Stay tuned!
https://github.com/Codename-Corrosion/project-corrosion/issues/2
GitHub
Implement minimal set of features · Issue #2 · Codename-Corrosion/p...
Main Ticking logic Pattern tick Playlist tick Mode switch Project Patterns Playlist Clip logic (play on clip begin, stop on clip end) Pattern clips Audio clips State Patterns Playlist Audio Audio p...
I made a minor improvement for now. Now patterns can have Rows Per Beat values individually, so different patterns can have different row precisions.
The changes aren't up yet, I have to implement a good amount of other things as described in the issue I linked.
I'm making some damn good progress. I'm working on a plugin subsystem
Implementing support for only CLAP plugins for now
I'll be doing a restructure of the ticking logic in the coming days. Implementing plugin support with my "one sample at a time" approach has been proven troublesome to work with when it comes to plugin APIs.
Oh shit I forgot this thread existed.
Hello again, I've made IMMENSE improvements in terms of UI. I decided to take a break from engine development (at least I figure out the plugin system, anyway).
Here's what I made. This is a fully working build, but a lot of stuff is yet to be implemented to make the software usable. At least there's a pattern editor.
Alright ima gonna try it
@polyzium
What in the name of hell
How come Windows is still bounded to a samplerate of 44100 Hz (at least by default)
I forgot to mention, this guy is hardcoded to 48000 Hz...
¯\_(ツ)_/¯
One second lemme get an exe with 44100 hz
Drop it into the same folder
alright it started
now i have this
F2 brings you to the pattern editor, Esc bring up a menu
(you can't edit the patterns yet)
it worked
Try playing a pattern, does it feel like 125 bpm?
I can't hear anything
the program isn't outputting any sound after doing playback
That is normal
I just see this on the console
There is no audio mixing at all there yet
That is ok
and this
I'm asking about the timing
is the timing between rows correct?
The time between rows should be 120ms
since the tempo is 125 bpm
I pushed the commit
There's a ton of new code
Unknown User•2y ago
Message Not Public
Sign In & Join Server To View
Rust
Unknown User•2y ago
Message Not Public
Sign In & Join Server To View