Midinous cover
Midinous screenshot
Genre: -

Midinous

Midinous is a 2024 MIA Winner!

Thanks to everyone who has supported and voted for Midinous during the 2024 MIDI Innovation Awards (MIA), it's a winner!



Midinous was chosen among two other products to be the winner in the Commercial Software category. I can't express how grateful I am to have a community of creatives who love the product so much and want to see it succeed as I do.

This is a hallmark moment for the software as I never expected to be writing this message and joined the 2024 innovation awards this year because my submission was too late last year!

I have resumed development of Midinous and I will be introducing some localization features in the next update. i would not expect the entire program to be translated on first update, but there should be enough localization that most people around the world will be able to use Midinous at a top level.
There will be some challenges with how things are arranged and how much bigger/smaller elements will be once the characters and language changes, but I will address those as we cross them. We are approaching the latter part of the year and I do have some important updates about the future of Midinous as it pertains to cross-platform support, but look forward to that update later in the year.

If you would like to watch the awards show, you may do so at this link.

Once again, thank you. I hope your summer was well and happy.
Keep creating,
♥Jae

1.2.1.0 Change Log

1.2.1.0 Patch Changelog


General Changes



  • Manual has been updated to 1.2.1.0 - If you can't access the manual in the program, you can reach it here, or on Discord: https://github.com/Nornec/Midinous-Issues
  • LEDs now pulse with light when hit with a pulse from the logic network. It wasn't really clear whether they were being activated even though they were, just activating/deactivating ridiculously fast. Now they'll light up briefly when hit with a momentary logic pulse.
  • The logic indicator on non-logic Points will now flash as a pulse as well. As with the LEDs activating on the logic network, its behavior was not clear enough.
  • The "Copy Properties" button at the top of the properties pane now sets the default values for new points as well as its normal function (putting data into a buffer for use in pasting to other points). Simply hit the button on the desired Point whose properties you want to be the default for new Points of that type.
  • The EULA has been changed to be less restrictive, and the demo EULA now matches the main application EULA. Major changes: you can't sell content packs with project files for Midinous, but whatever composition or MIDI file you make with the data from Midinous is your IP and is explicitly not the property of Midinous or I. I also explicitly state that you're free to use this on any computers you own without restriction.
  • Grid points representing quarter notes at 1x zoom now have a different size than other points when zooming in. This is to help alignment when zoomed in far. Zoom out functionality has not been changed.

Fixes



  • MacOS: Mac didn't get the last update. This will update you fully.
  • Patched a bug with how Midinous processes external clock. It now works as it did, by only starting and stopping when it detects the associated transport message. I have not yet figured out the best way to calculate external clock received. For now, set the Midinous project tempo to your host's tempo before pressing play.
  • Fixed a crash that happened when there was no point with ID 0 placed
  • Fixed a crash that would sometimes happen when there were no previous Points in a chain of Points
  • Fixed a crash related to copying points while the sequence was active
  • Fixed a crash related to untitled/unsaved projects being open and worked on for too long
  • Fixed an issue where autosaves for untitled projects didn't have any data
  • That pesky camera bug (where it would set the camera to the minimum coordinates possible (in the billions!) should hopefully be fixed now. Deleting the settings file and restarting Midinous seemed to fix this for most folks before this update.
  • Fixed a bug that didn't allow you to set the same key for the control/command modifiers as the regular keys. It would set the other control to "none"
  • Fixed a graphical issue with the width of tooltips when hovering over points with relative values


Hey y'all! Thanks to your support, Midinous made it to the MIDI Innovation Awards finals! Tomorrow I will be presenting my product to a panel of judges. I also want to apologize to folks who had pretty critical issues go unfixed for so long. As much as I wanted Midinous to support me full time, it wasn't working out and I needed to get a part time job. I'm okay with that, just means I have less time to devote to the product. But regardless, here's a much needed update to fix some crashes and issues that have plagued the 1.2 version of the program.
Once things calm down I'll get to work on new features to cap off the year hopefully on a good note. I'd like to stick to as many of the items on my roadmap as I can! I may not get to them all but that's ok. Midinous is in a great place right now and I would be okay stopping development tomorrow (pending bugs heh) if I had to. It's grown into a software that I see being used by so many creatives and would-be musicians and it's lovely when people share their work. I hope your summer is treating you well, wherever you may be. See you on the Discord!
- Jae ♥

Vote for Midinous in the 2024 MIDI Innovation Awards

Hi y'all!

The 2024 MIDI Innovation awards have now started and it's time to pick its nominees!
Midinous is being featured this year in the lineup in the Commercial Software category.
Please vote for Midinous to be considered as one of 3 finalists for the awards!
Thank you so much for your vote.

To Vote:



  1. Go here https://voting.broadjam.com/vote/midi.php, enter your email, and click "Go To Vote"
  2. Click the "Commercial Software Products" category
  3. Choose "Midinous" and two other products
  4. Confirm, and you're done!


Thank you all for your support over the lifetime of the program. Your feedback, bug reports, and suggestions have been invaluable to the success of the program. As I find more time to work on the software, you'll hear more from me.
Cheers,
Jae ♥

1.2.0.1 - Patch notes

1.2.0.1 Patch Changelog


Fixes



  • Fixed a bug where default opacity for tooltips was divided by 100. If you don't see tooltips, they're probably on but their opacity is really low. Change that in the options menu. Any new users or upgraders shouldn't have this issue.
  • Fixed a graphical bug with CC points where, when not at 1x zoom, the graphic would be off-center and look strange
  • Fixed an issue where some people's camera was being set to, effectively, the virtual bounds of the program and it was breaking canvas functions. If the program detects your camera is at a wild position, it will set it to the origin (0,0) instead
  • Fixed an issue with number entry in some value fields. It was behaving unexpectedly
  • Fixed an issue where CC value swapping was swapping param number with end amount instead of param amount with end amount.
  • Fixed an issue where path positions weren't displaying correctly on associated buttons in the path viewer

Midinous Needs Localization

Hello!


Midinous is growing slowly but steadily, and something is clear:
Midinous is being used worldwide by roughly 10k creatives (as of May 2024).

What this means:



  • Midinous needs to be in different languages to remain accessible to as many folks as possible
  • With a limited budget, I need your help


How It'll Work


I'm asking for native language speakers (NLS), regardless of language, to help bring Midinous to a larger audience. Once the team is assembled, every NLS will have the opportunity to localize Midinous into their language of expertise. I would prefer there be two NLS for languages so that you may share ideas, but I'll be fine starting the effort with only one.
Midinous has language in need of localization in the following areas:

  • Official documentation
  • Tooltip text
  • Menu items
  • Error messages (and logs)


What I Can Offer You


This is unfortunately where I fall short. As much as I'd love to compensate anyone who helps, I can do so only in a limited capacity (such as providing you with keys to Midinous, or early access to new features as Midinous evolves). I'm coming to the community for help because this is a task that I simply could not do alone without a great deal of linguistic effort, and I definitely don't want to use a translator to do it; we know how misleading and inaccurate those can be.

The Current Team


I have at least one NLS for the following:

  • Spanish
  • German

It's a pretty short list, but I'm already eternally grateful to them for volunteering. I hope you'll help make Midinous better into the future as well!

If you are interested, please join the official Midinous Discord and send me a private message or ping me. I'll add you to the private channel so we can start working together.

As always, regardless of what you wish to do, keep creating.
Jae ♥

Midinous 1.2! - Better Performance, Better Logic, Better Code

1.2.0.0 Changelog


General



  • Manual has been updated to 1.2.0.0 - If you can't access the manual in the program, you can reach it here, or on Discord: https://github.com/Nornec/Midinous-Issues
  • As of this update and future updates (not retroactive), the Steam DRM has been removed and the demo version is now a different program. You should now be able to launch Midinous without having Steam open. However, if you want to keep receiving automatic updates, I recommend opening Steam occasionally to keep the program up to date.
  • Windows: Changed the way Midinous behaves if BMIDI is not available (BMIDI is the MIDI backend required to run Midinous). BMIDI will automatically try to install, or reinstall, when the program starts if there is an issue detecting or starting BMIDI on the system. On some systems, there may be a small delay as the system waits for BMIDI to become available or reinstall. This is normal.
  • The demo is now a separate download from the main software meaning there is no reason to check whether the product is owned once it's purchased.
  • Due to the settings changes, the settings file must be recreated. Apologies for the inconvenience! The code has gone through such a massive revision that it's effectively a new code base.

Fixes



  • Fixed Logic timing so that logic evaluates before any MIDI events are sent or points are triggered (more info below)
  • Fixed an issue with relative values and portal points. Portal points should behave like sequential points with regards to relative values.
  • The easter egg switch was off and I forgot to add the option to turn it on/off in the options menu :facepalm: Well, at least people weren't stuck with it on -- ok, NOW email me when you think you found them all :) Enable easter eggs in the options menu
  • Fixed a bug where changing the travel order in the list during play shuffled all of the order positions -- the travel order menu will show the current next path (highlighted in the next path color) but the default order until changed (if you decide to change it during a sequence, it will show the order as it will be when the sequence stops)
  • Fixed a bug where point placement and snapping was behaving oddly if points were not in a quadrant where x or y coordinates weren't positive.
  • Fixed a bug where choosing the sine waveform wasn't actually a sine wave. The sine wave calculation was wrong and it ended up looking like a ramp wave and being louder even at quieter volumes
  • Fixed a bug where path directionality and signal mode indicators in the property pane weren't updating properly when changing them using quick actions
  • Fixed a bug where some options settings weren't properly displaying their correct value
  • Fixed performance issues with drawing traveler trails
  • Fixed performance for sequences with lots of straight paths off screen
  • Made grid snapping and quantization more accurate
  • Fixed texture bleed at certain camera positions/zoom levels
  • Performance improvements to the traveler code
  • Performance improvements to the path drawing code
  • Performance improvements to the selection box drawing code (fixed some graphical glitches in doing so)

Major Changes and New Stuff



  • Logic Overhaul!

    • Logic signals from non-logic points are all now momentary, but are represented with a small flash along the logic path when a trigger travels along them. This will invariably change the way current sequences behave, so please read over the logic changes here carefully, and refer to the manual, to make sure any of your patches will work the same way in 1.2.0.0.
    • To support new and future logic changes, an indicator is on a point now, if connected to a logic path, to show its input state (high or low)
    • Logic paths can now be hidden via a toggle button in the toolbox, but hovering over a point will always show its logic connections.

  • Camera changes!

    • Zoom now allows you to place points more granularly. Zoom in more and you have access to an even more precise grid! Zoom out more and the grid becomes less fine. Currently, you can zoom in 8X and zoom out to 1/8X. Grid points will appear or disappear depending on your zoom level
    • Zoom now has an indicator above the zoom slider to help you determine what zoom level you're at. If the grid lines are off, it would have been very hard to tell at what zoom level you're placing points.
    • Global magnification has been added since zooming no longer affects the size of points. This can be changed in the options menu. Global magnification only affects the size of objects on the grid and does not affect sequence speed or how it behaves. It is purely an aesthetic and accessibility feature.
    • Zooming now acts linearly, so zooming in and out is the same speed in either direction.
    • Zoom to cursor: If you've played some RTS games such as Supreme Commander, when you zoom in and out, it's relative to your cursor. Midinous now has this behavior! You can toggle this on or off in the options menu


Minor New Stuff



  • Added a center point to help with orientation on the main canvas. This was added to help prevent disorientation for folks with vision issues. It's just a little bigger than all other grid points.
  • Added an option to allow points to snap to the nearest visible grid point first instead of moving relatively. This has no effect if more than one point is selected. Toggle this in the options menu.
  • Added a button to flip the start and end values of a CC point when slew mode is enabled
  • You can now nudge selected points around with the arrow keys! Because nudging uses the arrow keys, the default camera controls default to no bind. You can set these back if you wish. I did not find many users were using the arrows to move the camera, so I thought this was a good redirect. But the controls for camera movement haven't disappeared.
  • Changes in tempo now apply in real-time to the playing sequence to every traveler in play. Use your mousewheel when over the tempo spin button to see travelers move forward or back on their path. No more screwing up sequences when changing the tempo of a project!
  • Tooltips: Proper tooltips now appear for controls and for points after a short delay. This data is no longer in the status pane. Configure tooltip delay timing, opacity percentage (with 0 being invisible/off and 100 being opaque), or whether the tooltips show up at all, in the options menu. Each type of tooltip can be enabled/disabled (for Points as well as UI elements)
  • Changed the way paths snap to points (visual change only) when the path mode is set to "Straight". Paths will no longer snap directly to the corners of points and will only snap to the 12 visible "snap points" around a canvas object. This was an aesthetic choice based on the graphical representation of a point and does not affect the way a sequence behaves.


My, oh my! The first major update of 2024, setting the foundations for a better code base and an easier-to-extend product has come as my first update since leaving my job in late February to work on Midinous full time. I can finally show you what my passion looks like by dedicating myself to the product 100%. This is a massive update that looks small on the surface but has a ton of implications for future updates. I completely refactored and documented the code base, removed DRM, and am preparing Midinous for the future, effectively. C# is a fantastic language and I think I really took advantage of what it has to offer with my changes.

I'll be working on my next video on my YouTube channel and I'll continue to work on Midinous, but I've been busting myself these past couple months to catch up with Midinous, so other than fixing bugs, I'm going to take a small hiatus to recuperate and work on videos!
If you've already purchased Midinous and you want to support me further, subscribe to my YouTube channel, buy my music, and/or subscribe to my Patreon!
My Music
My Patreon
My YouTube

Thank you so much for supporting Midinous and thank you for your continued support.
Please, if you do nothing else, keep creating!
- Jae ♥

2024 Roadmap

Happy 2024!


I hope everyone had a nice holiday. Mine was incredibly busy but thankfully things are quieting down now. I come to you today to tell you my plans for Midinous in 2024. I had an extremely successful 2023 and it really helped me to continue to improve the program to 1.1.7.0 -- I do have feature and improvement plans for 2024 but I would expect updates to be fairly sparse.

Midinous is reaching a point where I feel it is feature complete. In keeping with wanting to offer a program that is easy to pick up and not overly complex, I feel the best way to keep it this way is to stop updating it. There's really not much more I would want to do with an app like this anyway. It works fantastically and has exceeded so many of my expectations. What I've seen y'all do with it is truly astounding. Several people have made a computer and even an 8-bit counter...holy moly.

I also want to move on to other projects. I'm not totally done with Midinous -- I want this program to run on hardware, and eventually, maybe proprietary hardware (something that looks like the Polyend Play but functions like Midinous). However, I would have to rewrite this in a c-type language and I really would need to dedicate an enormous amount of time to this. I'm also thinking of game ideas! That's about all I want to say on that for now :)

Anyway, let's go over some of the stuff I'd like to add in 2024.

2024 Roadmap



  • Logic timing changes: I have an idea for a new paradigm with the way events propagate on the canvas. Right now a sequence follows a "Traveler -> Point -> Player" paradigm. Or in other words, the sequence is playing, a traveler reaches a point, then the Point will create what's called a "Player" in my code will play whatever MIDI event it has determined. The point also creates the next traveler at that time. So the sequence continues. However I want this to be Traveler -> Actor -> Traveler & Point -> Player. The difference here is that whatever needs to "Act" at a certain time in the sequence can be modulated. This would mean Logic can truly be evaluated before any Players are created. This would mean something like the following would be true:

    If Point A and Point C send off a traveler at the same time and Point B is a logic point (or logic sequence) and Point D's intended purpose is to play an event, when B and D are activated at the same time, the logic sequence B would accurately turn off, or mute, D. The way it currently is coded, this is unpredictable, as many people pointed out to me and things cannot be lined up because logic evaluates interspersed with points.
  • True tooltips! The bottom bar will no longer be showing information about the control or the point you're hovering over. This will be useful as you can see information from a high level view. Point information and types, path weights, logic information, and more. This comes with a total refactor of the window system so that new windows can be created with ease in the future if needed.
  • External sync with MIDI Clock. It's something I have wanted for a long time and this will allow Midinous to feel more complete to me. I certainly hope to get to this within the year.
  • Sequence Shuffle. I had a dream last night about how this could work, and I think it's needed.
  • Humanize, for when you don't want your sequences to be so rigid
  • Seasonal decorations. Who doesn't like season changes to dynamically alter their play experience? Just some fun spice to make Midinous more inviting.
  • Steam Achievements. Yes.
  • A new point type: Terminator -- A terminator will allow only a certain number of travelers through before deactivating for a set amount of time (or permanently). A terminator could also be configured to randomly
  • not* allow travelers through. A terminator could be configured like any other MIDI-based point (Portal, Random, Sequential, etc)
  • Sub-patching. This would allow certain sequences to be copied from a custom "toolbox" menu which can have presets. This could be especially useful when setting up a large logic sequence (like a computer)
  • Minimap. You could zip zoom around your sequences instead of having to figure out where you left off.
  • Automatic audio export. Like the automatic MIDI output generated when you run a sequence, if you have audio playing, perhaps you could record your sound with some kind of ring buffer? Midinous does act as a simple synthesizer and you can make it do some really interesting things if you get creative. I would be nice to record these directly instead of having to do it with a 3rd party program.


I think that's all I had on my mind for the moment. As you may know, most of these ideas were generated by you! I've adapted some, and made executive decisions on others, but I think with these changes in place, Midinous will be in a good place for me to call it feature complete.
Naturally, I would still fix bugs as needed for as long as I am able, but I will attempt to ship a stable product to you as I can.

Thank you all for your support and your patronage during the development of Midinous. I could not have done it without you. I hope 2024 is good to you until we speak again.
Keep creating,
Jae ♥

Pricing Decisions on a Global Scale

Hey all,
Recently I sat down and thought very hard about what my goals for Midinous were, are, and could be. I have always wanted Midinous to be a program that is accessible to as many people as I can provide it to. I don't have the best support or knowledge to localize Midinous or its documentation, and I do apologize to any non-English speakers.

I wanted to really analyze the way Midinous is priced in certain regions and for certain people. I recognize that compared to other software or games created by independent developers, Midinous is on the expensive side, but in terms of an audio utility is quite the steal. I think a lot of the audio community is almost desensitized to the constant insane prices for plugins and I just don't agree with charging that much for a powerful tool. Why would we not want to get the tool in as many hands as possible?

With that being said, I have carefully looked at the way Midinous is priced around the world and I've adjusted prices based not on a straight conversion, but on economic and socio-political situations in certain regions. It's not enough to just convert the currency and be done with it -- I live in a country where the value of a dollar is very high. It is unreasonable to put that expectation on other countries that are not economically similar.

I have not and won't ever raise the price of Midinous. You can hold me to that. It's partly the reason I attempt to be in every sale available to me. Yes I do think the program is worth 25.00 USD, but that's its worth to me, an American living in America and I'm used to spending way too much money to live so I kinda know how the US dollar works, but I have absolutely no reference outside of my country and I shouldn't put a financial burden on countries based on my one experience.

I hope to continue to keep Midinous an accessible piece of software and I will continue to support it on as many platforms as I can for as long as I am able.

I also hope that you are well, and that you are having a nice winter. I've got some fixes and a few new things coming up in the next updates. I'm also working on a new video about my name change experience in NC, be on the lookout for that!

Happy creating.
Jae ♥

Midinous Version 1.1.7.0 Is Here! - Change Log

1.1.7.0 Changelog - Fixes & New Things


General



  • Manual has been updated to 1.1.7.0 - If you can't access the manual in the program, you can reach it here, or on Discord: https://github.com/Nornec/Midinous-Issues
  • A new MIDI port (Midinous Thru Port) will now take the input from whatever MIDI device you are using and send it out on this port. So if you are using a keyboard, the keyboard's MIDI will be mirrored on this port.
  • Added a point ID indicator to the Properties Pane
  • Tempo changes now correctly reflect traveler time in the program. Additionally, this changed logic means that moving points around in the program now also immediately updates all travelers along that path's time to live, meaning live editing is now even more accurate! I'm still working on how Midinous can sync externally to clock messages with tempo and not just transport controls. Expect this in a future update.
  • Logs have moved and will now be saved in /log -- This is now the same relative location across all platforms.
  • Updated the EULA -- you may have to read then re-accept when you launch the next time, but only once.
  • As always, if you encounter issues with 1.1.7.0, roll back to a previous version until things are fixed. If you encounter bugs, please let me know!
  • The Feedback form now sends an email directly to help@midinous.com, the same email address you are always welcome to send feedback to the manual way too! I always love to hear your thoughts on the program.

Fixes



  • Fixed a crash when trying to save a file with a '?' in it. '?' will now be converted to '_' if entered in the filename.
  • Fixed a crash when trying to copy or paste properties without a point being selected. Oops!
  • Fixed the issue of WAY too many autosaves being made. There should only ever be 12, not 12 per project!
  • The Logic Point color picker is now just like the other color pickers in the program. However this may break some saves. You will have to reconfigure the color to come from the point itself instead of the "Send Color" special color option. In my opinion this is much clearer to the user where colors are coming from.
  • Fixed an issue where using MIDI input at the same time as the note and octave selector in Point properties would not be setting properties correctly
  • Fixed an issue when copying and pasting points and properties -- color values would not carry over.
  • Fixed an annoyance with text input into spin buttons. The field will now accept both a '0' and a '.' as the first character typed.
  • Fixed an issue where you couldn't pan to groups using the mouse
  • Fixed bug causing the program to crash when using negative weights on random points. Now, when random points have paths leaving it which have a weight of -1, it correctly reflects the manual: these paths are not chosen.
  • Fixed a graphical inconsistency with the manual, where paths coming from Random points with a weight of -1 were not listed as disabled but the manual said they would be.
  • Fixed a bug where the feedback form short text field was not getting set properly in certain theme situations

New Stuff



  • Theme chooser! Use the theme chooser from the appearance options menu and choose a theme to open, or save your current one. I have included a few themes for you to pick from. My favorite one is "crypt"! You cannot modify the 'default' theme, but you can save a new version of it if you wish. If you have lost or need access to the original supplied themes, they are in the Midinous install directory under user/themes
  • Separate autosave area: To reach your autosaves now, in the event of a crash, in the Open dialog, press the "Autosaves" button next to "Presets". They'll no longer clutter up the projects list.
  • There is now a set pallette of preset colors you can choose from in the various color pickers in the program! The last row of 10 colors are the colors that you've set for your UI and the various elements in the program. Change these by changing your appearance settings.
  • Added some easter eggs. Email me if you think you found them all :)

Life Updates


What would a Midinous update be without a life update? ^.^ -- I have been running around like crazy dealing with a legal name change and it has totally consumed the latter part of my year. Trying to change your name in the southern US is a wild beast, but I'm making the best of it, and I'm making a video to go along with my experience!
I also bought a Japanese Kei Truck (a Daihatsu Hijet) for several good reasons but the chief among them being I am incredibly irresponsible. But this should be a good addition to my home as it will allow me to do more projects around the property and I also plan to use it to help others with their neighborly issues.
Midinous had an absolutely stellar year. Thank you to everyone who supports me on Patreon and continues to spread the word about Midinous. I really do think I have something special here and I want to continue expounding upon it as long as people are interested, and they are definitely interested! I have some to-do items for the next update, such as getting external clock message sync working, and rewriting the logic system to be more accurate (you wouldn't believe how complex this is off paper). Happy to accept ideas, suggestions, and feature requests via Discord or email. I'm always listening to you, dear user.
I love seeing what people make with Midinous and love it even more when people send me their patches to test! Now you'll be able to share themes with each other which is even better. Send me your favorites in an email!
Anyway, all the best to you and yours. It's cold up here in the northern hemisphere right now, so I'm cozied up with a cup of hot cocoa and I've got my coding leggings on.
I hope you are doing well, and as always...

Keep creating,
Jae ♥

Midinous 30% Off! (until November 28th)

Hey y'all!

Midinous is 30% off this week, and I'm still working on the next update. There are definitely some complex problems I'm trying to solve but I am making headway on them. I think the most exciting thing coming in 1.1.7.0 is the ability to have a MIDI Thru port for data coming in the input MIDI port along with tempo changes while the sequence is running working exactly as it should (no more out of sync sequences when changing tempo or subdivision). This lays the foundation for being able to sync Midinous to an external clock and not just transport controls. I'm still working on this but because I'm using C# and not a real-time language, it's hard to get precise. There seems to be a way to do it using something called delay-locked loop, or DLL, but that is way beyond me right now. I just need more time with it i think.

Anyway, enjoy the sale this week and we'll talk soon!
Cheers,
Jae