Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Waveform Free (tracktion.com)
63 points by T-A on March 21, 2020 | hide | past | favorite | 28 comments


Unfortunately, Tracktion's overall nice design is completely ruined for me by having an unusable piano roll editor. Manual MIDI editing is really important when your keyboard playing skills aren't up to par (or when you're a kid and can't afford a MIDI keyboard).

FL Studio's piano roll has been out there for a decade, I just can't understand how other DAW vendors didn't match features with it yet.


This applies to the entire GUI tbh - that flat look is great for some things but there are plenty of places in a DAW where you need some kind of highlighting/shadowing to make small detail standout.


Can you expand on what you believe is lacking?


FL Studio's piano roll feels like Photoshop: draw some notes, select a couple with shift+click, make them shorter by dragging the first one's right edge, actually they're too quantized so do it again while pressing alt to not be limited to quantization, duplicate them a bunch of times with ctrl+drag (I think? It'sbeen years), then select the entire thing and duplicate it above twice to turn it into a series of major chords, select a few of the middle notes and drag them one row down to make the notes minor, then select all and right-click-drag the velocities to create a rise towards a crescendo (try that on a drum roll, sounds great). Or, my favorite flow: record some things, then select all with Ctrl+A and shrink it to 1/2 the length so it's in the speed I planned it to be in but can't play well enough to record in.

Tracktion's feels like a grid editor: you can edit specific notes but there's not really any useful keyboard shortcuts or mouse behaviors to help you draw music with it.


i believe he is talking about the built in set of midi generators and bars


The real interesting story behind Tracktion is:

- they have open-source DAW engine (https://www.tracktion.com/develop/tracktion-engine)

- as it has strong relationship with JUCE framework, it also supports SOUL patches which aims to be a modern DSP coding language.


Last time I looked at Tracktion Engine, I was specifically interested in the time-stretching and pitch shifting that they boast on the page you linked. Tracktion DAW has great time-stretching, therefore it must be in Tracktion Engine, right? Nope! Turns out the DAW includes a licensed version of zplane Elastique for time stretching, which is not included in Tracktion Engine. Instead, the Engine (which they license commercially) includes something totally different: a copy of the open source SoundTouch library. It is far from the same quality, with immediate glaring windowing artifacts. Nothing technically wrong, but I found that a bit misleading and undocumented.

You can see for yourself: https://github.com/Tracktion/tracktion_engine/blob/master/mo...


note that AFAICT, Faust remains more widely used as a modern DSP coding language.


Also, Faust has the good taste of being 100% open-source, has almost 20 years of work on optimization, and can easily be translated into SOUL if the need arises


> Once addicted we have a perfect selection of deep dive tools available in Waveform Pro to take you to the next level.

I like the honest and careful selection of words in advertisement.


I'd be interested to know how they implemented plugin sandboxing. From the site:

> 3rd party plugins are the weak link for any digital audio workstation. Waveform Free addresses this by implementing plugin sandboxing. Once activated your work environment is protected by keeping plugin crashes contained. Instead of the host closing, the plugin is simply deactivated


VST plugins can execute whatever code they want once called by the host, so the only obvious way of sandboxing them is to have a separate process (bridging) per plugin. In fact, that's how the VST loaders in other hosts (eg. Buzz) have been doing it for many years. This inevitably introduces some overhead due to inter-process communication and synchronization, but it sounds like the sandboxing can be activated or deactivated here as well, so you have the choice between "fast and dangerous" vs. "slow but safe".

And since Tracktion is one of the flagship JUCE users, I'm willing to bet they're using the JUCE interprocess classes:

https://docs.juce.com/master/group__juce__events-interproces...


Not sure about other platforms, but on macOS you can start up an XPC service that loads a single plug-in. There's communication overhead, but it can usually be managed reasonably with careful design of the cross-process API.


If you want more details of how we see it from an Ardour perspective:

https://ardour.org/plugins-in-process.html


Interesting and useful post. That being said, I think it ignores some valid solutions. For example, REAPER and some others offer the option to bridge specific plugins. This is often sufficient, since users generally just want to play with some specific cool-sounding but crashy plugins.

Then there's also the more technically difficult option of running the entire audio engine (including plugins) in one separate resilient process: if it crashes, it can be relaunched and its state restored by the main process. I believe Bitwig can do this. Cool but I wouldn't want to be the one implementing it!


In the Ardour world, the "bridge specific plugins" approach is accomplished by using JACK. There are several clients that can be used to run a single plugin (for at least a couple of plugin APIs). The level of integration drops noticeably, and it does mean that you have to use JACK which for some people seems to be a burden. But it also leverages the generality of JACK's inter-application audio/MIDI to avoid complexity in the host itself.

As I said in the article, we are averse to complex engineering solutions to the problem of plugins that crash.


Wow! Thank you for sharing. I really appreciate the work you do, by the way!


Probably just using a v8 isolate.


the free version looks like it's essentially useless.


Not at all. It's missing some of the more advanced features of the paid version and has only a very basic plugin bundle, but it's entirely useable. Unlike the free or cheap version of many other DAWs, it doesn't have any track count limits or restrictions on importing third-party plugins.

Just add an audio interface, a MIDI controller and a smattering of free plugins like the Komplete Start bundle and you'd be well equipped to start making music.

https://www.native-instruments.com/en/products/komplete/bund...


You can't even customize the layout of the screen, it's limited in ways that are not worth fighting against. Nowadays you can get much better for very little money. on Mac you got Garageband that's leaps better and free, on Windows you got Cakewalk for free. There's others too. This one isn't worth even looking at.


I had learned that Cakewalk had become free but had not looked into it. Sounds like it is a good option.


What features is it missing to create a complete album?


This is not free.


Can you provide a bit more detail? I see it’s a “free download”, but since I can’t download from a mobile device, I can’t see past the download.


I presume because users must sign up, and verify email before being able to download and they don’t want to exchange their information as a “currency” for a free product?


Bingo, partly.

Also it is free as in beer. Where's the code?

Also, free crippled version and pay for useful version

Not free


What’s crippled about it?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: