Max | Designing your own Reverb (with gen~) [Full Lesson]

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 ก.พ. 2025
  • visit www.tune4media.com
    link to CCRMA ccrma.stanford...

ความคิดเห็น • 42

  • @DevashishGuptaOfficial
    @DevashishGuptaOfficial 3 ปีที่แล้ว +21

    There's an interesting property to those delay sample numbers, they're coprime to each other, which minimizes the noticeable repetitions of the feedback

  • @sxsxk
    @sxsxk 4 ปีที่แล้ว +2

    thanks! You're expert enough to explain your learnings and share. that's a pretty good inspiration.

  • @jamiepond
    @jamiepond 4 ปีที่แล้ว +3

    Applying subtle chorus to each fbcf will help make it smoother and smoothen out those resonances.

  • @oracledsp
    @oracledsp 5 ปีที่แล้ว +10

    Thanks! I feel like there isn't enough gen/jitter related stuff on TH-cam when compared to the wonderful amount of max/msp/m4l tutorials.

    • @Tune4media
      @Tune4media  5 ปีที่แล้ว +2

      I agree

    • @flutur8i8
      @flutur8i8 3 ปีที่แล้ว

      for Jitter check Federico Foderaro Amazing Max Stuff

  • @flaminggarlic
    @flaminggarlic 5 ปีที่แล้ว +10

    Great work, I've just started learning this myself and this helped me wrap my head around it quite a bit. One thing that I noticed you did that was cool was using a coefficient to scale the numbers on the filters. It is worth noting that the numbers chosen for those values are mutually prime (or something like that) meaning they aren't divisible by the same numbers. What this does (to my limited knowledge), is ensure that your reflections aren't doing a bunch of lining up at regular intervals. I think this keeps the phase smear smooth but I am far from an expert.

    • @normanfreund
      @normanfreund 2 ปีที่แล้ว

      The same is done for struts in duct fans, so the blades do not pass over the struts in sync to build up vibrations.

  • @DJChappie001
    @DJChappie001 3 ปีที่แล้ว +3

    Please do more Max tutorials!

  • @GoGoGoRunRunRun
    @GoGoGoRunRunRun ปีที่แล้ว

    Hey, thanks alot for the video! I usually do sequencers, modulation and stuff like that, but wanted to mess a bit with dsp fx. I actually think the reverb sounds quite nice, pretty smooth reflections. Not harsh or springy. Pretty cool, thx.

  • @NedRush
    @NedRush 4 ปีที่แล้ว +3

    cool vid

  • @henriquematias1986
    @henriquematias1986 5 ปีที่แล้ว +5

    great stuff, thanks for sharing!
    would be nice to see a similar video with "comb filter", "stereo phaser", "pitch shifter" and some other similar effects!
    for the reverb, you could potentially have 2 1-pole filters ( lp and hp ) before the reverb patch and/or perhaps in between the feedback loops?

    • @Tune4media
      @Tune4media  5 ปีที่แล้ว +1

      henrique matias thank you. More will come.
      I think it’s a good idea to encase the reverb in a bendpass filter. I’d personally try at the end of the affected signal chain. To make the signal coming into the effect chain as pure as can be.

    • @henriquematias1986
      @henriquematias1986 5 ปีที่แล้ว

      @@Tune4media perhaps band-reject filters would also be awesome, specially if they're modulating!!
      are you planning to do more of these with other effects? it would be great to see this as a series!!
      thank you

    • @Tune4media
      @Tune4media  5 ปีที่แล้ว

      henrique matias that’s cool, I should try this! Thank you.
      I am planning of doing more videos like this.

  • @ArctaProductions
    @ArctaProductions 4 ปีที่แล้ว +5

    Theres some phase cancellation on your final reverb. It's impossible to hear it on a mono phone speaker

    • @Tune4media
      @Tune4media  4 ปีที่แล้ว +1

      You're right, in my downloadable m4l version I've actually fixed this

  • @GamerExtremeITA
    @GamerExtremeITA 5 ปีที่แล้ว +1

    Love you so much

  • @andso
    @andso 4 ปีที่แล้ว +2

    Maybe I do not fully understand, but it looks like your implementation of the allpass filter is not correct. You're feeding signal with gain b0 back to the delay, but from the diagram delay line should be fed back to itself via the -Am coefficient (+ the input signal), and this sum is then going through the b0 and summed with the output of the delay line.

    • @vojkofau
      @vojkofau 4 ปีที่แล้ว

      I noticed that too, it doesn't make sense to me

    • @vojkofau
      @vojkofau 4 ปีที่แล้ว

      also I believe that the "a" factor is not supposed to be just -1 but that it is the 0.7 value (inverted to -0.7) in the other block diagram

    • @andso
      @andso 4 ปีที่แล้ว +1

      @@vojkofau those gains are more related to the desired configuration. Also, if I remember correctly delay line sizes are optimized for 25kHz sample rate, so it should be recalculated for the desired rate in Max according to the formulas in paper.

    • @enricodamiani6416
      @enricodamiani6416 2 ปีที่แล้ว +2

      Yes, the correct implementation should be summing x(n) with -aM, and then feed the sum into the delay input and sum the delay output with b0 to get y(n). The point is that if you do this with the aM = 1, since aM > b0 you will get a positive feedback loop that will blow everything up. You have to set aM = 0.7 (so basically set aM = b0) to make it work as an allpass filter.

  • @michaelhawthorne5516
    @michaelhawthorne5516 4 ปีที่แล้ว +5

    you totally yoinked my vid but you did a good job

  • @shimster13
    @shimster13 3 ปีที่แล้ว +1

    Thanks for this! With your help I was able to develop a custom reverb in the Unity game engine. By the way, I'm trying to find this app called Gen~ but I haven't had any luck. Can you point me in the right direction? Thanks!

    • @Tune4media
      @Tune4media  3 ปีที่แล้ว

      awesome :)
      inside Max, you have an object called gen~,
      once you load up gen~ (just like any other Max objects) you can double click this object and it will open up the gen~ environmrnt

  • @TerekkiTerekki
    @TerekkiTerekki ปีที่แล้ว

    V good ty

  • @ol.gp.4031
    @ol.gp.4031 5 ปีที่แล้ว

    Good job 👏👏

  • @osbjune204
    @osbjune204 4 ปีที่แล้ว

    good video thanks dude

  • @skyscape2087
    @skyscape2087 3 ปีที่แล้ว

    Thanks! :)

  • @robertsyrett1992
    @robertsyrett1992 5 ปีที่แล้ว +1

    Just curious, did you watch the AFnoding video on Reverb? It came out like a week after this and has a slightly different design. Always fun to compare notes. Cheers!

    • @Tune4media
      @Tune4media  5 ปีที่แล้ว +2

      Robert Syrett I did not, thanks for introducing me to this channel, seems cool!

    • @robertsyrett1992
      @robertsyrett1992 5 ปีที่แล้ว +1

      @@Tune4media node patchers of TH-cam unite!

  • @pneumador7492
    @pneumador7492 3 ปีที่แล้ว

    Sorry, absolute beginner, but how did you do the stereo gain object for the wet signal?

    • @Tune4media
      @Tune4media  3 ปีที่แล้ว +1

      This object is called 'mc.gain~' it's part of the 'MC' feature that was newly added to Max 8... in this scenario, it's basically a single setero gain slider (instead of opening two mono sliders)

    • @pneumador7492
      @pneumador7492 3 ปีที่แล้ว

      @@Tune4media thanks a lot

  • @LawlDenStore
    @LawlDenStore 5 ปีที่แล้ว

    Just went out for a walk. My feet are already fucking drenched!

  • @weirdconstructor2810
    @weirdconstructor2810 4 ปีที่แล้ว

    Really nice tutorial, but I actually did not hear any difference in the result at minute 18.

  • @FuLaShu
    @FuLaShu 5 ปีที่แล้ว

    Very good demystification. Thanks!

  • @MsZero333
    @MsZero333 5 ปีที่แล้ว +1

    Can someone explain what 'gen~' actually is? Kinda new to this

    • @Tune4media
      @Tune4media  5 ปีที่แล้ว +11

      Sergio Salinas gen~ is an object that opens up an entirely different and powerful protocol than MSP. Inside the object, patching may seem similar to Max/MSP, but it’s in fact a different language (somewhat “closer to the machine”). The gen~ process is written(or patched) in the gen language and can be actually exported as C++! While MSP is processing audio in “vectors”, gen~ is continuously processing single samples in 64bit floating number, which makes it very powerful for creating detailed and accurate signal processing.

  • @subeg
    @subeg 5 ปีที่แล้ว

    😤