 Okay, it should be live now, as per usual, post on Twitter, X, whatever it's called now. It's a really meta, post it linked in as well, in a hope someone join us for a live chat, and let's get straight into it. So as you know, we have a bunch of tools on binarykills.com, the link in the chat, someone wants to check it out, but show how my volume is doing. It's a tricky business, volume control. Also, when I'm looking at it, the volume gets reduced. If I'm talking in front of me, the volume is better. So it should be, it's currently below this minus 30 and minus 12. Ideally, it should be, well, not quite in the red, but yeah, in the minus 10 or so, I think. So we'll try to only stick to a GitHub co-pilot today. So it's installed working okay. It's got the co-pilot audio, talk, whatever thing, is actually not installed properly the co-pilot, no sorry, co-pilot chat. Sorry, so we have GitHub co-pilot, we have co-pilot chat. They both working okay. Then we have the voice assistant that I'm still supposedly in the waiting list for an authentic show. Right, I was trying to pre-release version, but I think both of them don't actually work. Probably don't need it. What do I, I don't know. But anyway, co-pilot chat works fine. It's obviously a video how to use it, but we'll just try it out ourselves. So previously, it was working kind of okay. Doesn't give you as extensive explanations as the GPT-4. We can clear it. Yeah, powered by ASUS prices and mistakes are possible. Make sure to verify generated code. That's okay. Now yesterday, we were trying, so we're focusing on this too, the IEG spectrum and IEG spectrum, the noise, some noise removal thing. So this is the spectrum one is simpler. We have this info for it with all the inputs and outputs. So what happens? Pretty sure I tried it already, but we pop this into the shit. Well, application that is by the IEG, recognizing all spectrum, blah, blah, blah, blah, blah, blah, blah, blah. Here's some sample. So we have the, yep. Now the question. Let's see, yes, up by matplotlib. We already have it. Okay, it's doing more than we have. It's more comprehensive. The one we currently have doesn't actually, it's not actually doing anything. Interestingly, we have FS. Yeah, that can be 250 insert at cursor. Okay, insert at cursor. That's nice and simple. Windows size. Okay, this can be 250. Just play silly. Just create files. Yes. Signal is not defined. We can just do co-pilot. Fix this. Let me just fix this. It's really weird. It's not doing it right. It's importing signal from scipy. Yeah, we'll do this as we did before. Is that an error? So we have the, so it seemed to be getting the context from the folder structure, which is good. Functions generate URL that are included in the generate JavaScript. It looks like the provide code is incomplete. Which code is incomplete? Yeah, just go with the flow. For now, can it's open this full page. Yes, we are in the right folder, right file. Actually, want to rename, probably rename this file. Or just leave it. That was a template from somewhere else. Now this has a lot of issues. Why? It's not defined. Power function is empty list, process data, the whole spectrum. Same thing for signal. It's probably an easier way of doing it. You need to add a phone line. Is it this model? I already have spectrogram. I also need the signal. Did it actually work? Looks like not sure why it's in a different gala. With this run, it's asking me to reinstall scipy. Flash terminal. Not sure about this one. Especially forcing reinstall. Why? Why don't I need to force reinstall? Let's read install. Because if all the rest is working, I do this importing signal. Do I have to upgrade? I think there is an issue with scipy installation. We are importing scipy. So do I import it from scipy signal or just scipy? And this is odd. Do I also need to do that? Cannot seem to respond better. Do I have a camera string? A column? A door could not float. Don't have camera, do I? Camera. Line 20. Right. We need to load the data. It's got nothing to do with camera. Okay. Loading the data. We already have that code in another application. Let's see. We obviously have it in this application. It's not great. It's super slow. It's still loading. And there is also sufficient with display. But it's loading that it's able to load the data. Okay. So this will be a question is if the copilot chat has access to all other files, it should. So if I copy path and just tell it to, can we load the data in the same way as in, yes, you can load the data. Is it the text? But that's not how we load the data in that file. So I'm not sure if it has all the content from. So did I make a mistake in the folder? No, I didn't. It's the right folder. We will have access to. No, I don't have access to a lot of files that I can only provide suggestion based on the code you provide. So what's the point of I put the whole point of using it is that it already has access to all your files. That's a bit odd. So how do I provide it? I mean, can, oh, come on. I was getting the wrong file. So I'll call the same. I'll call app.py. Right. So this is the other file would have loaded that it is a text file. That has to be specifically this one. The other question is do I need to copy it again into this folder or not? Do I access this folder? So this file will be data. Yeah, this one relative path over here. This is the red data file. It should be in single quotes, isn't it? All text. This just work. I don't think so. A data file path. It's very large. This is a very large file. Load a small portion of it. Oh, are we already doing this? Window size is 10 seconds. Yeah, multiply by sampling frequency. That's correct. And then taking I just want to take one channel. There are 16 channels, but there's a select channel. Yeah, working here again. Thank you for joining me. And eventually the selected channel will be coming from the web application. But currently, are we using? We are not using. Yeah, we do have 16 channels. We want to have selected and select one channel. Yeah, zero should be fine. Let's make it one. Right. So now data. Where is that variable? Process data. Shouldn't just have data as the input. Where's that function being called? I'll stuff it up, wouldn't I? Process data. Let's control I. Let's go pilot. I can just search for... No, it was actually doing everything correctly already. Okay. It was already doing this. So it's taking the channel, select the channel size as well. Those size. I don't think I need to do this. Okay. It's doing something. My CPU is running. I can hear the fans, all the fans, all the 10 fans. Why is it loading for so long? Now it's loading the page again for quite some time. Do we already need the wsgei in here? Where should I be getting my error from? Let's see. So it's loading for too long. Then I get... Okay, slow down. Yeah, gpt4 was much slower, so you could actually watch it generating text. But this one is much quicker, so I have to slow it down. So there are a few issues. The first is through warning message GUI outside the main thread. Subplots function calls in the process data function. To fix this, you can add the following lines to debugging. To beginning of up by port modplotlib. We're already importing it. Importing it. To understand what's the difference between when you import something from modplotlib or import the whole modplotlib and then use that, whatever. The line should be added before. So this should be going after the second issue type error that occurs when rendering the index HTML template. This error caused by the channel variable not being defined in the app point to fix this issue. The following line in the beginning of the app to define the channel's variable. So we can comment this out. Put this one in and we don't have the data yet because the data is all the way down there. We sure we don't need that code. We need this up top, maybe even outside the Flask application. Okay, so where's the data shape? It's still loading forever. Well, because probably the window of the data is too large. We actually don't want to load the whole file. Why we're loading the whole file? Let's see how we do it over there. Yeah, we're loading only a certain portion of it. Yeah, we have white space, true, skip rows. That's also handy. This is because that file actually has a seizure in it. So by doing this, we're actually skipping to the seizure. The difference is that we want only one channel. So we're selecting one channel because we're plotting spectrogram of this channel. So if we plot all the channels in the spectrum, if it's slow already, yeah, we have to select just one, just work with one channel. So it's essentially should be the same as this. We didn't want to copy the data file again. We got the file correctly. We want to just one channel. Should we just read the one channel to begin with? I guess we need this line for sure. Instead of just loading the whole file, what's pt, pt is pandas, yeah. So we want to do the same thing because it just worked before. So we have pandas, spt. We want this to be data. It's a very large file, so we don't want to read the whole file. Now, this should be okay. Number of points to load, duration to load. So we, yeah, I think in this file, we're loading 100 seconds, so then we can scroll through it. Right. And I also remember that our sampling frequency is not to 50. It's definitely 400. So that's just what the data set is. Skip rows is not defined. We actually need those. Right. We use it over here. And we will have a y and x access to it. But instead of like here, where we're loading all the 16 channels, we just want to load one. Those numbers should be legit. We do want those. And we want to create a time array for this will be data. We'll have a time array, df, just df. Right, this should be a data as well. Right. Do we have something with time? Which is the label when actually using this at the moment. A control i is this. How do we use this? The code is part of Flaskware application. That process is in this place, i, e, g, intercranial, electro, electro and cephalography, e, g, whatever data and the code reads data from a file, loads the base and start time duration, then the process. Okay. It's not addressing because provided as new code to load the data code contains the time values, this done by defining okay that the spot is in the chat close that. So we're not using this for now. And let's try this again. Right. This is loading a bit quicker. It's still getting an error. It's a variable has been missing or something pandas, something with pandas, I think I know what the problem is, but their message that variable is pandas not numpy array cannot cannot use numpy array indexing to access call data cannot you can use the following is called a call data frame it's called so what's the problem not actually using this at the moment just commented out still loading for some time not as bad okay let's actually set the same error and the fact that i'm getting 500 for the htp that is a missing a bit in here their message csv file something with the file path that's what i'm doing already am I data file path there's obviously a problem with that to the data file we need a relative any more suggestions no should be something like and relative okay it's easier to copy the file fortunately or fortunately whatever yes this was called do I need the so after the flash complication get an up a root index my my rendering plot it should be an index html again it's actually a different error so probably the data is loading okay I thought I made it one this seemed wrong anyway explain this select the code plot signals from a pandas modput live variable partners function call creates line plot the first argument of a function call specifies x-axis that's not the x-axis okay we do it needs to be rewritten it needs to be just saw the second ago data time data channel yeah that looks more like it 252 select code return bna it's not related to the above the code part of fashion that so which line am I modifying can it regenerate now I get that but I meant if the error and to access the first column of the data but I'm not well not anymore so why is it not getting updated I don't use select code channel variable that is used to specify the channel to plot super soon find channel variables and integer but contain signal the plot signal function to extract the signal that is from a specified channel it's talking about there's no it's like getting to clear the chat or something not using get look don't care it's very should check the code that is calling get look man and make sure that the key being passed as well and yeah we have pandas pd I must get full like a more specific just to fix this windows as is not accessed and we're not having a great time why did it call is unreachable because the return is there of course code is unreachable and a pilot explain this is the default value