Yeah, after my last post I saw that ffmpeg is the encoder that can encode in different codecs (someone was using it to encode in H264) laugh

Malice, thanks for the info, I'll check the links later, because I woke up extremely ill today, and I might be afk for a few days. But for the locking, I saw some people using locking in some codes, but never stayed for too much. I also saw from posts that grabbing the front buffer is a waste of time, literally grin

Here's what I've currently outlined, as a method (purely Theoretical, haven't written a single line of code yet laugh ):
Get Device Context
Create myDC
CreateBIPSection
Select object BIPSection for myDC
each frame:
- BitBlt content of DC to the BIP section (now I have an array in the order [r][g][b][r][g][b][r][g][b]...
(Note - this is said to be faster than GetPixel)
** I've reached this point in reading, from now on everything is just an outline of thoughts laugh **
- Create a buffer size to hold a matching res YCbCr array and use a conversion function to convert the RGB array into YCbCr (which I somewhere read is kind of slow, but maby there are different implementations)
- Create AVPicture and fill it with YCbCr array (avpicture_fill)
- Copy AVPicture to a fresh AVFrame and pass that frame to the encoder

I hope I'm right so far, but it'll all show up after I begin testing in a few days, when I get better.
I'll first start by creating a video file on my HDD, if succeed, I'll try to send the data and create a file on the raspberry, trying to avoid showing the image yet, just playing the result on my laptop (I'll worry about decoding it on the raspy after I get it sending and receiving correctly laugh )

Thanks for the help so far, guys. I'm glad you're still lingering here...

PS.: Malice, you're suggesting to create a bmap_zbuffer, but isn't bitmap creation slow? I also don't have a clue how render targets work. Used them a lot of years ago, and I have no memory of that process.


Extensive Multiplayer tutorial:
http://mesetts.com/index.php?page=201