demux_asf: Fix play duration calculation error
[mplayer.git] / sub / vobsub.h
blob3cef1347e5edb5bb62181f537f6b1523339c1f84
1 /*
2 * This file is part of MPlayer.
4 * MPlayer is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * MPlayer is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License along
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 #ifndef MPLAYER_VOBSUB_H
20 #define MPLAYER_VOBSUB_H
22 void *vobsub_open(const char *subname, const char *const ifo, const int force, void** spu);
23 void vobsub_reset(void *vob);
24 int vobsub_parse_ifo(void* this, const char *const name, unsigned int *palette, unsigned int *width, unsigned int *height, int force, int sid, char *langid);
25 int vobsub_get_packet(void *vobhandle, float pts,void** data, int* timestamp);
26 int vobsub_get_next_packet(void *vobhandle, void** data, int* timestamp);
27 void vobsub_close(void *this);
28 unsigned int vobsub_get_indexes_count(void * /* vobhandle */);
29 char *vobsub_get_id(void * /* vobhandle */, unsigned int /* index */);
31 /// Get vobsub id by its index in the valid streams.
32 int vobsub_get_id_by_index(void *vobhandle, unsigned int index);
33 /// Get index in the valid streams by vobsub id.
34 int vobsub_get_index_by_id(void *vobhandle, int id);
36 /// Convert palette value in idx file to yuv.
37 unsigned int vobsub_palette_to_yuv(unsigned int pal);
38 /// Convert rgb value to yuv.
39 unsigned int vobsub_rgb_to_yuv(unsigned int rgb);
41 void *vobsub_out_open(const char *basename, const unsigned int *palette, unsigned int orig_width, unsigned int orig_height, const char *id, unsigned int index);
42 void vobsub_out_output(void *me, const unsigned char *packet, int len, double pts);
43 void vobsub_out_close(void *me);
44 int vobsub_set_from_lang(void *vobhandle, char **lang);
45 void vobsub_seek(void * vobhandle, float pts);
47 #endif /* MPLAYER_VOBSUB_H */