Comments (9)
@octetta May be you can help with that?
I'll try to look at this, but I'm a newb on all things web audio.
A thought though, what if we could figure out how to add effects inside AMY?
I suspect the authors might be more interested in this, because it would work with their embedded stuff.
Could you share with me what basic effects you need from tone.js, as a design thought experiment?
from amy.
Just reverbs and delays are enough to profoundly enrich the sound of the synth. And another thing is that implementing AudioWorklet glue we can eliminate any issues with clicks and audio freezes on low end hardware because we get rid of even touching the main JS thread.
from amy.
I also got some pretty cool audio analysis tools and would like to integrate them in a future proof way, which AudioWorklets seem to be now. I tried to do it myself several times with AubioJs, yet from a web-designer perspective it's not that easy to start managing memory buffers and processor threads 😅
But I believe that once we find a solution , it can be implemented widely. Devs at Meyda could appreciate that too!
from amy.
To be honest, I'm a C/embedded engineer, and have poor skills in the web domain (aside from creating ugly monster code when I need a quick UI for exotic hardware control).
I've been very interested in the Erlang and Elixir ecosystem, and will write up a simple Elixir + AMY integration article soon to foster interest and sharing.
from amy.
Love this article @octetta !
I have to admit to being out of my league on web audio stuff. I got it working just enough for the demo, but would love help modernizing it so others can use it easier.
from amy.
For now I just can't figure out what's happening at this line of code:
scriptNode.onaudioprocess = function (audioProcessingEvent) {
fn(audioProcessingEvent.outputBuffer.getChannelData(0));
};
And how the buffer is actually connected to the synth. Help needed.
from amy.
My explorations live here https://github.com/davay42/amy/tree/main/src/es6
from amy.
@octetta May be you can help with that?
from amy.
I've not looked into this yet, but while messing around with this article, I noticed that the sound library I introduced here (miniaudio) has its own Web Audio backend that might be cleaner than what Brian/DAn did.
I'll try to look at it after I get caught up with $DAYJOB.
Also, a thought experiment: I wonder if it's possible generate RTSP stream (or some other subscribe-able audio format) directly from AMY?
from amy.
Related Issues (20)
- Filter Underflow Issues HOT 1
- VCA "gate" on juno simulation doesn't work right HOT 1
- Add Juno examples to docs / amy.py etc
- Patches, wire messages, and oscillator-relative configuration HOT 10
- Distortion in Juno patches
- Self-oscillation HOT 1
- Chorus should be a synth-wide thing, not using `OSCS-1` HOT 4
- Update examples, arduino, Alles for new AMY HOT 1
- PROGMEM issue on Teensy compiler HOT 1
- get custom algorithm voices working again
- Docs update from dec/jan changes
- Faster Juno voices by stacking oscillators HOT 1
- Buses proposal
- Odd waveform discrepancy in TestJunoPatch.wav
- Crash on patch 250 (` DX7 LASER GUN `) HOT 4
- PCM midi note vs logfreq_coef[0] HOT 1
- Filter glitch on rapid release HOT 2
- Looping pcm samples
- AMY Arduino drum and fm examples on ESP32S3 cause restart HOT 13
- Undefined / crashy behavior scheduling `reset_osc` HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from amy.