Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Work In Progress: Testing using web-midi-test #232

Open
wants to merge 12 commits into
base: master
Choose a base branch
from

Conversation

jjeff
Copy link
Contributor

@jjeff jjeff commented Jan 29, 2022

Work in progress...

@jjeff jjeff force-pushed the feat/web-midi-test branch 4 times, most recently from 60743b6 to 29dd263 Compare January 30, 2022 17:53
@jjeff
Copy link
Contributor Author

jjeff commented Jan 30, 2022

Okay. I think I've got all of the tests in place now. However, I think that this may have surfaced few bugs/problems/incompatibilities between the web-midi-test library and webmidi.

Some theories:

  • It looks like web-midi-test's MidiSrc.emit([1, 2, 3]) isn't properly triggering webmidi's Input._onMidiMessage(). The data is getting there. And it looks like the correct message type is being received. But if I set an input.addListener("midimessage"), I don't get any data. I'm wondering if this has something to do with missing MIDI channel data. So any tests which listen for MIDI data are failing.
  • It looks like web-midi-test's emulation of the MIDIOutput.send(data, timestamp)'s timestamp argument isn't working the same as the way that the midi library worked. So any tests which rely on MIDI timestamp are failing because the receive time is outside of parameters.

I don't know if these issues are problems with web-midi-test or with webmidi, but I'm guessing Jean-Philippe would have thoughts.

@jjeff
Copy link
Contributor Author

jjeff commented Jan 30, 2022

Status of tests:

  • Enumerations
  • Forwarder
  • Input - the midiSrc.emit() problem is causing a lot of timeouts since .addListener()s aren't triggering
  • InputChannel - lots of TypeError: Cannot read property 'channels' of undefined
  • Message
  • Note
  • Output - problem with destroy(), problems with timestamp
  • OutputChannel - timestamp problems
  • Utilities
  • WebMidi

@djipco
Copy link
Owner

djipco commented Jan 31, 2022

Thanks for your work on this Jeff. Unfortunately, as I mentioned in a prior message, I don't have much bandwidth to dedicate to this right now. Are you currently stuck?

@jjeff
Copy link
Contributor Author

jjeff commented Jan 31, 2022

Thanks for your work on this Jeff. Unfortunately, as I mentioned in a prior message, I don't have much bandwidth to dedicate to this right now. Are you currently stuck?

Yeah. I think I'm stuck. Just trying to determine if these issues are a problem with WebMidi.js, web-midi-test, or (hopefully) something that can be adjusted in the test files.

It's mostly just down to the midiSrc.emit() and midiOutput.send(data, **timestamp**) problems. Details above.

I'll keep chipping away at these, but my progress is getting slower.

@jjeff
Copy link
Contributor Author

jjeff commented Jan 31, 2022

I think I've found the timestamp problem and I've posted an issue for the web-midi-test project:
jazz-soft/web-midi-test#2

But now that I'm looking at the spec again, maybe this isn't the issue...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants