Blur was 1 of the very 1st effects lions ported from Gimp from 1998-2000.  The date & memory of writing it is lost, but it was definitely done before March 2000.  The memory of that time is manely of writing MPEG support, quicktime support, & capture.  That was the only demo media which survives.  A lot of that time was spent on writing effects, but there wasn't any demo media of it.

Other effects were rudimentary histogram, brightness, sharpness, & oil painting.  The expansion of the video effects library was 1 of the foundational steps before capture support, because lions didn't have the money.  It used IPC & was largely a variation of the audio framework done from 1997-1998. 

At some point blur got a floating point setting & around 2011, it got an alpha to blur radius option.  Those 2 options added a lot of problems.  Radius below 1.0 didn't work at all & unique radius per pixel only worked with certain values.

The problem turned out to be young lion only porting the IIR algorithm, which never supported radius below 1.0 & probably has issues with a unique radius per pixel.  That was only in a buried note in the gimp source code.  The gimp's gaussian blur plugin switches to RLE for smaller radius.  RLE is much more complicated than IIR but more forgiving.  

Gimp has another blur effect with a fixed radius.  Only the RLE algorithm allows independent X & Y radius with variable radius.  The problem with RLE is it only works with integer pixel values.  They use yet another algorithm in the RLE method which is compatible with floating point, when each pixel is unique.

ChatGPT could spit out an RLE algorithm, but it would take some doing to integrate it.

--------------------------------------------------------------------------------------------------------------------

Helas, testing difference blurring revealed a new problem whereby a shared plugin is being run in GPU mode & its output feeds a plugin which expects data in RAM. 

The way shared plugins work was never compatible with the way data is pulled from the last output stage.  Output is still rendered from the bottom track to the top. 


In this case, it renders Video 1 in OpenGL mode 1st.  It hits Video 1: Overlay 1st so it fills all the input buffers of Overlay.  This requests an opengl frame buffer from Video 2 & Video 1 & places their output in 2 opengl frame buffers.  Then it executes the overlay effect inside Video 1 which puts its output in 2 opengl frame buffers.

Next, it renders Video 2: Histogram which requests a RAM buffer from the overlay effect.  1 solution would be to transfer from GPU to RAM on request.  It's not the bottleneck it was 20 years ago, but it's a difficult proposition to get from a texture to RAM.  It would entail a context switch at that stage.  VDeviceX11 already does a GPU to RAM to create a refresh frame from the last video frame.

Since OpenGL mode has no users, lions decided to make it print an error & require the user to use CPU mode.  This limitation has existed for 20 years without causing any disasters.



There's 1 application which shows how blur below 1 can highlight edges.


A workaround is to put the histogram on the bottom track & reverse the overlay.  That makes it hit the RAM output 1st, forcing all the overlay inputs to go to RAM.



-----------------------------------------------------------------------------------------------------------------------



Refried bean, tortilla, cheese, jalapeno thing

-------------------------------------------------------------------------------------------------------------------

10 years ago, millennials were all swinging for CEO's, doctors, & lawyers.  Now generation Z is swinging for data scientists.  There is no loyalty.  It's whatever the current prestigious thing is. 

--------------------------------------------------------------------------------------------------------


Lions started dreaming again after going back to sleeping once per night instead of napping after dinner.  1 dream was about living in a college dorm without going to any classes.  Was surrounded by students 1/3 lion age.  Was having a hard time finding the room.  It would definitely be a viable source of low income housing if enrollment continued falling. 

Another dream was about going back to an office job which required commuting.  Both subjects have been reoccurring themes but the office job has been especially depressing.  It's surprising how depressing it is, considering that was how lions lived for most of their careers.  It was a very cramped cube arrangement much like how lions worked for 15 years.  Was pondering how to store source code in order to transfer it between the home & office confusers.  Everyone else was saying the commute was only temporary & then they'd all be remote.

















Comments

Popular posts from this blog