Release 100 is Here!

A hundred years make a century, so goes the saying. What about a hundred app releases? A centu-re-lease.

Bad jokes aside, reaching the 100th release of Chronotron is quite a milestone. It means the app package has been rebuilt, the release notes updated and the Microsoft Store review process completed at least as many times.

In this post I’ll show you what’s new and changed in Release 100. The first thing that you likely noticed – and probably the reason you’re here – is the prominent link to this blog on the app welcome page. As you can see, I’ve already written a couple of posts and shared some how-to videos. Scroll down through this page if you’re curious about what the app can do and don’t hesitate to leave comments if you have questions.

Video Adjustments

When it comes to app functionality, the most visible change is the new Video Adjustments pane.

The brightness, contrast and saturation controls are all new. The video flipping switches were already present in previous releases; however, a welcome improvement is that these controls now also work when rendering media to disk.

Playlist Improvements

Chronotron works best with touch input and the Surface Dial, though I’m aware that many of you run the app on a regular PC with a mouse. Now, when hovering the mouse over playlist items, a checkbox appears that allows you to select the item in just one click.

The Playlist pane underwent some additional revamping – regardless of the input method – based on customer feedback. A Select All button has been added. While in selection mode, if all items are unchecked then the selection mode is turned off automatically. Finally, clicking on the item that is currently playing restarts playback form the beginning of the track.

Usability Improvements

In Release 99 a couple of switches were moved from the main panes to the Options pane (refer to the change log for details). This time it’s the Audio Scroller switch that moved to Options, under the Appearance section. This also means that now you can make the scroller always visible without having to flip the switch every time you start the app.

Also, as part of the continuous effort to make the UI more intuitive, the Instrument pane has been made more readable. Take a look at the two screenshots below.

Can you spot the difference? The one at the left is the new screen layout. Before this change, the user needed to click on the Instrument dropdown list just to see which instruments were available (most customers didn’t even notice when Bass Guitar was added in Release 98!). The Layout options now appear in a dropdown list for the sake of saving screen real estate, but this should pose no usability challenge as the other selection choices are obvious.

By the way, the same principle was applied to the Solo Channel function in the Audio Adjustments pane.

Other Changes

The advent of Always-Connected PCs (ACPC) running full Windows 10 on ARM is a new challenge for app developers. Even though I don’t expect many musicians to use an ACPC as their main system, as a Windows developer I aim to reaching as many Windows devices as possible. This is why almost every Chronotron update brings performance improvements on ARM CPUs, and Release 100 is no exception.

Last, but not least, in this release there are also few changes under the hood to support the new features and pave the way for upcoming functionality. For example, having tighter control on video frames opens the door to other kinds of video processing.

I hope you will enjoy using this release as much as I did coding it!

Pimp Your Chronotron

The wide variety of Windows-compatible hardware out there poses a challenge to developers of apps that rely heavily on device CPU and GPU capabilities, let alone the developers of the OS itself. In apps like video games and media players, the configuration dialog always has a couple of settings whose sole purpose is to accommodate for platform idiosyncrasies or even driver bugs.

In Chronotron, such settings can be found under the Performance section in the Options pane.

While the defaults were carefully chosen to make the app run fine on virtually any hardware that supports Windows 10, you can still fine-tune these parameters to get the most out of your system. A detailed documentation of the various configuration options – not just performance-related – can be found here.

The Fast PC

If you have a fast, modern PC, any combination of settings will likely work great.

Still, you may want to crank up audio quality to enjoy better note definition, provided that your sound system lets you hear the difference. There’s one gotcha with the Highest quality setting, though: as mentioned in the documentation, formant preservation uses a more accurate algorithm that may produce sound artifacts on non-vocal-only audio material, so if you use Chronotron to transpose entire songs, it may be better to stick to Very High quality instead of Highest.

Using the alternative playback engine comes in handy if your system has multiple sound cards, because you will be able to switch between audio outputs on the fly (for example, between the main boxes and the headphones).

Disabling audio processing on multiple CPU cores may also help if you want to run other CPU-demanding apps side-by-side with Chronotron.

The Small Tablet or Netbook

It is on more modest systems that tweaking some of these settings can make a real difference. Many tablets and netbooks have limited memory capacity and relatively slow CPU cores – albeit a reasonable amount of them – so one of the goals here is to distribute workload evenly across processing units. Another goal is to reduce the app memory footprint as much as possible.

First, enable audio processing on multiple CPU cores, and make sure video hardware acceleration is also enabled so the app offloads some of the video processing work to the GPU.

If you use the Hold mode frequently, you can further reduce memory pressure by limiting the maximum reverse playback length to 2 seconds. You may also want to choose not to display the waveform in the scroller.

As a last resort, decreasing audio quality to Very Good may give your CPU some more breath. Alternatively, switching Solo Channel to MONO during playback – via the Audio Adjustments pane – will cut CPU usage roughly by half without making any audible difference in such devices, unless you’re wearing headphones.

What About the Other Performance Settings?

Seamless Loop and Low-latency Playback – both of which are enabled by default – are there for troubleshooting purposes. If you experience playback stability issues these are the ones to look at.

Casting shadows on transparent controls improves the readability of on-screen app elements when playing videos having a white background, for example. However, enabling this option has a significant impact on CPU and memory usage, so do it only if it is absolutely required for your usage.

As a final word, note that the app can be customized in many ways that I haven’t covered in this post. Reading the documentation will give you some ideas – and because default values are also documented, there’s no reason not to try – so go ahead and pimp your Chronotron!