[HN Gopher] Rust Audio Development Forum
___________________________________________________________________
Rust Audio Development Forum
Author : thibaut_barrere
Score : 88 points
Date : 2021-07-29 16:47 UTC (1 days ago)
(HTM) web link (rust-audio.discourse.group)
(TXT) w3m dump (rust-audio.discourse.group)
| thibaut_barrere wrote:
| I find that the Rust ecosystem is shaping nicely for audio-
| related stuff, and found this forum, so sharing it here.
| dimal wrote:
| I had been thinking of getting into audio processing (to create
| a custom Eurorack module) and thought Rust would be nice, but
| everywhere I looked, people recommended C/C++ -- I think since
| there are so many existing libraries to pull from. But I am not
| a fan of C/C++, to put it lightly. Can I ask, what has improved
| about the Rust ecosystem that you think makes it viable?
| jjice wrote:
| Any good resource for someone to learn how computer (is digital
| the right term>?) audio works? I have no clue what the
| raw/output/input formats are and how we compress that and such,
| but it's incredibly interesting and I'd love to learn.
| crs0 wrote:
| digital audio, yep -- in contrast with analog audio :)
|
| The TL;DR is that you make your computer spit out a certain
| amount of distinct values per second (like, say, 44100 floats
| per second, times two for stereo), and your DAC will convert
| that stream of numbers into an audio signal that your speakers
| will be able to use to produce sound.
|
| The way I like to mess around with ideas is to grab a library
| that writes to WAV files and see what I can make -- a Sine
| oscillator at a certain given frequency is a good place to
| start -- and then you can load that WAV file into Audacity (or
| your other favorite sound editor of choice) and analyze what
| you just made.
|
| More complex audio topics will require some DSP knowledge; I
| started teaching myself by reading
| http://www.dspguide.com/pdfbook.htm, but there are a decent
| amount of other resources to learn from too. Especially ones
| that focus more on the audio aspects of DSP.
|
| There are some interesting programming challenges in the audio
| space; for example, if you want to pipe sound directly to your
| speakers (or in a plugin for a DAW), you're going to have to
| make your code real-time friendly. Designing an "audio graph"
| to hook devices up together (as if it was a modular system) can
| be a pretty interesting problem space when you're designing for
| real-time, polyphony, efficiency, etc. It's a fun topic if
| you're into both programming and music!
| jjice wrote:
| Thanks a lot, that was great overview!
| adamnemecek wrote:
| At some point, I'm planning on using webaudio as a starting point
| to implement a JUCE like framework with VST and AU support. The
| webaudio code is already in servo so doing this might not be too
| bad.
| gavinray wrote:
| Out of curiosity, how would this work?
|
| You port WebAudio API to a compiled language or use a JS
| interpreter that has it?
|
| Would be interested to try this
| cmrdsprklpny wrote:
| Here's an in-development audio framework which uses JS. I
| haven't used it, but it looks interesting.
|
| https://www.elementary.audio/
| adamnemecek wrote:
| Not quite. There would be no JS. The WebAudio API is
| implemented in Rust. You would just use the innards (buffers,
| audio graph etc.) and leave it as a Rust framework.
|
| LabSound [0] has done something similar with C++ and WebKit.
| They took the WebAudio implementation and made it into a C++
| framework.
|
| [0] https://github.com/LabSound/LabSound
| gavinray wrote:
| > The WebAudio API is implemented in Rust
|
| Ah yup, for Servo that would make sense eh?
|
| Well neato. I hope you do, seems useful. Audio landscape
| needs more options besides JUCE and iPlug2.
| gavinray wrote:
| Just as a heads up, the Discord server for this group is much
| more active than their forum FWIW. Lovely group of people.
|
| https://github.com/RustAudio
|
| https://discord.gg/b3hjnGw
| ericwood wrote:
| The Rust Audio discord is fantastic, and the people there are
| extremely helpful. They gave me a lot of resources for getting
| started with DSP, and the authors of various libraries were
| able to lend a hand when things went south. There's some really
| exciting stuff happening in that world!
| mxmilkiib wrote:
| For those not a fan of proprietary chat systems, there's a few
| Rust leaning folk hanging out in #lad #jack #lv2 etc on
| libera.chat.
| jcelerier wrote:
| Can confirm, I once tried to setup a community on discord and
| got my account banned without any possibility for appeal and
| without ever having idea of what went wrong, never again
| darthrupert wrote:
| That FOSS projects choose Discord out of all the options
| shows a severe lack of judgment.
| crs0 wrote:
| I donno, it's been working pretty well for us so far
| -\\_(tsu)_/-
|
| The chat started off as a Telegram chat for some of us
| working on the Rust VST crate, but as we started
| discussing wider Rust audio topics, we found that the
| lack of "topics"/channels/whatever wasn't great. For
| better or worse, we chose Discord to migrate to, and it
| solved the channels issue for us.
|
| Migrating a community like this is a tough call in the
| first place; there's always going to be some people that
| don't want to use or install _yet another_ chat app. Our
| goal was to fragment the community as little as possible,
| and a fair amount of people at the time already used
| Discord for other stuff. So, Discord it was.
|
| I think if we were migrating today I'd push harder to
| move to something open (probably Matrix?), but as of
| right now Discord has been a decent enough platform.
| blendergeek wrote:
| Unsolicited advice:
|
| Bridge the entire community to Matrix.
|
| Matrix allows rooms and communities from other services
| to be bridged in so that discussion can continue with
| people still tied to proprietary platforms. The Pine64
| community has done this very well and I regularly use
| their chats via Matrix while others use IRC, Discord, or
| Telegram.
| crs0 wrote:
| Noted. I haven't really looked into these bridges quite
| yet, but it is probably worth looking into sometime.
|
| I'll have to look into how well the bridges work; I don't
| know if I'd be too excited if all the cross-platform
| messages just showed up as a bot message with the user's
| name prepended to the message? Plus, it seems like it
| would be yet another thing to pay attention to for
| moderation/administration purposes (make sure something
| doesn't break, make sure nothing nefarious isn't going on
| in each server, etc).
|
| I will bring it up to the other admins/mods of the
| discord, though.
| jcelerier wrote:
| I wish that there were better ways but some niche discord
| servers have more members than the entirety of freenode /
| libera... sadly that's where the human beings _are_
| duped wrote:
| It's the path of least resistance.
| smoldesu wrote:
| This doesn't seem to be for an OSS project? Just clicking
| around the forum, it seems to be about audio-related
| topics through the context of Rust, with no mention to
| software licensing or availability.
|
| Sure, I would have loved for this to be a Matrix server,
| but beggars can't be choosers. If the Rust audio devs are
| using Discord, that's where you have to go to find them.
| blendergeek wrote:
| https://github.com/RustAudio
|
| They list their official Dicourse/Discord chat there. I
| believe this is a set of Free Software projects of a
| sort.
| bool3max wrote:
| What a condenscending thing to say. Perhaps the
| maintainers simply aren't willing to waste valuable time
| and energy on inferior alternatives that attract fewer
| people.
|
| The usability and accessibility of a platform such as
| Discord simply can't compare with FOSS alternatives.
| mkw2000 wrote:
| Yea, what a mistake choosing the most popular and
| appropriate tool for the job
| bsder wrote:
| Agreed.
|
| The Rust Embedded folks saw what was coming and chose
| Matrix even back when it wasn't nearly as good as it is
| now.
|
| One of the things about the voting to make the choice was
| that a lot of people gave an informal thumbs down on
| alternatives to their main choice. Discord came in for a
| _HUGE_ amount of thumb downs. No other option even came
| close.
|
| For some reason, a lot of people fail to estimate how
| many people really loathe Discord.
| nitrogen wrote:
| I've been an advocate for and developer of Free software
| for a very long time.
|
| But the UX of everything Free is just horribly bad. I've
| written a toy softsynth for myself in Ruby and was
| looking for some MIDI editing software that I could use
| to quickly throw some notes in a piano roll and draw some
| curves for various CCs, and export to a .mid. But
| everything was incredibly cumbersome. Of the several I
| tried, only Ardour even allowed the control of arbitrary
| CCs, and I had to dig to find it, and it wanted to create
| an entire directory hierarchy before I could even draw a
| single note.
|
| If there was going to be a Free revolution of people
| donating and volunteering to overthrow the proprietary
| software world, it would have happened a long time ago.
| Free software has an insurmountable design, development,
| and discovery problem.
|
| If I were looking to start a community today, and
| actually have people join it, I'd go where the people
| are, and that is Discord.
| jancsika wrote:
| > Free software has an insurmountable design,
| development, and discovery problem.
|
| Someone in the 80s probably wrote that free software has
| an insurmountable tooling, compiler, and operating system
| problem.
|
| The surmountable hurdle is for key free software
| developers to learn _enough_ about design and discovery
| to honor and encourage the very few people who currently
| show up to do that work. If they made the experts feel
| like rock stars I 'm sure more would turn up to do work
| for free.
|
| I offer as evidence the number of free software devs who
| work on free software tooling, compilers, and operating
| systems as evidence of this.
| analognoise wrote:
| I think the obvious lack of uptake of the free software
| for applications makes GP right.
| qaq wrote:
| Well as things stand now they are in most cases very well
| compensated employees of major companies who are working
| on these projects as part of their job.
| mxmilkiib wrote:
| Linux took over the server market, and Matrix looks like
| it will take over the chat/VOIP market. Even if that
| requires top-down investment, it's still a win for FOSS.
|
| Edit; my midi sequencer recommendation would be
| sequencer64/seq66.
| antihero wrote:
| Yep, much as it has its drawbacks, Discord is where
| people jump in and get involved. Convenience wins.
| evilsetg wrote:
| Discord, as any free propreitary online service is
| fundamentally unaccountable. Their user support is non
| existent. They disabled my account without a concrete
| reason given and now will not answer my requests to tell
| me why they disabled it. I beg any community not to use
| Discord for it does not respect it's users. Please do not
| subject other people to that.
| agumonkey wrote:
| zulip maybe ?
___________________________________________________________________
(page generated 2021-07-30 23:01 UTC)