Visualising the Audio Spectrum in 3D - Max/MSP Tutorial

Поділитися
Вставка
  • Опубліковано 20 січ 2025

КОМЕНТАРІ • 76

  • @TheBigLou13
    @TheBigLou13 Рік тому +5

    This video made me understand Max/MSP! I never quite understood what was going on before but now it makes sense. You're explaining it very well and it was easy to follow for someone with no prior knowledge of Max/MSP. I know a couple of programming languages and enjoy sound design - so that might have helped - but still: You're a good teacher! Thank you for your lessons and shared knowledge!

  • @juanchis.investigadorsonoro
    @juanchis.investigadorsonoro 11 місяців тому +2

    This videos have been so helpful! Thanks so much. Max is huge, so this type of videos are so valuable. ❣

  • @peterponomarev1622
    @peterponomarev1622 3 місяці тому

    Your channel is great! I've seen some of the same techniques shown in other channels, but you do a great job of explaining the "why" and the "how" along the way.

  • @avantagonist
    @avantagonist 2 роки тому +4

    I've been wondering how to do this for like 10 years in jitter, thank you!

  • @ampskillmusic
    @ampskillmusic Рік тому

    This is a great idea and an absolutely excellent tutorial. Thank you for making it.
    I found that expanding the horizontal dimension in the "spectrum" matrix slows the rotation down without getting the choppiness of changing the frame rate. I got a result I liked with 1024. More cells to fill takes more time to fill them.

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

    I'm a life long visual Artist of over 40 years, recording artist & engineer. I draw with sound based on specific rules such as no sound *no draw* - there would not be a sphere representation, if quiet, draw light/faded (creates distance/depth), draw points or lines to specific side of the page from whatever L/R pan you hear although this is a bit imposed/forced ideology of the music engineer, not the scope of the audio spectrum in 3D space. During the duration of the music you may hear a constant note or a blip a 1/64 for example. I have mapped out other rules. Anyway, ideally, I think that if the interpreting algorithm is correctly made, it should visually produce the same artwork even better than me and if another artists draws by the same rules, they will replicate the same artwork too based on the specific music. Music is math but how to extract it in 3D may reveal hidden images/thoughts and experiences artists had through out the ages.

  • @lastnamefirstname6035
    @lastnamefirstname6035 2 роки тому +1

    Wow I love this! The audio + spinning disk/sphere is soo cool! I wonder what other shapes will work well with this... So many options... Thank you so much for this tutorial!

    • @HearingGlass
      @HearingGlass  2 роки тому

      Thank you for watching and enjoy exploring!

  • @freecircles
    @freecircles 2 роки тому +4

    Thank you. Very interesting and inspiring!

  • @jmfs3497
    @jmfs3497 Рік тому

    What did you hit to get the white square in the window after creating setcell at 15:46 ?
    EDIT: I think I got some file path mixed up between FreqAnalysis and FreqVisuals patchers. I might have to rebuild a chunk of it.
    EDIT II: I still seem to be missing something with the setcell.
    EDIT III: Downloaded yours and it works just fine. (Looks amazing by the way). Yours would not scroll when mine was concurrently open, but as soon as I closed mine yours immediately started scrolling. I will compare them to one another some time.
    EDIT IV: LOL. It just randomly worked after opening and closing some files. Strange glitch.

    • @HearingGlass
      @HearingGlass  Рік тому +1

      All good if it works in the end!

    • @jmfs3497
      @jmfs3497 Рік тому

      @@HearingGlass Thanks for sharing your processes behind MaxMSP, by the way
      ! I demoed this one to some friends yesterday and they thought it was like magic.

  • @marcelomellado1969
    @marcelomellado1969 2 роки тому +2

    too much info for my beginner knowledge haha but thank you!!! this one is amazing. Hopefully soon i will return to this and understand all the used logic

  • @maokus
    @maokus Рік тому

    Thank you for this

  • @olamideabatan9579
    @olamideabatan9579 Рік тому

    at 10:40 i tried to do the same thing but my pfft object removes the output what could be the issue?

    • @HearingGlass
      @HearingGlass  Рік тому +1

      Did you make sure to save the fft patch in the same folder as your main patch and refer to it as an argument for the pfft object?

    • @olamideabatan9579
      @olamideabatan9579 Рік тому

      @@HearingGlass ahh works now. I just didnt save the main patch yet. Saved it and refreshed and it works . thank you!

  • @jack_lion
    @jack_lion 2 роки тому

    Nice work! Thanks for the upload

  • @gavinpeters9531
    @gavinpeters9531 3 місяці тому

    Hey, I don't understand why the 2 jit.matrix objects have the same name "analysis" but have different planes/dimensions/parameters! Could you please explain this, thanks

  • @mycosys
    @mycosys Рік тому

    Dude i'm just starting this video and i'm almost too excited to watch. Havent done a max patch since a workshop 20y ago, but have studied mechatronics, enjoy embedded.
    Figured i'd make a visualiser inspired by IRCAM's The Snail as something to get my hand in, looking at the opening patch im so excited git and gen are just made for it. It looks live you have already done 90% of the work.
    Hoping i can then turn it into a shape based tune correction for custom tuning shapes for the multiple oscillators and filters on a synth, esp after seeing that initial patch. Any hints on direction deeply appreciated.

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

    thanks for this great tutorial! for some reason i have a hard time having the same visual result as you. I used your tutorial to do my own and downloaded your patches and the visualisation looks different than your result (somewhat more flat and dense)... what do you think the problem could be ?

    • @HearingGlass
      @HearingGlass  5 місяців тому

      I would check your window size and length of the lines in jit.gl.mesh.

  • @abergdahl
    @abergdahl 2 роки тому +2

    Great video, thanks.. one slight issue for me is that i can't seem to change the color of the lines, color in the mesh does not do anything. Any tips on why would be appreciated :-)

    • @abergdahl
      @abergdahl 2 роки тому +1

      Sorry found it myself i had to add swiz on rbg to change color.. Of course

    • @hildaer-lb4gv
      @hildaer-lb4gv Рік тому

      @@abergdahl i have the same problem,please help!

  • @Asep-civil
    @Asep-civil 9 місяців тому

    what u click for set specific val on 15:47

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

      That is a message box with the "setcell 0 1 val 1., bang".

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

    Hello, thanks for great tutorial!
    Unfortunately I'm stuck at dstdim section. I can not find the 'dim' node in max. Am I missing a package or something else maybe?
    Thanks in advance!

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

      Giving the [jit.matrix] object all three attributes should work: "@usedstdim 1 @dstdimstart 0 0 @dstdimend 0 255".

  • @nicolaslan7950
    @nicolaslan7950 Рік тому

    😓The first time I followed the operation, it was successful. However, there seemed to be an error when I saved it afterward, making it irreversible. Even at the 11-minute mark of the video, when I clicked on the small dots, there was no change in the image. I've tried for several hours but still couldn't find the problem. When I saved it, I had already put them in a folder called "patchers." I wonder if there's any possible solution? thanks a lot for your video teaching

    • @nicolaslan7950
      @nicolaslan7950 Рік тому

      Forget to answer, I just rename the folders and try to follow again and worked : )

  • @vernetdorian5066
    @vernetdorian5066 7 місяців тому

    Hi ! Love your patch, looks particularly good :) I've tried to download the repository on git, but seems like you've blocked the access. Do you think I could have an access, I'd like to try it but I only have a free version of Max and can't save the patch i'm doing :/

  • @InnerAtmos
    @InnerAtmos Рік тому

    This is fkn amazing!

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

  • @henriquematias1986
    @henriquematias1986 2 роки тому

    Very nice! Would be great to tilt the spectrum somehow to compensate for the FFT results being tilted towards the low frequencies.
    Fabfilter Q3 has a 4.5db/octave tilt.. Any suggestions on how to achieve that?

    • @HearingGlass
      @HearingGlass  2 роки тому

      Good question! I can't think of anything of the top off my head, but probably some kind of shaping function should do the trick.

    • @ampskillmusic
      @ampskillmusic Рік тому +1

      use [jit.op @op + @val 1] into [jit.op @op log] before you pass it into the gen. I'm not sure if this is the same kind of octave tilt as in fab filter, but it gives you the log of the spectrum, which should push more of it into the upper range.

  • @tommcmullin4518
    @tommcmullin4518 Рік тому

    Hey Hearing Glass!
    Phenominal video! I am using this for a uni project, and I found these a really useful way to analyse different audio files! I really want to save the 3d display (the step before the globe) so I can compare images of different files to eachother. Is that possible with Max 8?
    And is there a way to put a scale in the display to help with comparison?

    • @HearingGlass
      @HearingGlass  Рік тому

      I can think of a few approaches: You can try to save the Jitter Matrix that goes into the 3d display by sending jit.matrix the "write" message, and then load different matrices in jit.matrix by sending it the "read" message. You can also create multiple copies of jit.gl.mesh in order to visualise multiple analyses at once. Good luck!

  • @hermangritz4234
    @hermangritz4234 2 роки тому

    Thanks for the tutorial! How would you go about generating a "shape" out of a separate 3d object (.obj) to use as a shape for the freq spectrum? Like you did with the sphere, but using a 3d object instead.

    • @HearingGlass
      @HearingGlass  2 роки тому

      jit.gl.model is a good place to start. Check out its help file to see how it's implemented into jit.gl.mesh!

    • @hermangritz4234
      @hermangritz4234 2 роки тому +1

      @@HearingGlass I've managed to hook the 3d object with gl.mesh, but this way the spectrum and the 3d object are just 2 things independent of each other. My understanding is that the coordinates of the 3d object should be somehow loaded into the gen patch (where you created the sphere). I tried creating a second input in gen and hooking up the object but it seems like there's another step missing. Appreciate your help!

  • @g.porter2633
    @g.porter2633 Рік тому

    I love what you have done and I am having a hard time getting the first jit.pwindow to work. My Jit.fpsgui is getting 1x256. and from what I can tell everything matches what you did. Any ideas? I think it has to do with my visual windows. I patched music to play through it all and I see its signal coming into max.
    Another question in the plan field is there a way to leave a not on the X, Y and Z that would stay there the whole time. For example the note for Z would be amplitude.

  • @philkougias8993
    @philkougias8993 2 роки тому

    is this possible to integrate in an ableton project or to receive the audio from ableton instead of the microphone?

    • @HearingGlass
      @HearingGlass  2 роки тому +1

      Absolutely, you can easily do this with Max for Live.

  • @unnikrishnankalidas967
    @unnikrishnankalidas967 2 роки тому

    Thank you for this video! Im trying to use your project, but I am facing a fairly simple issue (I'm new to MAX). I am not able to click the toggle button to respond. Even my button seems to not respond to clicks. If I try to connect the the button to the microphone input at that instant I get a light blue representation on the button, but it does not stay, please help!

    • @HearingGlass
      @HearingGlass  2 роки тому +1

      Do check if your patch is locked when you are trying to click the toggle.

    • @unnikrishnankalidas967
      @unnikrishnankalidas967 2 роки тому

      @@HearingGlass Hi tahnk you so much! I ran into another problem after shutting down my laptop. The scroll function doesnt seem to work. I got the sphere runninf too, but the there is just one dimentional matrix that is formed and no scroll of the graph. Please help :/

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

    I can't find the dim object. How can I do it?

  • @瑜琪琪
    @瑜琪琪 Рік тому

    Thank you very much for the video.Very interesting and awesome! I have just started to learn. Could I repost this video to China's video platform so that more people can see?

    • @HearingGlass
      @HearingGlass  Рік тому +1

      As long as you credit me and my channel, go ahead!

  • @diwaves1855
    @diwaves1855 Рік тому

    How can you record or export the projections?

    • @HearingGlass
      @HearingGlass  Рік тому

      Check out the Spout and Syphon packages!

  • @davidluria3877
    @davidluria3877 Рік тому

    Cool. Are you selling this as a solution? Interested.

    • @HearingGlass
      @HearingGlass  Рік тому +1

      Everything I post on this channel is free to learn from and to use.

  • @Xyva43
    @Xyva43 Рік тому

    how would you change the colours or something of this?

    • @HearingGlass
      @HearingGlass  Рік тому

      You can use the fourth inlet of jit.gl.mesh to set the color of each vertex. Check out the help file.

  • @bernardogonzalez3306
    @bernardogonzalez3306 2 роки тому

    Thank you very much for the video, it looks awesome! Is there any way to connect this device through Max for Live??? I've been trying for days without a solution :(

    • @danjwheatley
      @danjwheatley 2 роки тому +2

      you should be able to replace the ezadc with the live audio in for an audio effect, but you'll only be able to edit the jit.gen if you have full version of max i think

    • @bernardogonzalez3306
      @bernardogonzalez3306 2 роки тому +1

      @@danjwheatley Thanks!!

  • @atharvabankar1312
    @atharvabankar1312 Рік тому

    How to zoom In/Out in that visual window?

    • @alercequemado
      @alercequemado Рік тому

      Same problem....

    • @alercequemado
      @alercequemado Рік тому +1

      use the Alt key, and move the mouse to zoom in and out... also, with the Control key youy can move the entire frame

  • @escaped_mind
    @escaped_mind Рік тому

    thanks this is great

    • @escaped_mind
      @escaped_mind Рік тому

      How could I change the background colour?

  • @bluemonkeys8708
    @bluemonkeys8708 Рік тому

    thank you !!!!!!!!!!!!!!!!!!!!!!!

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

    🙏👍🪻✅

  • @alexwalters4111
    @alexwalters4111 Рік тому

    Hi there! I'm using this as inspiration for one of my own creative coding projects :) my jit.pwindow does not scroll to update with any new fft analysis', do you know why this could be?
    Thanks!

    • @HearingGlass
      @HearingGlass  Рік тому

      Hard to tell without seeing your patch - something is probably missing, like the result of the fft analysis not updating the Jitter matrix. Try downloading/remaking my patch and comparing yours with that one.

  • @uoAz
    @uoAz 2 роки тому

    Hello! I tried everything but,---" jit.matrix spectrum 3 float32 250 256 @usedstdim 1 @dstdimstart 0 0 @dstdimend 0 255" , this part just doesn't work for me. The visual stays at the corner of the window it doesn't start to move like your.I think i did everything like you.What could be the problem?

    • @HearingGlass
      @HearingGlass  2 роки тому

      The patch is in the video description, make sure to compare what you have and what I made very closely. Chances are there is a tiny mistake hidden somewhere.

    • @enkisumer
      @enkisumer Рік тому +2

      I had the same issue, the Setcell 0 1, val 1.,bang message
      needs a loadbang.

    • @abbis6355
      @abbis6355 Рік тому

      You just saved me! thx!!@@enkisumer