Skip to content

Releases: DavidfromMonaco/minihub

MiniHub 0.9.2 — beta

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 27 Sep 16:14

A beta. Still unsigned, and still the same two ways in: the installer, or the portable ZIP you unzip over the old folder. Settings, projects and recordings live outside the application folder, so upgrading over 0.9.0 keeps your work.

A new look

The whole window now wears One Ring's dark face, with its orange as the one accent and Geist throughout.

  • The header is the title bar. File, Edit, View and Help sit in it, beside the transport's black readout, the time signature, Plays and Export. Space plays and stops on every page.
  • A status bar names the controller, the audio engine and the audio device.
  • The Patch Bay's cards say what each node holds: a VST chain's plugins, an Arpeggiator's mode and rate, a One Ring's scene, the Sequencer's tracks, and a strip per input with its own meter on a Mixer or a Morpher. Tab turns the canvas round to show the cables behind the cards.
  • The Mixer, the Morpher and the VST node wear the faceplate of One Ring and the arpeggiator. The Mixer is a console, a strip per input with a pan knob, a fader, its level in dB and a MUTE key, then its master. The Morpher's steps are small faders under a rotary selector, the one playing lit. The VST node is a rack, one unit per plugin with an LED that says whether it is loading, ready or failed, and why.

Two layouts

Original, one page at a time, and Hybrid 1: the Sequencer above, and the Patch Bay or the page you open below, the height shared by a bar you drag. Chosen in the header or the View menu, and remembered.

The Sequencer

  • The time signature is the project's, set beside the tempo, and it can change along the song from the ruler's menu. A track may count its own bars (polymetry); the ruler, the grid, Snap, the loop, the metronome and plugins all count the right bars.
  • The loop counts bars, and keeps every note: nothing sticks and nothing goes missing at the wrap.
  • Record: Overdub or Replace. Takes recorded over one another are shown in lanes, and any clip can be made inactive from a key on it.
  • A MIDI take keeps the wheels, the knobs and the pedal played into it, drawn in the clip.
  • A knob bound to a plugin parameter is recorded as automation on the armed track, and played back, export included.
  • Audio clips fade as they do in Reaper: length, curve, the seven shapes and a low-pass fade, in the arrangement and in the Clip Editor.
  • Solo on every track, and a pan on every track and every Mixer strip.
  • + MIDI Track offers your instruments: take one and the track comes with its VST node, cabled and opened. Each track head opens the plugin it plays.
  • The playhead is a grip: press either ruler to place it. Alt + wheel makes the selected track taller.
  • The Sequencer's manual is in the application: Help > Sequencer Manual, or F1.

The Clip Editor

  • A bar ruler over the piano roll, and the playhead read in bars and beats.
  • A zoomed audio take is drawn from its samples, no longer from 256 points for the whole file.

The MiniLab and the instruments

  • Shift + Loop, Stop, Play, Rec and Tap on the MiniLab 3 act as the header's buttons, and Tap sets the tempo.
  • The arpeggiator has ON and HOLD: off, it passes notes on as played; Hold keeps them after the keys are let go.
  • One Ring counts the project's bars, and a new generation's track can get an instrument of its own.
  • Learn sets aside a parameter the plugin moves by itself, so arming Learn on a plugin that animates its own controls no longer grabs the wrong one.

Fixed

  • An undo that takes away the node whose page is open now brings the Patch Bay back, instead of leaving the page on screen.
  • A duplicated or pasted VST node loads its plugins at once; it came up empty until the project was reopened.
  • A cable into a keyboard's MIDI In with no output chosen is said in the status bar, instead of going nowhere in silence.
  • Changing the Morpher's number of steps redraws its steps.
  • In Task Manager, MiniHub.exe calls itself MiniHub, not Electron.

Verifying the download

SHA256SUMS.txt lists the two files of this version and nothing else.

MiniHub 0.9.0 — beta

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 24 Sep 23:50

The first beta. Still unsigned, and still the same two ways in: the installer, or the portable ZIP you unzip over the old folder. Settings, projects and recordings live outside the application folder, so upgrading over 0.8.0 keeps your work.

0.9.0 rather than a new count from 0.1: the number keeps climbing, so nothing reads this beta as older than 0.8.0.

The Patch Bay's menus

A right-click on the empty canvas — or a double-click — now opens one list of every node type under its family, with a search field on top. Type mix and Enter: a Mixer, under the pointer. No more three levels of submenus.

The search finds your plugins too. Type val and the Valhallas are offered, their maker beside them; take one and a VST node is placed with that plugin already loaded. The plugin list waits for a search, so the menu stays short until you type.

  • On a node: Open Plugin Window, Open Page, Duplicate (Ctrl+D), Copy, Disconnect All Cables, Delete. With several nodes selected it acts on all of them, and a right-click on a node that is not selected selects it first.
  • On a cable: Disconnect, under the names of the two nodes it joins.
  • Ctrl+C and Ctrl+V carry several nodes, pasted in the arrangement they were copied in. Cables are never copied.

Muting a track mutes its clips

A muted Sequencer track now silences its own clips and nothing else. An armed track that passes an Audio Player or a keyboard on to the output keeps passing it, and a MIDI track's instrument keeps sounding whatever else plays it. To leave the whole arrangement out, use Plays: Players.

Audio Players

  • Back to the start, back five seconds, forward five seconds, around Play and Stop. Back stops at the start; forward goes round a looping player.
  • Mute, which silences that player alone and keeps its level for when you bring it back. It is saved with the project.

The project's name, where it belongs

The top left of the window names the open project, with a • while it has unsaved changes. The name is the file's: a project renamed or copied in the Explorer opens under its new name, and saving under another name renames it.

A clock ruler you can read to the hundredth

The arrangement's time ruler measures time on its own, no longer stopping at the second: zoomed in, it reads tenths and hundredths of a second.

Fixed

  • The Sequencer's right-click menu on a clip did nothing when an entry was chosen: it closed on the press, before the click reached it.
  • The project name at the top stayed on "Untitled" for a project saved under another name.

Known, and not fixed here

  • Zoomed in, an audio take's waveform is an outline rather than the signal: it is drawn from 256 points for the whole file.
  • The piano roll still has no rulers: no bar number and no position in time.
  • In Task Manager, MiniHub.exe still calls itself Electron.

Verifying the download

SHA256SUMS.txt lists the two files of this version and nothing else.

MiniHub 0.8.0 — pre-alpha

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 24 Sep 13:22

Still pre-alpha, still unsigned. The same two ways in: the installer, or the portable ZIP you unzip over the old folder. Settings, projects and recordings live outside the application folder, so upgrading over 0.7.0 keeps your work.

A round of work on the Patch Bay, a choice of what Play plays, and knobs that can be as fine as you need.

What Play plays

Listening back to a take also played the Audio Players it was recorded from. A Plays selector now sits beside the transport at the top: All, as before; Sequencer, the arrangement's clips without the Audio Players; or Players, the Audio Players without the clips. What is played into a track — its input, its monitoring, a recording — still sounds under Players, and no fader moves. An export prints what Play plays. Anything but All is drawn amber, so a Play that leaves half the project silent is never a mystery.

A range for each knob

A MiniLab knob sends 128 positions, and spread over a pitch shifter's 48 semitones each one is 0.38 of a semitone. A bound control now has a Range in the bindings bar: set the parameter in the plugin where the knob should start and press Low, where it should end and press High. The knob then sweeps only that part — −2 to +2 semitones makes each step 0.03. The two ends are shown in the plugin's own words; Full gives the whole parameter back.

The Patch Bay

  • Move a cable. Drag the end of a cable off an input and drop it on another: it is plugged there, in one undo step. Where it cannot go, it stays where it was. Dropped on empty canvas, it is unplugged, as before.
  • Select several nodes. Shift or Ctrl + click adds a node or takes it out; a drag on empty canvas draws a frame that takes every node it touches; dragging one selected node moves them all. Delete removes them, Ctrl+A selects everything, Escape nothing.
  • A default order for the node list. A new node joins its own kind in the sidebar: VSTs first, then Audio Players, then Mixers and the rest. It is a default, not a sort — a node you drag elsewhere stays there, and the next of its kind follows it.

Plugin windows

A plugin drawn at one size now gets a window that keeps it, with no resizing border and no Maximize: stretched, the window showed the plugin in a corner and blank space beside it. And the bindings bar under a small plugin keeps a width it can be read at instead of shrinking to the plugin's.

Fixed

  • The header keeps the controller's status readable in a narrow window: the words beside the tempo and the Plays selector drop first.

Known, and not fixed here

  • Zoomed in, an audio take's waveform is an outline rather than the signal: it is drawn from 256 points for the whole file.
  • The piano roll still has no rulers: no bar number and no position in time.
  • Ctrl+C copies one node, even with several selected.

Verifying the download

SHA256SUMS.txt lists the two files of this version and nothing else.

MiniHub 0.7.0 — pre-alpha

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 24 Sep 01:07

Still pre-alpha, still unsigned. The same two ways in: the installer, or the portable ZIP you unzip over the old folder. Settings, projects and recordings live outside the application folder, so upgrading over 0.6.0 keeps your work.

A new node, audio you can hear while you record it, and a round of work on getting around: the timelines, the node list, and the transport.

An Audio Player node

An audio file in the Patch Bay: a WAV, MP3, AIFF, FLAC or OGG, with one AUDIO OUT you cable into your VSTs to process it. Its page has Play/Pause, Stop, Loop, a level, and an overview you click to place it. The Play, Pause and Stop at the top of MiniHub drive it too, so a player follows the arrangement.

An armed or monitored audio track passes its input on

The Sequencer recorded what reached its AUDIO IN and never let it be heard, so a chain recorded through it had to be cabled to the audio output a second time. An audio track that is armed or monitored now sends its input on to its destination, at its level and under its mute, transport running or not — and an export hears it the same way.

A navigation bar under all three timelines

The arrangement, a MIDI clip's piano roll and an audio take share one bar, in a row of its own under the timeline: drag the thumb to travel, press beside it to jump there, drag either end of the thumb to zoom with the other end held still, and − / + for a step. It replaces the four-pixel rail, which was dark grey on a dark panel, hid itself whenever everything fitted, and could not zoom.

An audio take is no longer a fixed picture of the whole file. It zooms — the bar, Ctrl+wheel under the cursor, Fit — under a clock ruler that goes down to the hundredth of a second.

Arrange the node list

Press a node in the sidebar's NODES list, drag it, and let go where the line is. The order is saved with the project. A click that barely moves is still a click; Escape cancels.

One transport, at the top

Record now sits beside Play and Stop at the top of the window, reachable from every page: amber with the reason as its tooltip when a take cannot start — press it and it says why — and red while one runs. The Sequencer's own start, end, Play, Record and Stop buttons are gone; its status line stays. Its title row keeps to one line at any window width, dropping the words it can spare rather than pushing the page past the window's edge.

Fixed

  • Kilohearts plugins load. Every kHs effect ended in "setProcessing(true) failed": they answer that call with the VST3 SDK's own "not implemented", which MiniHub took for a refusal. It is accepted now, as JUCE's host does. All 35 installed kHs effects load in the engine's host.
  • A brand is one row in the plugin list. Kilohearts' 35 effects filled the VST node's list; a brand with two plugins or more in a family now folds into one row that opens beside it.

Known, and not fixed here

  • Zoomed in, an audio take's waveform is an outline rather than the signal: it is drawn from 256 points for the whole file. Finer detail for what is on screen is the next step.
  • The piano roll still has no rulers: no bar number and no position in time.
  • One Ring is still young. It is covered by tests and it runs, but it is the newest thing here and that is where the rough edges will be.

Verifying the download

SHA256SUMS.txt lists the two files of this version and nothing else.

MiniHub 0.6.0 — pre-alpha

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 18 Sep 21:23

Still pre-alpha, still unsigned. The same two ways in: the installer, or the portable ZIP you unzip over the old folder. Settings, projects and recordings live outside the application folder, so upgrading over 0.5.0 keeps your work.

A short one, and all of it came from using the application: two surfaces that now say where you are, and three things that were simply wrong on screen.

Align folds a fan-out instead of stacking it

Seven plugin nodes hanging off one sequencer were a column 1,570 world units tall beside a drawing 680 wide — correct, and something you read by scrolling rather than by looking. A rank is now drawn as one column until that column would be taller than the whole drawing is wide; past that it folds into a block, filled left to right then down. The same canvas comes out 1,160 by 650, which is the shape of a window.

Nothing about the signal changes. A rank's block is contiguous and the next rank starts only after it ends, so every cable still points right, and pressing Align twice still moves nothing.

The Clip Editor has a navigation bar

Under the piano roll, the same four dark pixels the arrangement has: where you are in the clip, how much of it is on screen, and a thumb to drag. It is the same component, not a copy of it — the mapping that draws the thumb and the one that reads a drag on it are one function, or they drift apart. Chromium's wide light scrollbar is gone from that window too.

Fixed

  • The MiniLab's main encoder is one control again. It turns (CC 114) and it pushes (CC 115) — two signals, two cables — but the panel drew the push as a second socket hanging below the knob, where the hardware has nothing at all. The push's jack now sits inside the turn's: a triangle inside the triangle. Both stay separately cabled, and any controller profile that declares a second function is drawn the same way.
  • The playhead no longer crosses the track headers. Scroll the arrangement away from the cursor and the red line was drawn straight across every track's buttons and fader. It passes behind them now.
  • The bar under the arrangement stops giving up. Dragging it about a quarter of a screen repaints the timeline, and the drag was then left writing to a page that had been replaced — so it stopped answering, in either direction, with no error anywhere. The middle-button pan had the same defect and is fixed with it.

Known, and not fixed here

  • The Clip Editor has no rulers: the grid draws its beat lines and nothing names them, so there is no bar number and no position in time. That is the next thing it gets.
  • One Ring is still young. It is covered by tests and it runs, but it is the newest thing here and that is where the rough edges will be.
  • The Arpeggiator, Mixer and Morpher pages do not redraw when a One Ring sequence changes them: the value has changed, the knob on screen has not moved yet.
  • Kilohearts plugins (kHs Gain, kHs Filter, kHs Reverb) still do not load: "setProcessing(true) failed".

Verifying the download

SHA256SUMS.txt lists the two files of this version and nothing else.

MiniHub 0.5.0 — pre-alpha

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 18 Sep 08:09

Still pre-alpha, still unsigned. The same two ways in: the installer, or the portable ZIP you unzip over the old folder. Settings, projects and recordings live outside the application folder, so upgrading over 0.4.0 keeps your work.

This one is mostly about knowing where you are and being able to get there.

A transport at the top

The header carries the whole transport now: back to the start, back one bar, Play/Pause, Stop, forward one bar, to the end of the arrangement, and the position in bars and beats.

It is in the shell because that is where it is needed. Inside a One Ring node, on a plugin's page, in the Patch Bay, the arrangement is not on screen — and once you have left the timeline, "where am I" has no other answer. The readout turns green while the transport runs.

Play doubles as Pause, and Pause and Stop are not the same command. A pause holds the arrangement where it is and leaves a One Ring running on its own clock; a Stop stops both. Neither rewinds — returning to the start is its own button, next to them, where you can see it.

A step back from the middle of a bar lands on the bar you are in; pressed again it goes back one. That is the step that makes Back usable.

Minutes and seconds, above the bars

The arrangement has a second ruler over the bar ruler, in minutes and seconds. Its marks are clickable like a bar's, and it redraws itself when you change the tempo — sixty-four bars are sixty-four bars at any tempo, two minutes are not.

The two rows only line up where a bar happens to fall on a round second: at 120 BPM a bar is exactly two seconds and every bar line meets one, at 90 BPM they meet every three bars, at 174 they never do. That is the tempo talking, not a drawing error.

The Patch Bay goes as far out as your patch

Align laid a dozen nodes out correctly and then showed you two thirds of them: the zoom could not go below 25%, and a rank of twelve nodes needs less than that to fit.

The floor is 5% now, so "frame everything" is never a lie. What changes with distance is how much of a node is drawn, not how far you can go: past 50% the badges, the port names and the faceplate's legends step aside, the node's own name grows so it stays readable while the node shrinks, and past about 18% the node is a coloured block. The background grid drops its fine tile when its lines get too close to be a grid.

Fixed

  • The Sequencer's tracks no longer empty as you scroll. Every scroll of the timeline raised an error, so the repaint that draws the clips you are scrolling towards never ran: move more than a screen away from where the arrangement was last drawn and the lanes went blank.
  • The arrangement stays where you scrolled it. Only the horizontal position was put back after a repaint, so past the thirteenth track every edit — and a MIDI port appearing counts — threw the view back to the first tracks. "+ MIDI Track" made a track below the fold and showed you the top. The view stays now, and a new track is brought to the screen.
  • The timeline does not end. It used to stop four bars after the last clip, sixty-four bars at the least, so a clip could not be dropped at bar 200 of an empty arrangement and the transport could not run past it. There is always a screenful of empty bars ahead of the view.
  • A right-drag pan in the Patch Bay no longer opens the context menu when you let go. The menu was suppressed for 800 ms from the moment the pan began, and every pan anyone actually makes lasts longer than that.

Known, and not fixed here

  • One Ring is still young. It is covered by tests and it runs, but it is the newest thing here and that is where the rough edges will be.
  • The Arpeggiator, Mixer and Morpher pages do not redraw when a One Ring sequence changes them: the value has changed, the knob on screen has not moved yet.
  • Kilohearts plugins (kHs Gain, kHs Filter, kHs Reverb) still do not load: "setProcessing(true) failed".
  • Massive X can still move a parameter by itself for up to half a minute after its window opens, and a Learn armed during that time may take that parameter instead of your knob. Arm it again once the plugin has settled.
  • MiniHub.exe still describes itself as Electron in its file properties, so Windows may show that name — in Task Manager, for one.

Checksums

Unsigned, so SmartScreen will ask: More info, then Run anyway. SHA256SUMS.txt is published beside the downloads so you can check them yourself.

MiniHub 0.4.0 — pre-alpha

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 17 Sep 22:27

Still pre-alpha, still unsigned. The same two ways in: the installer, or the portable ZIP you unzip over the old folder. Settings, projects and recordings live outside the application folder, so upgrading over 0.3.0 keeps your work.

A new node: One Ring

One Ring is three things in one node, run by the audio engine on the same clock as the sound: a sequencer of commands, a player of notes, and a writer into the Sequencer.

Sixteen channels, sixty-four steps each. A channel aims at something in your patch — an arpeggiator's rate or mode, a mixer's input level or its master, a morpher's step, the tempo, a parameter of a plugin — and each of its steps carries a value: fixed, a range it draws from, or a list it walks. A step can hold a probability, a condition on another channel, or a lock that keeps mutation off it. Length, rate, repeat, offset, swing and humanise belong to the channel, so sixteen of them drift against each other instead of marching together.

Thirty-two scenes, A1 to D8. Store one, recall it now or at the next bar, with the channels restarted or left where they stand.

One seed. Every random draw comes from it, so the same seed plays the same piece. Mutate one channel or all of them, and each cell says for itself what a mutation is allowed to change.

One Ring plays notes, too

Material. What reaches One Ring's MIDI IN — a Sequencer track aimed at it, or a controller cabled to it — is captured over a window you choose and kept as the node's material; a MIDI clip can be loaded as that material instead. A capture keeps what starts inside its window, and freezing the material puts it out of reach of everything else.

Four voices. A channel aimed at One Ring · Voice N plays a slot of the material, or one of its notes. Each voice has its own root and scale, transpose and octave, spread and chance, velocity and length with their spreads, the order it reads the material in — as played, up, down, shuffled — a density, and its own MIDI channel.

The writer. WRITE takes what the voices played over the last window and puts it into the Sequencer: a new track, a clip replaced, or notes added to one. With FEEDBACK on, each generation also becomes what the voices play next — no sooner than a delay you set, and at most a number of times you set — so the piece feeds on itself. The material it started from is never touched.

A new Home

The first page is rebuilt: four cards, each with its own picture — New, Current Project, Load, Templates — and beside them what MiniHub is, how finished it is, and where the rest of the answer lives: the source, the site, and a Report a bug button that opens an issue with your version, build and Windows release already written in it.

Fixed

  • A clip edited while the piece plays no longer silences every instrument. A Sequencer sync used to panic every plugin chain, so a note moved during playback cut the sound of all of them.
  • The list a menu opens on a faceplate is dark, and drawn by the page. Electron drew those lists white, over the graphite plate, which is where they were least readable — One Ring's menus and the Arpeggiator's alike.
  • The application declares a dark colour scheme, so the scrollbars, carets and selections Chromium paints itself stop coming out white.

Known, and not fixed here

  • One Ring's second half — the capture, the four voices and the writer — is days old. It is covered by tests and it runs, but it has not yet been through an evening's work, so that is where the rough edges will be.
  • Kilohearts plugins (kHs Gain, kHs Filter, kHs Reverb) still do not load: "setProcessing(true) failed".
  • Massive X can still move a parameter by itself for up to half a minute after its window opens, and a Learn armed during that time may take that parameter instead of your knob. Arm it again once the plugin has settled.
  • MiniHub.exe still describes itself as Electron in its file properties, so Windows may show that name — in Task Manager, for one.

Checksums

Unsigned, so SmartScreen will ask: More info, then Run anyway. SHA256SUMS.txt is published beside the downloads so you can check them yourself.

MiniHub 0.3.0 — pre-alpha

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 16 Sep 20:48

Still pre-alpha, still unsigned. The same two ways in: the installer, or the portable ZIP you unzip over the old folder. Settings, projects and recordings live outside the application folder, so upgrading over 0.2.0 keeps your work.

A knob is learned under the plugin

Every plugin window now opens with a bindings bar docked under its bottom edge — or beside it, when the window has no room below — and the bar moves, minimises and closes with the window. Arm a control in the bar and turn a knob: MiniHub plugs the controller into the VST node by itself, so there is no cable to lay in the Patch Bay first.

A bound knob drawn in the bar shows where its parameter stands and moves it under the mouse; Clear unplugs the cable again. The bar is now the one place a binding is learned, seen or cleared; the Learn panel on the VST node's page is gone. Removing a plugin frees the knobs bound to it.

Undo, everywhere

Ctrl+Z and Ctrl+Shift+Z undo and redo from every page and from a Clip Editor window, and the header carries Undo and Redo buttons. The history keeps what you author and never what you perform. Every node editor now redraws what an undo restores — it used to change silently, which looked broken. A plugin's own window keeps its own Ctrl+Z. Undoing the removal of a VST node brings it back playing, with its knob bindings.

Sequencer

  • A track is half as tall. Its Input and Destination sit on one line just above the tracks, under the export options and the timeline tools.
  • A track remembers its MIDI input as the hardware rather than a Windows session number, so it no longer has to be picked again after a relaunch — the known issue of 0.2.0.
  • Each track has a select button on its left edge. Selecting a track no longer arms it: the armed track stays armed, and arming is the R button (Ctrl or Shift to arm several).
  • The destination names what a VST node plays — "VST 6 — Splice INSTRUMENT" rather than "VST chain" — in orange.
  • The Clip Editor's piano roll sounds a note when you click it.
  • Moving the playhead lets the notes ring out instead of cutting every sound.
  • Fields that used to be plain white are light gray.

Patch Bay and plugins

  • A VST node has a MIDI OUT, so one track can play several instruments in series.
  • Align lays the graph out along the signal — once, when you press it; the canvas never rearranges itself.
  • A plugin shipped as a folder, such as Splice INSTRUMENT, is listed once instead of twice, and scanning no longer starts plugins — a scan could cost Splice its login.
  • A plugin window stays where you put it, and goes behind MiniHub like any other window.
  • An arpeggiator takes a new rate or step count without cutting what plays.
  • A rare engine crash during playback, when an edit landed at the wrong microsecond, is fixed.

Look

  • The arpeggiator's faceplate is graphite.
  • The window title and the header say MiniHub.
  • The MiniLab 3's seventh pad reads Rec.
  • The controller page links to the setups on minihub.site, beside Import a profile.

Known, and not fixed here

  • Kilohearts plugins (kHs Gain, kHs Filter, kHs Reverb) do not load: "setProcessing(true) failed".
  • Massive X can move a parameter by itself for up to half a minute after its window opens, and a Learn armed during that time may take that parameter instead of your knob. Arm it again once the plugin has settled.
  • MiniHub.exe still describes itself as Electron in its file properties, so Windows may show that name, in Task Manager for one.

Checksums

Unsigned, so SmartScreen will ask: More info, then Run anyway. SHA256SUMS.txt is published beside the downloads so you can check them yourself.

MiniHub 0.2.0 — pre-alpha

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 07 Sep 10:15

Still pre-alpha, still unsigned. Two ways in, as before: an installer, or a portable ZIP you unzip and replace. Both carry the same build, and both read the same settings, projects and recordings — none of which live inside the application folder, so upgrading over 0.1.0 keeps your work.

Recording actually keeps what you play

Three faults, found by using the sequencer rather than by testing it.

The count-in discarded everything played into it. With the metronome on, pressing Record started a four-beat count-in and did not open the takes until it ended. For that whole time the engine's recording flag was false and incoming notes were dropped at the first line of recordMidiInput — so the notes you attack the downbeat with, keys already down, existed nowhere. The takes now open when Record is pressed, on the stationary playhead; the fourth click only starts the clock. Everything played during the count-in lands on the start you chose, with its real velocity and a length measured to the actual release.

The first notes after Record vanished even without a count-in. sequencerRecord(true) and the engine's transport telemetry are two directions of the same 60 Hz conversation, so the frame already in flight still reported "not recording". Taking it at face value switched recording back off in the renderer, which forwards nothing while it is off. The renderer now holds its own intent until the engine confirms, and a genuine refusal still surfaces instead of leaving the UI claiming to record.

Notes already held when Record was pressed are re-sent into the take, since a player hits the downbeat with the key rather than after it.

The timeline follows the playhead

Recording used to pin the view to the opening bars while the take ran on off-screen. The view now moves when the cursor reaches the margin, and leaves the room ahead of it — the bars you are about to play.

Since 0.1.0

0.1.0 was tagged on 2 September. Also in this build: importing a controller profile, so a keyboard other than the MiniLab 3 can be described as data; project actions in the application menu; a Rear View button labelled by each controller; and an installer and portable ZIP built from one tree.

Known, and not fixed here

A sequencer track stores its MIDI input as a raw Web MIDI id, which Windows renumbers between sessions — so a track's Input may need re-picking after a relaunch. The global controller selection already survives; the track does not yet. It is item 14 in ROADMAP.md.

Checksums

Unsigned, so SmartScreen will ask: More info, then Run anyway. SHA256SUMS.txt is published beside the downloads so you can check them yourself.

MiniHub 0.1.0 — pre-alpha

Pre-release

Choose a tag to compare

@DavidfromMonaco DavidfromMonaco released this 05 Sep 20:47

Pre-alpha. MiniHub is under active development and this is its first public
build. It runs, it makes sound, and it is not finished.

A desktop music workstation for Windows built around the Arturia MiniLab 3: a
Patch Bay of typed cables, a native VST3 host, a sample-accurate MIDI + audio
sequencer, Mixer / Morpher / Arpeggiator nodes, and learning that binds physical
knobs to VST3 parameters. Your cables — not the page you happen to be looking
at — decide what you hear.

Two ways to install, and they are equal

MiniHub-0.1.0-Setup.exe Installs per user, no administrator prompt. Start-menu entry, optional desktop shortcut, listed in Add or remove programs.
MiniHub-0.1.0-portable.zip Unzip anywhere and run MiniHub.exe. To update, replace the folder.

Both hold the same build. Your settings, projects, recordings and imported
controller profiles live outside the application folder — in
%APPDATA%\minilab-hub, Documents\MiniHub\Projects and
Music\MiniHub Recordings — so the two routes read the same data, and switching
between them loses nothing. Uninstalling removes the application and leaves your
work where it is.

Requirements

Windows 10 or 11, 64-bit. An Arturia MiniLab 3 is what MiniHub was built around,
but it is not required: another MIDI controller can be described in a profile and
loaded from Settings — see minihub.site.

Windows will warn you

The executable is not code-signed, so SmartScreen shows "Windows protected your
PC"
. Click More info → Run anyway, or verify what you downloaded first:

bc76664fa2dcf74640d157616a57a6d31025dd5474d6669ee51ceaf0b0bf5551  MiniHub-0.1.0-Setup.exe
ed22dcb73656eefa151204865612461894de44713e37275245b6bc3ca6eb3a24  MiniHub-0.1.0-portable.zip
Get-FileHash MiniHub-0.1.0-Setup.exe

Known, and not hidden

  • Two controllers can play at once, each drawing its own panel, but the VST Learn
    panel still draws only the first one's surface.
  • Two physical controllers have never been on the desk together — the machinery
    is tested, that particular pairing is not.
  • cc14, programchange and polyaftertouch bindings pass profile validation
    and are never decoded.

Built from 09bf2c2. Source, architecture and the decision register are in this
repository.