SamSuka
colugomusic

colugomusic

patreon


colugomusic activity

Dev Log #43

I finished the initial implementation of the choke region recoloring effect. The way it works at the moment is by recursively generating textures for each lane starting from the bottom of each track and moving up one by one. Each texture is added to the one generated by the lane below.

View Post

Dev Log #42

Discord link for new people:

https://discord.gg/9ZW2UXM


Over the past few days I fixed some horrible new audio engine crashes that I discovered while testing things, and I re-implemented the...

View Post

Dev Log #41 - Envelope editor improvements

The envelope editor is now fully reimplemented and I added lots of improvements. The most obvious ones are:

  • An "Enabled" toggle in the bottom right which allows you to disable the envelope without clearing the points.
  • An "Always Visible" toggle as demo'd in the video
  • View Post

Dev Log #40

I have been working on hooking up the modulation editor UIs to the new system, in particular the modulation selector in the header and the footer controls. Some of these controls have been re-used but a lot of it has had to be rebuilt. The way these controls would populate themselves previously w...

View Post

Dev Log #38 - Fitting things into small spaces

I like having block parameters visible at the front rather than hidden in menus but there is always going to be limited space available.

To make the spin-box controls a bit smaller I made a standard set of icons for amp, pan, pitch and sample offset. The sampler plugins can specify which ic...

View Post

Updated Roadmap (March 17th 2021)

The last one I posted is pretty out of date now. Things changed a lot because I decided to abandon those plans for the modular effects system in favour of something which I think will be much better in the long run.

1.1 Finish modularizing the sampler engines

I was pr...

View Post

Dev Log #37 - Lane states

By double-clicking anywhere on a lane it toggles an "expanded" mode on and off. There's no official name for this state really. When a sampler block is on an expanded lane all its controls are visible, otherwise it only shows the waveform (and in the upcoming version, the choke envelope).

<...

View Post

Dev Log #36

I've been working on a lot of different things over the past week. The data structure of projects has changed completely since v0.12.1 alpha so for a long time saving and loading has been broken. This makes testing things annoying so I finally got around to making it work again. The worst thing a...

View Post

Dev Log #35 - Block choke and amp envelopes

The new version of the audio engine will have the audio signal of a single track being routed downwards through the lanes with blocks being able to manipulate the dry signal coming from above them in various ways. After the work I did properly implementing the 2021-03-04 14:01:05 +0000 UTC View Post

Dev Log #34 - Block Transitions

The Edges

To avoid clicking at the right edge of a block, Blockhead automatically adds a short fadeout to the end:

(I am drawing these lines freehand in MS Paint so they wo...

View Post

Apology for lack of updates

I have been having health problems for the past few weeks and have only been able to work on Blockhead for a few hours a day due to tiredness. I spend a lot of time sleeping for 4 hours at a time and feeling fatigued all day. There is a lot of stuff that I wanted to have finished by now that I ha...

View Post

Dev log #33 - Refactoring progress and design changes

There is something about music software that doesn't feel right to me. Maybe you agree and that's why you are here. It's hard to explain this feeling of wrongness when I'm such a terrible communicator so I have to rely on this combination of vague handwaving and broken analogies.

It feels n...

View Post

Dev log #32 - Refactoring hell

I am pretty happy with the progress I have made with the refactoring so far though it turned into a much bigger job than I anticipated. The second stage of refactoring (modularizing the sample playback engines) is probably going to be rolled into the first stage because it is easier and more effi...

View Post

Dev log #31 - Vague roadmap

These are just the big tasks and features. The order of tasks might change. Smaller features not listed here will likely still be worked on in between everything else.

Massive refactoring Part 1

I'm slowly going insane because the design and scope of Blockhead is beco...

View Post

Dev log #30 - Moving rectangles around

For the past week and a half I have been working on moving a bunch of UI code from GDScript to C++, mainly the block layout mana...

View Post

Dev log #29 - Builds, distribution, internet issues

The process of distributing new Blockhead builds is currently quite miserable. I have tried to streamline the actual build process as much as possible but the distribution process is really painful right now because my internet connection is so rubbish, much worse than the average in my area. I d...

View Post

Blockhead v0.12.1 alpha

Update Notes:

  • Bugfix: Crashes about 75% of the time when loading project file!


Public issue tracker: https://trello.com/b/MT1A3Zob/blockhead-issues

Planned features...

View Post

Blockhead v0.12.0 alpha

Update Notes:

  • Feature: Key binding editor
  • Feature: Key binding import/export
  • Update: New settings dialog
  • Update: Visual changes to dialog boxes
  • Bugfix: Crash is possible when resizing window
  • Bugfix: Undo/Redo notifications labels are offset...

    View Post

Blockhead v0.11.2 alpha (macOS only)

Update Notes:

  • Bugfix: [macOS] Should now work on older mac versions (I think theoretically back to 10.11)
  • Bugfix: [macOS] Crash when the Remove Track button is pressed
  • Bugfix: Visual issues in project save dialog when big font is selected

The default keyb...

View Post

Blockhead v0.11.1 alpha (MacOS only)

v0.11.1 should be functionally identical to v0.11.0. Many internal changes were made to get everything working on MacOS.

I am currently building only for x86 architecture however it is likely that I will be able to support running natively on Apple's new ARM processors in the future.

...

View Post

Blockhead v0.11.0 alpha

Update Notes:

  • Feature: Basic song rendering (from workspace context menu). If there is a sample start block on the workspace then rendering will start from there and stops at the end of the last block that makes a noise.
  • Bugfix: Custom song start value is not sent to the engi...

    View Post

Blockhead v0.10.0 alpha

Update Notes:

  • Feature: Added "Resample" checkbox to export dialogs (visible when a sample rate is selected which differs from the source sample rate). When enabled the resulting file will be the same length/pitch as it is in-DAW though upsampling or downsampling may need to be pe...

    View Post

Dev log #28 - Song traversal (warning very boring)

There's a pretty bad bug in Blockhead at the moment where if you go far enough left or right in the workspace and start playing audio all the way over there then you will start to hear a sample reduction effect, which gets worse the further to the left or right you go. This is the most audibly no...

View Post

Blockhead v0.9.0 alpha

Update Notes:

  • Feature: MP3 sample support
  • Update: Sample data is now stored in project files in WavPack format. 32-bit samples are no longer converted to 24-bit. Any existing FLAC format project files should still be openable
  • Update: FLAC removed from expor...

    View Post

Dev log #27 - File Formats

When a Blockhead project is saved it currently encodes all the samples as 24-bit FLAC files to save space. This means 32-bit samples are converted to 24-bit when the project is saved which is not ideal. The FLAC format does technically support 32-bit float but most FLAC encoders don't.

Than...

View Post

Blockhead v0.8.0 alpha

Update Notes:

  • Feature: Block export (From sample block context menu)
  • Feature: Can now drop a single *.blkhd file onto the Blockhead window to open it
  • Update: Users are now prompted to save unsaved changes on New Song, Open Song and Quit operations.
  • Update: I...

    View Post

Blockhead v0.7.0 alpha

Update Notes:

  • Feature: Sample export (Triggered from the context menu in the sample list). Supported export formats are currently WAV and FLAC. Block exporting is still in progress.
  • Update: Background tasks that fail for some reason will keep a dismissable error message in th...

    View Post

Blockhead v0.6.3 alpha

Update Notes:

  • Update: Zoom and scroll position is now saved with project
  • Update: Slight visual improvements to waveform rendering.
  • Update: Several small waveform glitches were fixed and LODs should be more accurately sampled now
  • Update: Waveforms should be q...

    View Post

Dev log #26 - The Most Horrible Code In Blockhead

Blockhead is a mixture of C++ and a language called GDScript, Godot's built-in scripting language. All of the audio/performance critical code is C++ whereas the majority of the UI is written in GDScript.

GDScript makes it really easy to prototype new UI ideas and get things working very qui...

View Post

Blockhead v0.6.2 alpha

Update Notes:

  • Bugfix: Possible crash occurs while placing a new sample block at the current playhead position while the song is playing.
  • Bugfix: Grain uniformity defaulting to 0% in engine when there are no modulation points.
  • Bugfix: Middle mouse button no longer pan...

    View Post