Hey, it's Anfa and you're watching Anfa vlog today. I want to do something again a little different I'm trying different stuff all the time I have an idea in my head for a piece of music and I just wanted to sit down and Dedicate this evening to Getting that down and to making that real, but I thought I'm gonna actually try to video document it for you So I'm I'm gonna try as much as I can just ignore that you're looking at me and just do my stuff Maybe I'll explain some things, but as little as possible to not To not diverge into explaining things instead of making music because I want to make music As a side note, I want to say this video is raw long and rather boring But it shows my workflow and what I do when I really sit down to make my own music It's an experiment. I will be happy to know your opinion if that works for you If that teaches you something if that's interesting to watch I'm thinking about maybe Separating these kinds of videos and doing them as live streams with live chat and Interaction with live audience with you basically Or some minimum interaction to do not this distract me from recording also in the description I've put timestamps so you can jump to different parts of the video We've roughly noted what I'm doing. Okay, and the final thing before you start by the end of this video We'll have something that sounds like this Now back to me from yesterday Oh Here's my order session I have I want what do I want? I want to record some electric guitars and distorted chords parkour's I need some drums. I Might use some some a drum kit I made earlier and I'm using I'm not sure if I'm gonna use that Maybe I'll record something some samples. Okay, so let's just let's just give myself some sorts of effects To work with oh, not sure which one Oh, I'm just gonna I'm just gonna insert one call it then see what happens See which one? Okay, that looks new Which version is this? Let's see which version it is. Okay, so I Might have installed just different This has the PVM Does have the oh, yeah, it has the harmonic overtones Yeah, okay, so it's a new it's a new version it looks differently, but it's new version All right, so I'm gonna just give myself Seven more Eight is kind of a go-to. I want Some guitar tracks probably three Left right called us right off left and Center group this Guitars I'm gonna make a sub mix New sub group bus. Yeah Great I'm gonna make a drum. I'm gonna make also a drum Okay, so these are tracks. I'm back, but I can feed them like if they were control shift N MIDI tracks, okay No instrument, I'm gonna try their instruments from this track So I'll have the separate channels for all the drums But I have a master MIDI input and also okay, I'm not sure how many of these are gonna be drums So I leave that and grouping these so the first one's gonna be kick. Obviously Kick One thing's named properly. There's gonna be of course a snare And the hi-hat and this is the bass group this Drums like this color. I want something different for drums Yep, that's better All right, so root my inputs So I'll just make everything feed from the input, right and this is gonna feed the output Tracks kick in snare in hi-hat in okay Now I'm gonna tap a tempo I Looks like I'm recently settling around 85 Actually, yeah, exactly at 85 recently. Alrighty. I'm gonna enable metronome. Okay, let's go with the simple Kick and snare Kick we're gonna be C4 Let's maybe make it twice as fast to just make it easier ourselves First we're programming it. I'm gonna go G right square bracket L Okay, so this is gonna be alright. So the MIDI tracks actually work Not sure why only one Actually reported levels Everything should play. Why isn't it? Okay, never mind So I'm gonna play this just to sample it now I'm gonna go min max. So we have this particular pitch locked for that instrument. Oh Maybe I'm gonna call here kick so I can see just K So I can just differentiate between different windows windows window windows. No, that's not that you pronounce it now I'm gonna So the same thing for my snare. This could be should be 61. Okay. It was disabled I Just Wow, that was that's a note that doesn't exist. Come on Hit this somewhere. This is it. Oh, so it doesn't receive anything Weird and has the MIDI input it says it's receiving notes. What are what is the problem? This feeds the output right Right, it's a MIDI It's a MIDI output So why is this listening and that isn't how are these different? Are they drums out and this one? And drums out are these notes different? edit channel one Okay. Well, that's super weird. Maybe. Oh, maybe if I inserted the tracks, maybe there's something Going on with the MIDI filters inside Uh Side ardoor MIDI yeah Channel selector record all channels playback all channels. Yes. I think there's a MIDI monitor. Oh Yeah, a MIDI monitor. That's gonna be useful So you do a plug-in So yeah, it detects the notes Okay, so I'm just gonna delete this in a sub effects instance and copy this kick one Paste it here. Just so it changed this. Okay. Now you should be good call this. Oh, sorry, right click here. Yes All right, so that something was wrong with that is in a sub effects instance And the same applies with this third one for some reason These don't work Yeah, okay, so I'm gonna replace that one call this one. Oh, sorry, right-click not left-click age age age and this is gonna be notes 62 if I put in a note 62 Yeah, we have the hi-hat playing All right, so we have this set up I'm just gonna solo my kick Focus on my kick All right, I'm gonna save this because You may notice It probably didn't because how we may know That I'm using order four point sorry five point nine, but five point ten is already out. However, I had a problem Session was broken completely and I wasn't able to get any sound out of it. So I decided to be safe. Oh Sorry, you can't hear anything But that's not a difficulty because we haven't started the sound design yet. I forgot. I forgot to connect the output ports non Non-da, yeah That's it. All right now you Sorry for that That's what you get for not preparing well for a video and just doing it on the go But I'm glad I I've noticed this now You might not see it. I will actually route this out for you so we can see it Right here, okay, if I just hide these windows You can see I have a Non mixer I That I've incorporated into my setup to have live preview of the levels and control I Have live monitoring of my voice and stuff and Carla In the background here is doing all the vocal processing and side chaining Here side chaining.  I didn't come this does isn't connected to Yeah, so Sorry All right, I'm gonna Move things back because I'm setting this sub all with a script So I don't have to manually place run things and place windows when they Should go where they should go. So these things are working Automatically, but I'm still setting this up. I missed something. Yeah, uh messed. All right I'm gonna play with Ardor the kicks. So we have the input And if I mute my mic Yeah, we can see that OBS doesn't pick it up. So it's not actually rooted here and it should be rooted here. Yeah Now it now it's recording Is it everything is okay? Okay, all righty And it's also, you know the backup capture. Okay, this should also be captured. Oh, why is master here master should be there? All right.  Oh Yeah, I Probably did something changed my naming Yeah, it's not audio. It's Da Then it's master Yeah, okay Now it is recording what it should be Cool once we have this done clap one more time for sync Should we go we should be good to go the backup is this the multi-track is only a backup, but I Didn't yet have to use it. I wish I will never need to but I messed up some stuff before so I need it Okay, so having that set up I can get back to sound design the kick That's something Something noise like but not random periodic stereo easy and I'm gonna distort it slightly. I said slightly mix it back and Emphasize a low-end. Well, that is that is a lot. That's quite a kick in the head. Oh, no, that's low shelf I want a high shelf because I should use a peak That that will take faster notes. I think I'll double the tempo. It's gonna be easier to program things. Oh It doesn't work this way in blender. I just type in times two and it works 170 okay, so that's drum bass tempo actually T oh is it Yeah, it's snapping to grid by default. That's nice I Should use a MIDI controller. Maybe let's try it with the hi-hat Maybe let's finish our sound design first. Okay, this guy This is our snare. I would like to make sure yeah, this is something to provide for Modulation result. Let's just stick with that. You don't need to make it super cool It just has to trans Transverse the idea The musical idea right now is the most important thing and I'm a little bit afraid. I'm gonna lose it Solving technical problems And the hi-hat Let's make it simple. Why do I have this kick snare track? Actually bigger doesn't need to Notice I'm not using the noise generator at all at all. What is this? What is something Something sounding weird what why? Why is this sounding differently? Why is 64 velocity Just shorter, that's it. It's actually a nice sound let it stay now we can use our Lovely sweet The keyboard. I'm just gonna go with the metronome. That's interesting kind of messed up, but I'm gonna fix it S. Oh Yes for split not working again. Yeah, I had this issue in the previous Why isn't it working it should be okay it is Why I had some problems, I don't know this this is actually trash Just mute it Maybe drop it on some on the last MIDI track just for backup Focus on this guy. So we have a lot of bad stuff happening here some of it is Not being on time and some of it is losing time in the place. Oh, that's really nice No, really really not as nice as I thought it's gonna be how much of it we have Four bars Let's just consolidate this Consolidate range. Oh It's shorter now Fills the whole part and I'm gonna quantize it It's a right-click MIDI quantize Main grid what is main grid beats? I thought I guess that's too much. Let's go beats by four No Okay beats are these little these This is one beat. So. Oh, yeah, we need these part for even if not beat by Eight, let's see. Okay, so now we can obviously correct stuff that is obviously broken Interesting. All right, this is what how it's supposed to sound that's not Supposed to sound like this. I can actually switch this to Percussive notes mode Might be a little bit easier to work with is off beat. Maybe it's supposed to sound like this Quite nice. I'm happy with this So that's for our beat. I think Okay I'm gonna record some guitars Covered with dust.  I'm gonna disable the group because a friend of mine borrowed this guitar and tuned the neck and the strings kind of rumble Which is pity He wanted to do something good and I felt like it played better before he touched it This plugin is by Robin Gary and on this one The strobe actually I mess makes sense because I've seen some plugins that implement the strobe thing They're completely useless matter Even have a Working like a stroke, but this guitar isn't Good shape enough to use of such precise tuning anyway Ah Okay So we have our tuning. I'm gonna just say with this plugin to bypass it in case it do it does something bad to the sound I'm gonna use a amp C asterisk amp VTS, which is Here is so I want to play This super simple setup will work just for recording guitars I'm gonna loop this drum beat. No, this is and this is trash. I'm gonna just remove it Loop this drum beat. I'm gonna actually move my guitars up control up arrow above the drums even Just you have Gonna duplicate my drums 16 times Okay, actually I should actually do 15 to be a total 16 anyway. Oh, okay. I have to disable record for this the head and Okay, this is supposed to be left. I'm gonna just copy this Over to the second channel second track The overdub same thing on the right one We'll see how it goes or maybe I'll just try recording separately because I'm gonna mess up Let's see how they line up. We have differences in the arrangement. Let's cut this Track and see if this lines up. I actually like the second take better I'm gonna remove the first take and align the second one to it Okay, I'm gonna record the second take is just I'm gonna maybe I'm gonna just shift this Stop this This extra probably doesn't exist really Okay, let's see if I just nailed half of it. Okay, this isn't very cool. I'm gonna try to punch in it punch it in Let's do a dr So like the region press the left square bracket I enable punch in it will not punch out. Just see how it goes Now I just just enable recording is going to start recording when the punch in is Sorry, I I took a look at the screen and I just missed the fret Oh, let's punch it in again Right here. There's no need to We record everything This it would be a waste of time and I I used to waste a lot of sound this way So I messed up in the first record the first one. I'm gonna punch in a little earlier Let me change this track to this Yes, let's just listen through Make sure that this is usable. Alrighty perfectly usable I just want to record some sketchy vocals because I have some ideas just flowing from I'm listening to this. I'm gonna do three tracks for vocal Same thing center left and right Mono I'm just gonna ship them up Ah, yeah above the guitars Okay, so this is gonna be my mic I'm gonna just slap in a compressor And this is gonna be messy. So I'm gonna mute my monitoring Hello, is the monitoring going right? Ha, yeah, yeah Ha, yeah, yeah, because now I have monitoring from ardor We have to do uh Oh, we need We need no we need only it's strict i o we can have M verb please I like it delicious deliciousness of unverbishness Probably too much Okay, let's try overdubbing something. We're gonna have some crosstalk, but I don't care. It's just sketching Ah punchy and punch out All right, we have to record this Yeah, yeah Oh, yeah Okay, I probably uh probably I'm recording this badly Uh, hmm. I wonder Yeah, because um If I mute this Okay All right. Okay. So Yeah, so if I mute myself uh In Non mixer you can hear me here and you can see that the levels are very low. Actually, I just had to slam this with the compressor 15 Actually 21 decibels of gain We record this. No, why? I'm just gonna Make it louder. No, this was reversing it alt two no alt three. Yeah, normalize Yeah Okay, uh, I like it it's some sketch. I'm gonna save it I think I'm just gonna jump into synths now because I want to Like I want I want to fuse some Electronic synths with this guitars and see how it goes. There's too much guitars is for my initial concert, but kind of nice so I'm gonna leave it in and Check what I can do All righty, by the way, I would like to have some water Or even tea Let's make a little break for tea I'm also gonna bring my headphones just in case actually I should actually use them for Tracking the vocals But because this is just a sketch We're gonna deal with this One more reverb Oh, dude, I can feel the musical juices flowing It's so exciting. Oh, that's I want to make a bass and for that. I want to make oh, I want to make a bass synth Whoo, actually I want it. I know I want I want it. I wanted bass, but I want it also chords And I wanted to use obxd for the chords because it has a such a sweet filter. I wanted to sweet that filter So sweet, uh obxd. Hey, it's my it's in my favorites. It's in my favorites buttons. Yeah So I'm starting with e on the guitar I'm just gonna see how can I Hit the chords. I don't know just there's so much cool stuff to do Yep, obxd, uh, you can see the plug-in window. Oh, here it is an alt t to get Hello Hello, mr Well, I'm gonna Come on just just go It doesn't want Come on. Just show your All right double clicking double clicking again easier solution Excuse me the electric kettle just doing my t and they're doing my t thing Uh, I think I need to rearrange my background and my keyboard Or if I just screw that and bring my keyboard right On my flipping desk, you know, you can't see it right now, but I'm gonna show you Right now. I have so much space on my desk that I actually can have this right there Right under my fingertips And that can make good music with it Hopefully good Wow, wow, this feels like a real studio now Okay, so what I want it I want to just a very very simple saw Oh that's low Huh, maybe I'm gonna make a bass with that one that's for some funky Arpeggio eating effects we can do E cde Oh Sweet filter I think I'm gonna automate this cutoff. Yes, it's gonna be called cutoff. Yep cutoff Let's listen to the guitars and oh I could actually uh, I'll use my Uh, this is my M audio Oxygen 49 mark four and it has Something called The auto Dock control thingy that you can use of our door Uh, just have to configure it. So If we take a look at some edit preferences Control surfaces generic midi double click in oxygen incoming. Yep Yeah, now it works. Now we have the transport Effectively right here I have transport controls So I can just Use this instead of That I'm not used to using it that way Uh, it's uh, I hope you guys these quiet comparison to the rest That makes it not cut through let's try let's try again gonna Shift right click. I want to make my tea right now before I begin So hold a second Wait a second, man Hold out for a minute I Think I have something I don't know if it's gonna fit with the guitar. I'll try Maybe I'll try recording it alone and then try fitting it together Hey Well, it it changed in the process, but something interesting came out. I'm I'm interested So I'm saying this Okay, so here we cut s Shit right click. Actually, I should probably I don't know Maybe I should put my keyboard before The the qwerty keyboard. Yeah, maybe that's the better way Like, you know, right now I have my qwerty keyboard here and my midi keyboard here So I don't have to reach out that far. Let's check that tea By the way, let me digress I was I've came to a system of a down Concert in Krakow, Poland last Saturday It was the first system of a down show of my life and probably also the last one because my my deep Engagement with their music was like Mainly when I was in high school now it would be four Yeah, and like they got me Actually singing and playing because I like their music so much. I wanted to do my own But uh Anything just sugar My modulation wheel is up I forgot that that's had the uh, yeah, sweet. All right, but what we wanted to do The first note is missing. Oh, there it is There it is I like this thing is uh, it fits for the intro And truncated again Like this when Now everything is late. I'm just gonna need to edit this That single note is late and then everything before it Or even I Maybe shorter notes I know what I'm gonna.  Let's put it through an amp Press this together. Well, actually I'm very hot level if I should be Okay, no, not sure how it's gonna work with the guitar. It's not perfect yet Like there is there are some rhythmic issues, but Do I need to have to fix this? No, this is just a sketch Okay, maybe I will this one Just this one Sweet sweet Alrighty, so I'm gonna I'm gonna just move this So on the end of the phrase after eight bars as I suppose Yeah I'm just gonna start this one. We need a point of reference Yeah Put here and then I'm just gonna duplicate this one one time Uh two times. No, sorry. Let's just do shift D one less again. Listen I forgot the vocal Oh interesting, uh, I don't think I already want to use this effect, but Yeah, you know my phrase was a little bit too long and it offset it not in a way I was intended Save it save Save it dick traitor Actually, I like I made this title up just because it sounds funny and it has two meanings and two meanings are better than one When you had it have two meanings always have two meanings No, sorry, that's stupid a little bit too hot, but otherwise Oh Dude Dudeishness of the dudes. I think I need some crash I'm gonna use this one Yeah, crash. I need very much crash Extend this group I shrink this note And I'm gonna insert insert a note right here At the beginning of the bar to emphasize the different phrase Starting and ending right here Sorry All right here Let's see if it will work. Oh for some reason. I didn't test the bass right now Oh, yeah Ah, I didn't okay. I don't have the MIDI output assigned yet So I need to put it here. Okay It doesn't work Yep, it doesn't work as expected It's expected to not work and it doesn't so it doesn't work as expected Fabulous, let's replace this and now it should uh, it won't but oh, we should react to the hi-hat And it doesn't What the heck? Ah, okay Now it does now. Yeah, I forgot to switch it to monitoring input all the time All right, let it with generic controls and now we'll click Right click crash No crash Let's now increase this by one Verify that we note Okay. Yeah, it it okay. It reacts Now just let's go to Lupus very short piece just to have this note hitting constantly so we can do something Oh too much too much opened should close a lot stuff. All right. This is the crash I'm gonna use patsynf It's patsynf for me Rocks with crashes Do some random issues With the random randomizers Distort the hell out of it and hype as it So we don't have the low frequency stuff that will Be a too obvious hint of that. We're playing a note because we just wanted this harmonic things Sound and then use maybe the sine harmonic displacement Oh, this is the frequency and this is the depth. This is very very Oh, sorry, that's all this is painful. Okay. I'm also going to change the profile of the single harmonic Make it more random Make it all wider. That's too wide, I guess And it's too short Ah Whoa, okay. Yeah, I mean to disable the force we call for So g3 seems to be the best Alrighty Now insert a random reverb of a very small room size and leave just And give it two of these We have nice Sounds that sound like Oh, we can also dampening give more high stuff And finally a dynamic filter to emulate the high energy Transfer and dissipation and uh, it's too Too steep still Should be good. Let's just go with an eq slap a heat filter to emphasize the this Hard to give it some more heavy feel And we have it a bit loud and a bit too often Oh crap, okay So we have the media regions linked and I think the newest version No, something else was stand there done there Yeah, these are all Not independent copies So let's make a new independent copy here And this one will be just without the crash We could also like, you know, alter the Shift d4 Let's just do seven We have a bunch of these until alternating Playing with the automation maybe we can make some interesting stuff Ah sweet So sweet I think I could actually compress this Oh, I do I am I think I need to compress it more because I wanted to compress it again Compress it six times But that I'm only six I don't even produce Just slow it Sure, this media isn't perfect there are issues But I'm just going to find a feel for my sound So now I'm probably a little Focused on the bass sound Well, I think I'm going to change something. I mean this part Now here should come a part two And I'm going to mark this b. No, actually c Because b comes here This is b And this is a sometimes like, you know We're Sometimes people are talking about structures of the songs like a a b b a a b b or something And sometimes I'm just use letters to indicate structures when I don't have clear things like this is verse. This is chorus It's it's some way of organizing stuff It's probably too long Up some some some some vocal vocal record Oh Sorry, I should have changed the monitoring settings, but whatever normalizing Sweet all right now we'll change the beat here Maybe some automation will We'll modify the sound of the drums to make it more aggressive or something Because we I think I could I'll consider this part drop right here 30 seconds in pretty good for the upstep But this is in tempo of drum and bass. So I don't I don't know what I'm doing I'm just having fun And you can see some real life Linux open source music production workflow Not tailored for just being a video tutorial just a raw Thing raw life real things real stuff Ah, no no vocals. I'm gonna chord some drums I can actually try this Where am I? Where What why not sounding? Oh There nope Okay, I got it. That was accidental Hey got some nice kicks like it. I'm gonna Just just try it. Yeah, I'm gonna probably probably Just crash over here. I wanted to make some No, I don't want to okay. I mean draw mode. I want edit mode Yeah, that makes sense I'm gonna quantize this just Oh, sorry I was selecting everything beats by four quantize Let's listen Hmm, okay. I went too low with the notes. There isn't anything here Could be I wanted to hit the kick. I messed it. I wish I could make this Make the notes bigger. No, that's bad. I wanted some double kick drum Here. Oh, that's bad This might be better Could work With some work it could work I think I need a ride Yeah, let's let's have a ride At the next slot I'm just trying to pick the places where the ride should hit for a bouncing feel I'm gonna set up again another drum element Uh, this is a fairly new workflow for me actually Wow, super cool. I can just select it from the drop down menu and I was like diving Into different things Okay, now I just have to copy Crash Paste it here replace it make this shift and should work Yeah It's using the crash for now so Well, it's just gonna Make a variation on that Make it different. I'm gonna it's gonna mess up with the waveforms in the Input Ah, it's not right about this loop What is it? Oh, yeah, I'm not starting with a kick It's delayed That's bad Oh way Way off. Okay. This hi-hat is a little bit quiet I'm going to dive in Give it Tiny bit of reverb Wait a second Okay, I'm back. What was that? What was I at? Oh, he had a hi-hat. Ah, we have the hi-hat just there That's why it's not playing So we want to add some reverb. I want EQ it Add some edge to it make it louder. Okay, so the ride Ride is offset Actually, it doesn't still hit my ounce Maybe that's it.  If I make a sub mix for the drums Sub yeah. Oh Does work I think it didn't Maybe because there is a track called drums Gonna change its name to in And try again Nope, it didn't work So, yeah, that sometimes doesn't work for me. So I'm gonna make a bus manually Audio buses stereo call it drums I wonder if it'll work. Oh, yeah drums one. Okay drums Cut drums sub mix. I think this is gotta be a good spot So I'm gonna go to master because everything is router right now to master. I'm gonna get reading rooting grid. No, sorry Yeah, rooting grid on input. So on the top tracks And disable all of the drum tracks right now Like this now drum sub mix go to input rooting grid and Enable input from all these cool now Let's see if I can just drums out and the output Okay, there's no easy way to reroute that with one click I think I'm And the host this whole thing is just loud And I'm afraid it's gonna clip in the recording maybe I should uh Just use the limiter right here right now just to be able To assess what is happening And I can control the wall the loudness with the limiter also. Oh, yeah that snare is very pretty much peaking I think I should clip the snare to tame the dynamics because it's very very Clipped or maybe hard limiter Oh, yeah, this is my favorite Because you can listen to the residue means everything that was clipped Okay, you can hear that there's a lot of things clipped Oh, still there's too much Okay, so I'm gonna use the wet and Just clip it in a half So the half of the residue is going to be back And then I'm going to compress it hard To still tame the topeak But because I have clipped it It's going to retain some some of the Actually, I can just compress it with peak measurements and super low times Ah, but it's going to start it too much 10 decibels of gain reduction That's ridiculous. And all of that was going into the Karla limiter that is right before the OBS stream I was basically feeling right into your ears Okay, thanks Let's listen to I actually Stopped using call for error because it sounded very metallic to me, but I recently came back And it doesn't sound bad. I really like it Not sure why I ditched it dear. That's so loud. It's clipping I think I want to compress the drums together That badly badly damages that snare and also my kick is very Very thin. I'm just going to give it some edge With some high frequency noise mid high Let's try this. Let's Find the window Here it is. Ah, I lost it. I need to loop some part. I think I need some more clipping Distortion letter Overdrive let's do it after the EQ omit the lows In the post and the pre okay, so I'm gonna Apply the filter before cut the lows So they don't distort. We have all the just the highs Let me use that back and we have A thick topper thicker top I want some drone pads something. Yeah Yeah, I already should make a transition here And this is superfluous It's muted because there are some nice things there and the guitars also are usable They're so nice. It's a pity to just ditch this I'm gonna use it soon I think I should actually I'm not gonna Get back to the original takes I'm just gonna come and consolidate these things So we have one piece Where do I want to do this cut here? I wanted to do the cut and the same spot. Let's try it that way I'm gonna do it this the same way here with the vocal. I'm just gonna Solidate this Then I'm gonna cut it So it's clear in the sequencer to see what happens So these gonna just select all that move it out and move this in And duplicate it Let's just to do Let's just do two times for now. We'll see I'm gonna save it Let's see That's interesting I didn't know that the new drum line is so tightly based on that synth. Oh, that's so funny What am I gonna do? I wish I could make this automation move this with the clips. I think there is some settings for that Hmm, not sure where automation Automation Okay, I don't know I want Okay, these are not chords Obviously. Oh, I'm afraid these are Are they linked? No good Yeah, edit this note Pa pa pa pa. It's interesting rhythm. It's a little bit not obvious. I'm not sure if anybody's gonna catch that No, I like it and let's play with this automation. I'm just gonna I want to emphasize somehow the transition. So I'm gonna draw something Make it change Sweet sweet filter sweeps Filter sweeps are for the win Filter sweeps for president It's like 90% of electric music of the world is based on filter sweeps Now a different beat even different beats. So I'm gonna use that drum beat just for one transition Transition righty Maybe maybe I'm just gonna make it fuller Or a different version Control Z I didn't want that I wanted to move a note And I drew a line. Wow. Okay, let's edit mode instead of draw Yep, we want hi-hats that I go between the Okay, I'm again in the draw mode which doesn't work as I wish so I need to use edit mode I mean it works as it should just I should be using edit mode I'm in draw mode again Okay edit edit and with control I can place new notes Fabulous Will that work? We'll see. Okay, so that's a thicker more dense version. Let's duplicate So that is a transition and then the bass will drop Maybe I should I know I'm gonna remove the the symbols from this version to emphasize the change And also I like this beat I could you I can record on an electric bass I don't think I'm gonna make a good job at it Uh, maybe maybe it's a good idea to try it. Maybe I can sketch something quickly and then synthesize something More in the target shape. Okay, so I have two inputs in the interface So I can't record There's some problem with the electric stuff in the space It buzzes Oh, no, it buzzes bad. Huh It plays better. Well, so there's obviously something loose in here and just drop in mvts And it sounds so quiet. I think I just have everything way too loud in this track So I'm going to compensate I'm gonna just turn everything down Guitars five How many five decibels everything by okay by six about about vocal by six drum submix by six No, I'm actually gonna turn down the individual drums Uh, maybe it's gonna be easier in the mixer Individual drums by six decibels And chill lead by six, let's call it bass. I need to check its tuning So I'm gonna plug it into the first channel No means I'm a bass player funny. It sounds like it's tuned down, but it's not. It's just distorted Sounds very crunchy Trimly crunchy I think the latter takes are better Let's do it once again. What is this? Ah, okay. This is the Kind of a verse part Further away to give myself more of this I'm hitting not the notes I intend. They sound Maybe I will hit the ones I want. I actually like the first one better And I deleted it. So I'm gonna control z Way back I shouldn't be deleting this I should just kept it Somewhere else here. Okay. I'm gonna listen because I forgot what I like I think I should bump up my vocal because you probably can so many or I don't know We'll see keep this and base something out of it. There's one note. I don't like to expose this into A MIDI sequence and then build a synth To use that. I have my bass track. I'm gonna move it up. Maybe I can play it on the keyboard That would be easier Probably should be easier to play it on the keyboard then Insert basic basic bass patch to just hear the notes Actually on the keyboard I have just different ideas Ah, yeah, so much fun so much fun to have So now I can see on the keyboard. I'm actually hitting a an F sharp It's funny because well looks like I'm playing in E minor Key, I'm not sure I took some piano lessons at some point, but I dropped from it So I'm just doing my rogue way Recording please Okay, I'm gonna Actually, that's so simple to play on the bass, but it sounds a bit sophisticated when I when I'm about to Crap Fred and instruments are cool Bah, bah, bah, bah, bah, bah, bah, bah, bah, bah Let's try it Uh, I think I'm just gonna transpose this instrument here because I don't want to Nah, something's wrong. Is it that instrument? No, it's not that instrument Oh This is it Bah, bah, bah, bah I think when we finish this is gonna be pretty interesting and fun Okay, so this is the lowest note we can hit. It's the E and now it's a bit Now it's gonna be a Pow It's gonna be a Portamento back to the to the root note I'm gonna loop all this Program the It works Oh, that sounds so cool because it it has a groove that I felt on the electric bass But it's so computerized. It senses as it. Oh nice. Yeah, it this rubs me in a good way Let's let's finish it Okay, well, maybe just let's listen to what we have there On the acoustic on the electric bass. I'm just gonna duplicate this and root work from that Bah, bah, bah, bah, bah, bah, bah, bah, bah, bah It's funny because I can just guide myself with the waveform And makes it easier. Wow, it makes it actually easier to to do this Yeah, I think I think I need to make this portamento actually shorter Huh Maybe I will have to automate this or maybe I should do this with the pitch bender Yeah I should do it with the bender I'm gonna do it with the bender So let's go with two octaves of bending. I'm just gonna go with mono Let's disable portamento And I'm gonna redo these parts with With this bender. So bender channel one and 8192 is the is the level of 8192, okay Kind of here zero is one octave down. Let's try it. And now we have to get back to 8192 Oh Oh sweet, please. Why don't you play two notes? That's not nice of you Pararaparara I should it should be good. I'm just gonna hit alt and Yeah, let's make this a little bit shorter Pa pa pa Get one nine two 8192 and then quickly drop Actually, what is the rhythm of that portamento? I think it's it's this No, it is actually different Oh with shift Yeah, now I will want to back jump back into the Neutral value and make this a new note Restart the envelopes Two notes are playing. No, it doesn't update Okay, I have to move this slightly because And the two values this one and that one were exactly on the same spot that second one was ignored I should report this It's still bad. What's going on? Maybe the resolution of the automation Isn't enough to quickly move this up That sounds proper and the good thing is the bender automation is It it's going with the MIDI data And so is all the, you know cc controls So if I would be able to learn stuff inside the synth and then use the cc lanes Then that automation would be copied with the With the media regions, which would be cool. Okay, let's let's track this more Let's listen to the bass Oh So that's repeating and then it's a little bit simplified Oh, I well somehow I lost the bender automation here That should be here And I now need to go back to the zero I mean not zero eight one Nine two. I already reported this as a feature request. So, oh, it disappears Well, now I'm afraid that I'm gonna crash our door a bit. Let's try again Yeah, let's get this should be good. Let's listen to the synth I don't need this Yeah, that's it. Ah, okay. We have some portamento going on. I should disable it for good I want to add some noise to I can emulate the the fret the finger noise of the bass Just at the beginning of the note I wonder why some notes have this more and some less and it's because it was because of the envelope stretch lower notes have lower longer Decay because we'll scale up. I think I want some distortion on this also Let's do this Let's do this I will need a sub bass for that separate sub bass Because Yeah, I'm gonna just high pass this Around 100 maybe 150 Hertz and then This is gonna be the main and there's gonna be a sub Same channel you can hear it already and now I'm gonna do part two eq. I'm gonna just go past that Similarly to overlap them I'll pause this And I'll use my headphones To check the bass level the sub bass level because I'm not sure on the monitors I don't have a sub I have a subwoofer to To play this out for me and I don't want to shake the whole house Up while making this track. So let's just listen to the headphones Shall we oh something's bad I know what The sub bass was in oh two things are bad The sub bass was in polyphonic mode, but I did that's not what I heard I it has a different bender amount. So when this happened the two notes went Down or up but different amounts. So that's what's bad. That's doesn't get Now they are in I like this I like this I just I just wish I could make this wobble leishness deeper Things is gonna be cool I'm excited with this Let's listen. Oh, okay. I think I might lead I think I might leave in this acoustic. Sorry electric bass. I just need to high pass it because Obviously it's gonna mess up the spectrum Let's use the EQ thank you mono It's mono So let's give it a tiny bit of reverb Oh, that's gonna be mono. Let's disable strict I.O Oh, yeah, now it's stereo. Actually mono reverb has very interesting value and It greatly Really fits for nostalgic feels and retro But it's gonna be so buried. I I doubt it's gonna be heldable. Anyway, let's just save it I think I think I need a different note. Maybe the basses are playing it Yeah It's not this note It's higher This one Yes Now it's better. Okay, that's better duplicate this once Oh, it's so lovely to see the information duplicate it too Not sure I want to check the car little limiter because this looks A little bit loud. Not sure what happens. Okay, should be good and when I play it That's squashed Not better. Sorry for that Let's listen from the beginning and see where are we going? Okay, this is D The C look at a lot. Oh, there needs to be some. I don't know a guitar solo here. Maybe let's try it Plug in the guitar. I muted my mic for one part when you were listening to not insert the I wanted my monitor bleeding, but Well, I'm yet figuring out a way to make that Working automatically Hopefully the one I it's gonna do better than worse That's just just jam That guitar gets very very buried under that massive She's gonna record louder. You see I clip totally clip this guitar On the preamp.  Well, that is real open source musicianship Well, you show all your mistakes and all your crappy guitar skills All right lower the camera so we can see what I'm playing At least a little bit. I think I messed up the focus Somehow I don't know. All right. Let's just all righty. So this is a little bit too complicated for to nail it just with one take I'm gonna try break it down I have this part record part after part after we have something working I recently watched a video with Oh, I like this lick had it once I'm clipping in in the interface But that's not a problem because this is intended to be clipped anyway. So getting it clipped at the source Is even better Some audio engineers might say I'm wrong Some will say dude, it works for you. Just go with it I think that's that I know what I want Awesome dude nailed it In five takes or something Okay, so now I just want to dub this for the right channel. So we have So we have a stereo image It would be cool. Some funny fluttering sound is happening Let's just do it. I don't remember the frets. What is this? Let's try. I'm not sure if I hit the right note if I did I'm glad if I don't well, I'm gonna repeat Now that's bad Let's just record it Oh something It works That oh, that's a minor second. I'm not going for Some doom metal or something. Oh, yeah, this is wrong. Yeah, just let's let's just record it Sweet and this first one The automation didn't refresh and it sounded very funny in the in the wrong octave Put one point here Make it start from a neutral value Funny how this sounds. Wow interesting. I'm gonna Make it louder. I think I want to fade this in. Oh, yeah, maybe fade is in here Yeah, yeah I'm gonna make this fade in Harder Longer. Oh, we don't have any more of that. I'm gonna just quickly remove Stuff from places where there should be silence so we don't have Things that interrupt our bass and things from other sounds sweet Sweet 16 I think Well, how do I now copy this? To the second part because it's gonna be tricky I need this point of reference Control drag and I'm gonna start Two bars in uh, sorry two beats And no Here I'm gonna also copy this use it on the other side Nope, doesn't work. It's not it's not the right place even Let's say when I turn this guitar because Sends crackles down your ears We don't want that Do we okay? Let's listen from the beginning. What do we have? I need place different notes there. Well, my recording is two hours 17 minutes in Normally, I would say oh my that's enough for a video But I'm not doing this video To make it a I don't know Like a video tutorial I'm in this video to show my my workflow and just to document some How did I do and how I do it and so you can just reference how people work in these open source programs making music With some instruments and synthesizing stuff Let's listen how this Maybe correct some of the rhythm That is messed up. I'm gonna save it and try to quantize this Actually, I'm gonna make a duplicate Here and quantize it and see if it works and then If it doesn't I'm just gonna revert it And we Why does this note disappear? That's weird Okay, with one mistake it works. I'm gonna replace it with that one. I'm gonna just Quantize the second one too And we'll whoa this quantized also that's must be linked. Oh, it is linked Shucks Yeah, okay, I have to listen just to this with the metronome Again the same thing. I wanted this part to be unique, but actually It doesn't matter so much. I'm happy with this I'm not sure if I can push it any further today. I'm just feeling a little bit Uh a little bit just, you know tired I'm very happy with the result. I'm definitely gonna push this further and finish this track Maybe it's gonna go for my newest album It will be the first it would be the only track actually the first one released in an album That was made in ardo or not lmms because I'm doing most of my things I've been doing most of my stuff electronic mostly in lms I want some chords. I want some pads Because well, it was super my way easier with midi, but ardo is catching up Tons of my bug reports were addressed And I was like I have six months ago Ardo was a mess for me to work with midi or so many bugs And I reported a lot of that and it got fixed. It works much better I'm like it has this a little bit strange philosophy of putting every editing window right into the Tracks, so you need a big screen to use it like lms can use a smaller screen and you can still manage But I can see some some nice things in it about it like you see all your session Maybe I was actually considering buying a 4k monitor just for ardo Okay, and for blender for blender too, but and ultimately I thought This is so expensive.  There's no no use And drop to 80 Hertz maybe Actually, I wonder where where where that point is on the I want to make some funky sweep right here on the snare drum and back Maybe too low. It's gonna I'm afraid it's gonna click I do it so low Ah Nah, well, I'm gonna small make the inertia smaller And also I'm gonna add some resonance I hope I won't regret it and I think I'm gonna put this before the compressor Yeah, sounds cheap Sounds cheap and not funny. Maybe if I go the other way Maybe if I go from low to high No I'm ditching this idea But this says I also want some reverb on the snare to be automated We have it here Ah, okay, I need to go Ah, all right Ah, I need to disable this group So they don't all do the same thing when I do this The what do you want? Wet amount Yeah, that's right So we have a basic value That we can work with and now I want to make it much more 0605 All righty kind of here and I want to make more. Whoa, that's gonna be too more too much Wet Hello She sounds more powerful. I think I'm gonna Well, oh, yeah, because well, it's not It's not a blend or a dry wet control. You have separate gains for dry and wet So we are now adding more reverb. It doesn't make doesn't mean we're making the dry signal Softer no, we're just adding more reverb I think I'm gonna try use a gate to truncate that That reverb tail Oh, sweet. Nice. Nice. You're working. I think I'm gonna try to remove all the reverb from I think I want to make this base even harsher maybe I'll go more with Actually, I'm gonna save a new snapshot. I'll call it zero two big traitor Maybe we should record some vocals and process them and make some funky stuff with that All the possibilities All the endless possibilities I think I'm gonna make this. Yeah, let's just listen Whoa, it's so funny It's triangle wave FM modulated with a sine wave two octaves higher. Remember that we're distorting this Okay, it is harder. I actually have to finish my session because I have other things to do Let's just listen for the last time today I'm gonna mute my mic so you don't have any bleed Enjoy. Thanks for watching If you have any questions or suggestions about this track or other videos or you have any Yeah requests for what I should do what I should what I should talk about what I should touch what I should Make a video about let me know leave that in the comments Uh, I won't be uploading this track. I guess the stems maybe when I release an album with it something like a bonus I don't know It's this is just for inspiration for you and some workflow reference I hope you have fun with that and by the way many thanks for For Ramping up to thousand subscribers on youtube. I've reached that like two weeks ago next likes last week. It was very recently And I'm really happy because that's a big milestone for me. Like, you know going from 100 Then 200 300 now being a thousand Well, that feels like, you know, I know that you are there and I want to thank you for being an audience And for listening and for being very positive and giving me nice feedback sometimes ranting about bet mic that also, you know I take all that into consideration. I I'll read your comments. I try to answer when I have anything mirrored or funny to say There is not as much for as you of you that I can't follow the comments yet so Yeah, let's have some interaction. You can also find me on facebook facebook.com Slash anfa music and that's my official group for artistic stuff my music basically And I publish links to new episodes there and I sometimes drop some photos of stuff I do In music related if you want to follow me just go there and also have fun. The link will be in the description Keep making great music and spread the open source love I'll see you in the next video. Bye You


So, hey, I'm going to be talking about the quest for the best tests today We're gonna look at all the different testing tools that we used and I'm gonna be talking about the bugs that we didn't find on mainnet If you were here for two talks before mine Maria spoke about the bugs that we did find so I'm gonna do the contra The first part let's talk about what we're actually doing with testing. Why is the merge complicated to begin with? Well, we have roughly 20 different client combinations and regression sneak in very easily You might see a regression in one of the client combinations, but none of the other ones and that's very tricky to pin point The specs for an active development. There were quite a few of the early test nets where we kind of didn't pin the spec version So someone was implementing something on a different commit. So of course the test net broke So we had to actually figure out how to treat Modifying specs along with modifying test nets along with 20 different combinations all changing at the same time Communicating and debugging it's great that we have a decentralized environment It's horrible if I have to wait for the Australians to wake up for anything It does take quite a bit of effort and quite a bit of planning on our side We had to kind of schedule around people picking up their kids from school We had to schedule around people waking up in Australia. We had to schedule around Americans a lot of different things and Figuring out how to do all of this in a reliable manner and on a timeline was crazy The last one was debug knowledge We were really surprised the type of debugging you need to do for CLs and years are totally different we had to see how to bring all of that competence in one place and How to actually figure out when something goes wrong and they did go wrong a lot in the beginning And the nice part is if you figure this out once we forget it out for future test nets So happy that that worked out What could possibly go wrong? So the merge has two parts the consensus layer and the execution layer and they communicate via this thing called the engine API so if we mess up the consensus layer you're gonna have a Network that can't agree on anything if you mess up the execution layer you have a network that can't do anything So those are the two high-level problems that we're in trying to ensure that never happened Just to enumerate a bit from the regular testing world. What sort of tests even exist? so we have unit tests and at least in our Decentralized world with all the client teams the client teams take care of this themselves We don't have to do anything no coordination work from our side This makes sure that there's no regression But these are localized regression something that they might have seen on their client based on how they've built their client We have integration tests part of them are done by client teams So for example the Nimbus team spins up a local Nimbus network to make sure that their stuff can always talk to each other Then on a high level we do some interrupt tests. So these might be dev nets or whatever they are Then we have system tests and this is where External coordinators come in so I'm gonna say the EF was part of the external coordinator for the testing efforts So these tests end to end functionality. We spin up a test net. We run transactions. We Withdraw we set up faucets. We look at it explorers work and so on and then we have production tests This is something you guys might have seen with shadow fox So production tests sort of work on a prod like environment and I'll go into what shadow fox are later on But on a high level we inherit all the complexity of main net and this also includes public test nets So if you guys remember kiln or kinsuki that falls under this bucket So you have everyone all over the place testing their things layer tools are deploying over there We have random defy protocols They're deploying over there and these fine issues that only happen on real world workloads. You probably can't simulate them any other way So the second part I'm gonna talk about what different tools we had and just give you a brief overview and just to Tell you how this gonna go once you have an overview of what sort of testing tools we have I'm gonna talk about what we actually did with them and what we didn't find So the first one starting at a high level we have spec tests. It's a great thing about the consensus layer They have an executable spec. They have specifications with a ton of tests Klein times can then import these specs and make sure that they can test them in their local CI This means whenever they're making a release at least, you know that they're coherent to the spec This is largely a sanity check. It's not meant to find any massive bug, but it ensures that there's no regressions happening We currently have the spec test setting running every night on on a new CI machine The second one is hive tests. You might have seen this being referenced a couple of times So hive tests run with a simulator and they essentially start up the clients and then run the test against a predefined interface These are a couple hundred tests these take anywhere between I think a day or two days to run everything And a brief example of how this is is it starts up a tiny instance of a nethermine node It sends it to terminal blocks and asserts how the transition happens This is a lot of awesome work by Mario. He should be somewhere in the crowd Shout out to him and follow him on Twitter We found a lot of edge cases in this and once we do find an edge case It's always in this so that we make sure in in future updates, whatever it doesn't happen if people check the website, of course Then we have this thing called kurtosis It's an external tool that we're working with and kurtosis Obfuscates all the complexity with setting up a test net. You don't have to worry about how Genesis works You don't have to worry what format that nethermine needs its Genesis file in nothing You just define it in a YAML file. You say I want a five node network with this docker image and that's what happens for you We done this actually nightly and I think we've gone through the merge at least a couple hundred times this year a Lot of them with issues, but a lot of them without which is great to see We use this also to rapidly iterate ideas So once there's a new spec version or if you want to try out a new testing tool We throw it in there first We also had mebbost integrated into kurtosis so we could test it out and do a lot of cool things there General view of kurtosis is it it checks the happy case if you can't figure out the happy case There's no point checking it the rest of it So it just starts up a test net make sure everything is fine if it's fine it shows you green on your CI The next one is sync tests There's no point on a network if you have nodes that can't sync up to the network So what we do is we spin up nodes. I think at a week's notice right now they sync up to the head of the chain and Then they assert whatever we specify over there So if you notice over here, you can say is execution as healthy is consensus healthy are both synced Are they both reaching head? So you can kind of define what site type of syncing you want to do here And as you can see on the right there are a ton of different options You can do and a ton of networks and the cool thing is you can also assert bad cases You can say start your EL stop once it reaches head then start your CL and then build weird scenarios there Shout out to Sam for building this. He was also running it and sending a summary I think he even presented it once on all codebs So we could make sure that at least when we're making releases and when we merged that we can sync the network and This is the meaty one we had test nets and shadow forks So a shadow fork and test net help us coordinate all client teams in one place and we Check compatibility largely we take whatever assumptions we have in the spec and we assert if those assumptions are true On a large level what we're doing is we're taking the genesis configuration of any one network And then we modify a couple of values here and there And what happens when those modified values are hit is we split away from the main network But we continue staying sync connected on the gossip network So we're importing all the transactions and we have the old load But it's on a side. We it's just a side fork It runs parallel to the main network and no one cares about it Except for us because we can find dozens and dozens of bugs there This allows us to stress all of our assumptions And we've done a lot of them. I have a summary on how many we actually did in the end I sort of look at this as a release test So it's kind of one of the last things we would do on Any of the future forks that we have it's kind of when we're Almost figuring out are we ready to go ahead with this? Are we ready to move forward with with committing to this fork? Is there any unknowns that we don't know yet? And then we have fuzzers and an external organization called antithesis So antithesis is a deterministic hypervisor that allows us to perform network splits Packet loss all sorts of really weird edge cases We don't necessarily expect the network to be put in these edge cases But if they are we know that the clients can handle it Um on the right side, you you can't even actually see it But each of those is a 256 thread machine. We have three of them all running fuzzers It was insane. We had way more. I've never seen that much compute in my life. We actually had The IBM data center go out and buy more cpus because we bought up all of them Yeah, various fuzzers various teams running out all of them Super cool. We found a ton of bugs refer to Marius's talk if you want to know what we actually found there And we hope that some of those bugs change the spec to make it a lot more stable or sometimes an implementation issue So to give you a brief idea on the testing lifecycle, um, let me tell you it's never that clean But that's what we want to hope to achieve So you have the client releases happening and once the client releases happen, they go into the integration test So we make sure that test nets can be run that integration tests work fine And once that's done, we move on to uh test nets and then we move on to stress tests And we push whatever we find on these stress tests on to specifications We do regression tests and then we do fuzzing and hopefully whatever we find in the last couple of stages go back into client releases So that's a kind of a nice way to look at a full lifecycle of how testing would work We're hoping to adopt the same lifecycle for future test nets. Maybe we move around a tool here or there, but that's the general idea And the end game. What did we actually do? Um, it was really hard to find a graph that actually fit all the test nets we had. That's how many um, so we had we started off in April of 2021 with Raynism and since then we've had Four public test nets that anyone could permissionlessly join into we had six dev nets meant for all the client teams. We had Five gully shadow fox and in the end 13 main net shadow fox and after all of this We had three test net fox and only 10 we did we hit main net So the whole Number of just testing hours in the merge is insane I'm quite sure if we added it all up. It would be at least a couple 10 000 hours put into this So What didn't we find? This is a really interesting part because even though we have all of these cool tools There's still always going to be something we didn't find this 99 participation 98 participation or great blocks being produced Awesome, but I want to know what we still didn't find So first one We had in memory databases that were too low to process main net blocks It just so happened that we did too good a job of deciding which machines run our test nets Which means we didn't have any resource constraints And we kind of missed the people running nodes on 8 gig ram machines or people running on 16 gig ram machines We didn't account for that or we didn't account for older versions of ram being used whatever it is Um, another one that we missed is non optimal block production Um, we were super focused on making sure that we didn't see any zero transaction blocks on the network We didn't compare that to what the optimal blocks in the network could be So it is an optimization problem, of course, and it is an awful that on main net We have some reduced load, but it is something we missed and something we probably should look into in the future um The next one There was a really specific way in which the terminal blocks could arrive that broke nethermind And it broke nethermind by causing missing missing receipts And we only noticed that issue when there are deposits being made So we completely missed this and for what we still yet to figure out why But this is mainly an issue for load star nethermind and no other combination At least we didn't get the Memo from other breaking combinations. So load star nethermind figured that out on day one of the merge and I think it was patched like a day later Um, another one that we didn't think of all of the shadow fox Didn't have any nodes syncing up to the network after the shadow fork was done Which means they weren't serving sync data and all they were doing were keeping up with the chain, which is great But constantly syncing on main net also adds load on the machine So we weren't accurately simulating that so potentially on future shadow fox We're going to have to add a bunch of syncing nodes that start up later on to see what could happen there And the last one that we didn't find was a failover beacon node scenario A lot of people are really obsessed with making sure they don't miss a single attestation Which means they have multiple beacon nodes set up And that's something we just never did so a lot of the requests were just being sent to the primary beacon node And not the backup. So when the failover happens the backup wasn't ready Um, I think this has also been patched right now, but it was a really tricky thing and we should try More failover backup scenarios in the future, I guess Um, one cool thing about why all of this wasn't found Most of them are optimization bugs. Um, as you can see much still went fine But we could there's still some room for improvement And it's a really hard trade-off to make between do we want to spend more dev time in fixing these optimizations? Or did we want an earlier merge? And that's kind of the tricky thing. Do we want earlier fox or do we want completely buckless free? free free fox No idea But we're definitely going to be adding resource constrained make machines to the mix next time We're thinking of just getting a bunch of raspberry pies and doing some shadow fox on there. See what happens there And another reason some of the bugs appeared But they didn't appear on the shadow fox is last minute commits The last shadow fox was I think a week before the merge and the last releases also happened a few days before the merge So, yeah, it's a hard trade-off Um, if you want to join the testing efforts, please join, um, mario vega Um, he's email addresses here send in your information there And I think I supposed to okay. I was supposed to have one more slide, but I will just talk about that other slide over here Um So we have a bunch of testing tools that we completely open sourced if you're someone who wants to run Test nets and kubernetes if you're someone who wants to just run kubernetes nodes If you want to set up your own networks We have easy ways to set up genesis if you want to Um, yeah use the same stuff we use for shadow fox. All of it is completely open source Quite a few organizations that are actually reusing our, um, our stuff. So shout out to them Um, contribute back whenever you can you can find most of the tools on Either on the ethereum github repo or on the eth panda ops github repo one of the two And yeah, that's about it. That's most of what we did and did not find on the merge. Um, um, thank you


Everybody forced here ripping a box of leaf decadence multi-sport for Jeffrey s Here we go Jeff Decadence time. That's awesome All right decadence I See that on the ground All right, we're going in blind here. So let's just Let's go left. I'll go left right middle. Let's do that. We got a green frame Okay. All right, Jeff. Let's see a messy. Let's see a messy. Can this be any sport? Yeah Probably like Mike Tyson out of here Probably pull some hockey out of here. You pull you pull literally anything Anything leaf will put out for sports. All right. Let's see it. Wow Allen Iverson Steph Curry Damien Lillard the epic three That's cool. What a trio four of four That's a way to start right there. It's gonna be hard to top that one I will say that that might be that and all likelihood that might be the biggest hit in the box AI chef Curry Dame Dala Wow that is sick That's so cool, man I'm gonna have to get a pic of that. That is so awesome All right, we got like a copper frame or like a bronze frame That is a Juan Soto. Oh, that's a trippy-looking card Poetry in motion Juan Soto number 10 out of 10 Great hit there too Usually left side is the banger the first one. I opened it was not the case Which is odd typically you'd go right the left right and we got a blue frame here Dion Sanders the other person was nasty Dion Sanders 505 some great hits Two great hits and one phenomenal hit nice Dion Coach prime Jeff thanks again man huge congrats get that out to you


Hey everybody, I just want to, there are a couple of us who will have a few words to say, but I'm Tom Wolf, Governor of Pennsylvania, and I came here to show that the people of Pennsylvania are concerned for what's happening here and concerned for the safety and welfare of the folks here. And I gotta say I'm really impressed with what the local emergency responders have been doing and starting talking with with Bob Walls back here, starting at 5 o'clock this morning. People have banded together, come together to make sure that people are safe and that everything is being done to help the folks. I came when I got here, went out to talk to some of the folks who have been affected in the church, Pastor Stevie's Church. Pastor Stevie, by the way, Pastor Stevie's right here. And thank you for, for, you know, showing such a great face of compassion for the folks here. But by the time I got here, most of the thousand people who have been resettled and transferred to other places had already left. And either in motels or hotels or with friends. There is an animal shelter that has offered to put up pets for two days for free. The community has really banded together. And I really, really appreciate that. But I especially want to thank Pastor Stevie, Bob Walls, who is the Heinemann Emergency Coordinator. Bob, thank you. And we have a number of people here. Just want to say a few words, but the concern is for the safety and welfare of the people of Heinemann and to make sure that we're doing everything we can at the state level to help the good work that's going on at the, at the local level. So let me turn it over to the director of the Pennsylvania Emergency Management Agency, Rick Flynn. Rick. Governor, thank you. Thanks again. And I'll tell you that again from our perspective, we certainly are concerned about the folks that have been displaced and we know that they're being taken care of. But I will tell you from the Pennsylvania Emergency Management Agency perspective, our role is to support the county. And county director Dave Cubbson is here. That's our role is to support whatever he needs. We've gone ahead and activated our Commonwealth Response Coordination Center early on this morning when we first got the call. We brought in state agencies and everything from PennDOT, the Department of Health, Department of Human Services, Department of Environmental Protection all heavily engaged in Harrisburg, but also have resources and assets on the ground. We brought our satellite trucks in and our area office staff in to support. South Central Task Force brought in their incident management team. They're going to start working. We brought our state incident management team in to support them. So again, it's a collective effort, but as the governor said, our number one concern is the safety and making sure that this thing goes smoothly. And so we're working very closely with the local officials to make sure that happened. I'd like to turn that over now to Josh Lang, who's the chair of the Bedford County Commissioners. Josh. Thank you. Thanks. Appreciate it. First, let me just say by mentioning today was an unfortunate incident and my thoughts and prayers are with the families of all those that are affected. I'm proud to live in a county where the community does come together to assist those families in need. I've had a few different situations where we've had to band together as a community under emergency situations and I can honestly say that our 911 EMS here in Hyman, the church opening up their doors, volunteers with the American Red Cross Salvation Army and I'm sure I'm missing a lot, but there's a lot of people that came together today to support those families and I appreciate the updates we've been getting from the county perspective and we're going to work to make these families whole again and again my thoughts and prayers are with them at this time and I know it's it's not an easy thing for them to be dealing with. I'm sure I'll turn it over to my colleague, Commissioner Barry DeLair. Thank you, Josh. I was here 1130 today, quarter to 12 when we got informed that we needed to leave the school and move away from the community because there was a lot of concern about the freight car that was on fire. I was truly amazed at the efficiency of moving over a thousand people out of their homes. We have 450 structures in Hyman borough. We have another 18 on the hillside of the township. Everybody was relocated and we're just very grateful for that and I would just tell you that we've talked for a long time about the need for cell service in Hyman. Hopefully the microscope that's being put on this event will help us get cell service in Hyman for a safety reason for for none other and we just thank the good lord everybody safe. I'm going to introduce Senator Langerholtz who has been here and been very supportive all day. Thank you very much. Thank you and let me just echo those comments by Commissioner Dallara. Thank God no one was injured in this and I want to thank all the first responders across all levels from local state to federal. Thank the governor for for being here and offering his support and it's really a testament to the the close-knitness of this community and how so many people were able to come together and really provide for all different levels to make sure that this displacement this goes smoothly and I would ask that that everyone continue to keep those first responders in their prayers because there's still a long way to go here. We thank God that no one was injured. I heard someone overheard someone saying here while I was touring the facility here that you know property can be replaced the human lives cannot so we're very thankful we know that there's still a long way to go and there's still the first responders will be putting themselves in harm's way so we ask you to please can keep them in your prayers. Thank you. Okay now all all of us are happy to open this up to questions. As far as what are some of the immediate assets obviously there's a lot right now that you can bring to bear to alleviate the situation from the first responders aspect to the many people here who are as you said before apparently doing what they do in South Central Pennsylvania is take care of themselves. Well as I said we're in a support role. This was a derailment of a train that had some nasty substances in the cars but the response on the part of the local responders and CSX has been tremendous. What we're doing the Pennsylvania Emergency Management Agency is here that's Rick Flynn, Penn Dodd is here, the Pennsylvania State Police, the Department of Environmental Protection and and we're here to to play whatever supporting role we can play to to make sure that people are safe and and we will continue to do that but again we're in support of what's going on at the local level whether it's the county, the Heinemann or the non-profits, the charitable world here in Heinemann. We will do whatever we can and whatever we need to do to help them make sure that the folks here are safe. Yes. Are you aware if this training had traveled from the Pittsburgh area on its way? I don't know that. That's a question you need to ask CSX. Yes. The commissioner mentions about the need for cell service in the area. Is that something that could be helped on the state level of making that happen? The senator and I talked about that and and we'll be talking about that further. I don't know this is the first before we came out here. We talked about that and we both agree that we will do what we can to see if there is something that we can do at the state level. How did that hinder the evacuation having no cell phone service? Bob, do you want to talk about that? Sure. Let me introduce Bob Walls. He could probably answer that better than anybody. You heard the question. How did that hinder the evacuation? It actually did hinder to some extent. We do have a one-call system that goes out to all the residents in the borough itself. We were able to issue three warnings out of it in time to get three quarters of the town evacuated through that system. A lot of people depend on the landlines there because there is no cell service so that worked fairly well. We were still able to go door to door with fire and EMS and the state police and we did like I said with the one-call system and going door to door we were able to get everybody out in a reasonable amount of time so it went very well even though we had some complications. It would be easier if we had cell service here. I think he might be able to answer my question too. We were just sort of wondering we had heard that there were residents who did not want to leave their homes. Are there still some left? There were a few that did not leave even though we tried to persuade them several times even the state police but we did take down their names and their ages and their residents number so that we know that that where they're at and if if they're still there that we know where to look. To rate the danger in this location at this time what would you say that is? I mean because we've got first responders down there we've got people obviously still in their homes so how much danger are they in? It's still a very high level risk right now. We do have one of our engine crews and an ambulance crew actually in the town right now supporting the hazmat team from CSX. Do you have a number on exactly how many residents are still in town? As a last count we had maybe six that stayed. During the early maybe after 12 o'clock there were state police helicopter flying over there was apparently at some point I believe five individuals who were for lack of a better word taken from the scene for what's called decontamination. All right I'll wait till our good friends move on there. Okay speaking of cell phones can you hear me now? Yes. At one point it seemed that there were five individuals we understand that were taken from in and around the area to a decontamination area as a precautionary measure. Is there a decontamination area set up anywhere? Not at this time now. Okay so we're not dealing with those kind of chemicals to discharge you. All right thank you. Any other questions? Okay well thank you very much and again my greatest appreciation gratitude to the all the folks the volunteers who have come together to help keep the people of Heinemann safe. Thank you very much.


Hello everybody, welcome back to another Adobe Photoshop CC 2021 tutorial. In this one, I'm going to show you how to remove the background and keep the subject or the object and the background completely gone. I'm going to do it in about 60 seconds at most. Here we go. Start the timer. First step, as you'll see, got an image loaded in here. The next step, you go up to Select, go to Select Subject. You'll see that we have selected this subject and it's done a pretty good job, but not a perfect job. It missed this left sock, so I'll do this real quickly here. I'm going to go and I'm going to get the quick selection tool and then I'm just going to bring in that sock. All right, cool. So there we go. Now the next step here is you're going to click on this Mask button here, Add Layer Mask, Left Click. That's it. The background's gone and she's in it. The hair is not perfect, but I've got a different tutorial on that guys. That's how you do it in 60 seconds. Thanks for watching. Be back soon.


managing the audio context, loading a piano instrument, patching the EG data, plotting the EG data, on the chart converting the EG data to MIDI notes and playing the sequence. Yeah, so it is treating, as you can obviously tell, it is treating the amplitudes as frequency. Try another channel, and this is what we need to change. Just wondering if we should leave this as an option, as an amplitude modulation music option. I mean, first, because it's already there, and it kind of works generating music, kind of based on the amplitude of the signal. This is another channel. Yes, we can see these three more, the same. Just kind of works, it does something, not very useful. Also expect the seizures. In the middle of this file as well, I have scissors, so we'll have much higher variability. But try clicking on that, without generating multiple times. Yeah, there's a problem with this code that when we scroll using the data position scroller, it registers more than one value. So that's another something we need to fix. The GitHub copilot doesn't seem to get the context, get the mistake. We ask GPT-4. So we can ask if a load data function, just ask an open-ended question, what load data function returns? Because in the code, it assumes frequencies are being returned, but it's actually amplitude, so it needs to be corrected. Yeah, GitHub copilot says, load data function returns a list of lists, each list represents a row of each data, and contains two elements, the each reading from the specific channel, and the corresponding time in seconds, the function returns a specified number of these rows, starting from a specified start point, the channel from which the eG is taken. So the question is, is it returning frequencies? The answer should be no. It does load data function with the frequencies, and it should be no, even though the code assumes so. No, the function does not return frequencies, it returns the eG data from the specific channel. Yes, it's voltage values, not frequencies, the conversion to frequencies or any other form of data would need to be done separately. So where is conversion to frequencies being performed? Well, it's nowhere in this code, and a separate function for this. Yeah, it's not done in the code, that's correct. Taking what's called eG frequencies, but actually representing voltages, that's correct, and scales these values to a range. This is not a conversion to frequencies in the typical sense. If you want to convert the eG voltage to frequencies, you would need to perform a Fourier transform or a similar operation, which is not present and provide a code. Please note that the conversion from voltages to frequencies in eG data is complex process, blah, blah, blah. Yeah, of course it is. We still need to do it. Instead of this prompt here, where it's obviously just suggesting to correct the names, we want to actually update the code to perform conversion to frequencies. So far, I didn't have much luck with github-copalment, that's probably because I don't know how to use it to get to what's more experienced programmers. Right, so it's writing some convert to frequency live 50. I assume it's using, to know what's said different than the R, FFT to FFT, might go with GPT or suggestion, I mean github-copalment to use GPT-4 anyway, but for some reason it gives you different functions. Connect the stage, I trust the open AI interface to some larger extent. We need to get this correctly, so might as well. It's doing, it's finding one dominant frequency for the whole segment, is it? Have to check. What's doing frequencies? So what's the segment size? Where is segment coming from? There's a question for amplitude between delta, bit deeper, up to 40 hertz, we want to match nodes. Yeah, I do want to match nodes eventually, we'll start with some sort of linear interpolation, but eventually, so at the moment the template just does basic amplitude to frequency conversion. So the higher the amplitude is, the higher frequency node, but yes, but now we're turning it into a frequency, an actual frequency conversion, so at the moment it just does. Yeah, so that's the template that originally gave, and now we will convert it to actual frequency. I think one of the main problems will be what type of window size, so the EEG data should be the data displayed on the chart, currently it's only the 16 data points. Default is 100, this data is very long, so there's no shortage of data. Also this data sampling rate is 400, so I don't know if that, how to use that information when converting to music, any suggestions are welcome. So eventually this tool, the idea of it is to have, so you could scroll through pre-recorded EEG, choose your channels, a window size, and then potentially additional controls will be selecting your segment size, so essentially I'll just have it fixed, so for example, each window will be divided into whatever 10, and then have 20 or 30 as your minimum window size, so for every 30 data points you'll be getting half the notes, the musical notes, or yeah, you need at least, how many do you need to calculate FFT, minimum of, well, I would say probably like 10 or something. So yeah, if we're going by default, so for every 100 data points we should generate about not more than 10 musical notes, essentially when you load the page, reload the page, default goes to channel zero, 100 data points, zero position in the file. There are seizures later, so does it start playing? No, yeah, there's another buggy thing that if I actually use the data position scroller, it registers it as if I clicked twice or more than once, and it's repeating the same thing twice, which you could do possibly with and different musical instruments or something. So the other thing that other channels could then be different musical instruments, so we'll need the 16 of them in this case. So we have a, well leave these prompts for now, just save the chat later. Any suggestions of how to do it are more than welcome. Essentially we wanna hear what the seizures sound like, and yes, it's highly biased because you can essentially make them sound anything you like. So we're adding this, so we already have numpy snp, so we have this dominant frequency. The question is, where's this segment coming from? We don't have it in the code, we should have all our functions at the bottom. We already have numpy snp loaded. This segment coming from segment, we're just taking the eGit data, quite good. So now in convet eGit, one work will convet eGit, have eGit data. Right, so this is eG voltages, not eGit frequencies. Then we have this bit, start check, triple check, eGit frequencies. This is the sampling rate. Should be 400, section like 399.9 or something, but yeah, round it up, it should be fine. Then we have median numbers using eGit frequencies and the returning conversion success for median numbers. Yeah, should this be, should have global, should this be a global variable? Make this global, right, convet eGit global, what else? Sampling rate, FS, ensure that the sampling rate, FS, using the FFD matches the actual sampling rate of your eGit data. Yeah, we'll make this a global variable, so it's fine. Winding, the FFD is applied on segments or windows for data. So what's different than segment and window? Yeah, segment, it's only used in getting frequencies. You might need to creatively map these frequencies to a musical scale or use some form of quantization to fit them into a musical context. Yeah, that would be a big thing, wouldn't it? You might need to optimize your code for performance. Yeah, currently I'm using, I only have one musical font around the piano, but yes, I wanna try others as well, like bass guitar would be really nice for seizures, I think, as well, I don't know if it'll sound more like drums or something. Save this, this wouldn't work, would it? So do we need to scale differently? I need suggestions for scaling eGit to MIDI. So that would be the range of the notes, I think. To modify the scale, underscore eGit, underscore, underscore MIDI, function to handle frequency data, you'll need to consider how the range of EEG derived frequencies maps onto the MIDI note range. Given that EEG frequencies typically range from around 0.5 hertz to 70 hertz, covering delta, theta, alpha, beta, and gamma waves, you should decide how to map these frequencies to a musical scale. The other thing is we could map different instruments to different bands, that kinda makes more sense, doesn't it? A common method is to scale the frequencies over admittedly to match the way musical pitch is perceived. Here's an example of how you can modify the scale, underscore eGit, underscore, underscore MIDI, function to handle frequency data. Right, so that's the frequency to number, conversion, yeah, frequency below zero, yeah, obviously, otherwise, you're already doing that logarithmic scale. Now with scaling, it's the scale function. Yeah, so returning MIDI numbers, that's okay. A common method is to scale the frequencies over admittedly to match the way musical pitch is perceived. Frequency underscore to underscore MIDI underscore number converts the frequency value to a MIDI number based on the formula for calculating the pitch of a musical note. MIDI note 69 is standard A4, 440 hertz, and each increase by one represents a semi-delup. Scale underscore eGit, underscore MIDI, eGit, underscore frequencies, converts each eGit frequency to a MIDI number using frequency underscore, underscore MIDI, underscore number. It also clamps the MIDI numbers to a valid range, 21 to 108 for a standard piano. This approach assumes a direct mapping from frequency to pitch. However, eGit data's musical transition might not be straightforward due to the non-musical nature of the eGit frequencies. You may need to experiment with different mappings or scales to achieve a musically coherent result. Additionally, consider the implications of mapping very low or very high frequencies, as they might fall outside the range of human hearing or the range of MIDI note. Yes, we need some sort of... For the last point there, we need some sort of range, a calibration. We have this function twice now. It's where it's being used. Forming this out. Let's try, let's test this, see what we get.


of the incident will be supported by the federal government. The vast president gave the assurance when he visited the victims of their attack at the Barra-Udiko Teaching Hospital in the Katana State capital. He also assured that the federal government on the president, Palatinebu, is committed towards the total eradication of terrorism in Banditry in the northern region and other parts of the country. Shatima was received on arrival in Katana State by Governor Uba Sani, who accompanied him to the Barra-Udiko Teaching Hospital where he commiserated with the victims. He taught by what happened that the government will take all measures to protect, preserve and promote the interests of our people. The victims will be taken care of under the canopy of the Polako Initiative. We will commence work by next month and that community will be the first community to be rebuilt in the northwest sub-region. The government is fully committed towards completely eradicating Banditry and armed kidnapping. All measures will be taken to ensure that future occurrences are aborted. And most importantly, the government will go to the root of the issue, and if anyone is found culpable, will be punished accordingly. The heart of the people in the street families will wire the hospital to sympathize with the victims and release a short where the plural government stands by the community, affected and the government and people of criminal state on this unfortunate incident. An investigation is being conducted. It will be ready to prevent any occurrence of the incident and we expect a report to be submitted within the shortest possible time. Look to register for a point of attitude to our religious leaders, to our community leaders who have stopped a stabilizing process in these firing moments. Mr President also under the leadership of Vice President His Excellency Kashin Shatima have also promised to pay compensation to the victims, those that have lost their lives, their families, and those that are in the hospitals. On the part, the connoisseur government will do everything to ensure that we look after those in the hospitals, we provide medical care for them, we pay for all their bills, and even those that have lost their parents, I mean the orphans there who are the children, the connoisseur government will also look at them. Hello, hope you enjoyed the news. Please do subscribe to our YouTube channel and don't forget to hit the notification button so you get notified about fresh news updates.