• Posts
  • RSS
  • ◂◂RSS
  • Contact

  • Game Controller MIDI

    June 20th, 2018
    music  [html]
    Expression controllers can make synthesized instruments sound much better, but they're generally pretty expensive. For example, the breath controller I've been playing with cost me EUR 132. There's nothing fundamentally expensive about it, just a low volume product. Which got me thinking: is there some commonly mass produced device that gives a smooth range of outputs? What about a game controller?

    I've never been into console gaming so I don't know much about controllers, but after looking at some pictures it looked like the PS4 one is well laid out for joystick use, so I ordered one ($26, shipped):

    It connects via USB, and pygame can read from it out of the box:

    >>> import pygame
    >>> pygame.init()
    (6, 0)
    >>> j = pygame.joystick.Joystick(0)
    >>> j.init()
    >>> while True:
    ...   for event in pygame.event.get():
    ...      print(event)
    ...
    <Event(7-JoyAxisMotion {
      'joy': 0,
      'value': 0.003906369212927641,
      'axis': 0})>
    <Event(7-JoyAxisMotion {
      'joy': 0,
      'value': -1.000030518509476,
      'axis': 4})>
    ...
    

    Since music is so latency sensitive (though maybe not for expression controllers?) I didn't want to have to go via python, so I decided to write something small against the OSX native API. The docs for the native API are pretty annoying, so the SDL source was a helpful guide.

    It's ready and working, and you can try it out:

    • Build it from source (github):

      $ git clone https://github.com/jeffkaufman/gcmidi.git
      $ cd gcmidi
      $ make run
      
    • Download a binary:

      $ wget https://www.jefftk.com/gcmidi
      $ chmod ugo+x gcmidi
      $ ./gcmidi
      
    It presents as a virtual MIDI controller named "game controller" with ten continuous controller outputs on CC-20 through CC-29.

    Comment via: google plus, facebook, r/WeAreTheMusicMakers

    Recent posts on blogs I like:

    Randal O’Toole Gets High-Speed Rail Wrong

    Now that there’s decent chance of US investment in rail, Randal O’Toole is resurrecting his takes from the early Obama era, warning that high-speed rail is a multi-trillion dollar money sink. It’s not a good analysis, and in particular it gets the reality…

    via Pedestrian Observations May 12, 2021

    Collections: Teaching Paradox, Europa Universalis IV, Part II: Red Queens

    This is the second part in a series (I) that examines the historical assumptions behind Paradox Interactive’s grand strategy computer game set in the early modern period, Europa Universalis IV (EU4). Last time, we took a look at how EU4 was a game fundame…

    via A Collection of Unmitigated Pedantry May 7, 2021

    Books and websites on babies

    Several people I know are expecting a first baby soon, and I wrote up notes for one of them. Might as well share here too: Medical:Scott Alexander’s Biodeterminist’s Guide to Parenting is an interesting read, and some parts are actionable.  If you live in…

    via The whole sky April 14, 2021

    more     (via openring)


  • Posts
  • RSS
  • ◂◂RSS
  • Contact