UNPKG

mosfez-synth

Version:

A microtonal-aware synth engine library for web.

1 lines 1.65 kB
{"version":3,"file":"offline-render.mjs","sources":["../src/offline-render.ts"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport offlineRenderSynthInnerStringified from \"../dist/offline-render-synth-inner.stringify.js\";\nimport { offlineRender as offlineRenderContext } from \"mosfez-faust/offline-render\";\nimport type { ParamValueObject } from \"./params\";\nimport { DspNode } from \"./dsp-node\";\nimport type { InputEvent } from \"./synth\";\n\nexport type OfflineRenderSynthParams<P> = {\n channels: number;\n sampleRate: number;\n length: number;\n initialParams: Partial<P>;\n dspNode: DspNode;\n events: InputEvent[];\n};\n\nexport async function offlineRender<P extends ParamValueObject>(\n params: OfflineRenderSynthParams<P>\n) {\n const { initialParams, dspNode, events, ...rest } = params;\n const dspNodeSerialized = dspNode.serialize();\n\n return offlineRenderContext({\n functionString: `\n ${offlineRenderSynthInnerStringified}\n exports.buildContext = exports.offlineRenderSynthInner;\n `,\n props: {\n initialParams,\n dspNodeSerialized,\n events,\n },\n ...rest,\n });\n}\n"],"names":["offlineRenderContext"],"mappings":";;;;AAEO,eAAe,aAAa,CAAC,MAAM,EAAE;AAC5C,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;AAC7D,EAAE,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;AAChD,EAAE,OAAOA,eAAoB,CAAC;AAC9B,IAAI,cAAc,EAAE,CAAC;AACrB,MAAM,EAAE,kCAAkC,CAAC;AAC3C;AACA,IAAI,CAAC;AACL,IAAI,KAAK,EAAE;AACX,MAAM,aAAa;AACnB,MAAM,iBAAiB;AACvB,MAAM,MAAM;AACZ,KAAK;AACL,IAAI,GAAG,IAAI;AACX,GAAG,CAAC,CAAC;AACL;;;;"}