view subreader.h @ 4664:40e8b4b8b250

AVI demuxer fixes: - workaround for files with bad index (first chunk absolute, others relative offsets) (fixes many 'no video stream found' bugreports) - check for LIST boundaries, truncate if sub-chunk wraps LIST endpos (FMP_3.avi) - support/workaround for empty info blocks with size=3 (FMP_3.avi) - lots of new avi info types added (from avifile source), just for fun...
author arpi
date Tue, 12 Feb 2002 01:20:59 +0000
parents 3c747168eb6e
children 89c87be7a248
line wrap: on
line source

#ifndef __MPLAYER_SUBREADER_H
#define __MPLAYER_SUBREADER_H

extern int sub_uses_time;
extern int sub_errs;
extern int sub_num;         // number of subtitle structs

// subtitle formats
#define SUB_INVALID   -1
#define SUB_MICRODVD  0
#define SUB_SUBRIP    1
#define SUB_SUBVIEWER 2
#define SUB_SAMI      3
#define SUB_VPLAYER   4
#define SUB_RT        5
#define SUB_SSA       6
#define SUB_DUNNOWHAT 7		// FIXME what format is it ?
#define SUB_MPSUB     8
#define SUB_AQTITLE   9

// One of the SUB_* constant above
extern int sub_format;

#define SUB_MAX_TEXT 5

typedef struct {

    int lines;

    unsigned long start;
    unsigned long end;
    
    char *text[SUB_MAX_TEXT];
} subtitle;

subtitle* sub_read_file (char *filename, float pts);
char * sub_filename(char *path, char * fname);
void list_sub_file(subtitle* subs);
void dump_mpsub(subtitle* subs, float fps);
void sub_free( subtitle * subs );
void find_sub(subtitle* subtitles,int key);
#endif