Re: Re: Limitations in vo2 api :(

D Richard Felker III <[email protected]>
Newsgroups gmane.comp.video.mplayer.g2.devel
Message-ID <[email protected]>
On Sat, Dec 20, 2003 at 09:22:25PM +0200, Andriy N. Gritsenko wrote:
>     Hi again.
> 
> Additional comments here...
> 
> Sometime (on Saturday, December 20 at 21:02) I've written something...
> 
> >typedef struct vp_node_t {
> >  node_t n;
> >  struct vp_node_t *prev;
> >  struct vp_node_t *next;
> >  vp_funcs *func;
> >  .......
> >} vp_node_t;
> 
> >So when we call link_video_chain(node,next) it will at first test if
> >node->func->add_out() exists and call it, otherwise if node->next was
> >filled then return error, else set node->next. After that do the same for
> >node next. If there was no errors then we assume nodes are linked. For
> >example, on pull_frame(node) we could pull frame from previous node by
> >node->prev->pull_frame. Calling unlink_video_chain(node,next) we will
> >do the same thing as on link_video_chain(). Since node_t is part of
> >vp_node_t and pointed to the same then both structures above may be only
> >in video_internal.h - application will know nothing about it but it will
> >work anyway. :)
> 
>     Just keep in mind some filter may have multiple _equal_ inputs or
> outputs so there isn't some "primary" input or output node. Also if we

I created the idea of primary input/output on purpose. A filter that
doesn't want to distinguish is free to ignore the difference, or to
use only secondary links if it prefers.

> So we have no right to application to
> manipulate any prev or next pointers - it must be done only by functions
> link_video_chain() and unlink_video_chain(). :)

Something like that.

Rich
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.