TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: How to get started with audio programming?

358 点作者 Flex247A将近 4 年前
I recently picked up &#x27;The Audio Programming Book&#x27; [0] and so far, I am really liking it. But I am not sure which resource to pick after reading that. Can you recommend me some audio programming resources which are beginner friendly?<p>[0] <a href="https:&#x2F;&#x2F;mitpress.mit.edu&#x2F;books&#x2F;audio-programming-book" rel="nofollow">https:&#x2F;&#x2F;mitpress.mit.edu&#x2F;books&#x2F;audio-programming-book</a><p>Edit: My goal is to make a mini-synth which takes input from the computer keyboard.

66 条评论

gregsadetsky将近 4 年前
I’ll repost a comment I made a few years ago. Hopefully the (informative, and authoritative) reference will be useful!<p>——<p>The founder, and sole developer of Mutable Instruments (a well known modular audio&#x2F;synth maker) wrote about her recommendations on how to get started in audio programming here [0]. Much recommended for the cited books, and general&#x2F;business advice on making a hardware audio product.<p>[0] <a href="https:&#x2F;&#x2F;modwiggler.com&#x2F;forum&#x2F;viewtopic.php?p=2858814#p2858814" rel="nofollow">https:&#x2F;&#x2F;modwiggler.com&#x2F;forum&#x2F;viewtopic.php?p=2858814#p285881...</a><p>——<p>My own post about this was from a mini thread on HN about programming sound that may also interest you:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=20491766" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=20491766</a><p>——<p>Last note! Another synth maker personally recommended the same DSP book as noted in the comment above (on Modwiggler), so it’s probably worth checking out!<p>Udo Zolzer&#x27;s &quot;DAFX&quot;
评论 #27274870 未加载
adityatb将近 4 年前
If you&#x27;re new to programming, it might also help you to get started with Max&#x2F;MSP and YouTube videos that already show you how to make the mini-synth you&#x27;re after (terrible as a programming environment but great as a learning&#x2F;prototyping tool).<p>The Computer Music Tutorial by Curtis Roads is a good companion here if you want inner workings. You might be able to snag a PDF copy online to see if it&#x27;s for you.<p>Audio Programming Book is entirely in C and can be a bit of a pain to get things working in C if you&#x27;re new to programming (although highly worth the initial struggle if you&#x27;re looking at it with a career in mind), although I&#x27;d still recommend stepping from Max&#x2F;MSP into MATLAB&#x2F;Python, which focuses on functionality rather than programming itself.<p>Python is also bit more beginner friendly, although C++ will probably end up being your long term bet.<p>I&#x27;d pick up the Pyo library for python, and&#x2F;or a tutorial like this one, after dabbling with Max&#x2F;MSP a bit: <a href="https:&#x2F;&#x2F;python.plainenglish.io&#x2F;build-your-own-python-synthesizer-part-3-162796b7d351" rel="nofollow">https:&#x2F;&#x2F;python.plainenglish.io&#x2F;build-your-own-python-synthes...</a><p>Then if you want to get even deeper into the DSP, you could go with pretty much any of the other resources the others have mentioned here. My personal faves are the Steven Smith DSP book, Julius Smith&#x27;s resources (with its runnable MATLAB scripts), and DAFX book by Udo Zolzer.
评论 #27276343 未加载
rmnclmnt将近 4 年前
Two books I loved during my digital signal processing studies (especially in the audio field):<p>- &quot;Introduction to Computer Music&quot;[0] by Nick Collins: very focused on audio programming for musical applications but you can easily extrapolate for other domains. Lots of pseudo-code algorithms are provided.<p>- &quot;The Scientist and Engineer&#x27;s Guide to Digital Signal Processing&quot;[1] by Steven W. Smith: the bread and butter for everything concept related to DSP. Everything is explained in a crystal-clear fashion, lots of sample code to get you started with digital filters and analysis (although written in BASIC but easily translatable to C&#x2F;C++ or even Python).<p>Also there is this one article &quot;Real-time audio programming 101: time waits for nothing&quot;[2] by Ross Bencina (creator of AudioMulch, Portaudio, etc.) about the basics concepts of real-time audio programming<p>[0] <a href="https:&#x2F;&#x2F;www.wiley.com&#x2F;en-gb&#x2F;Introduction+to+Computer+Music-p-9780470714553" rel="nofollow">https:&#x2F;&#x2F;www.wiley.com&#x2F;en-gb&#x2F;Introduction+to+Computer+Music-p...</a><p>[1] <a href="https:&#x2F;&#x2F;www.dspguide.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.dspguide.com&#x2F;</a><p>[2] <a href="http:&#x2F;&#x2F;www.rossbencina.com&#x2F;code&#x2F;real-time-audio-programming-101-time-waits-for-nothing" rel="nofollow">http:&#x2F;&#x2F;www.rossbencina.com&#x2F;code&#x2F;real-time-audio-programming-...</a>
评论 #27273976 未加载
khiner将近 4 年前
Shameless plug but I put together some Jupyter notebooks that walk through several of the fantastic books recommended in this thread: <a href="https:&#x2F;&#x2F;github.com&#x2F;khiner&#x2F;notebooks" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;khiner&#x2F;notebooks</a><p>I wanted to help myself and other folks develop better intuitions around the material, particularly focusing on short animations to develop better visual intuition along with working code examples of the material in the books.<p>Books covered (with a notebook for each chapter):<p>* Musimathics volumes 1 &amp; 2 by Gareth Loy<p>* Introduction to the DFT by Julius Smith<p>* Introduction to Digital Filters by Julius Smith<p>* Physical Audio Signal Processing by Julius Smith<p>also a couple not directly about audio but helpful for the domain:<p>* Coding the Matrix by Philip Klein<p>* Accelerated C++ by Andrew Koenig and Barbara Moo<p>Hope someone gets some value from these - have fun!
munificent将近 4 年前
I&#x27;ve been getting into this over the past couple of years too and I feel like I sort of hit a wall.<p>I am comfortable writing low level efficient real-time code in C (I&#x27;m an ex game dev). I understand most synthesis techniques in pretty good detail. I could probably write a book on subtractive synthesis, and I have implemented a complete functioning FM synth.<p>I get the fundamental <i>concepts</i> around DSP: Nyquist, sampling, Fourier analysis, etc.<p>But when it comes to sitting down and, say, designing and implementing a filter from scratch, I&#x27;m pretty well stuck. Part of it is that most of the material I&#x27;ve found either goes straight to heavy calculus (which I can kind of hack but am pretty rusty on) or to MATLAB (which I don&#x27;t have).<p>Likewise, implementing a simple digital sawtooth or square oscillator analytically is trivial. Sample playback is also a piece of cake. But doing those <i>without aliasing</i> seems to jump from super-easy mode all the way to hardcore nightmare. All of a sudden I&#x27;m trying to understand what minBLEPs are and other stuff that feels over my head.<p>Any recommendations on how to get over this hump? Should I get MATLAB?
评论 #27279861 未加载
评论 #27280423 未加载
评论 #27294795 未加载
daviddever23box将近 4 年前
I manage a team in this field presently; the answer to your question depends on whether you want to be gainfully employed doing so, or not.<p>Web Audio API and JUCE are the modern building blocks for mostly everything out there; if you&#x27;re familiar with these, that&#x27;s a really good place to start.<p>If you&#x27;re looking for something accessible, SOUL is an excellent domain-specific scripting language that leverages JUCE underneath; see <a href="https:&#x2F;&#x2F;github.com&#x2F;julianstorer" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;julianstorer</a> for more context.<p>I&#x27;m not as sold on Max&#x2F;MSP or Pd, though they&#x27;re fun to play with for a brief moment.
评论 #27284189 未加载
评论 #27276744 未加载
skripp将近 4 年前
Here are four videos on the subject from my absolute favorite Yotuber, One Lone Coder (whom, sadly, is more or less on a hiatus now after having a kid. Damn those pesky kids!!!!)<p><a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=tgamhuQnOkM&amp;t=77s" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=tgamhuQnOkM&amp;t=77s</a><p><a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=OSCzKOqtgcA&amp;t=2s" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=OSCzKOqtgcA&amp;t=2s</a><p><a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=kDuvruJTjOs" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=kDuvruJTjOs</a><p><a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=roRH3PdTajs" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=roRH3PdTajs</a>
timdaub将近 4 年前
Hey,<p>I asked myself too how I should get started with Audio Programming in 2019. I ended up building my own little synth in the progress and I ended up talking to people from Ableton and even gave a talk at Native Instrument&#x27;s headquarters here in Berlin.<p>I blogged about my experience and my product here: <a href="https:&#x2F;&#x2F;timdaub.github.io&#x2F;2020&#x2F;02&#x2F;19&#x2F;wasm-synth&#x2F;" rel="nofollow">https:&#x2F;&#x2F;timdaub.github.io&#x2F;2020&#x2F;02&#x2F;19&#x2F;wasm-synth&#x2F;</a>
joshka将近 4 年前
* Valhalla DSP Blog - so many good articles on the real world idea. <a href="https:&#x2F;&#x2F;valhalladsp.com&#x2F;blog&#x2F;" rel="nofollow">https:&#x2F;&#x2F;valhalladsp.com&#x2F;blog&#x2F;</a><p>* JUCE for making VSTs. <a href="https:&#x2F;&#x2F;juce.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;juce.com&#x2F;</a><p>* ELK Audio for hardware &#x2F; audio. <a href="https:&#x2F;&#x2F;elk.audio&#x2F;" rel="nofollow">https:&#x2F;&#x2F;elk.audio&#x2F;</a><p>* Find open source projects that meet your needs &#x2F; desires.
Grustaf将近 4 年前
Not answering your question, but if you&#x27;re interested in audio programming you might find Pure Data interesting, it&#x27;s sort of visual audio programming. It might seem like a toy but it&#x27;s actually incredibly powerful: <a href="https:&#x2F;&#x2F;puredata.info" rel="nofollow">https:&#x2F;&#x2F;puredata.info</a>
评论 #27274475 未加载
评论 #27274300 未加载
antfarm将近 4 年前
If you are on macOS, AudioKit is a nice simplified layer on top of CoreAudio and CoreMidi: <a href="https:&#x2F;&#x2F;github.com&#x2F;AudioKit&#x2F;AudioKit" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;AudioKit&#x2F;AudioKit</a><p>It ccomes with many Xcode playgrounds for interactive exploration of the SDK.
Crusoe123将近 4 年前
Designing Audio Effect Plugins - <a href="https:&#x2F;&#x2F;www.routledge.com&#x2F;Designing-Audio-Effect-Plugins-in-C-For-AAX-AU-and-VST3-with-DSP-Theory&#x2F;Pirkle&#x2F;p&#x2F;book&#x2F;9781138591936" rel="nofollow">https:&#x2F;&#x2F;www.routledge.com&#x2F;Designing-Audio-Effect-Plugins-in-...</a><p>This book teaches you DSP and also how to apply those DSP algorithms by employing them inside an audio plugin.
severak_cz将近 4 年前
Hi,<p>I started with Csound and Cabbage framework[1] which I used to create some VST plugins.<p>Then I moved to javascript lands (as everyone already has runtime called web browser) and I am creating sort of DAW using webaudio. I used Tone.js, but it was somewhat confusing, so I started my own library[2].<p>It&#x27;s not finished yet but I have already nice and usable demo - comb organ playable with computer or MIDI keyboard with built-in &quot;tape recorder&quot;[3]. Good news is that is open source so you can actually stole some ideas from me.<p>[1]: <a href="https:&#x2F;&#x2F;cabbageaudio.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;cabbageaudio.com&#x2F;</a><p>[2]: <a href="https:&#x2F;&#x2F;github.com&#x2F;severak&#x2F;cyber-music-studio&#x2F;blob&#x2F;main&#x2F;js&#x2F;heartbeat.md" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;severak&#x2F;cyber-music-studio&#x2F;blob&#x2F;main&#x2F;js&#x2F;h...</a><p>[3]: <a href="https:&#x2F;&#x2F;severak.github.io&#x2F;cyber-music-studio&#x2F;regenschori.html" rel="nofollow">https:&#x2F;&#x2F;severak.github.io&#x2F;cyber-music-studio&#x2F;regenschori.htm...</a>
评论 #27312072 未加载
评论 #27276309 未加载
lxdesk将近 4 年前
Implement a MIDI 1.0 sequencer and get it to play back SMF files with a sine wave synth - you can have it output a WAV file, or learn an API to do realtime rendering. It&#x27;s not a large spec, there are lots of old documents on how the protocol functions in practice, and then once you start getting it working you&#x27;ll get results instantly(lots of SMF files around to test with) but will want more features, better synthesis; complications start to arise and you will then pick up a lot of knowledge by doing.
throwaway721将近 4 年前
Depends on what audio programming do you want to do really. If you are interested in the audio side, I would recommend <a href="https:&#x2F;&#x2F;puredata.info&#x2F;" rel="nofollow">https:&#x2F;&#x2F;puredata.info&#x2F;</a> (it has tutorial on synthesis and everything). If you want to explorer the programming side, I would just go picking apart small synths: <a href="https:&#x2F;&#x2F;github.com&#x2F;grumdrig&#x2F;jsfxr" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;grumdrig&#x2F;jsfxr</a> <a href="http:&#x2F;&#x2F;www.pouet.net&#x2F;prod.php?which=20656" rel="nofollow">http:&#x2F;&#x2F;www.pouet.net&#x2F;prod.php?which=20656</a> (click on source, there&#x27;s a mini synth there in that demo).
qiqitori将近 4 年前
Only related if you just read the title and ignore the rest, but I loved this article: <a href="https:&#x2F;&#x2F;zserge.com&#x2F;posts&#x2F;etude-in-c&#x2F;" rel="nofollow">https:&#x2F;&#x2F;zserge.com&#x2F;posts&#x2F;etude-in-c&#x2F;</a><p>Covered on HN late last year <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24940624" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=24940624</a> (&quot;How to create minimal music with code in any programming language&quot;)<p>Also related to bytebeats: <a href="https:&#x2F;&#x2F;soundcloud.com&#x2F;robertskmiles&#x2F;bitshift-variations-in-c-minor" rel="nofollow">https:&#x2F;&#x2F;soundcloud.com&#x2F;robertskmiles&#x2F;bitshift-variations-in-...</a>
smlss_sftwr将近 4 年前
Haven&#x27;t read that book so I&#x27;m not familiar with the contents, but if you&#x27;re interested in creating VST plugins you might want to check out some frameworks out there like JUCE: <a href="https:&#x2F;&#x2F;juce.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;juce.com&#x2F;</a><p>I don&#x27;t know if you&#x27;re a musician yourself but I&#x27;d highly recommend downloading a DAW and playing around with the plugins to get a sense of common audio processing modules, you can perhaps make it a near-term goal to create an EQ or filter plugin that you can install and use in the DAW. IIRC I think Ableton Lite should have a free demo, Reaper is another well-regarded free DAW from what I&#x27;ve heard
CraigJPerry将近 4 年前
I watched CppCon 2015: Timur Doumler “C++ in the Audio Industry” <a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=boPEO2auJj4" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=boPEO2auJj4</a> not long ago and enjoyed it. He was a developer at Roli working on synths and he goes through real time strategies to keep the response time under around 30ms IIRC
iainctduncan将近 4 年前
The Will Pirkle books are excellent, and he did a new edition of the synthesizer one. &quot;Designing Software Synthesizer Plugins in C++: With Audio DSP&quot;<p>Also, you can learn a ton by looking at various other higher level languages do it: Csound, SuperCollider, PureData are all open source.<p>Oli Larkin made a brilliant page of resources on github: <a href="https:&#x2F;&#x2F;github.com&#x2F;olilarkin&#x2F;awesome-musicdsp" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;olilarkin&#x2F;awesome-musicdsp</a>
jrm4将近 4 年前
Since we are all here, I have a question. I personally am much more interested in audio sample triggering and&#x2F;or loop based production in this context than synthesis&#x2F;wave generation -- and it seems like the overwhelming majority of tools are focused on the latter.<p>In my head, I&#x27;m imagining a more programmatic approach to &quot;arrangement of samples and loops,&quot; as in, instead of, or perhaps complementing, the classic &quot;grid&quot; or &quot;buttons&quot; view -- something like,e.g.:<p>- Specify 4&#x2F;4 @ 95bpm for the piece<p>- Sample 1, a drum loop stretched&#x2F;and or pitched<p>- Sample 2, a hit on the 2nd beat of each interval<p>- Sample 3, a simple electric piano melody, repeating over X intervals.<p>- Sample 4, a pad with an echo&#x2F;reverb<p>etc. Now, what should be easy to do is to switch out, e.g. which drum loop, or change your piano to a trumpet. I get that MIDI is okay for this -- but is of course better for the latter situation and not great for effects and audio samples.<p>Your Abletons and so forth are not bad at this, of course, but - and maybe this what I&#x27;m describing -- Ableton&#x27;s features -- but doable in vim, perhaps with the ability to create functions et al on the fly, which strikes me as a potentially powerful way to &quot;group&quot; musical sounds&#x2F;ideas&#x2F;intervals&#x2F;melodies&#x2F;chords&#x2F;effects etc etc
评论 #27279127 未加载
评论 #27279399 未加载
评论 #27294915 未加载
评论 #27279187 未加载
trypwire将近 4 年前
Awesome discussion in here, I&#x27;m happy to see it!<p>I thought I might throw my hat in the ring of shameless self promotion since you might be interested:<p>I&#x27;m working on a project called Elementary Audio, which is a brand new javascript runtime and framework for writing native audio applications– meaning desktop apps, like perhaps the mini-synth you&#x27;re hoping to make, as well as audio plugins (VST, AU, AAX, etc) and even embedded hardware, all in JavaScript.<p>The project is still in an early stage (and macOS only right now). I&#x27;m planning to share it more widely here on HN once it&#x27;s ready for beta, but I thought this thread might be interested in it before then.<p>Website: <a href="https:&#x2F;&#x2F;www.elementary.audio&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.elementary.audio&#x2F;</a><p>And here&#x27;s an example MIDI Synth: <a href="https:&#x2F;&#x2F;github.com&#x2F;nick-thompson&#x2F;elementary&#x2F;blob&#x2F;master&#x2F;examples&#x2F;03_Synth&#x2F;index.js" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;nick-thompson&#x2F;elementary&#x2F;blob&#x2F;master&#x2F;exam...</a><p>You could even spin up an Electron frontend to take input from your computer keyboard and send those over to Elementary to render the synth sounds. It&#x27;s actually an example project I was considering doing myself but you might beat me to it at this point!<p>Lastly, I&#x27;ll say briefly that there are a lot of tools out there (as we&#x27;re seeing in these comments), different things work for different people, and there&#x27;s no single &quot;right&quot; way to start audio programming– find the path that makes it fun for you, because it&#x27;s such an awesome field to get into.
kragen将近 4 年前
I second the recommendation of Steven W. Smith&#x27;s dspguide.com, which will get you from (I think) zero to a profound understanding of DSP. I&#x27;ve also learned a lot from Julius O. Smith&#x27;s Physical Audio Signal Processing, which I see a couple of other people have also recommended: <a href="https:&#x2F;&#x2F;ccrma.stanford.edu&#x2F;~jos&#x2F;pasp&#x2F;" rel="nofollow">https:&#x2F;&#x2F;ccrma.stanford.edu&#x2F;~jos&#x2F;pasp&#x2F;</a><p>But if you&#x27;re using an existing computer music programming environment like Csound (used in <i>The Audio Programming Book</i>), SuperCollider, or PureData, you can make a mini-synth which takes input from the computer keyboard without any of that stuff! (Stay away from Max&#x2F;MSP; it&#x27;s proprietary.)<p>The most fun <i>I&#x27;ve</i> had with audio programming has been bytebeat, though: <a href="http:&#x2F;&#x2F;canonical.org&#x2F;~kragen&#x2F;bytebeat" rel="nofollow">http:&#x2F;&#x2F;canonical.org&#x2F;~kragen&#x2F;bytebeat</a>. I didn&#x27;t invent bytebeat but I did write that page about it.<p>Also, there are a lot of the hassles involved in audio latency on CTSS-derived OSes like MacOS, Linux (especially Android), or Microsoft Windows; it&#x27;s easy to end up with 100+ ms of latency, and hard to do better than 10 ms, and either of those is a super shitty musician experience. If you do your stuff on an Arduino or similar microcontroller instead, those problems <i>evaporate</i>, and your computer music system will fit into an effects pedal. You need a DAC and, if you&#x27;re taking audio input, an ADC; the built-in PWM and ADC in a standard AVR may not be sufficient. (And, beware, a 31.25 kHz PWM carrier can go right through a stereo system and burn out your venue&#x27;s tweeters if it&#x27;s turned up high enough. Filtering is required.)
gwbas1c将近 4 年前
Short answer: Just do it.<p>Now that you&#x27;ve read a book, pick an extremely simple task and just do it. For example, maybe try writing a command-line program that will just play a square wave through the speakers. Then, build up your skills by making options for sawtooth, triangle, and sine waves. Finally, in the callback from the audio API, poll the keyboard to decide what tones to play. ;)<p>FWIW: A few years ago I wrote a functional keyboard and mouse synth program that just did sine, triangle, square waves and harmonics. It sounded a lot like an organ. (I later lost interest.) What helped was that I found a wrapper for MacOS CoreAudio that dramatically simplified the API so all I needed to do was provide a stream of floats. (I don&#x27;t remember the name.)<p>Don&#x27;t fall under the illusion that you can just read books and at the end you&#x27;ll know how to do this. You&#x27;ll need to work through simplified tasks to build your skills and understanding before you can write your mini-synth.
8bitsrule将近 4 年前
&quot;Richard Boulanger&quot; is the C-Sound [0] guy. I mention that because anyone interested in audio programming <i>might</i> want to be familiar with C-sound first. Programming audio in C is <i>way</i> more complex than programming audio in C-sound. Starting from scratch <i>might not</i> be preferable to using a toolkit that&#x27;s been developed for 35 years! [1]<p>A book I thought was great has no code in it, but is FULL of very useful info about audio and computing it. <i>Computer Music</i> by Dodge and Jerse, ISBN 0028646827 (1997) ... a little pricey, might be hard to find, but <i>very</i> hard to beat.<p>[0] <a href="https:&#x2F;&#x2F;csound.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;csound.com&#x2F;</a><p>[1] I haven&#x27;t seen Richard&#x27;s book (I&#x27;m sure it&#x27;s great - and I <i>will</i> see it, thanks for the tip) ... he just might be pitching this idea in there!
评论 #27294813 未加载
squishy47将近 4 年前
Cycling 74&#x27;s Max is a really good way to get into audio (and visual) programming. It introduces the concepts of programming and DSP whilst still keeping things beginner friendly. It&#x27;s a lot more beginner friendly that something like JUCE which, while super powerful, has a much steeper learning curve and requires you to know C++. Major downside is that it&#x27;s not suitable for making full audio plugin products, rather I would use it to prototype a plugin, the DSP logic and even the UI before writing any text-based code for a VST&#x2F;AU.<p>You can absolutely make a nice synth that takes input from pretty much anything you can attach to a computer.<p>And as everyone else has said - theAudioProgrammer is good too.<p>(Edit) - Pure Data (PD) is an open source alternative to Max which is free. I&#x27;ve heard people recommend it but never used it myself.
jimktrains2将近 4 年前
I&#x27;ve been working on a little synthesizer as a means of learning rust. <a href="https:&#x2F;&#x2F;github.com&#x2F;jimktrains&#x2F;synth" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;jimktrains&#x2F;synth</a><p>Sound on sound has a series on synthesizer concepts. <a href="https:&#x2F;&#x2F;www.soundonsound.com&#x2F;series&#x2F;synth-secrets" rel="nofollow">https:&#x2F;&#x2F;www.soundonsound.com&#x2F;series&#x2F;synth-secrets</a><p>Dsp guide is a great resource. <a href="http:&#x2F;&#x2F;dspguide.com&#x2F;" rel="nofollow">http:&#x2F;&#x2F;dspguide.com&#x2F;</a><p>Music dsp also has some good information and implementations. <a href="https:&#x2F;&#x2F;www.musicdsp.org&#x2F;en&#x2F;latest&#x2F;index.html" rel="nofollow">https:&#x2F;&#x2F;www.musicdsp.org&#x2F;en&#x2F;latest&#x2F;index.html</a>
seertaak将近 4 年前
My advice would be to start with JUCE. It&#x27;s a great framework for audio development, and has a lot of example projects for making plugins and hosts. Audio programming is definitely tricky and something of a black art. Even making a simple square wave synth that doesn&#x27;t sound crap is surprisingly difficult, because of unintuitive artefacts engendered by the sampling theorem. (In a nutshell you have to make the square waves wiggle a bit for them to sound good, otherwise you get lots of high frequency garbage which sounds metallic and ugly.)<p>Ross Bencina also has some good articles about the realtime aspect. Basically, you shouldn&#x27;t use locks and should become intimately familiar with ring buffers :)
评论 #27275555 未加载
nexttime将近 4 年前
Most of the good resources where already mentioned, but these are some I missed:<p>- Musimathics Vol I &amp; II: This will teach you the basics of Music and DSP in a very approachable way. I wish I had these when I started writing audio software.<p>- The Art of VA Filter Design: <a href="https:&#x2F;&#x2F;www.native-instruments.com&#x2F;fileadmin&#x2F;ni_media&#x2F;downloads&#x2F;pdf&#x2F;VAFilterDesign_2.1.0.pdf" rel="nofollow">https:&#x2F;&#x2F;www.native-instruments.com&#x2F;fileadmin&#x2F;ni_media&#x2F;downlo...</a><p>If you are programming in C, these libraries are very useful:<p>- PortAudio: Cross platform audio playback<p>- libsndfile: Easy and cross platform sound file io<p>- ladspa: Really simple plugin API, useful if you want to make or use audio plugins without all the boilerplate of vst or lv2
评论 #27276555 未加载
shog_hn将近 4 年前
It might not be inline with your exact goals, but I&#x27;ve really been enjoying doing audio visualization lately.<p>I&#x27;m using the Unity game engine, and am leaning heavily on already-implemented FFT algorithms available on the Unity AudioSource component, but the fun part is taking the spectrum data, dividing it up into bands, and doing visuals with those.<p>Here is a short video showing a simple audio visualization demo I created: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=kYt0dcUY3i8" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=kYt0dcUY3i8</a><p>It led me down a bit of a rabbit hole with watching videos about Fast Fourier Transforms, and learning more about audio specific programming.
评论 #27276302 未加载
wrnr将近 4 年前
Take a look at the source code of the Pink Thrombone, there are some interesting link in the comments of the source: <a href="https:&#x2F;&#x2F;dood.al&#x2F;pinktrombone&#x2F;" rel="nofollow">https:&#x2F;&#x2F;dood.al&#x2F;pinktrombone&#x2F;</a>
gerlofs将近 4 年前
It depends on what you&#x27;re trying to achieve. I&#x27;d say pick a project you want to work on and go from there, resources on JUCE&#x2F;C++ aren&#x27;t always going to be helpful if you don&#x27;t want to write plugins.
tomduncalf将近 4 年前
This is a topic close to my heart as I&#x27;ve always been very into music production and programming, and have dabbled with a few things over the years, but have only started working professionally with audio software in the last few years.<p>What is your background, and which parts of audio programming would you like to focus on? e.g. are you interested in writing your own low-level DSP code, or more interested in hooking together higher-level blocks?<p>If you&#x27;re from a web programming background, you can have a lot of fun with the WebAudio API [1]. It provides high level building blocks like oscillators, filters, effects, etc., which you can hook together. It has some rough edges but it&#x27;s a great starting point.<p>Tone.js [2] is a great way to get started with WebAudio, it provides some useful abstractions that let you build fun things quickly, and there are some great examples of WebAudio creativity out there e.g. Blokdust [3]. If you want to go lower level, all major browsers now support the AudioWorklet API [4], which lets you write your own custom DSP algorithms and have them run efficiently within WebAudio.<p>However, WebAudio has limitations in terms of performance, and you can&#x27;t use a WebAudio synth as a plugin in your music production software of choice (well, you might be able to get a browser which runs as a plugin, but it&#x27;s not going to be ideal!).<p>If you want to write professional audio code, you can&#x27;t really avoid working with C++ - it&#x27;s the industry standard approach. This is largely because C++ allows programmers to very carefully design the performance characteristics of their code - specifically, you can avoid doing anything which might take an unknown amount of time (e.g. allocating new memory, locking) while processing on your audio thread - audio is realtime and very low latency, so you need to be sure your code is going to run in the amount of time you think it will.<p>Personally, I think JUCE [5] is a great starting point. It abstracts away some of the complexities of both C++ and audio APIs, allowing you to build cross platform audio apps and plugins without having to worry about platform-specific quirks. They have a pretty good selection of tutorials too [6]. An alternative you could look into is iPlug2 [7]. There are a couple of books by Will Pirkle on the topic of programming audio effects and synths with C++ - the author uses his own framework, but the same principles apply to other frameworks. Make sure you get the new editions if you do get these.<p>You&#x27;ll probably want to take time to learn some C++ basics first if you don&#x27;t already know it, it&#x27;s a hard language to master! I&#x27;m actually working on an integration right now to allow you to build web UIs for JUCE apps, which takes away the complexity of also building the UI in C++ - I&#x27;ll hopefully have something to share in the next few weeks.<p>If you want something a bit more straightforward and you&#x27;re happy just supporting MacOS and iOS, AudioKit [8] is worth a look. It&#x27;s kind of in between WebAudio and JUCE in terms of complexity I&#x27;d say - you write your code in Swift and it provides a load of high level building blocks, but you can drop down to a lower level if you need to write your own stuff in C++. Also the CoreAudio&#x2F;CoreMIDI APIs on Apple platforms are very powerful, though I&#x27;ve struggled to find great documentation.<p>One other option you could look at are specialist audio languages like Supercollider [9] and Faust [10], or visual programming tools like Max [11] or Pure Data [12]. I&#x27;m not very well versed in any of these, but I&#x27;ve heard good things about Supercollider especially.<p>Phew, hope that helps! As you can probably tell, I&#x27;m really interested in this stuff so please give me a shout with any questions!<p>Edit: one more resource I remembered, there&#x27;s a Youtube channel dedicated to learning audio programming, mostly using JUCE, called The Audio Programmer [13]. I haven&#x27;t actually watched much content so can&#x27;t say too much about that, but I know the guy behind it and he&#x27;s great, and also runs a great community for people interested in audio programming [14].<p>[1] <a href="https:&#x2F;&#x2F;developer.mozilla.org&#x2F;en-US&#x2F;docs&#x2F;Web&#x2F;API&#x2F;Web_Audio_API" rel="nofollow">https:&#x2F;&#x2F;developer.mozilla.org&#x2F;en-US&#x2F;docs&#x2F;Web&#x2F;API&#x2F;Web_Audio_A...</a><p>[2] <a href="https:&#x2F;&#x2F;tonejs.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;tonejs.github.io&#x2F;</a><p>[3] <a href="https:&#x2F;&#x2F;blokdust.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;blokdust.com&#x2F;</a><p>[4] <a href="https:&#x2F;&#x2F;developer.mozilla.org&#x2F;en-US&#x2F;docs&#x2F;Web&#x2F;API&#x2F;AudioWorklet" rel="nofollow">https:&#x2F;&#x2F;developer.mozilla.org&#x2F;en-US&#x2F;docs&#x2F;Web&#x2F;API&#x2F;AudioWorkle...</a><p>[5] <a href="https:&#x2F;&#x2F;juce.com" rel="nofollow">https:&#x2F;&#x2F;juce.com</a><p>[6] <a href="https:&#x2F;&#x2F;juce.com&#x2F;learn&#x2F;tutorials" rel="nofollow">https:&#x2F;&#x2F;juce.com&#x2F;learn&#x2F;tutorials</a><p>[7] <a href="https:&#x2F;&#x2F;github.com&#x2F;iPlug2&#x2F;iPlug2" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;iPlug2&#x2F;iPlug2</a><p>[8] <a href="https:&#x2F;&#x2F;audiokit.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;audiokit.io&#x2F;</a><p>[9] <a href="https:&#x2F;&#x2F;supercollider.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;supercollider.github.io&#x2F;</a><p>[10] <a href="https:&#x2F;&#x2F;faust.grame.fr&#x2F;" rel="nofollow">https:&#x2F;&#x2F;faust.grame.fr&#x2F;</a><p>[11] <a href="https:&#x2F;&#x2F;cycling74.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;cycling74.com&#x2F;</a><p>[12] <a href="https:&#x2F;&#x2F;puredata.info&#x2F;" rel="nofollow">https:&#x2F;&#x2F;puredata.info&#x2F;</a><p>[13] <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;channel&#x2F;UCpKb02FsH4WH4X_2xhIoJ1A" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;channel&#x2F;UCpKb02FsH4WH4X_2xhIoJ1A</a><p>[14] <a href="https:&#x2F;&#x2F;theaudioprogrammer.com&#x2F;community&#x2F;" rel="nofollow">https:&#x2F;&#x2F;theaudioprogrammer.com&#x2F;community&#x2F;</a>
评论 #27274232 未加载
评论 #27275861 未加载
评论 #27279993 未加载
评论 #27274087 未加载
评论 #27274312 未加载
noxee将近 4 年前
I haven&#x27;t started the course yet but I&#x27;ve been looking at doing this one:<p>Learn C++ Real-Time Audio Programming with Bela - <a href="https:&#x2F;&#x2F;hackaday.io&#x2F;course&#x2F;171240-learn-c-real-time-audio-programming-with-bela" rel="nofollow">https:&#x2F;&#x2F;hackaday.io&#x2F;course&#x2F;171240-learn-c-real-time-audio-pr...</a>. The course does recommend buying the Bela development board from <a href="https:&#x2F;&#x2F;shop.bela.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;shop.bela.io&#x2F;</a> but I don&#x27;t think it&#x27;s a hard requirement.
0x737368将近 4 年前
Browsers have a very accessible API for audio programming now[0]. Comes with the benefits of being platform independent, using JS(okay, this as a benefit is arguable to some), and easily distributable(perhaps too easy since you can&#x27;t hide your source code either, unless you do some form of SaaS and introduce latency).<p>[0] - <a href="https:&#x2F;&#x2F;developer.mozilla.org&#x2F;en-US&#x2F;docs&#x2F;Web&#x2F;API&#x2F;Web_Audio_API" rel="nofollow">https:&#x2F;&#x2F;developer.mozilla.org&#x2F;en-US&#x2F;docs&#x2F;Web&#x2F;API&#x2F;Web_Audio_A...</a>
评论 #27275834 未加载
jasunflower将近 4 年前
Does anybody have a good tutorial on the Fast Fourier Transform? It always feels to be just out of my grasp and I wonder if someone has broken it down in an intuitive way.
评论 #27279868 未加载
ArtWomb将近 4 年前
Solid Gold List! I got into audio with ChucK: Strongly-timed, Concurrent, and On-the-fly Music Programming Language. Concurrency primitives are built right into the language spec, so it&#x27;s easy for programmers to grok per sample digital sound. Powers laptop orchestras, but simple enough that you can build a laptop synthesizer in 100 lines of code<p><a href="http:&#x2F;&#x2F;chuck.stanford.edu&#x2F;" rel="nofollow">http:&#x2F;&#x2F;chuck.stanford.edu&#x2F;</a>
haywirez将近 4 年前
Join the Audio Programmer community: <a href="https:&#x2F;&#x2F;theaudioprogrammer.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;theaudioprogrammer.com&#x2F;</a>
评论 #27276017 未加载
anigbrowl将近 4 年前
Literally go with this other project on the front page right now, it&#x27;s good a good pedigree and a healthy ecosystem: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=27269589" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=27269589</a><p>If you want a really gentle start, try Sassy: <a href="https:&#x2F;&#x2F;sol-hsa.itch.io&#x2F;sassy" rel="nofollow">https:&#x2F;&#x2F;sol-hsa.itch.io&#x2F;sassy</a>
anotheryou将近 4 年前
Depends a bit on where you want to go with this.<p>If you want this to play nicely musically you want low latency and I&#x27;d look for programming languages made for audio. Just watch a few introductions and pick what you like best.<p>More professionally I&#x27;m not experienced, but maybe writing a VST MIDI instrument would make sense.<p>If it&#x27;s just about the sound maybe you should start at the DAW end and use Bitwigs Grid or Ableton (possibly with max&#x2F;msp).
Insanity将近 4 年前
I&#x27;ve used The Audio Programming book in conjunction with &quot;Musimathics&quot; <a href="http:&#x2F;&#x2F;musimathics.com&#x2F;" rel="nofollow">http:&#x2F;&#x2F;musimathics.com&#x2F;</a> to write many parts of GoAudio. (<a href="https:&#x2F;&#x2F;github.com&#x2F;DylanMeeus&#x2F;GoAudio" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;DylanMeeus&#x2F;GoAudio</a>).
nitrogen将近 4 年前
<i>Edit: My goal is to make a mini-synth which takes input from the computer keyboard.</i><p>If you are a Ruby programmer on Linux, you could use this rubygem I wrote: <a href="https:&#x2F;&#x2F;github.com&#x2F;mike-bourgeous&#x2F;mb-sound" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;mike-bourgeous&#x2F;mb-sound</a><p>A video about using that gem to make a synthesizer: <a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=aS43s6TWnIY&amp;feature=youtu.be" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=aS43s6TWnIY&amp;feature=youtu.be</a><p>Part of a long-running experiment of mine to make educational videos about sound, which I hope might help you on your audio programming journey: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLpRqC8LaADXnwve3e8gI239eDNRO3Nhya" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLpRqC8LaADXnwve3e8gI2...</a><p>There have been recent posts to HN about the difficulty of reading key-up events from the terminal. I used MIDI and a separate MIDI keyboard app for my video demo.
squarefoot将近 4 年前
&gt; My goal is to make a mini-synth which takes input from the computer keyboard.<p>It might be worth studying the sources of some working soft synths such as Helm, Surge or ZynAddSubFx or mixed firmware-hardware synths such as TSynth. The latter in particular is a low cost polyphonic external module built around a Teensy microcontroller, so the code base isn&#x27;t that big, and it sounds great.<p><a href="https:&#x2F;&#x2F;tytel.org&#x2F;helm&#x2F;" rel="nofollow">https:&#x2F;&#x2F;tytel.org&#x2F;helm&#x2F;</a><p><a href="https:&#x2F;&#x2F;surge-synthesizer.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;surge-synthesizer.github.io&#x2F;</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;zynaddsubfx&#x2F;zynaddsubfx" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;zynaddsubfx&#x2F;zynaddsubfx</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;ElectroTechnique&#x2F;" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ElectroTechnique&#x2F;</a><p><a href="https:&#x2F;&#x2F;electrotechnique.cc&#x2F;" rel="nofollow">https:&#x2F;&#x2F;electrotechnique.cc&#x2F;</a>
33degrees将近 4 年前
A couple of lists with tons of resources:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;olilarkin&#x2F;awesome-musicdsp" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;olilarkin&#x2F;awesome-musicdsp</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;DolbyIO&#x2F;awesome-audio" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;DolbyIO&#x2F;awesome-audio</a>
Mizza将近 4 年前
It depends what you&#x27;re trying to accomplish, but I found VCV Rack to be a great environment to implement synth ideas without having to worry about reinventing the wheel. Trying making a Rack module!<p><a href="https:&#x2F;&#x2F;vcvrack.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;vcvrack.com&#x2F;</a>
kesor将近 4 年前
It is even better to learn audio in its analog form first, great explanations by Moritz here <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;channel&#x2F;UCzfW6SlNEyxmAPtdr3n-_Og" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;channel&#x2F;UCzfW6SlNEyxmAPtdr3n-_Og</a>
xipho将近 4 年前
Do look at SonicPi [0][1].<p>[0] <a href="https:&#x2F;&#x2F;sonic-pi.net&#x2F;" rel="nofollow">https:&#x2F;&#x2F;sonic-pi.net&#x2F;</a> [1] <a href="https:&#x2F;&#x2F;github.com&#x2F;sonic-pi-net&#x2F;sonic-pi" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;sonic-pi-net&#x2F;sonic-pi</a>
adriancooney将近 4 年前
Shameless plug for my own audio programming experiment: <a href="https:&#x2F;&#x2F;noise.sh" rel="nofollow">https:&#x2F;&#x2F;noise.sh</a><p>It&#x27;s not as powerful as something like PureData but it does give you a simple and intuitive introduction to DSP and audio synthesis.
imvetri将近 4 年前
You can try to build an visual audio editor and learn everything else from there, step by step.
评论 #27275686 未加载
评论 #27274280 未加载
oilbagz将近 4 年前
Get into Zynthian:<p><a href="http:&#x2F;&#x2F;zynthian.org&#x2F;" rel="nofollow">http:&#x2F;&#x2F;zynthian.org&#x2F;</a><p>Tons of great code to read and projects to understand ..<p>Also, the Basic Synth book is a dream:<p><a href="http:&#x2F;&#x2F;basicsynth.com&#x2F;" rel="nofollow">http:&#x2F;&#x2F;basicsynth.com&#x2F;</a>
capableweb将近 4 年前
Just today there was a Audio Operating System featured on HN that looks like a great starting point for audio programming and it comes with everything you need. Unfortunately it looks like everything is out of stock, but looks interesting none the less and you can probably run it in a VM until they get the development kits in stock again.<p>- <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=27269589" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=27269589</a> - Elk OS – Audio Operating System<p>- <a href="https:&#x2F;&#x2F;elk.audio&#x2F;audio-os&#x2F;" rel="nofollow">https:&#x2F;&#x2F;elk.audio&#x2F;audio-os&#x2F;</a>
clauswitt将近 4 年前
I wrote a CLI version of a sequencer (multitrack sequencing with plugins and automation where a simple xml format controls the sequencer events) a couple of years ago. I had a quite clear vision of what I wanted to achieve, and then picked C++ and JUCE and just started figuring things out.<p>I generally learn best by having a real thing to build; and then finding the resources I need when I get stuck.<p>I buy books aspirationally (I have bought the Audio Programming Book as well come to think of it) - so I often end up with many books on subjects that interests me, without learning much from them.
rustybolt将近 4 年前
Long, long ago I made a simple synthesizer for windows using the CoreAudio API (there is a newer one, WASAPI, but I never got it to work well myself since it is so complicated). It&#x27;s a fun project. It is also easy to add some simple filters this way.<p>If you don&#x27;t want to do realtime synthesis, you can also dive in the (uncompressed) WAV file format and make programs that generate sound files.<p>Another thing that might be nice (but I personally haven&#x27;t tried) is to synthesize your own drums, 808-style. Google &#x27;kick synthesis&#x27; for example.
JoeDaDude将近 4 年前
There is an online course in audio signal processing, FWIW. Caveat: I have not taken this course.<p><a href="https:&#x2F;&#x2F;online.stanford.edu&#x2F;courses&#x2F;sohs-ymusic0001-audio-signal-processing-music-applications" rel="nofollow">https:&#x2F;&#x2F;online.stanford.edu&#x2F;courses&#x2F;sohs-ymusic0001-audio-si...</a><p>See also this book about computational music synthesis:<p><a href="https:&#x2F;&#x2F;cs.gmu.edu&#x2F;~sean&#x2F;book&#x2F;synthesis&#x2F;" rel="nofollow">https:&#x2F;&#x2F;cs.gmu.edu&#x2F;~sean&#x2F;book&#x2F;synthesis&#x2F;</a>
Archit3ch将近 4 年前
If you&#x27;re interested in synths, there is a new version of the Pirkle synth book coming out soon.<p>Also, I second the suggestion to join the Audio Programmer community.
Flex247A将近 4 年前
Reading &#x27;The Audio Programming Book&#x27; also clarified the concept of OOP for me. There was a small section where function pointers in C structs was discussed. Just after that, there was a section on struct classes in C++ which made it clear why data members should be grouped with their related functions.
heldrida将近 4 年前
<a href="https:&#x2F;&#x2F;llllllll.co&#x2F;t&#x2F;lower-level-audio-programming&#x2F;1259&#x2F;8" rel="nofollow">https:&#x2F;&#x2F;llllllll.co&#x2F;t&#x2F;lower-level-audio-programming&#x2F;1259&#x2F;8</a><p><a href="https:&#x2F;&#x2F;theaudioprogrammer.com" rel="nofollow">https:&#x2F;&#x2F;theaudioprogrammer.com</a>
tristanMatthias将近 4 年前
I used tone.js for <a href="https:&#x2F;&#x2F;synthia.app" rel="nofollow">https:&#x2F;&#x2F;synthia.app</a>
am_lu将近 4 年前
Have a look at Teensy microcontrollers and Audio shield available for them. <a href="https:&#x2F;&#x2F;www.pjrc.com&#x2F;store&#x2F;teensy3_audio.html" rel="nofollow">https:&#x2F;&#x2F;www.pjrc.com&#x2F;store&#x2F;teensy3_audio.html</a>
antfarm将近 4 年前
<i>Think DSP</i> is a free book on digital signal processing in Python: <a href="https:&#x2F;&#x2F;greenteapress.com&#x2F;wp&#x2F;think-dsp&#x2F;" rel="nofollow">https:&#x2F;&#x2F;greenteapress.com&#x2F;wp&#x2F;think-dsp&#x2F;</a>
vnorilo将近 4 年前
prof. Julius Smith has a huge amount of music dsp resources available freely [1]<p>1: <a href="https:&#x2F;&#x2F;ccrma.stanford.edu&#x2F;~jos&#x2F;sitemap.html" rel="nofollow">https:&#x2F;&#x2F;ccrma.stanford.edu&#x2F;~jos&#x2F;sitemap.html</a>
probinso将近 4 年前
&quot;listening in the ocean&quot; by lammers can give you a resource for applications of audio programming. it&#x27;s all about marine acoustics
rgbrgb将近 4 年前
Anyone have thoughts on JUCE vs SOUL for writing a VST?
ioseph将近 4 年前
I found writing a module for VCV rack quite accessible
fortran77将近 4 年前
A great, fun, system is CSOUND<p><a href="https:&#x2F;&#x2F;csound.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;csound.com&#x2F;</a>
mxmilkiib将近 4 年前
Come hang in #lad on libera.chat
ChrisArchitect将近 4 年前
how about sharing the link to the book and asking in the comments for more resources instead of Ask HN