elk-pi
mb-sound
Our great sponsors
elk-pi | mb-sound | |
---|---|---|
7 | 5 | |
224 | 17 | |
0.9% | - | |
0.0 | 5.6 | |
10 months ago | 10 months ago | |
Ruby | ||
- | BSD 2-clause "Simplified" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
elk-pi
-
Elk Audio OS
Just found Elk Audio OS. Looks exciting, but I'm struggling to understand exactly what it is and how it might be useful. Anyone using it? https://elk.audio/
-
Real time audio processing in linux.
That might not matter too much for you - if not then you're set. But if it does, using small buffers is hard with Linux (and non-realtime OSes), since the kernel has other things to balance, so you can occasionally miss your deadlines and have audio glitches if the buffers are too small. These guys offer a linux distro that's been well tuned for audio processing, as well as an engine that makes it easy to drop in your effects algorithm without having to deal with hardware support and making that engine: https://elk.audio/
- Ask HN: How to get started with audio programming?
-
A curated list of Music DSP and audio programming resources
There's https://elk.audio/
Overall there are JUCE embedded support.
If you need more bare bones there are some DSP only resources. Not sure if I saw there the RtAudio which is also very minimal -
-
HW + OS for Loudspeaker Crossover
I’ve run JUCE apps on embedded linux, a Raspberry Pi running maybe Elk Audio or Patchbox OS might be a good bet
- Korg Wavestate - Powered by Raspberry Pi
- Raspberry Pi 4 based synth - questions about external sound card.
mb-sound
-
Why Can’t You Design Noise in Frequency Space?
You can try the synthesizer and other audio code if you're using Linux.
Here's an earlier version of the synthesizer (licensed under AGPL3). The MIDI CCs for controlling different parameters are listed in the source code. You'd want to clone the repo, run through the installation instructions in the mb-sound repo, do a bundle update mb-sound, then run bundle exec bin/complex_synth.rb. https://github.com/mike-bourgeous/mb-surround/blob/3823de44a...
Here's the core sound repo (licensed under BSD) with some examples for getting started: https://github.com/mike-bourgeous/mb-sound
I don't plan on making the visualizations available, in part because the system is too convoluted and they probably only work in my specific environment.
-
Python, unlike C, has the mod operator always return a positive number
Ruby's % operator behaves the same way, for both integer and float values. A positive-only modulus function is useful for wrapping angles. This bit me a week or two ago when I was porting audio algorithms from Ruby to C, and had to implement a positive modulus function[0].
[0] https://github.com/mike-bourgeous/mb-sound/blob/a8eb1232ae35...
-
Learn more about the Fast Fourier Transform, animated in 3D [video]
Someone asked somewhat recently about visualizing analytic signals in 3D (https://news.ycombinator.com/item?id=28633829). This is my video, with 3D animation, summarizing the FFT and analytic signals, plus a review of digital sampling.
The submitted link is for a blog post about the video which includes a video transcript (repeated for reference: https://blog.mikebourgeous.com/2021/10/04/fast-fourier-trans...)
Here's a direct link to the video: https://www.youtube.com/watch?v=iyjIVSnrPSo
I've opened the Ruby code building blocks I use to produce these visualizations (which are not open): https://github.com/mike-bourgeous/mb-sound
-
Tenderjit – A JIT for Ruby Written in Ruby
Yeah, here's my main sound repo: https://github.com/mike-bourgeous/mb-sound
There's also an FFI wrapper for jackd: https://github.com/mike-bourgeous/mb-sound-jackffi
I'm certain there are still improvements that could be made to the APIs and to performance, so I'm not currently releasing these on rubygems.
-
Ask HN: How to get started with audio programming?
Edit: My goal is to make a mini-synth which takes input from the computer keyboard.
If you are a Ruby programmer, you could use this rubygem I wrote: https://github.com/mike-bourgeous/mb-sound
A video about using that gem to make a synthesizer: https://m.youtube.com/watch?v=aS43s6TWnIY&feature=youtu.be
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: https://www.youtube.com/playlist?list=PLpRqC8LaADXnwve3e8gI2...
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.
What are some alternatives?
zynthian-sys - System configuration scripts & files for Zynthian.
tenderjit - JIT for Ruby that is written in Ruby
camilladsp - A flexible cross-platform IIR and FIR engine for crossovers, room correction etc.
helm - Helm - a free polyphonic synth with lots of modulation
JUCE - JUCE is an open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, LV2 and AAX audio plug-ins.
rhizome - A JIT for Ruby, implemented in pure Ruby
elkpi-sdk - Yocto cross-compiling toolchains for Elk on Raspberry Pi 3 32 bit
mb-sound-jackffi - An unstable Ruby FFI interface for the JACK Audio Connection Kit
awesome-musicdsp - A curated list of my favourite music DSP and audio programming resources
zynaddsubfx - ZynAddSubFX open source synthesizer
overtone - Collaborative Programmable Music
gen-rack - Create VCV Rack modules from gen~ exports