aseqjoy(1)

✨ aseqjoy(1) β€” the joystick-to-MIDI glow-up you didn't know you needed ✨

okay so bestie, picture this: you have a joystick. you have MIDI. aseqjoy is the matchmaker πŸŽ€ (it's a User Commands page, section 1, and it's lowkey iconic)


🌸 NAME 🌸

aseqjoy β€” Joystick to ALSA MIDI Sequencer Converter. that's the whole vibe. that's the assignment.


πŸ¦‹ SYNOPSIS πŸ¦‹

aseqjoy [options]

like, that's it. options only. she's simple like that πŸ’…


πŸ’– DESCRIPTION πŸ’–

so here's the tea: aseqjoy maps each axis of a joystick device to a specific MIDI controller. move the joystick along an axis and aseqjoy will emit MIDI controller messages via ALSA's sequencer API. the value of the controller message = the joystick's position along that axis (eg ´left´ -> 0, ´middle´ -> 63, ´right´ -> 127). and ngl, if you run aseqjoy with the ´-r´ commandline switch you get fine MIDI control change messages instead, with 14 bit resolution. fancy fr fr ✨

aseqjoy uses the ALSA sequencer API to emit the MIDI events. therefore (the page says "Therefor", we're keeping it real) it creates an output port named after the joystick used. then you can use, for example, aconnect, QjackCtrl or the alsa-patch-bay to connect an aseqjoy instance to an input port of your choice. build ur lil MIDI web, main character energy πŸ•ΈοΈπŸ‘‘

Note: some joysticks may have to be calibrated (with jscal) before they can be used efficiently. like, do ur skincare routine first, then the makeup. πŸ§–β™€οΈ

πŸŽ€ OPTIONS πŸŽ€

  • -h β€” display help info. the classic. the emergency exit. 🫢
  • -d [joystick] β€” select the joystick to use for aseqjoy, where [joystick] is an integer value from from 0 to 3, effectively selecting devices js0 to js3. (yes, "from from". the original said it twice. we stan a typo queen πŸ’€)
  • -v β€” verbose mode β€” aseqjoy will output information about the MIDI events sent. she's telling you everything, bestie. no secrets. πŸ‘€
  • -0 [controller] β€” select the MIDI controller ID for axis 0. as a default value aseqjoy will use 10 + the axis ID, so for axis 0 that would be 10 + 0 = 10. math ate πŸ”₯
  • -1 [controller], -2 [controller], -3 [controller] β€” just like -0 this will set the controller IDs for axes 1, 2, 3. sibling energy, all four of them 🌈
  • -r β€” use fine MIDI control change messages instead (14 bit insstead of 7 bit resolution). (again β€” "insstead". we keep the originals exactly, typos and all, because accuracy is the whole point πŸ’…)

πŸ‘‘ OPERATION πŸ‘‘

after aseqjoy has started successfully, all motion detected by the selected joystick device will cause MIDI controller messages to be emitted via the corresponding ALSA sequencer output port. the controller IDs are either the default values (10, 11, 12 ...) or the ones given as commandline options. u chose ur destiny ✨

pressing a joystick button will cause aseqjoy to switch the MIDI channel. on startup channel '1' is selected. pressing joystick button 2 will cause channel 2 to be selected. other buttons work accordingly. button = channel switcher, it's giving DJ booth 🎧


πŸ’œ LICENSE πŸ’œ

aseqjoy comes under the terms of the GNU General Public License Version 2 or (at your option) any later version β€” for details please refer to the file COPYING included with the aseqjoy source code. free as in freedom, periodt. 🫢


🌟 AUTHOR 🌟

Man page and software by Alexander Koenig <alex@lisas.de>. absolute legend, we love a one-person show πŸŽ€


πŸ“ SEE ALSO πŸ“

go read those too, bestie, they're part of the lore πŸ“šβœ¨


okay and that's the whole page!! this was written by the aseqjoy girlies for aseqjoy version 0.0.2, dated May 2016 β€” yes, 2016, she's vintage, she's timeless, she still slays. mwah πŸ’‹