Merge branch 'main' into glossing/wrap-phase-typo
This commit is contained in:
commit
1ae773acc4
3 changed files with 23 additions and 5 deletions
|
|
@ -135,12 +135,14 @@ export class SuperdoughOutput {
|
||||||
}
|
}
|
||||||
|
|
||||||
reset() {
|
reset() {
|
||||||
|
this.disconnect();
|
||||||
|
this.initializeAudio();
|
||||||
|
}
|
||||||
|
disconnect() {
|
||||||
this.channelMerger.disconnect();
|
this.channelMerger.disconnect();
|
||||||
this.destinationGain.disconnect();
|
this.destinationGain.disconnect();
|
||||||
this.destinationGain = null;
|
this.destinationGain = null;
|
||||||
this.channelMerger = null;
|
this.channelMerger = null;
|
||||||
this.nodes = {};
|
|
||||||
this.initializeAudio();
|
|
||||||
}
|
}
|
||||||
connectToDestination = (input, channels = [0, 1]) => {
|
connectToDestination = (input, channels = [0, 1]) => {
|
||||||
//This upmix can be removed if correct channel counts are set throughout the app,
|
//This upmix can be removed if correct channel counts are set throughout the app,
|
||||||
|
|
@ -172,6 +174,7 @@ export class SuperdoughAudioController {
|
||||||
Array.from(this.nodes).forEach((node) => {
|
Array.from(this.nodes).forEach((node) => {
|
||||||
node.disconnect();
|
node.disconnect();
|
||||||
});
|
});
|
||||||
|
this.nodes = {};
|
||||||
this.output.reset();
|
this.output.reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,21 @@ layout: ../../layouts/MainLayout.astro
|
||||||
|
|
||||||
This Guide shows you the different ways to get started with using Strudel in your own project.
|
This Guide shows you the different ways to get started with using Strudel in your own project.
|
||||||
|
|
||||||
|
## Respect the license
|
||||||
|
|
||||||
|
First, please take a moment to understand Strudel's free/open source license,
|
||||||
|
[AGPL-3.0](https://www.gnu.org/licenses/agpl-3.0.en.html).
|
||||||
|
|
||||||
|
Here is a lay summary, but check the license for legal definitions and responsibilities.
|
||||||
|
|
||||||
|
- You can distribute modified versions if you keep track of the changes and the date you made them.
|
||||||
|
- You must license derivative work under the same license.
|
||||||
|
- Source code must be distributed along with web publication.
|
||||||
|
|
||||||
|
Among other things, it means that when you share your work, the whole application must be shared under the same free/open source license, or one compatible with it. This is because we want Strudel to stay free/open source. In other words, you are not permitted to distribute integrations of Strudel with libraries or other code that does not have a compatible free/open source license.
|
||||||
|
|
||||||
|
This also applies to clones informed by reading Strudel's source code, as legally speaking, that counts as a 'derivative work'. Again, please [read the licence](https://www.gnu.org/licenses/agpl-3.0.en.html) for details.
|
||||||
|
|
||||||
## Embedding the Strudel REPL
|
## Embedding the Strudel REPL
|
||||||
|
|
||||||
There are 3 quick ways to embed strudel in your website:
|
There are 3 quick ways to embed strudel in your website:
|
||||||
|
|
|
||||||
|
|
@ -44,10 +44,10 @@ export function Reference() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const lowCaseSearch = search.toLowerCase();
|
const lowerCaseSearch = search.toLowerCase();
|
||||||
return (
|
return (
|
||||||
entry.name.toLowerCase().includes(lowCaseSearch) ||
|
entry.name.toLowerCase().includes(lowerCaseSearch) ||
|
||||||
(entry.synonyms?.some((s) => s.includes(lowCaseSearch)) ?? false)
|
(entry.synonyms?.some((s) => s.toLowerCase().includes(lowerCaseSearch)) ?? false)
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
}, [search]);
|
}, [search]);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue