A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://ffmpeg.org/pipermail/ffmpeg-devel/2007-January/027605.html below:

[Ffmpeg-devel] Motion estimation related refactoring (was: Native H.264 encoder)

[Ffmpeg-devel] Motion estimation related refactoring (was: Native H.264 encoder)Michael Niedermayer michaelni
Thu Jan 18 18:17:09 CET 2007
Hi

On Thu, Jan 18, 2007 at 04:59:19PM +0100, Panagiotis Issaris wrote:
[...]
> > > Or should a new indepent context be created, that is not specific to
> > > mpeg (and related codecs) encoding but contains enough info to allow
> > > motion estimation? But, ... I'd guess the result would be nearly the
> > > same as moving all the needed stuff to MotionEstContext, right?
> > 
> > thats an option too, but one very important thing is that the context
> > can be accessed without an additional pointer dereference (like AVFrame)
> > what i mean is that the common variables like width/height/... could
> > be in a common context which is at the begin of MotionEstContext and
> > MotionEstContext is part of MpegEncContext and SnowContext
> Hmm... I am not sure I understand the above correctly. Are you
> suggesting something like this?
> 
> struct SomeNewContext {
> int width;
> ...
> };
> 
> struct MotionEstContext { 
>   SomeNewContext sn;
>   ... 
>   
> };
> 
> struct MpegEncContext { MotionEstContext me; ... };
> struct SnowContext { MotionEstContext me; ... };
> 
> 
> Or do imply moving all the fields needed for motion estimation out of
> MpegEncContext into MotionEstContext (at the top)?
> 
> struct MotionEstContext { 
> /* new MotionEstContext fields */
> int width;
> ... 
> /* older MotionEstContext fields */
> ...
> };
> 
> struct MpegEncContext { MotionEstContext me; ... };
> struct SnowContext { MotionEstContext me; ... };


i meant something like:
#define ME_FIELDS\
int width;\
int height;\
...

struct MotionEstContext { 
ME_FIELDS
}

struct SnowContext {
ME_FIELDS

...
}

struct MpegEncContext {
ME_FIELDS

...
}

but the more i think about it the less i like it ...

the problem with your suggestion above is that it would result in code like
s.me.width instead of s.width which is a big problem readability wise ...


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

I know you won't believe me, but the highest form of Human Excellence is
to question oneself and others. -- Socrates
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070118/08d0e882/attachment.pgp>

More information about the ffmpeg-devel mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4