ArthursAudioBPs V8 is out! Aw yeeeee!
V8 video overview: https://youtu.be/8XcHyu8yTN0
New stuff includes:
Synesthesia plugin examples
Modulation plugin example
More musical Rollplate-examples added
A lot of smaller stuff here and there
ArthursAudioBPs V8 is out! Aw yeeeee!
V8 video overview: https://youtu.be/8XcHyu8yTN0
New stuff includes:
Synesthesia plugin examples
Modulation plugin example
More musical Rollplate-examples added
A lot of smaller stuff here and there
Thanks. If itâs no trouble it would be great to see some sort of beginners video tutorials on making the most of this project. Like maybe a cool looking music visualiser that controls lighting, materials and particles effects. I havenât done much with unreal for ages and still know only basics with blueprints. No worries if not Iâll play around and try to learn more.
Iâve been a making some progress with it now and adding more frequencies has improved the look im after but itâs still displaying some unwanted behaviour. I noticed I could change the fft and type of processing in the blueprints and that has also made it bit better.
Though even after turning off normalise in beautifier itâs making out certain frequencies are way louder than they should appear. I really want it to show a more accurate spectrum like a proper analyser does.
Iâve also done bit more testing with a single frequency tone with lots of bars set to go up in 5hz increments. I know itâs unlikely to ever be as accurate as a proper analyser but its lighting many bars either side of the tone. Also no matter how I change the volume it has no affect on the bars maxing as if itâs super loud. Iâve tried a very quiet wav and turning it down in in three different places in the editor but no change.
Im guessing itâs still being normalised somewhere but I turned that off so im not sure whatâs going on?
Could you make a video with examples of what you got and what you want? Thereâs lots of stuff we could do to the analyzers. I wanna revisit, redesign and simplify a lot of the stuff thatâs been in for a while, like these visualizers.
Psst, here is a little preview of the new SpringKeys⢠piano roll. Didnât work in the preview video for V8, because of bad FPS! It is now slightly improved, by using another old computer on the network to do the video encoding. Aaand doing it in low res. Aaaand carving a pentagram on my forehead. Aaaaand turning off the other screen, and all background apps.
Basically the main issues are down to visualiser accuracy and dynamic range or normalisation going on.
Hereâs a video showing a tone going from 100hz to 800hz with frequency bars starting at 250 and going up in 25hz increments each.
Video: [video]https://i.imgur.com/P69ASMs.mp4[/video]
Testing the AudioVizBasicVolOrFreqs map and increasing frequency range I find no matter what settings I use with either a normal vocal sample or test sine tone it lacks accuracy in frequency response and how big the peaks grow.
A sound that should be quiet at certain frequencies is often made out a lot louder than it is and itâs just never very accurate or consistent if you repeat the same sound.
Another example is sometimes higher pitched sounds that have no bass still light up low bass frequencies when they shouldnât?
This image shows a simple 500hz test tone and the frequencies to analyze. It lights up lots of bars that it shouldnât but theyâre also smaller or bigger than they should be no matter how quiet i make the audio. So you can see itâs not really showing volume level either. This is with fft set to maximum.
Perhaps accuracy is a limitation with the engine but surely itâs possible to at least have the levels show the volumes better. It seems to work better on some sounds but not others.
I really appreciate any help you can offer or improvements that can be made as i think this is a great project. Thanks.
OMG! You are so right! There has been a regression at some point. For some reason that beautifier is missing a lot of stuff I implemented a while ago� HMMMMMM.
Wanna know how bad it is? That âNormalize Each Frequency Independentlyâ node was not even being used!!! Can you believe it. I swear it was implemented and in use from early on. No idea what happened.
THANKS for noticing and inquiring. I might never have seen. . Itâll be fixed in next update! In the meantime here is a temp fix inside the âNormalize Magnitudesâ function of the beautifier:
With that fix(which is horrible, it querys the arrays many times every frame, its temporary but still, eww) and some messing with the threshold, it behaves much nicer!
Threshold helps because no note is perfectly limited to a frequency, they always have overtones and stuff. Look at the spectrum of this sound https://youtu.be/m7TgZbepZtA
Hereâs a short clip of it in UE now. Also including a BETTER fix for the thing, ignore the picture a couple posts ago:p
Great work that definitely made a nice improvement and youâre right about overtones but before I didnât expect them to show up so bad.
Is there a way to smooth out the wobble effect the bars have when theyâre trying to collapse down but thereâs still peaks trying to push them up?
Im now also trying to think of a way to create a spectrum like timeline using some sort of trailing material effect but unsure best way to go?
Im not sure how easy it is to create but a pitch and bpm readout would be cool features if youâre thinking of more to add.
Thanks for the helping and im looking forward to any new improvements you might make to visualiser.
Wobble effect? Have you played with the âlower thresholdâ in Beautifier? Could be pretty high, and only react to the louder parts. Try thresholds between 0,1-0,9, it will depend on situation! Alternatively Iâd suggest messing with attack/release. Like 300ms attack, 2000 release!
Spectrum timeline can be done, if itâs recording real time, we could take snapshots of the freq values over time, every frame or second or whateverâŚThen place them along a line. In this video Candy visualizer - YouTube I do this, itâs actually a single mesh moving along a spiral line while reacting to an envelope value, and every frame or something we get itâs position, and spawn a completely still clone there. Over time it would show historic data.
The tricky part is to represent all this data in a way that doesnât melt computers. We can store the dataset as numbers over time, and feed materials, 2d sprite stuff or whatever. I probably know less than you there.
Recognizing pitches is possible already, at least from samples with the Synesthesia plugins âConstantQâ thing, it splits the freqs into notes and octaves, AND treats the data well, so we can analyze the peaks and get exactly the current pitch and harmony. Maybe I will make an example that takes a sample and spits out the finished analysis with musical info!
BPM recognition is the same, we have it through the Synesthesia plugin, with the âOnsetâ part of it. We get different peaks at the frequencies we want, and we get their magnitudes and timestamps. From this we can calculate BPM. Maybe I should make a little example that does the math and prints it.
No problem, thanks for all your input!!! Highly appreciated and helpful as you know.
V9 released!!!
Download: GitHub - ArthurBarthur/ArthursAudioBPs: UE4 project with various examples of audio-related stuff l
Chat/Discord: Arthurs...audio-visual blueprints?
No overview-video yet, buuut:
NEW Feature Examples
Other Improvements
Ccccccoooooooooooooooolllllllllllllllllllllmanawesome!
Hi this is superb work, so inspiring! Thanks for sharing your projects too, really generous and educational. I wanted to ask, Iâve played with your Timesynth example and it suffers the same timing glitches my projects are having due to being locked to the game thread. In your audio explorations have you ever found a way to make a fully game thread-independent music sequencer? Thanks for any pointers!
Thanks mate! Makes me very happy. Iâm glad we can learn and make cool stuff that donât exist!
Timesynth can work very well! We have to launch notes before we want them played, and it will launch on next quantized beat. Exactly same as any drum-machine or sample launchpad. As long as we keep our fps decent and watch it, we can use the info to know when we have to launch clips, and when itâs too late, etc. There is no sequencer built into it - we have to make our own, and it will also take into account fps, beat intervals, and what frame to launch on.
My minimal implementation in AaBPs is VERY LAZY, and doesnât think about fps at all! So it just does its thing, even if it doesnât work out because reasons. With a âsmarterâ system this should not be a problem.
If itâs not quick fire samples, but dynamic music from pre-made loops and sections, it would probably be easier to do it in blueprints, and leverage the fact that we can launch samples at specific times within that sample, and be very specific about it. So you can design your samples for this, and give them a lead-in.
Say you give all your samples a 0,2 sec silence in beginning. Normally you will start all samples with start time 0,2. When you need to launch it VERY SPECIFICALLY, you can check your tick delta, be smart, and offset the start time and say f.ex 0,197 to get right on the money.
Look at Danâs example here for the BP example. The following link is directly to the sneaky part you care most about(from around 52:17), but do watch the whole thing: https://youtu.be/yce2t85MJD8?t=3137
Haha, thanks thatâs given me some good food for thought Thanks too for that specific link to the tricksy bit of Danâs talk - feels hacky but could be a way round it! I did the watch the whole thing too, some good leads about procedural music towards the end. Iâve found out a bit more about the timing issue but donât want to derail this thread, so Iâve put it in my own question thread if youâre curious or have time to bring your expertise to it!
https://forums.unrealengine.com/development-discussion/audio/1747323-is-it-possible-to-make-a-frame-independent-click-using-timesynth
I am very grateful for what you have done. How can I create a spotlight BPs that increase or decrease the intensity and color according to the music? Can you guide me to do that. Thanks you
Hey, yes! Here is one way. Let me know more about what you want, how many lights etc, because I would do it a different way then. Thanks for the request!
Edit: Follow-up video for doing many spotlights for stage lighting etc with good performance:
The only thing that sucks about this project is that we canât give you money for it! Put that thing on the Marketplace sir!
Thank you one million!!! Yes to give this project the attention it deserves, we need dollaz. I am WORKING ON IT
AaBPs v1.0 (currently at 0.9.6) is aimed for marketplace.
Meanwhile, you CAN give your direct support by paying for any of these âgamesâ here: https://diggart.itch.io/