[FFmpeg-user] Trying to determine how video data is compressed and written after motion estimation has completed

Carl Eugen Hoyos cehoyos at ag.or.at
Sat Oct 27 04:12:15 CEST 2012


Marc Elliott <elliott2w1 <at> gmail.com> writes:

> The size of my video frames are 320x240 which, given the 
> yuv420 format, results in a total buffer size of 115,200. 
> I have been able to trace the function calls all the way 
> up until the motion estimation but I am having trouble 
> tracking down what takes place after that.
> 
> During motion estimation, I have verified that the 
> original data is what is being worked with.  However, I 
> have also found that 11 or so frames go through motion 
> detection before the write function is being called. 
> When the write function is called, the buffer size is 
> only 4096.  So, what I'm trying to determine is how the 
> data goes from 11 or so frames of size 115,200 to one 
> buffer size of 4096.

Apart from the fact that iirc, you posted the exact question 
some time ago and I did suggest some things you could try:

Why do you think that Motion Estimation has much to do with 
the (raw) write function? These are two highly independent 
things (they both work fine without the other). It is very 
difficult to imagine why you believe they share the same 
buffer (that is how I understand your question), or at least 
that the write function outputs (directly) what motion 
estimation calculated.

Trying to give an answer that may or may not make sense:
The idea of video encoding is of course to compress data, 
so it is absolutely possible that your 115k input frame 
ends up as 4k (but I am not convinced that this is what 
actually happens).

Carl Eugen



More information about the ffmpeg-user mailing list