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

add simple midi support with the synth keys #59

Closed
wants to merge 1 commit into from

Conversation

antoinebou12
Copy link

@antoinebou12 antoinebou12 commented Apr 20, 2020

image
image
image

I added a simple popup menu to control the midi devices with that you can control the synth piano roll.
I need to move the business logic outside the UI logic like (parseMidiMessage, parseMidiMessage)

Outside the scope of the PR
I added in the build.sh options
- server: add a node js to serve the index.html/index-prod.html file
- help: show the available command

@mr21 mr21 closed this Jun 15, 2020
@noodnik2
Copy link

noodnik2 commented Dec 3, 2020

Just curious - why was this closed? Seems like a cool feature.

@mr21
Copy link
Member

mr21 commented Dec 4, 2020

It has been closed accidentally.. but the reason why i didn't merge it yet is because i can't test it right now, i don't have any keyboard for the moment and i can't push code without testing it.

But the code is still compatible with the current codebase (the PR contains diff code to ignore on the src/ui/patterns.js file), but maybe there is some deprecated native call inside this new code, because all of this are quite new in the web. This PR is linked to this conversation too #45

@antoinebou12
Copy link
Author

I can check if the code still works with the codebase. This PR is more a proof of concept. If you want to improve it and change it, I really don't mind and also I am not too familiar with js frontend dev and your project code.

@noodnik2
Copy link

noodnik2 commented Dec 4, 2020

Cool; thanks - that's what I suspected.

I'm a big MIDI fan, so I was looking forward to trying this out.

Indeed, now that I know the proposal's not dead, I'll feel free to try it out.

Very cool project, by the way!

@antoinebou12
Copy link
Author

@mr21 can you give me advice on how to separate the between your different repos for this project like backend(daw)/frontend(gs-ui-components) and where to put the midi logic.

@mr21
Copy link
Member

mr21 commented Dec 5, 2020

Hi @antoinebou13, glad you still here, sorry the development is really slow..

  • The gs-ui-components repo contains some independent custom element for the moment not all of these components are standard custom element, but it's the direction to take.
    Here you can see some of them https://gridsound.github.io/gs-ui-components/

  • The gs-wa-components repo is the audio equivalent of the UI components but for WebAudio.

  • After several months i though it would be better to have all the audio logic, all the actions, the undo/redo mechanism, etc. into another repo, the daw-core one. With this additional separation it will be possible to use the DAW in command line without any DOM, it's become simpler to test too.
    It's the daw-core object which use the gs-wa-components' components, nor the gs-ui-components, nor the daw repo.

  • The gs-ui-components are absolutely not linked to the daw-core, they are used by the gs-components, this is another repo... i don't guarantee this one to last for years but currently these components are just doing the dirty work between the dawcore instance and the UI components.

  • Finally the main daw repo assemble all this, create an instance a the dawcore, initialize it, make a new instance of all the gs-components (which they will use all the gs-ui-components then), all the user connection, all the managing compositions stuff, etc. are here. The settings too, so your first PR was really great, you didn't even need everything else at first.

But yes we could imagine the need to make some change into the daw-core for the controlling the MIDI devices.. idk

(There are also some utils and assets repo i didn't talk about)

thx for your interest @antoinebou13 and @noodnik2

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.

3 participants