27 karma · joined February 1, 2017
We're not open source, but our free product has pretty good MIDI editing for conventional use cases. There's also an interactive MIDI composition AI model.
We’ve had pretty amazing results just relying on what GPT-4 knows about music. Without any special sauce it can write melodies and chord progressions and make sensible engineering decisions, and only occasionally misunderstands and starts writing in allcaps when a user says something is too quiet
Quite fun to play around with if you find this kind of thing interesting!
This synth is a new feature in the web-based DAW that I've been solo-developing. You can sign up at wavtool.com if you're interested in trying it out!
- React as the core of the UI, with direct DOM manipulation and canvas stuff whenever the React lifecycle is too slow. - WebAssembly for any audio logic that happens at least once per sample - Lookup tables for almost all math that happens at least once per sample and is more complicated than multiplication - Use Web Audio as an interface layer, but do everything else manually. (Web Audio tries to help a lot of ways but often winds up making things worse)
If you're curious about anything specific I'd be happy to talk!
It really is an excellent interface paradigm. I expected it to be daunting to first-timers but user feedback has been alarmingly positive. Many beginners find this more intuitive than the standard sequential list of effects, because the node-based interface reminds them of guitar pedalboards and home theatre systems.
wavtool.com
It has extremely good latency on Mac OS, absolutely good enough to play along with and compose music in real time.
It's an in-browser audio devtool for writing JS scripts that alter and generate sound in-place. Currently working on another more DAW-like version built around real-time processing.
These performance issues motivated me to build https://wavtool.com. It's faster for basic recording and navigation, and runs entirely in the browser. It also has a code editor built in, and a bunch of community-made audio effects written in JS.
Perhaps more interesting to the HN crowd is another project of mine, https://wavtool.com - a hackable audio editor for running and sharing JS audio effects.
WavTool is part audio editor, part dev environment, running in the browser. In addition to recording and editing audio, you can write and run audio programs in JavaScript to generate and transform sound.
I started this project for two reasons:
1. I felt deterred from getting into audio programming due to the effort necessary to feed data in, and hear my own work. It would be nice if this was more like making bits of web UI, where you can open a website like codepen.io and start typing.
2. I wanted a reasonably good audio editor that I could load up instantly to record and make basic edits to audio. If I'm having a jam session with my dad and we come up with something cool, I'd really like to be able to record, fade the edges, time it up, and export it without having to install anything on his PC.
Anyway - thanks for checking it out, I hope it interests you!
(You are also welcome to join the mailing list here: http://eepurl.com/hqN6Ib)
(() => {
const message = 'asdf';
const messageBinary = message.split('').map(c => c.charCodeAt(0).toString(2)).join('').split('').map(Number);
const bitDurationSeconds = 0.1;
const shiftSize = 0.1;
return wavtool.mapSamplesCommand((sample, index, channelData, settings, context) => {
const bitIndex = Math.floor(index / (bitDurationSeconds * context.sampleRate));
const shift = bitIndex < messageBinary.length
? (2 * (messageBinary[bitIndex] - 0.5)) // [0,1] => [-1,1]
: 0;
return sample + shift * shiftSize;
});
})()Not the same scenario being discussed, but worth noting that the consequences of a loss of anonymity through the internet have the potential to be a lot farther-reaching and more sinister than they are in any analogous loss of anonymity in everyday life. I'd be interested to hear if you find the linked argument persuasive.
I would argue that it doesn't.
Consider the following changes to your conscious experience:
- You stub your toe. Your experience changes to include pain.
- Someone says your mother's name. Your experience changes to include thoughts of your mother.
- You take LSD. Your experience changes to include a range of thoughts, sensations, and hallucinations characteristic of a psychedelic experience.
Which of these would you say count as a change to the part of you that we have been referring to with the word 'consciousness'?
I would argue that none of these are changes to what your consciousness is; your conscious experience continues to simply be the feeling of what it's like to have your own thoughts.
As your thoughts change, your experience of having them changes, but your consciousness never ceases to be anything other than the experience of having your thoughts. On a "fundamental level" nothing about consciousness has changed. Your consciousness is still sitting in a movie theater, watching your brain play out - it's just watching a different movie.
My argument rests on the view that your consciousness is not the haver of thoughts, but is the unexplained witness to the actual haver of thoughts - the brain.
As evidence for this I'd ask you to imagine what would happen if we built up, piece by piece, a perfect computer model of your mind.
It would have the same thoughts, it would express the same ideas, and we could look at the state of the computer at each moment and explain exactly which structures in your mind led to, for example, whatever you choose to say in response to this comment.
At no point would we find some sort of mysterious glitch in the computation, a glitch that we would have to assume was the point where the magic extra-physical force of consciousness entered the picture and exerted its control.
The mind and its thoughts must work without consciousness, as such consciousness can only be the experience of watching the mind do its work, and not an integral part of its functioning.