vlc_codec_synchro.h

Go to the documentation of this file.
00001 /*****************************************************************************
00002  * vlc_codec_synchro.h: frame-dropping structures
00003  *****************************************************************************
00004  * Copyright (C) 1999-2005 VLC authors and VideoLAN
00005  * $Id: ee6c86af8dc8baaac7c2a9068a9dc8fa6cf7fe64 $
00006  *
00007  * Authors: Christophe Massiot <massiot@via.ecp.fr>
00008  *          Jean-Marc Dressler <polux@via.ecp.fr>
00009  *          Stéphane Borel <stef@via.ecp.fr>
00010  *
00011  * This program is free software; you can redistribute it and/or modify it
00012  * under the terms of the GNU Lesser General Public License as published by
00013  * the Free Software Foundation; either version 2.1 of the License, or
00014  * (at your option) any later version.
00015  *
00016  * This program is distributed in the hope that it will be useful,
00017  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00019  * GNU Lesser General Public License for more details.
00020  *
00021  * You should have received a copy of the GNU Lesser General Public License
00022  * along with this program; if not, write to the Free Software Foundation,
00023  * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
00024  *****************************************************************************/
00025 
00026 /*****************************************************************************
00027  * decoder_synchro_t : timers for the video synchro
00028  *****************************************************************************/
00029 /* Read the discussion on top of decoder_synchro.c for more information. */
00030 /* Pictures types */
00031 #define I_CODING_TYPE           1
00032 #define P_CODING_TYPE           2
00033 #define B_CODING_TYPE           3
00034 #define D_CODING_TYPE           4 /* MPEG-1 ONLY */
00035 /* other values are reserved */
00036 
00037 /*****************************************************************************
00038  * Prototypes
00039  *****************************************************************************/
00040 VLC_API decoder_synchro_t * decoder_SynchroInit( decoder_t *, int ) VLC_USED;
00041 VLC_API void decoder_SynchroRelease( decoder_synchro_t * );
00042 VLC_API void decoder_SynchroReset( decoder_synchro_t * );
00043 VLC_API bool decoder_SynchroChoose( decoder_synchro_t *, int, int, bool );
00044 VLC_API void decoder_SynchroTrash( decoder_synchro_t * );
00045 VLC_API void decoder_SynchroDecode( decoder_synchro_t * );
00046 VLC_API void decoder_SynchroEnd( decoder_synchro_t *, int, bool );
00047 VLC_API mtime_t decoder_SynchroDate( decoder_synchro_t * ) VLC_USED;
00048 VLC_API void decoder_SynchroNewPicture( decoder_synchro_t *, int, int, mtime_t, mtime_t, bool );
00049 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines