Top 5 Languages For Audio Programming

Поділитися
Вставка

КОМЕНТАРІ • 38

  • @SarcTiann
    @SarcTiann 11 місяців тому +20

    others: SuperCollider, Faust, CSound, SonicPi, Soul

    • @WolfSoundAudio
      @WolfSoundAudio  11 місяців тому +2

      Thanks for completing the list! I've used CSound but it seems to be a little forgotten these days... Not sure if I'll ever use it again 😉

    • @LWmusik
      @LWmusik 7 місяців тому +1

      Faust is so awesome, I find it strange that so few use it

    • @mariobroselli3642
      @mariobroselli3642 6 місяців тому

      What about Go or functional languages Like Scala, Clojure and Elixir?

  • @JavierYturriaga
    @JavierYturriaga 4 місяці тому +5

    Personally I've been really liking SuperCollider lately. It makes it really easy to create some pretty cool synth patches and patterns and what not

  • @mr.shredder5430
    @mr.shredder5430 11 місяців тому +5

    Hi nice content there, can you show me a course on where to learn any specific type of c++ audio library like BASS, portaudio, synthesia tookit or any other rather than juce, because i wanted to make a music engraving software and ive been struggling to find the resources to learn what i want, and right now i dont know where to start.

  • @AngelMarquez-on8bo
    @AngelMarquez-on8bo 11 місяців тому +6

    overall that is a great list, I would disagree about zig not being ready for audio programming and DSP programming. Its driving factor is you can cross compile zig, c, and c++ code. This allows you to inject zig code slowly into an existing c/c++ project. It has defaults similar to rust with safe and fast builds. It has comptime which is insanely amazing and is generics on steroids. It does have a package manager that works with zig, c, and c++ built into the compiler. Although it has breaking changes and not 1 yet. You can totally develop in the audio industry with it

    • @WolfSoundAudio
      @WolfSoundAudio  11 місяців тому +1

      Wow, thanks for the detailed description: I must check it out then 😉

  • @naelblogger7976
    @naelblogger7976 10 місяців тому +6

    Some other good options: SuperCollider, CSound, Faust

  • @JohnSmith-pn2vl
    @JohnSmith-pn2vl 6 місяців тому +4

    Max is great for prototyping things quickly

  • @sanjaux
    @sanjaux 11 місяців тому +7

    I absolutely want more people to start working with cmajor. I feel like it’s a super natural environment. Being able to get up a working UI and even iterate on it with basic web code (or even your favorite web frameworks) is motivational and the DSP is super straightforward as far as I can tell. Although I don’t currently have enough understanding of DSP to make extensive comments on the DSP workflow I found it much easier to get going with it than JUCE. Would love to see an expert like you try it!

    • @sanjaux
      @sanjaux 11 місяців тому +2

      Disclaimer though if you want to build a VST with it you would be back in JUCE and C++ and CMake territory. However, the giant hurdle that can be ends up being remedied by what you’ve already made in cmajor leaving you with a build-able project in a few commands and setup.

    • @WolfSoundAudio
      @WolfSoundAudio  11 місяців тому +3

      Thanks for the input, I may try it out on the channel one day 😉 It's great that it’s being used.

  • @nathanlively
    @nathanlively 7 місяців тому +1

    I’m not sure why you say MATLAB is so expensive. A home license is $150. Maybe that’s more than free for a Python IDE?

    • @captain_crunk
      @captain_crunk 6 місяців тому

      Perhaps $150 isn't expensive for someone who uses Matlab to its fullest extent. However, in the context of this video, which briefly describes relevant programming languages in simple terms, it's entirely reasonable to assume the target audience member is less experienced. So, I don't think the people this video is intended for would get their money's worth if they bought Matlab.
      If I may ask, do you use Matlab yourself? If so, personal bias towards Matlab might be a slight factor here. But to be fair, even though I haven't used Matlab myself, everything I hear about it very positive - with the exception of using it as a beginner for creating audio processing software.

  • @estevancarlos
    @estevancarlos 10 місяців тому +2

    I think you were too dismissive of Max/MSP considering how you're supportive of Pure Data. The licensing is different but there's also a massive community of audio specialists working with Max. In fact, there are many developing products in Max. Additionally, you can now export Max projects for the web and Raspberry Pi.

    • @sharpiedory
      @sharpiedory 9 місяців тому

      Agree. I prefer max to faust for rapid prototyping. Gen~ feature is key. You cant do this in pure data. Now you can export to web and hardware too. Also good for prototyping with visuals/opengl/etc…

  • @BernardoBarros
    @BernardoBarros 3 місяці тому +1

    SuperCollider

  • @XperienceSoundDesign
    @XperienceSoundDesign 2 місяці тому +1

    i have a prototype of my vst,
    its already being used in the chicano hiphop scene.
    CAN I GET IT BUILT ON MY OWN ENGINE.

  • @frankjamesbonarrigo7162
    @frankjamesbonarrigo7162 Місяць тому

    Supercollider doesn’t have single sample feedback, but the pattern system is awesome

  • @Atezian
    @Atezian 2 місяці тому +1

    Thank you, sir. I was really wondering but I am now set and feel secure in choosing C++

  • @QuasiUnlimited
    @QuasiUnlimited 6 місяців тому +2

    Not mentioning Faust, but listing Python or even mentioning Matlab but not SuperCollider indicates the author did not make a good research before the video and you should research further into more credible sources.

    • @gnprice
      @gnprice 6 місяців тому +1

      In fairness, he did say it was his personal list of 5. Also, I imagine the inclusion of Matlab and Python might be targeted to his audience of (likely) newer students who might be more familiar and comfortable with scripting languages to get started with learning concepts. Along with Faust and PD, JOS from CCRMA has a lot of MATLAB code out there 🙂

  • @ovi1326
    @ovi1326 2 місяці тому

    nim has been around since 2008, it's been a stable esolang for quite some time

  • @NahminNooman
    @NahminNooman 4 місяці тому +2

    Subscribed!

  • @jeremiahlyleseditor437
    @jeremiahlyleseditor437 8 місяців тому +1

    Great Video.
    Which language is best for programming VSTs for DAWs?
    Is JUCE one of them?

    • @Atezian
      @Atezian 2 місяці тому

      Maybe actually watch the video. JUCE isn't a language

  • @moliver_xxii
    @moliver_xxii 11 місяців тому +1

    cześć! i was expecting some negative comments about MATLAB from the programming side (i have: parentheses and one-indexed arrays)... if you need to show a quick idea and are familiar with linear algebra is really efficient as a language. the GNU octave environment (which is almost MATLAB if you don't care about details) is free so...
    when you have to make an audio processing demo it works fine (i have used it for vocal separation and reverb impulse response extraction with enough success :-) )
    dzięki!

    • @WolfSoundAudio
      @WolfSoundAudio  11 місяців тому +1

      Of course, there is Octave but I never got it to work as I did Matlab 😁 I should have mentioned it though so many thanks! Some DSP researchers I know use it. Still I prefer Python.

  • @harrisonmbemba9582
    @harrisonmbemba9582 4 місяці тому +1

    Honestly just happy you mentioned nim lol

  • @ovi1326
    @ovi1326 2 місяці тому

    Speaking from experience - doing stuff on the audio thread is a dantean experience in rust. It's definitely not for beginners. So you know like in C/C++ you can prealloc an arena or maybe an object pool and just use it? In rust custom allocators are unstable and prepare yourself for wrapping every single one of your objects in MaybeUninit. Shared mutable state is kinda unavoidable in audio - hence you will end up using RefCell or UnsafeCell more than a healthy amount. Slice accesses are bound checked unless the compiler can prove that it's impossible to get out of bounds, So you either go with processing every sample in a foreach loop using maps and zips or have to agree to making a wrapper type around a raw pointer that overloads the [] operator which is a footgun waiting to fire (rust is way more strict about aliasing than c++). And the solution is to actually place asserts that will be present in your release build as well, which check if your input and output buffers have the same length - how would one guess that?

  • @System-1541
    @System-1541 3 місяці тому

    Have you looked into vult-dsp? What do you think of it?

  • @deformator2
    @deformator2 10 місяців тому +1

    Świetny kanał.

  • @sxmmii_gxchaa774
    @sxmmii_gxchaa774 11 місяців тому +1

    🎉❤❤❤❤🎉

  • @OleksiiRyzhyi
    @OleksiiRyzhyi 11 місяців тому +1

    Great video! Thanks.