An 8 bank, 8 track, 16 step MIDI sequencer for sequencing external hardware and recording return audio for Mac and Windows. THIS…

Latest Version

Version
1.0.1 rc
Update
March 11, 2021
Size
3.38MiB
Developer
Category
Users
962
Rating
4.5 ★
Manifest Version
2
Web Store Status
Languages Support
English (United States)
See more
Permissions
See more

qwertySeq() Extension

An 8 bank, 8 track, 16 step MIDI sequencer for sequencing external hardware and recording return audio for Mac and Windows.

THIS APP DOES NOT PRODUCE ANY SOUND

React App, turned Chrome extension powered by the WebMidi.js library, Web MIDI and Web Audio.

.9 - 1.0 changelog:

-minor UI adjustments(hover text naming, dimensions)
-major UI adjustments(removing enumerations in favor of keybindings for names, added new
components for new functionality)
-added the abilitiy to import and export projects
-added the ability to audition and record return audio in mono or stereo
-added the ability to preview and download recordings

Getting started:

Download extension from Chrome Web Store
Click on qwertySeq() Icon to open in browser.
Allow browser to access MIDI devices.
Allow browser to access audio devices/microphone.(FORCE PROMPT BY SELECTING \"ENABLE\" FOR RETURN MONITOR, THEN REFRESH PAGE. You should only have to do this once)
Select appropriate MIDI output device at top of transport
Select Sequence 1
Select desired length and output channel, corresponding to a receiving hardware device.
Enable steps within sequence and adjust desired parameters.
Press Play.
(for optimum use, make sure no additional tabs or windows are open)

To record your sequence, select the appropriate audio return(usually what is default already),enable monitoring if direct monitoring isn't available, enable record and select the recording tail length.
Press Play and the return audio records during sequence playback.
Recording will stop when you press stop plus whatever the additional tail time is.
Potential recording length is system dependent, but design is more intended for stems and loops not songs.
Length isn't sample accurate.
Listen to your recording in the audio player and then download or delete it.
Enjoy.

Settings:

-Don't see your MIDI Device? Allow the app to have MIDI device access. Force prompt by
opening app after install.(chrome://settings/content/midiDevices)
-Don't see any Return Input Devices? Allow the app to have \"microphone\" access. Force
prompt by enabling Return Monitor, then refresh the page.(chrome://settings/content/microphone)
-Can't name project export or wav downloads? In Chrome, navigate to SETTINGS->ADVANCED->
DOWNLOADS and enable \"Ask where to save each file for downloading
(chrome://settings/downloads)

Left Pane:
MIDI Device/Settings
\t-MIDI Device: Selects MIDI Output Device
\t-Clock Out: Enables or disables MIDI Clock @ 24ppq output
\t-Offset: Adds a negative delay to the MIDI clock to compensate for device latency

Audio Device/Settings
\t-Return Input: Selects the audio return device or inputs
\t-Return Monitor: Enables monitoring of return audio for users who don't have
direct monitoring capabilities or have those capabilities disabled
\t-Record Enable: Enables the return audio to be recorded upon pressing \"Play\" and
stopped upon pressing \"Stop\" + Tail Time
\t-Mono/Stereo: Selects whether the return signal should be true mono(not dual) or
stereo. Note: some OS media players have difficulties with true \tmono wav
files.
\t-Tail: Determines the amount of time after pressing \"stop\" that recording
continues. Adjust to taste to fully capture remainder of measure, sustains,
reverbs, delays, etc.

Recording Preview/Download
\t-Player: Previews what you just recorded
\t-Download Recording: Prompts a download
\t-Delete Recording: Deletes the previous recording

Transport
\t-BPM: Beats per minute tempo in whole integer values
\t-Preview: When enabled, single sequence steps are auditioned upon click or
parameter adjustment
\t-Play: Starts playback of sequence and audio recording if enabled
\t-Stop: Stops the playback, but note that sequences reside in a buffer that will
play until its end once \"stop\" has been pressed.

Sequence Overview List
\tMost of this is a visual representation of each individual sequence
\t-Number/letter: keyboard shortcuts for sequence selection/enabling
\t-P/V+ P/V-: Increments or decrements the pitch or CC value of every step of the
sequence up or down until a value of 0 or 127 is reached by a given \tstep.

Right Pane:
Import/Export Project
\t-Import Project
\t-Export Project

Bank Action/ Bank Selection
\t-Read From Bank: Enables \"Read\" mode. The clicked on bank below will become the
current bank, when enabled. Remains active until canceled.
\t-Copy Into Bank: Enables \"Copy\" mode. The currently selected bank will be copied
into the bank which is clicked next. This mode self disables \tafter 1 copy.
\t-Banks 1-8: used in conjunction with previous mode selection. Alternatively, the
keyboard shortcuts for read (green) and copy(red) into bank n are \tdisplayed
and don't require the use of the previous mode buttons.

Sequence Number/ Settings
\t-On/Off: Enables/disables sequence
\t-Mode: Selects either note or CC mode
\t-Length: Determines the step length of the sequence
\t-Resolution: Determines the note value assigned to steps. Ranges from 1/2 note to
1/32nd.
\t-MIDI Channel: Selects the MIDI Channel of the sequence
\t-CC#: Selects the CC number when CC mode is enabled
\t-Delay: Adds a delay of the given value to the entire sequence
\t-Random: When enabled, the pitch/value of the first step will act as a floor or
ceiling for randomly generated values for the selected sequence.

Sequence Steps
\t-Enable: Enables/Disables the step
\t-Pitch(Value in CC mode): Selects the note number or CC value
\t-Velocity: Selects the note velocity
\t-Gate: Selects the note duration in ms
\t-Offset: Delays the step n ms
\t-Tie: Ties the selected step to previous step for elongating gate times. Tied
notes have summed gate times and retain the pitch of the first note \t\t
preceding the ties.

Keybindings:

!,@,#,$,%,^,&,*: Selects/Reads from Bank 1-8.
Z,X,C,V,B,N,M,<,: Copies current sequence into Bank 1-8.

1,2,3,4,5,6,7,8: Selects Sequence 1-8.
z,x,c,v,b,n,m,comma,: Enables/disables Sequences 1-8.

q,w,e,r,t,y,u,i: Enables/disables steps 1-8.
a,s,d,f,g,h,j,k,: Enables disables steps 9-16.

Q,W,E,R,T,Y,U,I: Focuses to the pitch(notes mode) or value(CC Mode)of steps 1-8.
A,S,D,F,G,H,J,K,: Focuses to the pitch(notes mode) or value(CC Mode)of steps 9-16.

Tab, Shift-Tab: Navigates the focus forward and backward through parameters
Up,Down,Left,Right: Increments or decrements the focused parameter

-_ , =+ (it's the plus and minus keys with no modifiers) : Increments or decrements
the pitch(notes mode) or value(CC mode) of the enabled steps of the currently
selected sequence until a step reaches the floor of 0 or ceiling of 127.

p: Enables/disables preview mode.

Concepts:

-There are 8 banks, comprised of 8 sequences, comprised of up to 16 steps in length
-Midi Clock(F8), start(FA), and stop(FC) are by default sent out but can be disabled.
Also the clock can be negatively offset to compensate for any line or device
latency.
-Sequences can be either notes or CCs
-Sequences can be variable lengths(steps) and resolutions from a 32nd note to a half
note. Caveat: Sequence lengths are the same across all banks. For example if
Sequence 3 on Bank 1 is set to 8 steps, Sequence 3 on all banks is now 8 steps(tut
mir sorry!).
-Sequences can be globally delayed.
-Sequences can be definitive or have random pitches or values. If random ceiling is
selected, the pitch or value of the first step acts as a ceiling to the random
values. In random floor mode, that value acts as a floor.

Notes:

-Want Polyphony? Output multiple sequences on the same MIDI channel.
-More sustain? Tie notes together to lengthen the duration of the preceding note.
-Preview mode? Instantly plays a given step when any area (background, slider, etc)
within the step is clicked. Best in ‘off’ position when adjusting parameters during live
playback. Useful for original programming of sequence.
-Timing? Due to the the current design of JavaScript timing reliability is inherently
disadvantaged and not reliable. Some measures have been taken to potentially minimize
timing issues, but this is still an unfortunate reality. On the bright side, some really
great gear from history has timing issues.
-Modifying/Jamming during playback? Go for it. All step parameters can be adjusted during
playback. Also, sequence mute can be adjusted during playback. Sequence length, output
channel, BPM and MIDI output device currently cannot be changed live. Changes take
effect at the next cycle of the loop.

Known bugs:

-After exporting a project, the displayed name of that project isn't updated. Names are
only updated on imports.
-Occasionally, there are crackles or pops during recording. While efforts have been made
to minimize this and make the app function best on a wide variety of systems, it still
occurs periodically. If the problem is persistent let us know.
Read more

Source Manifest.json

{"update_url": "https://clients2.google.com/service/update2/crx", "short_name": "qwertySeq()", "name": "qwertySeq()", "background": { "scripts": ["background.js"], "persistent": false }, "manifest_version": 2, "browser_action": { "default_title": "qwertySeq()", "default_icon": { "16": "midi.svg", "32": "midi.svg", "48": "midi.svg", "128": "midi.svg" } }, "permissions": [], "version": "1.0.1", "version_name": "1.0.1 rc" }
Read more

Similar Extensions

User reviews

icon

(ID: ) Voted 4 ★ - Updated 03/13/2019 This works great with my Waldorf Rocket synthesizer module. I have tried it with a generic USB to MIDI converter lead, and also straight MIDI over USB. Both work fine. It's a nice extension for Chrome if you're looking for an easy to use basic sequencer for an external synth module.

icon

David Hoggard (ID: 0000002a1901f212) Voted 5 ★ - Updated 10/23/2018 Great for any older hardware synths.