Barnard-PL-Labs / TSLSynthesizer

Synthesize music with TSL!
2 stars 0 forks source link

Move synthesis to AWS Lambda #31

Open santolucito opened 2 years ago

santolucito commented 2 years ago

Moving the heavy lifting parts of synthesis on the web is a good idea. It worked well in the live sequencer tool (https://github.com/Barnard-PL-Labs/SequencerLiveCoding/issues/18)

We should move the TSL synthesis to a lambda as well. It is a bit more complicated with the docker container. See directions here: https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-create-2

Once the docker image is ready and on a AWS Lambda, we just swap out the call to the shell script here:

https://github.com/Barnard-PL-Labs/TSLSynthesizer/blob/8d6bf9ac9c2a7c17290cfdf3b8da44e2a7dd5db8/server.js#L91

With something like this: https://github.com/Barnard-PL-Labs/SequencerLiveCoding/blob/fa9bcc6ea9e08f41cc05fccca9f1b23c1ab9e802/serverSide/cvc4.js#L58

santolucito commented 2 years ago

I'm fact, even better, just turn the tsl-strix-docker https://github.com/Barnard-PL-Labs/tsl-strix-docker into an API service. "Reactive synthesis as a service". Allow API params to request just the .aag or .dot, or further process into code for one of the supported languages, or also deliver the parsedot processed .dot file.

Should actually do the same thing for CVC5 and the translation to JavaScript we have for https://github.com/Barnard-PL-Labs/SequencerLiveCoding