Introducing Hookpad 2.8: Instrument Caching, Offline Support, and Hookpad Now Installable as a Chrome App on Mac and Windows.

Today we released a big update to Hookpad that we’re really excited about! Hookpad is better in three big ways:

  1. Instruments now get permanently cached so you never download the same file twice.
  2. Hookpad now works offline! Visit the web app without a connection and it works!
  3. Hookpad can now be installed on Mac and Windows as a Chrome App (requires Google Chrome browser).

Smart Instrument Caching

Once you download an instrument it will be cached, and when you visit the site in the future it won’t need to be re-downloaded. This saves on bandwidth and load times and makes Hookpad feel generally more snappy.

Hookpad Now Works Offline! 

Open (https://hookpad.hooktheory.com) in your browser even when you don’t have an internet connection. Assuming you’ve been to the page before, it will work (instruments you’ve used in the past will be available for use, etc.). How does this work? It’s based on a new web technology called Progressive Web Apps that allow your browser to store a robust cache of opt-in web pages for offline use.

Hookpad Can Now be Installed on Mac and Windows

 To install Hookpad on macOS or Windows, open Hookpad in Google Chrome (this does require Chrome), click on the options icon in the top right of the browser window (three vertical dots) and you will see “Install Hookpad”. After it is installed it will appear as an app on your computer (you can put it in your dock/task bar, and it will open in its own window).

Band Editor Improved With Progress Indicators and Offline Cache Indicators

The band editor now shows the download progress of each instrument and the overall download progress at the bottom.

The Hookpad band editor now shows the download progress of each instrument and the overall download progress at the bottom.
The Hookpad band editor now shows the download progress of each instrument and the overall download progress at the bottom.

When using Hookpad without a network connection, sounds that have not been cached for offline use have a lighter color.

When using Hookpad without a network connection, sounds that have not been cached for offline have a lighter color.
When using Hookpad without a network connection, sounds that have not been cached for offline have a lighter color.

The band editor now shows if any sound patches fail to load. Below “Bright Pad” and “Dark Bass” failed to load. Clicking the yellow warning icon attempts to load all failed sound patches.

The Hookpad band editor now shows if any sound patches fail to load.
The Hookpad band editor now shows if any sound patches fail to load.

The Band Editor toggle now has a progress bar whenever instruments are being loaded or decoded

Hookpad’s Band Editor toggle now has a progress bar whenever instruments are being loaded or decoded
Hookpad’s Band Editor toggle now has a progress bar whenever instruments are being loaded or decoded

Additional Updates

  • Preferences and MIDI Preferences are first-class menu bar items again. They are still also accessible from the Hookpad menu.
  • A new delete/backspace button has been added to the row of circle buttons (far right). The delete button can be used to delete any selection or delete the note / chord immediately to the left of the cursor.
  • Removed the entry mode toggle circle button. Changing from the default Hookpad 2.x entry mode to the Hookpad 1.x text-based mode is still possible in the preferences menu as well as with the keyboard shortcut ‘m’.

We are so pumped for this release. I can’t tell you how many times I’ve wanted to use Hookpad offline and now I can! I’ve already got Hookpad installed as a native app on macOS and don’t know if I’ll ever use Hookpad in the browser again!

Introducing Hookpad 2.7: Improved Recording And New Note/Chord Preview Mode

Experiment Without Cluttering Up Your Song

Hookpad makes it easy to jot down new ideas, but sometimes you just want to experiment without cluttering up your song. Newly added Preview Mode is a long requested feature that allows you to turn off note input and play music using Hookpad engine using the band you’ve set up. When Preview is on, you’ll hear the notes and chords you play but they won’t be added to the staff.

The preview mode button has an eye icon and is in the right half of the controls bar

Record With Improved Latency and More Intuitive Experience

The previous incarnation of recording in Hookpad wasn’t great. We fixed it. Here is what’s better:

The Duration of Recorded Notes/Chords is Now Controlled By How Long You Hold Down The Key

Previously the duration of each recorded note was controlled by duration tool – every note would get the same duration – terrible. Now the duration is controlled by how long you hold down the key, just like playing an instrument. Much better.

Recording Now Starts Immediately After Hitting The Record Button

Record Mode was previously a toggle; you had to first click the Record button and then click play. While playing if you entered notes they would be added at the location of the scrubber playback. Now hitting the Record button starts the playback (with pickup) immediately so you can start recording immediately, as you expect!

Keyboard Shortcut ‘r’ Lets You Access Recording Quicker

Record now has it’s own keyboard shortcut. Hit ‘r’ to start recording.

Improved Latency Helps You Stay In Time

We’ve taken care to improve the latency especially when using a midi instrument (midi entry is much lower latency than keyboard entry) so its easier for you to stay in time.

Pro Tip: Use Wired Headphones or Speakers When Recording

Most bluetooth headphones and speakers have several hundred milliseconds of latency. This can really screw you up during recording. When recording, bust out a pair of wired headphones or speakers. You won’t regret it.

The Record Button Now Turns Red

Duh! It was blue before to be consistent with other UI controls in the “on” state. But that felt so wrong – the universal standard of red for record is back.

The record button in Hookpad now turns red during recording

Introducing Hookpad 2.6: Quick Preview For Chord Suggestions, 15 New Electronic Instruments, 2.5x More Responsive, and 20% Faster App Launch

Quick Preview For Magic Chord and Bass Collections

Magic Chord is one of Hookpad’s most beloved features – ask Hookpad for the best chord to use in any context and Hookpad shows you what other other famous songs have done. Now magic chord has a “quick preview” option which plays the suggested chord and neighboring chords in quick succession. The original full preview option with melody is still available.

A new “quick preview” option for magic chord plays the suggested chord and neighboring chords in quick succession.

2.5x More Responsive

Hookpad 2.6 includes many under-the-hood optimizations that make Hookpad more responsive. Our benchmarks show:

  • 3.1x faster drag-selection
  • 4.5x faster note adding
  • 2.6x faster note editing

You will still see small (< 500 ms) delays with operations that require full reflows of a complex score, but overall, we are quite happy with performance. Details of benchmarking are included at the end of this article.

20% Faster App Launch

With Hookpad 2.6, we shaved 20% from the gzipped app bundle, (765 KB now vs 945 KB before) so you get 20% faster app launches.

Menus Now Consistent With Native Apps

We changed a few menus to be more consistent with native apps.

  • Settings top-level menu moved to Hookpad → Settings
  • MIDI top-level menu moved to Hookpad → Midi Settings
  • Hookpad → About Hookpad now shows version info and has a link to the release notes.

Hookpad Player Now Correctly Lays Out Scores with Pickup Measures

We updated the Hookpad player to correctly layout scores with pickup measures

Hookpad player now correctly renders scores with pickup measures

15 New Electronic Instruments and Effects

We have been working hard on a new electronic instrument pack for Hookpad and are excited to release the following new instruments.

New Lead Instruments

  • Electric Piano (smart and legato)
  • Electric Piano Dark (smart and legato)
  • Dark Lead (smart and legato)

New Lead Synth FX

  • Drop 1-bar
  • Drop 2-bar
  • Rise 1-bar
  • Rise 2-bar
  • Noise

New Harmony Instruments / Rhythms

  • Electric Piano
  • Dark Piano
  • Syncopation Pad
  • Brassopad Offbeaat 1/8s
  • Supersaw Pad
  • Supersaw Pumping Pad
  • Metal guitar Rock 1/8s 2
  • Metal guitar Rock 1/8s 3
  • Metal guitar Backbeat 1/8s
  • Metal Guitar Gallops
  • Metal Guitar Gallops 2
  • Metal Guitar Open 1/16s
  • Metal Guitar Muted 1/16s

New Bass Instruments

  • Deep Winds
  • Dark Bass
  • Brassobasso
  • Acid Bass
  • Acid Pluck
  • Bowed String Bass Deep
  • Supersaw Bass
  • Alternating Thumb Bass

Hardware and Software Configuration For Performance Benchmarks

  • MacBook Pro (Retina, 13-inch, Late 2013)
    • 2.6 GHz Intel Core i5
    • 16 GB 1600 MHz DDR3
  • macOS 10.14.6 (Mojave)
  • Browser: Chrome 76
  • Hookpad is loaded with Arcade Madness (a demo song) at global zoom of 50% and horizontal zoom of 58% to provide a challenging use case.
  • All comparisons use Chrome performance profiler for benchmarking. Hookpad 2.6 is compared to Hookpad 2.5
  • Absolute performance data is likely better than shown below because of overhead with the profiler in Chrome.

3.1x Faster Drag-Selection (12.5 FPS vs. 4 FPS)

To perform this test, I drag-selected a melody and chord region in Arcade Madness and recorded frames per second (FPS) in chrome profiler

4.5x Faster Note Adding (29 notes per second vs. 6.7 notes per second)

To perform this test I held down the “1” key for five seconds to enter notes in rapid succession. macOS has a “Key Repeat” setting in System Preferences that I set to “Fast” to push Hookpad as much as possible.

  • In Hookpad 2.6, 158 notes are processed in real time over five seconds while holding down the “1” key.
  • In Hookpad 2.5, 152 notes are entered, but it takes 22.6 seconds to process the 5-second key-press event: 5 seconds while holding the “1” key plus 17.6 seconds of processing / painting after releasing the “1” key

2.6x Faster Note Editing (100 ms vs. 260 ms)

To perform this test I selected a note and then shifted it by a scale degree with the up key.

Summary of Hookpad 2.6 Benefits

  • New quick preview option for magic chord suggestions
  • 15 new electronic instruments and effects
  • 2.5x more responsive
  • 20% faster app launch
  • Menus are more consistent with native apps

Introducing Hookpad 2.1: Improvements to Exporting, Band Editing, Magic Chord, Bass Collections, and Support for Pickups

Improved Band Editing

The Band Editor Can Now Be Toggled In and Out

The Band Editor can now be toggled in and out of persistent view, making it easier to simultaneously tweak the band and the music, as shown below.

The Hookpad Band Editor can now be toggled in and out of persistent view
The Hookpad Band Editor can now be toggled in and out of persistent view

Show More Or Less of the Band Editor by Resizing

In addition, the Band Editor can now be vertically resized to show more or less content, as shown below.

Hookpad’s Band Editor can now be vertically resized
Hookpad’s Band Editor can now be vertically resized

Improved Volume and Octave Control

Finally, the volume and octave values of each track now show as their sliders are adjusted, as shown below

As the volume and octave sliders are adjusted, all volume and octave values are shown
As the volume and octave sliders are adjusted, all volume and octave values are shown

Improved Magic Chord and Magic Bass

Magic Chord received several improvements in the 2.1 release, summarized below:

  • Magic Chord now shows chord-use data, displaying examples of songs that use the suggested chord in the same context.
  • Magic Chord and Magic Bass choosers now have buttons for previous chord, next chord, audition, cancel and accept.
  • Magic Chord and Magic Bass choosers can now be controlled with keyboard shortcuts ←, →, ↑, and ↓
  • Magic Chord and Magic Bass choosers now drop down from the top and don’t cover the score.
  • Magic Bass button now shows bass color of selected chord

Hookpad’s Magic Chord lets you ask Hookpad what it thinks is the best chord to use in a given situation.  Hookpad scans ><figcaption id=10000 songs and shows you what other other artists have done in the same scenario.” width=”2214″ height=”990″ class=”size-full wp-image-1455″> Hookpad’s Magic Chord lets you ask Hookpad what it thinks is the best chord to use in a given situation. Hookpad scans > 10000 songs and shows you what other other artists have done in the same scenario.

Improved Exporting

Hookpad 2.1 has many improvements to exporting, summarized below.

  • Score export now hides empty staves
  • Score export now uses abbreviated instrument names on pages after the first page
    Score export now exports landscape.
  • MP3 export now adds exactly 1 beat of silence before export region to facilitate syncing in DAWs more effectively.
  • Midi export grids notes on prescribed beats rather than using the timing of Hookpad playback
  • Midi export tracks now have instrument names attached for clarity
  • Score export adds instrument names to staves.
  • Score export now only exports one consolidated melody per lead voice rather than one stave per lead instrument.
  • Score export shows guitar strums as slashes
  • Note lightup and scrubber are throttled back during mp3 export to improve performance
  • Project no longer plays while an mp3 is being recorded
  • Midi and mp3 export now name files the same name as the project name
  • Improvements to Lyrics

    The Lyrics Editor can now be resized and lyrics can be ignored using block-style /* */ comments.

    Hookpad’s Lyrics Editor can now be resized horizontally
    Hookpad’s Lyrics Editor can now be resized horizontally

    Improved Keyboard Shortcuts

    Keyboars shortcuts for Copy, Cut, Paste, Undo, Redo, and Select All operations now work with command ⌘ (macOS) and ctrl (Windows), e.g. ⌘C for copy, ⌘V for paste.

    Added Support For a Pickup Measure

    A pickup measure can now be added to Hookpad projects by selecting the measure staff and turning on the pickup measure, as shown below. When a pickup measure is added, subsequent lines of music are shifted to the right by one measure.

    Hookpad project with a pickup measure
    Hookpad project with a pickup measure