Giter Site home page Giter Site logo

Comments (2)

krevis avatar krevis commented on July 17, 2024

This is an interesting idea, I'm just not sure how many people would (1) need it and (2) figure out how to use it.

Do you have any particular hardware in mind that can't handle full-speed MIDI and needs to be throttled?

Also, if there was a browser-based editor/librarian for that hardware, couldn't it do its own throttling?

(MIDI is 40 years old, and is absurdly slow by modern standards. Any hardware newer than about 1990 has no excuses for not handling full-speed MIDI. That said, I know there are plenty of older and bad devices out there.)

from midiapps.

jariseon avatar jariseon commented on July 17, 2024

thanks Kurt. yeah, i agree this is a corner case and might not warrant bloating the codebase. pls feel free to close the issue as you see best. i'll create a local fork and try to implement it here.

browser side cannot unfortunately throttle as it only supports sending complete sysex messages. as for the user experience, the user would simply need to select Sysex Librarian port as output at the browser side, unless already set as default. at Sysex Librarian side s/he would need to A) activate thru port mode in settings, B) possibly set its buffer size, and C) select the throttled output port in the main window.

bit complicated for sure. i guess another option could be to expose custom sysex commands which enables browser side control over those settings. that would introduce security issues though if the browser page resides in the open internet.

my specific use case is in chip-level emulation of 80s gear (in sw), and with those i've noticed that slight throttling gives more reliable results compared to full speed. i've seen the issue with several vintage models especially with larger sysex dumps. it may well be related to emulation only, and as such, is definitely a corner case of a corner case.

googling around however seems to indicate that there may be issues with real hw as well. possibly due to bad usb interfaces/drivers instead of synths themselves. interestingly, it appears to be important that the chunk size is set correctly at the sending side, since usb midi spec defines that sysex payload is carried over in three byte blocks. that was all news to me.

but agreed, this issue may not justify the bloat. in any case big thanks for the tools. i find both MIDIApps very useful.

from midiapps.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.