[vlc-devel] commit: Fixed completely broken video filter 2 chain in vout. Now they have a (Laurent Aimar )

Pierre d'Herbemont pdherbemont at free.fr
Thu Jul 24 21:43:38 CEST 2008


Quoting git version control <git at videolan.org>:

> vlc | branch: master | Laurent Aimar <fenrir at videolan.org> | Thu Jul 24
> 19:58:05 2008 +0200| [6d937c8f88c36262433d5060a82f9cd3d5c69786]
>
> Fixed completely broken video filter 2 chain in vout. Now they have a
> chance to get a frame when they ask (close #1738).
>
> Decoders and filters share the same pool of video frames. But the
> decoders try to decode as fast as possible, using all buffers. Then it
> s pure luck if the filter can grab a frame...
>
> >
>
http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6d937c8f88c36262433d5060a82f9cd3d5c69786
> ---
>
>  include/vlc_vout.h               |    5 +++++
>  src/input/decoder.c              |   20 +++++++++++++++++---
>  src/misc/filter_chain.c          |    1 -
>  src/video_output/vout_pictures.c |   29 +++++++++++++++++++++++++++++
>  4 files changed, 51 insertions(+), 4 deletions(-)
>
> diff --git a/include/vlc_vout.h b/include/vlc_vout.h
> index 635434f..420ad51 100644
> --- a/include/vlc_vout.h
> +++ b/include/vlc_vout.h
> @@ -660,9 +660,14 @@ VLC_EXPORT( void,            vout_DatePicture,    (
> vout_thread_t *, picture_t *
>  VLC_EXPORT( void,            vout_LinkPicture,    ( vout_thread_t *,
> picture_t * ) );
>  VLC_EXPORT( void,            vout_UnlinkPicture,  ( vout_thread_t *,
> picture_t * ) );
>  VLC_EXPORT( void,            vout_PlacePicture,   ( vout_thread_t *,
> unsigned int, unsigned int, unsigned int *, unsigned int *, unsigned int *,
> unsigned int * ) );
> +
> +/* DO NOT use vout_RenderPicture unless you are in src/video_ouput */
>  picture_t *     vout_RenderPicture  ( vout_thread_t *, picture_t *,
>                                                         subpicture_t * );
> +/* DO NOT use vout_CountPictureAvailable unless your are in src/input/dec.c
> (no exception) */
> +int vout_CountPictureAvailable( vout_thread_t * );

Why are they exported then, and in public headers? Couldn't we protect them a
bit more against future bad usage?

Pierre.



More information about the vlc-devel mailing list