Alright,
and then as the hour record.
So welcome to Office hours.
I'm gonna go ahead and go through all the questions that we usually get.
Uh,
so from Sportnik we get a dog.
So we actually had a dog emergency,
like,
that's why I'm late.
Uh,
so
I actually need to put this on the wiki just because like I feel
like in like 5 or 6 years when you look at the wiki,
you'll be like,
I'm glad someone put that on the wiki.
But anyway,
um,
Fetta has
a set of toys
which are basically small fluffy things.
And,
uh,
originally my mother bought the first small fluffy thing
and
um.
She was staying with me and so the day,
the morning after,
she wasn't wearing her glasses when she woke up and she looked at the floor
and she was like,
oh my God,
has Feder left a turd inside?
And it turns out it was just that toy that she'd bought for Feder the
the previous day.
Uh,
so that toy's now called Turd,
but
the,
the problem with,
yeah,
he's turd.
The problem with Turd
is that
Turd's very small and Federer's obsessed with turd.
So this,
this picture here is actually Turd 2,
you know,
if you think like Terminator 2,
it's it's turd 2.
I don't know where
Turd 1 is,
I think it's somewhere in the apartment though,
so,
uh,
at some point we'll find turd 1.
Uh,
everyone just,
just,
just let's let's take like a 32nd or like a,
let's take a let's take a 2 2nd silence
and have some hashtag prayers for turd one has prayers for turd one,
praying emoji.
Yeah,
yeah,
praying emoji.
Prayers for turd one.
Uh,
turd one candidates are a cupboard,
um,
under the bed,
under the couch,
uh,
under the computer table,
because you know how messy cables get there.
I predict that I will find turd one when I move out.
And,
and when that happens,
we'll be,
uh,
very fun,
cos I'll be like,
what's going on?
What's going on?
So anyway,
the,
the reason for the emergency was that,
um,
turd 2.
Uh,
we take on our morning walk.
Um,
it's like routine
now,
and,
and Fed actually looks for it if I don't bring it with me.
Uh,
so he does,
you know,
the usual sniffy sniffy and and poopy poopy poop,
and then once he's done with that,
he'll look at me and he's looking at me and he's asking for turd to.
And so I dropped down turd 2,
and then the rest of the walk he carries turd 2,
and he's usually very good,
but I got distracted by something on my phone and then I blinked,
and then I was sort of way far away from where I'd last seen turd.
So we had to turn around and retrace our steps and locate turd,
otherwise we'd have been buying turd 3.
that's why it's gonna end up on the wiki,
right?
You know,
it's like the legend of like the turd,
uh,
species.
And I say the turd species because there's also
um a variant of turd 1 and 2 called big turd.
Now big turd we don't take on walks because he's a little bit
um
a little bit too heavy,
but yeah,
T does have a page in the wiki,
it's just a little bit hard to find.
I'm trying to find to see if I've got a picture of turd,
big turd,
but I don't have one to hand,
so actually I'll go get one right now.
Where's Little turd fella?
I know,
I know that Little Turd is fairly well finded.
Where's Little T?
OK,
I don't know where Little Turd is,
but I'll get you a photo of,
of,
of turd 2.
I think he's gonna go get turd 1,
turd 2 even.
Hey.
There we go,
so that's Big T.
Big Toad needs a little bit of repairing on its back so
that's why we're not really playing with big toad right now.
See there's a bit of white picking up.
I just need to do a couple of,
couple of loops of a needle and thread,
cause guess what,
prime can sew.
Not very well,
but I can.
Um,
so that's what the dog's doing anyway,
I'll have to find
2 again for him.
He doesn't know where it is.
I know it's at least inside the apartment and the
like where it is right now is,
is his fault,
not my fault,
so it's likely to just be on the floor in a corner somewhere.
Um,
so we'll we'll search for that immediately following,
um,
office hours,
we'll search for a third one.
There we go.
Uh,
how am I doing?
I am incredibly frustrated by the US medical system,
but I don't really know how much detail to go into,
so I'll just go into the details of
uh.
My hormones are completely fucked.
um,
great.
Uh,
so like it,
it pretty much explains like why I'm tired all
the time and why I like barely fucking function.
Um,
but
it means they need to take a whole lot of blood from me
and I need to like find the correct doctor to do that.
And uh,
if you know from previous office hours,
my inability to get to a doctor is quite stupid.
I kept failing to get to the doctor,
so I went to one of those like online websites where like you
can pay out of pocket to get like a blood test of like,
you know,
like longevity markers,
and I'm like fine,
do it.
Cause like at this point it'll be literally faster and cheaper.
So
I did that and it came back and it was like,
whoa,
your hormones are all out of whack,
and I'm just like,
oh,
great.
So now I've got to contact actual doctor,
give them those blood test results and be like,
can you just directly refer to me to an endocrinologist,
right?
I don't need to like do an office visit with you for you
to look at this piece of paper that says your hormones are fucked.
Can I just go to an endocrinologist please?
If that doesn't work,
I'll just manually phone an endocrinologist and just be like,
hey.
Take as much blood as you want,
do all,
all of the,
all of the tests you want to do,
and then just figure out the fuck up cause I'm,
I'm tired.
I'm,
I'm honestly really tired.
I'm,
I'm tired of the American system and I'm tired of being t.
Hooray.
Like the uh um
the hormone called prolactin,
prolactin being the one that is responsible for both breasts and lactation.
It's not private's office hours without like something random like that,
is it,
is like sky high,
and that doesn't make any sense.
Where are we out of range here here we are.
Yeah,
so normal prolactin range for a male is
anywhere from 0 to 25,
m's 33,
so you know,
that's a lot.
High prolactin levels can suggest pituitary tumours,
hyperthyroid hypothyroidism,
polycystic ovary.
Syndrome.
I don't have ovaries,
so that's probably not that one.
Kidney disease.
And then here's a,
here's a really important one
that like was never informed to me by any of my other doctors,
and I'm gonna read it.
Medications like antipsychotics,
antidepressants may also increase prolactin levels.
Now,
the,
I am on anti-seizure medications,
which are like
basically antipsychotics and antidepressants adjacent.
They're like in the same sort of.
You know,
like quadrant of of medical landscape.
Uh,
so it could be,
you know,
like,
oh,
you don't want to fall on the floor and twitches you need breasts.
Anyway,
we'll move on.
Don't quote them.
Uh,
one of my,
uh,
hormones is really high and it's the hormone
that is responsible for breasts and lactation,
so,
so there we go.
But there is a scientific reason.
I just yelled breasts at the top of my lungs.
Don't worry,
we'll move on to raising my questions.
I,
I'm also gonna send you a screenshot of the test results
just so that you don't think I'm like making this up,
not that like you do,
but like,
you know,
this is like double,
triple,
like I,
I'm not like.
I'm not.
Let's move on.
OK,
the air conditioner's making a new noise,
that usually means I need to go like slap it a little bit,
so I'll do that after this.
I live in a shitty apartment and I use a portable air conditioner
and most of the time it sounds like it's literally about to explode,
so that's fun.
All right,
so we got rid of all those
basic questions.
Uh,
I actually don't see any other questions.
Well,
the red is talking about,
um,
dental and eyes aren't covered under regular insurance.
Uh yeah,
like,
I don't know the history on that one,
but like it also occurs in the UK but like to a different sort of level.
In the UK we have the NHS,
so like most healthcare is free.
But
again,
dental and eyes usually are extra for some reason.
Like,
so like the same thing happened in America and in the UK at the same time,
really,
I,
I don't really know why,
but there we go.
This graph is terrible.
They're like,
hey,
we've got two measurements on this graph.
How about we uh render them on the exact opposite
of,
of the graph.
Uh,
this is testosterone.
Again,
like abnormally low,
but they've only measured that one once,
so like,
let's let's render like the first point on the graph on the extreme left
and the first point on the on the last point on the graph,
extreme right and in the middle,
what are we gonna have?
Nothing.
Don't bark at me better,
you want me to throw a turd,
OK.
So we do this thing all day,
and I,
I mean all day,
where uh
he will come sit on the couch and look at me
and then I will throw a turd for him.
Well,
I don't want to get into like too much details because I,
I don't care,
so like I'm,
I'll do it.
It's like,
what they need to do now that they've discovered that there is a
hormone imbalance is they need to test like all of the hormones.
They need to do a full hormone panel,
and when they do a full hormone panel,
they will also check for oestrogen,
which is the other side of the equation.
If that is high and the prolactin is high,
that's probably like tumour somewhere.
So that's gonna be fun.
Anyway,
do we have any resinate questions?
Rather than questions about my,
um,
metabolic structure,
I guess.
I took a nap just before office hours and the,
the walk I took where we lost her,
and I had a really crazy dream and it's like still floating in my head.
So whilst we don't have any other questions,
we do have one,
but like you're gonna hear this dream now.
Um,
I was on a
cruise ship
and the cruise ship
was hosting some form of a wedding.
Uh,
but for anyone who has kept in touch with my,
my other dreams,
most of the locations,
like,
you know,
physical locations I have in my dreams are like MC MC
Escher paintings or like the back rooms or stuff like that.
They just don't make sense.
So when I say that this,
this wedding on this cruise ship
had about like
a million rooms,
I'm not
joking,
like there were a million
rooms and stuff kept going wrong and there was like,
I don't know,
some sort of,
it wasn't a monster,
it was like.
It was almost like an idea,
like an idea was on the cruise ship and it was dangerous.
A bit like I guess the,
the hush in control,
but not with like the zombies or anything.
It was basically just like,
don't
witness this thing or you die.
Anyway,
so a second.
Liminal with a million rooms cruise ship crashed into the first cruise ship,
and half the people in the dream were scared on the first dangerous cruise ship,
but like half
had managed to get over to the other cruise ship.
But because these are like liminal cruise ships,
when they crashed together,
they kind of merged like
backrums liminally.
So you could like walk through a door and change cruise ships.
Um,
it was,
it was very confusing.
I remember being in a room and I was asked to
pack up someone's belongings because uh the department of um.
Friends and social,
the DH,
uh,
not home,
the one that looks after kids.
The one that looks after kids had instructed me to
to put all of this kid's belongings into a bag
because
um the government had mandated that they needed to go to the second
cruise ship because their Parents had died on the first cruise ship.
I remember that,
right?
And in this process,
one of the brides,
and remember there are multiple because this whole thing didn't make sense,
stumbled into the room and was like,
you can't do that.
And then fell over and they were like,
you know,
like drunk and smear,
um,
make up all sorts.
It was crazy.
That was a crazy,
crazy dream.
I know why the cruise ship was there.
It was because whilst I was like scrolling in bed,
I was watching TikToks.
um,
and a TikTok came up from a finance YouTuber,
and,
uh,
they had a podcast and the guest on the podcast was a is a like accountant for the rich,
and he was explaining how he legitimately and legally,
and 100% legally,
I have no qualms with it,
uh,
wrote off a yacht
for a real estate company.
And it's because that real estate company does,
uh,
like
ocean view or or like river or uh Marina
view properties that are like multi-million dollar properties.
And
so what they'll do sometimes is they'll take potential buyers on a yacht
and yacht them around the harbour.
The area that it's in to show them the
properties from the water as a different perspective.
And uh that
if you read all the tax code is the legitimate business vehicle.
So they were able to uh write it off on their taxes.
But that meant that like the moment I fell asleep,
the fresher my mind was like boats.
Uh,
J asked,
do you know if anyone made an RPN calculator on the platform?
I don't know what RPN is,
please,
please expand it.
I could Google it,
please expand it.
Um,
I'm gonna jump down to Red's question cos it'll be faster to answer just for a moment.
Red says prime view play TF2 and what your main.
I played a tonne of TF2,
um,
unfortunately it was the,
the time of life that I don't really like really remember.
You know,
the sort of period between sort of like,
I don't know,
10 and 16,
where you're like,
oh my God,
I'm an adult.
Like I have arms and I have hands.
What what the hell's going on?
Like you start becoming self-aware because your
brain's like just about done cooking.
Played a lot of TF2 during that,
so there we go.
Uh,
uh,
Johnny says,
so how to compressor need to see how I go.
My friends could compiled a free image,
but we did some benchmarking in the meantime,
got WebP running 70% faster and 20% smaller.
PNG saving 90% faster and made the JPEGs better.
Yeah.
Ah,
I'll talk about compressed air in just a moment.
Once I start,
I'm not gonna stop though,
so I wanna let you know.
Oh,
reverse,
you see,
like you said RPN and I'm like,
I,
I was pretty sure I was reading something
from a developer who said like RPN was something to
do do with like nerve fibres or something last night.
So,
so there we go.
Was that RPN or was it?
Ah,
it was ABF,
completely different.
So I was looking into Scott
Hardin here.
The reason why I was looking into him is,
um,
Scott makes this beautiful library called Scott Plot.
And Scolot's just beautiful,
you can just give it data and you can say,
give me a PNG of a graph of that data and I'm just like,
hell yeah.
Uh,
so what I want to do is hook this into the,
the tests
that we're doing occasionally,
uh,
cause it might be,
it might be useful in,
in,
in some cases to do that.
I haven't really figured it out,
so like it's gonna be like a weekend project,
so I'm not gonna look at it at any point during today.
Um,
but
like what we could do,
for example,
is.
Take the,
the,
the signal plot,
and we can plot like a bunch of values
from like one of our mathematical functions that we need
and then save that as a PNG and be like,
all right,
does that look normal?
Like does that look normal?
So it's like another,
another type of test,
but it's just an idea that I'm working on.
But that that's why I came on that and that
was ABF which has something to do with nerve fibres.
Yeah,
I have heard of reverse Polish notation.
I,
um,
worked a bunch on reverse Polish notation on a
Minecraft
moded
server a long time ago.
Uh,
if you remember Red Power 2,
Red Power 2 had a 4th powered computer which does use RPN.
I created a 4th powered computer that could take uh Uyat,
which was the end matter in industrial craft 2.
And convert it to any item you wanted.
I see too,
yeah.
You had to put in like the the parameters in like 4th,
so it was a bit like weird,
but it was something like
make
2 of
52 4 like that.
You type that into the RP2 computer and it would like start
making a bunch of noise and then like high powered so.
would come out of that.
It was,
it was really cool.
I got paid
a lot of in-game resources for it,
like a lot.
Like I was set for the entire like
session of that server's existence.
I don't have any of the codes saved and I have like no idea how any of it worked.
All right,
let's jump through,
so we did RPM,
um.
Uh,
red says,
Prime,
can I steal you for more TF2 this October?
No,
you can't.
Um,
I was like,
if in October I happened to be free enough to play TF2,
Res I better be doing a lot better.
All right,
let's,
let's do the compressing it right.
Um,
I gotta open the compression area.
We've got open both the source
and
um.
The native ship.
These are closed because uh I shut down my computer last night,
which is a rare treat.
When you're working on compressing it,
usually you just leave your computer on because it's such a pain
to get back to the place that you were in before,
uh,
because,
you know,
it's so complicated,
you're just like,
I'll just leave it open.
Like I know most IDEs will like save your position so you don't get lost,
but still,
I don't,
I just,
I just don't want to do that.
Uh,
I find the file I was in as well.
Um,
give me a second.
It might be in,
is it in the,
it's in the header?
I don't know why it's in the header.
Like,
if anyone anyone knows C++,
I've got like some questions for you in just a moment.
Now when you're working on compressing it,
like you find yourself like asleep on the couch with all the lights off.
My lights are automatic,
right,
they'll,
they turn on around about 40 p.m. and they turn off around about 10 a.m.
And
so like sometimes I'll fall asleep on the couch,
wake up and all my lights are off.
I like automated it as much as possible because it means I
don't have to think about it and that that that's good.
All right,
so this will all make sense,
but we're going to do it backwards because I only
want to stay in native land a little bit.
So first of all,
you should be on the screen seeing BC7encode.h.
Why there is so much code in a header file,
I don't know,
but there is.
Um,
it is a constructor though,
so I don't know,
maybe that's like some sort of convention you
put like your constructor and header file,
but it just seems very weird for me.
Because the um deconstructor is in the header,
as is like uh oh no these are fine,
these are fine,
these are like,
this is stuff you would put in the header.
Like this is all like,
this is all like definitions of fields,
definitions of functions,
that's fine,
but like the whole like constructor,
it's up here in like it's full
like concreteness.
This is a BC7 block encoder,
so um.
I should probably just record this,
cos like I'm gonna open up a diagram and
start drawing what blocks are and all sorts and
like ugh.
All right,
now we're recording it.
Because why not?
I might not even publish it,
but like,
why not?
I need a browser tab.
Is this browser on anything embarrassing?
Yes,
it's on the emails.
OK,
we'll take this Netflix browser that's not logged in and swoop that over there
to avoid embarrassment.
And then we'll sweep it back.
Right,
OK,
so block compression,
right,
you've got an image and what you do
is you go through the image
and you turn it into blocks.
And then each of those blocks
is examined by itself
to figure out like,
hey,
what do we what do we take this block and we make it into a,
a,
that's a beautiful arrow,
um,
and into a smaller block.
So if we head back to the code,
this is the block encoder for BC 7,
and
what I was looking for here is there is a bug that occurs
or like a quirk that occurs when the quality is below 0.25.
So this quality number you can see it can go between 1 and 0,
but when this quality number is below 0.25,
something weird happens.
So I will take you to the um disable
toggle.
There we are,
to a world rap.
Uh,
this line here.
Wherever it occurs,
so if I just highlight and error threshold.
Error threshold
in all
occurrences except this one down here.
error threshold is this complicated piece of maths here.
If you put in the information for this mathematics at
quality of 0.25,
you'll get,
Zero
as the value for error threshold.
If you put in
anything
greater than 0.25,
so,
uh,
greater than or equal to greater than 0.25,
you will get
greater than 0.
What happens then is in BC7incode.cpp
there is a bunch of this here
and it says,
hey,
if the error threshold is greater than 0,
then
it will break out of this thing because this is some form of loop.
Yeah,
you see this is some form of loop
and what this loop does is it goes through each
of the block types because there are different block types.
There's
these are all the block types.
So if we go briefly back to my diagram,
it's like,
ah,
this red block,
maybe this red block here doesn't have any alpha in it,
for example.
So that one,
it could actually be a a green block
when we can press it,
rather than a red block when we can press it or a blue block when they compress it.
Uh and that that's how they sort of
achieve the um.
The file size reduction
is they figure out,
hey,
what's the best way to include this particular block.
But the point that is really clear here is if M error threshold is ever
um zero or
or
or less than 0,
it will do all of the blocks.
It'll be like,
hey,
I'll I'll try this block,
I'll try this block,
etc.
But if the error threshold is um.
Like positive,
then sorry,
I get,
I get wrong all the time because this code is so thick.
Basically like
at 0.25,
this code doesn't run at less than 0.25,
this does,
and it will bail out early and it means it does less error correction.
So less error correction,
and in some cases zero error correction
occurs when quality is less than 0.25.
Uh,
let's go over to uh compressorator.net.
So over here in Comresonator.net,
I was like,
cool,
I didn't know this at the time.
So what I did was I wrote,
here they are.
I wrote these quality evaluation tests.
What these quality evaluation tests do is they take these images
and they compress them to all of these formats
with these qualities and they just save them.
They do check that they're the same as the previous time through,
but they just save them.
So if we go over to uh here,
then,
uh,
over here we can see a folder full of these.
So if we go inside carrots,
we've now got carrots at
all of the BCs and at a variety of qualities of BC 7 and BC6H.
And I,
I guarantee you will not be able to
tell a single difference with these carrot images.
Like they're,
they're all the same,
except for these two,
but they're meant to look like this.
They're meant to be weird.
Don't worry about them.
Now,
um,
a user by the name of Angel Boy VR who is in this Discord,
I'm not sure if they're here right now,
but if you're familiar with Angel Boy VR,
they have a
texture that looks like this,
uh,
for their wings.
And so like you can sort of see it's a wing
and there's sort of a,
a black to purple,
um,
gradient
that is going vertically
here and here and here and here and here and here.
So this is BC one,
looks absolutely fine,
right?
Um.
That's BC 2 looks absolutely fine.
BC3,
absolutely fine.
Ignore BC-4 and BC-5 cos they're weird and different,
but like,
hey,
in another universe this is what um grey angel Boy VR looks
like and this is what red Angel Boy VR looks like.
Anyway,
um,
BC6H,
absolutely fine.
But if we tick over to BC 7,
if it's gonna show up today.
I don't know if you guys are gonna be able to see this,
but
it's so difficult to see,
um.
I can't see it today.
I can't,
I can't see it today.
That is 0.2,
hold on,
let's hop to the lowest quality you have and we should be able to see it.
Switch between the two versions repeatedly,
I sure can.
Uh,
yes.
Is it gone now?
Did they fix it somehow?
I can't see it today
OK,
I,
I have video footage of the issue occurring.
Yeah,
I just checked monitor brightness.
I have video footage of the error occurring,
but basically on um 0.05 to 0.2
on in this folder,
um.
You
are see these like weird compression artefacts.
I actually think I sent it to
Johnny and I could see it
there,
so I'm gonna go pull it out of Johnny's DMs.
OK,
so this one here should show,
should show the issue and it's an image you can look at it.
You should see banding
on like,
I can't see it right now,
but it is like daytime and I've got curtains open,
so maybe maybe that's why,
but the point being.
Um,
there's banding on there,
and I'm like,
why is there banding on there at
0.2,
but not 0.25?
And it turns out that error correction code is there and that's what's going on.
So
what we need to then do is
take a look and make our,
it's not that,
uh,
you'll be like it's,
I don't,
uh,
I'll get it later and I'll be like,
this,
and I'll like digitally enhance it and everything.
I can't see on that one either.
Trust me though,
there is a problem.
So what we,
what it basically did was
mathematically through these test files and
through me traipsing through the code,
we have established that the error correction
code doesn't kick in until about 0.25.
So what we're going to do is edit our compressor A to minimum.
To be 0.25.
So that was the work I did yesterday was to figure out
what is the minimum value we should set,
and the really value is 0.25.
If we go into
dev log for a second,
I think I had a better graph of this,
but like I don't,
I don't really,
I that's gonna,
I'm gonna open this in in in browser so I don't.
You get confused with Discord,
yeah,
there we go.
This is a
chart that I made
on,
this isn't wings,
this is like one of the other test images,
but what this shows is how long
and what the score of the compression algorithm is.
And what you can see here
is 0.2.
To 0.25,
there's a huge bump in quality
from 90 to 95%.
Well,
it's actually 94.47,
but you know,
well,
actually it's 94.47,
but like it doesn't matter,
right?
Um,
the point being is that once you get to 0.25,
the return on investment is just,
it's neg I'm not gonna say I'm gonna say it completely wrong,
negligible,
you know what I mean?
That word I can't,
how do you say that
nei.
Anyway,
the,
the return on investment is just,
it's not worth it,
above 0.25.
So you can see this here,
plus this wing image combined together,
like you could publish it in a paper.
That's how confident I am by saying 0.25
is our minimum now,
cos I've got this graph,
I've got the wing image.
And it's beautiful.
This wing image,
by the way,
all of the qualities,
it's available on GitHub compressinator.net.
You can go take a look at it.
Um,
Angel Boy gave us permission and in response to that,
um,
a link to their link tree is in the Read me of the native files.
You can just go,
uh,
you can go look at them.
I'll get you a link to that in a moment and you can go look at them yourself under,
under whatever tooling that you want to.
Come back here.
There we go.
So this is Coresonator.net
on GitHub,
and you can go into tests
and then snapshot
and then quality evaluation tests,
and then here are all those test images and you can go look at them.
Um,
just had a question for the audience from Hecko,
so it's there to ask what other test images have you done?
We have done carrots,
which,
um,
I did like this one was the one I get to do because I want to do it,
right?
There was,
there was no logical or scientific reason for doing carrots,
but
it's just like it's mean,
right?
I mean checking carrots.
colour patch here um was what we did to
check sort of colour packing and stuff like that.
That's fine.
It doesn't show anything.
Um,
Rainbow is just to check stuff that's going on there.
Interestingly enough,
Rainbow has an issue on here.
See these two bands there and there?
I'm ignoring that one though because BC6H is only used for HDR images,
and I didn't technically give it a HDR image,
uh,
so I,
I,
I'm just like,
whatever.
But you can also see how,
how weird BC44 is like ah BC4.
Uh,
but we've also got squares.
Now squares is good because it's,
um,
it's got like a lot of
varied details behind it.
Um,
but what I wanna do
is to put through
a few more.
So I've got this collection here.
You used to be able to hide that,
but now you can't,
so I'll hide it like that.
I've got this collection of test images
and I want to put a few more through.
Um,
I want to put
these ones,
you see these ones that have got triangles going up and down and left and right.
I want to put those through
because they match
um
they match this vertical gradient that we've got going on here.
They're also kind of hard to look at.
Oh,
warning just for anyone,
like if I accidentally go to one of the test images here,
it makes me physically ill.
Um,
so just,
just keep that in mind,
I'll try not to go to it,
but I don't remember which one it is.
Like if you full screen it,
it's just like I feel ill.
Uh,
so if you're susceptible to stuff like that,
I don't know,
maybe,
maybe go away.
This one shows like colours and stuff like that.
Like I theoretically could put all of these in,
but the problem is like,
why would I do that?
Because they're they're all,
they're quite big,
all of them.
It's one of like this one in this area that does it.
It's not that one.
I'm gonna accidentally find it now just because I feel like it.
Who wants to feel ill?
Let's go,
let's feel ill together.
Yep,
it's these ones.
They're just like painful to look at,
and I don't really know why.
Oh,
we're getting a bit of flashing here,
sorry,
I'll slow down.
Also,
um,
I'm hoping someone can tell me what's going on here.
When I swap,
they're like blurry and then they like enhance.
Is that just like a Windows thing?
I don't know why I was muted.
Anyway,
um,
these tests are all open source,
so if you're concerned about your particular avatar,
you can go ahead,
download this repository,
set it up.
You might have some difficulty if you're not familiar with
C but I made it as easy as possible.
You can come to this file here,
you can just go,
comma,
um.
Sputnik's
avatar,
right,
and then you run the test through and you'll get
the same test images and you can take a look at
if you want to.
And if anyone's interested in a tutorial of doing that,
I can,
I can make that a tutorial.
I also learned,
um,
well,
like really like ramping up our tests.
I learned about this thing called test property,
and as you'll see here I put test property CI false.
What this means is that this test does not run on CI and that is done using
um a philtre thing.
When you run tests,
you do like
.net test,
and then you do
philtre.
And you do CI
not
equal uh false,
and it will do,
it will skip any test that has this on it.
You can also do,
which I sometimes do.
Test category
equals smoke.
And that will run,
um,
I think just to this file,
which just like this,
these two tests basically this one takes a PNG,
puts it into compressorator,
and then takes it out of Compressorator again.
This one takes uh the same PNG,
compresses it to BC1,
and then brings it back out again.
And it just sort of like,
you know,
it
clears out the sort of clears out the guttering and the sewers
and makes sure that like all the code still theoretically works.
Uh,
so I'll stop streaming
and I'll stop the recording.
That was the BC 7,
right?
Because we can also now quality evaluate all of those
um qualities and all of the the compression formats.
There are a bunch of other BC 7 and BC6H encoders that I can now objectively compare.
Uh,
you know that graph,
it's in devlog and I'll just stop screen sharing,
but that graph,
I mean,
I'll just like paste to it.
This one,
this one here,
um,
I can make that graph for any other like library that generates BC seven images
and let's say it says.
BC 7 with a score of above 95 and it takes less than compressinator.
Compressinator might just be heated out of the codebase,
but we wouldn't have been able to do that before because
we wouldn't have been able to evaluate like the quality,
but now we can,
so it's super powerful.
Uh,
with that,
I'm going to leave off.
I've got a bunch of stuff to do and I don't see many other questions,
but I will scroll back and just double check.
It's mostly just pictures of wings though.
No,
it looks like we're good.
If you've got any further questions about BC 7 or BC6 or anything like that,
you can ask me or you can ask Johnny.
Or you can,
I don't know,
do what I did and,
and read and learn the code until you cry.
I will speak to you later.