[MPlayer-dev-eng] Re: Need help with drop-deinterlace plugin
Arpi
arpi at thot.banki.hu
Wed Sep 4 22:37:50 CEST 2002
Hi,
> Sometime (on Wednesday, September 4 at 22:16) I've received something...
> >> >> 1. Where the plugin can find decoded frames: current and previous?
> >> >it can't see preovious unless it saves it (the mpi) and flag that it
> >> >requires the previous frame
> >> It has to have static variable for that mpi and save/release mpi on
> >no static var, use teh priv filed of vf_instance structyre to strore such thing
>
> The filter plugin have to save/release the mpi sctructure by itself,
> eh?
yes.
filters don't need the previous frames, except your...
> >> is just to duplicate previous then codec will duplicate frame but I'm not
> >> sure if it's the best way.
> >if you only want to keep the previous frame on the screen, then you don't
> >need the prev frame at all, just skip the current frame.
>
> It will work for screen output, not for mencoder. Since function
why?
> decode_video() will return 1 in that case anyway then mencoder will lose
> the frame, so vf->put_image() must be called to the very end (ve_lavc.c:
> put_image() for example). Since somefilter:put_image() doesn't know if it
> is encoder call, it have to call vf_next_put_image() in any case. So my
> question is how to let next put_image() know about duplicated frame? I
> didn't find any other way except replace current frame with previous. :)
mencoder will notice if you skipped teh fraem and will automatcialy
duplicate the previous frame to keep a-v in sync.
imho the only thing your filter have to do is detecting if a frame shoudl be
skipped (and so the prevous one duplicated) and return without calling
next_put_image. the others will be done by the core.
you may call it lame or well-designed, your choice :)
A'rpi / Astral & ESP-team
--
Developer of MPlayer, the Movie Player for Linux - http://www.MPlayerHQ.hu
More information about the MPlayer-dev-eng
mailing list