⚙ Development Update #3 ⚙

Hello all! 👋

It has been a while since an update, but I am happy to be back with a brand new MACE update (version 1.2.0) along with the new model training companion application ANVIL. I am still committed to improving and officially releasing MACE as well as new products!

It’s been a minute – I know some of you wondered if MACE was on hiatus. I’ve been deep in development, testing, and refactoring to rebuild MACE’s core engine for better stability, speed, and compatibility. Life happened, and so did a lot of technical challenges (hey, deploying ML-based plugins isn’t easy!). But I’m back, more committed than ever, and excited to share some huge updates with you including a new product ANVIL which will lead to a bunch of new expansion packs/models created by the community.

MACE v1.2.0 Update ⚡

This version addressed a lot of issues for some users that were having compatibility issues in certain DAW and includes brand new features that will elevate the instrument!

Quick Look At New Features👇

Instrument Mode / XY Morph Pad

Converts the first four cells into a 4 channel crossfader that plays melodically like an instrument. The X/Y Pad can of course be automated which makes for fun evolving basslines, weird glitchy pad fx, and all sorts of sonic madness. With the new looping mode engaged it can turn MACE into a wave scanning synthesizer!

Time Stretcher & Interpolation Playback Type

Each cell now has a Stretch and Ratio control in the main waveform view. The Ratio controls the percentage of stretch. (e.g. 0.5 = halving the sample and 2.0 is doubling). The time-stretching algorithm has a unique and gritty sound and four different types (Frequency Maps) that alter how the frequencies are stretched within the sample. Some of these can lead to wild and interesting results. The interpolation of the sample playback can also be optionally changed. Linear is the classic, gritty MACE sound while Cubic is a bit cleaner and refined.

Loop Playback Modes

When the Loop button is engaged in the main waveform view, that cell will enter Loop Mode. There are 3 different types: Forward, Backwards, and Ping-Pong. You can refine the start/end points of the sample. Try setting very short loops for fun granular type sounds — or set a long attack / release with a stretched sample in Ping-Pong mode for an evolving pad.

ANVIL Support

MACE 1.2.0 officially supports models trained by ANVIL. This allows for custom user trained models as well as longer audio generation! See below on further information about ANVIL or jump straight to the comprehensive introductory guide:

https://tensorpunk.com/anvil-getting-started-guide/

Full Release Notes 📝

Enhancements

  • Windows compatibility bugs fixed
  • Entirely reworked engine for stability and speed
  • Custom models read meta-parameters from JSON files generated via ANVIL
  • UI Enhancements
  • Plugin loads faster in DAWs
  • A lot of code refactoring has been implemented allowing for quicker development of newer versions

New Features

  • ANVIL trained model Support (enables third party models / longer audio)
  • Instrument Mode [Turns first four cells into a melodic instrument]
  • X/Y Morph pad for Instrument Mode
  • 3 Directional Loop Modes [Forward, Backward, Ping-Pong]
  • Time Stretcher
  • 4 types of Frequency Maps for time stretching
  • 2 Playback interpolation types for sampler [Linear (Classic) / Cubic (Refined)]
  • Cell Layout Modes – Drum Pad / Classic Pad MIDI mode in settings
  • Note: — Drum Pad shifts the pads down to match typical drum pads while “Classic” keeps the original layout within MACE
  • Main Waveform Display Notification System implemented for errors/warnings
  • Model Browser has a ‘Rescan Folders’ option
  • Model Browser displays author name if custom model is highlighted in browser

New Hot Key Functions

  • [Shift + Click Parameters] – While holding shift and changing a cell parameter ALL cells will change according to the value set
  • [Shift + Click Regeneration] – Holding shift and clicking regenerate auto-plays the new sound upon generation
  • [CTRL + Click Shuffle Generation] – When holding “CTRL” while generating a cell or row, it will randomly select a model from the browser.

Bugs Addressed

  • Drag out audio restored
  • Occasional crashes upon audio generation
  • Preset related crashes
  • Custom path related bugs
  • Regeneration now resets start/end trim points
  • Dropping a cell generation resets start/end points
  • Some parameters not properly loading until UI is shown


Important  Info About Mac Compatibility 💻

  • The minimum requirements for MACE 1.2.0 for OS X has increased to 10.4 Tiger. This was necessary in order to utilize models trained via ANVIL. Additionally, this allowed me to update dependencies MACE relies on so that it can leverage Apple’s Metal API for compute. This means that audio generation is much faster on OS X than previous versions.

Expansion 1

13 New models have been included in this release 🔉

  • Cyberia Loops: Gritty breakcore and glitch breakbeat drum loops
  • Bash Drums: Punchy and gritty drums
  • Clean 909: Trained up to 100k iterations on 909 Loops
  • Corrupt 909: Trained up to 50k iterations 909 Loops
  • Droidz: Trained on Commodore 64 SID-Chip sounds
  • Gremlins: Don’t use after midnight please
  • Synth Purrs: Trained on a hybrid set of cat sounds and analog synths
  • V-Bow: Ethereal, digital, yet vintage sounding bow instrument
  • Fidgets: Fidgeting sonic percussion
  • Jungle Loops: Model trained on classic jungle breaks
  • Mech Shots: Metallic and robotic one shots
  • Rave Shots: Trained on classic rave shots
  • Roland DM: Trained on classic Roland drum machine samples

    Anyone interested in collaborating with others and finding models being created by the Tensorpunk community I highly recommend joining the official Discord: https://discord.gg/XtRMUcz8Fd

    I do plan to prioritize training new models in the coming few weeks shortly for another expansion!

Introducing ANVIL – Companion training software for creating MACE models ⚔

ANVIL logo

A Standalone Machine Learning Platform 🎶

ANVIL is a standalone software solution, uniquely crafted to bring the power of machine learning into the hands of audio enthusiasts and creators. ANVIL is free software and a companion application to MACE. It allows you to create and curate your own datasets. These datasets can be used to create models that can be trained within ANVIL. You can then export these models for use within MACE!

A  full comprehensive introductory guide and further information can be found at:

https://tensorpunk.com/anvil-getting-started-guide/

ANVIL audio training software hyperparameters screen
Creating a model and tuning hyperparameters within ANVIL

ANVIL operates as a pre-packaged Python environment, boasting a user-friendly interface that simplifies the complex processes of audio data management and model training. With ANVIL, users can effortlessly create audio datasets and develop models capable of generating audio. These models are also compatible with MACE, further enhancing their utility.

A Commitment to Local Processing: Empowering Users with Direct Model Training 🔑

In a deliberate move away from cloud-based services, ANVIL is engineered to function locally on users’ machines. The vision of ANVIL is to empower users by enabling them to train their own models directly. This approach not only avoids the need for subscription fees associated with cloud computing but also aligns with our belief in harnessing the growing capabilities of average CPUs and GPUs. As hardware technology advances, we are confident that local machines will increasingly be able to handle the computational demands of sophisticated audio model training, making ANVIL an even more powerful tool in the hands of our users.

Requirements 💻

Navigating the Technical Landscape: Understanding ANVIL’s Requirements
As we strive to make ANVIL a versatile and powerful tool in the realm of audio machine learning, it’s important for users to understand the current technical requirements and our ongoing efforts towards broader compatibility.
Windows and NVIDIA Graphics Card: The Current Optimal Setup
At present, ANVIL is tailored for Windows operating systems. The software leverages the Pytorch machine learning environment, which requires CUDA support. Consequently, an NVIDIA graphics card is recommended for optimal performance. This setup ensures that users can fully utilize ANVIL’s capabilities for efficient and effective audio model training.
CPU Mode: Ensuring Universal Compatibility
Recognizing the diverse hardware configurations of our users, ANVIL also includes a CPU mode. While this mode ensures universal compatibility, it’s important to note that CPU processing is significantly slower compared to using a graphics card. We are committed to adapting ANVIL to various chip architectures and keeping pace with the evolving landscape of machine learning applications.
generating audio
Mac Version: Harnessing the Power of Silicon Chips
A Mac version of ANVIL is currently in development. The aim is to harness the capabilities of Apple’s silicon chips (M1, M2, and M3), which show promise in machine learning tasks when coupled with Metal Performance Shaders (MPS). This development marks a step towards expanding ANVIL’s reach and versatility.
AMD Graphics Cards on Windows: A Future Possibility
For users with AMD graphics cards on Windows, we acknowledge the current limitation due to Pytorch’s lack of support in this setup. However, we are closely monitoring the progress of ROCm support for Windows. We will attempt to integrate this feature into ANVIL as soon as it becomes feasible, aiming to open up more possibilities for our users.
Linux Users: A Potential Future Release
Lastly, for Linux enthusiasts, it’s worth noting that Linux currently supports ROCm/Pytorch. This compatibility opens up the potential for a Linux version of ANVIL, which we may pursue as an additional offering in the future.

Future of Tensorpunk, MACE, and ANVIL ⚔

I’m fully committed to pushing the evolution of MACE—and you can expect more frequent updates and expansion packs in the near future. I’m particularly excited about integrating new types of generative models into both MACE and ANVIL, along with a host of other innovative features. MACE is growing beyond its generative roots to become a truly unique instrument with its own sonic character, and I’m already working on the next wave of model and engine integrations.

As always, I welcome your ideas, presets, and custom models—let’s continue shaping the future of audio together! Join our Discord community to collaborate, experiment, and help shape the future of MACE and ANVIL. I would love to see more users sharing ANVIL trained models, tips and tricks for dataset preparation and model tuning. Your feedback and creativity are what drive Tensorpunk forward. Join Discord Now.

Thank you for sticking with me on this journey. I’m a one-person band here at Tensorpunk, passionately dedicated to delivering software, support, and a creating a community. As always, feel free to reach out with any questions or issues and I will do my best!

Jordan – Creator ✌

Feel free to reach out to me personally for any questions, ideas, or needed support: [email protected]

-Jordan Davis