Mercurial > mplayer.hg
annotate subreader.h @ 12979:6f18105c058a
Better protection against double definition of MPEGLAYER3WAVEFORMAT
author | wight |
---|---|
date | Mon, 09 Aug 2004 15:53:10 +0000 |
parents | b200b94ebc4b |
children | 1a4b6e575484 |
rev | line source |
---|---|
616 | 1 #ifndef __MPLAYER_SUBREADER_H |
2 #define __MPLAYER_SUBREADER_H | |
258 | 3 |
12910 | 4 #include <stdio.h> |
5 | |
8361
2202c00001e3
overlapping subtitles support is now optional, can be disabled (-nooverlapsub)
arpi
parents:
7982
diff
changeset
|
6 extern int suboverlap_enabled; |
9126
7a06258271d6
Add a command line option (-sub-no-text-pp) to disable subtitles
arpi
parents:
8733
diff
changeset
|
7 extern int sub_no_text_pp; // disable text post-processing |
9893 | 8 extern int sub_match_fuzziness; |
2912 | 9 |
10 // subtitle formats | |
11 #define SUB_INVALID -1 | |
12 #define SUB_MICRODVD 0 | |
13 #define SUB_SUBRIP 1 | |
14 #define SUB_SUBVIEWER 2 | |
15 #define SUB_SAMI 3 | |
16 #define SUB_VPLAYER 4 | |
17 #define SUB_RT 5 | |
18 #define SUB_SSA 6 | |
11873 | 19 #define SUB_PJS 7 |
2912 | 20 #define SUB_MPSUB 8 |
21 #define SUB_AQTITLE 9 | |
6012 | 22 #define SUB_SUBVIEWER2 10 |
6076
eff64fb1ffea
patch fixes broken detecniou of AQTitle subtiles and adds support for subtitles created by subrip 0.9 - by Jiri.Svoboda@seznam.cz
arpi
parents:
6012
diff
changeset
|
23 #define SUB_SUBRIP09 11 |
7982
eac680483e6c
JACOSub is another subtitling format, whose specifications are at:
arpi
parents:
7460
diff
changeset
|
24 #define SUB_JACOSUB 12 |
12138
eb3ad04675e1
MPL2 subreader, patch by Cezary Jackiewicz (cjackiewicz@poczta.onet.pl)
alex
parents:
11873
diff
changeset
|
25 #define SUB_MPL2 13 |
2912 | 26 |
27 // One of the SUB_* constant above | |
28 extern int sub_format; | |
29 | |
9870
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
30 #define MAX_SUBTITLE_FILES 128 |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
31 |
7215
065387d29573
increased SUB_MAX_TEXT by Piotr Krukowiecki <piotr@pingu.ii.uj.edu.pl>
alex
parents:
6792
diff
changeset
|
32 #define SUB_MAX_TEXT 10 |
10916
c36db88bfbc4
Subtitle alignment & smart splitting by Salvatore Falco
henry
parents:
9893
diff
changeset
|
33 #define SUB_ALIGNMENT_HLEFT 1 |
c36db88bfbc4
Subtitle alignment & smart splitting by Salvatore Falco
henry
parents:
9893
diff
changeset
|
34 #define SUB_ALIGNMENT_HCENTER 0 |
c36db88bfbc4
Subtitle alignment & smart splitting by Salvatore Falco
henry
parents:
9893
diff
changeset
|
35 #define SUB_ALIGNMENT_HRIGHT 2 |
258 | 36 |
37 typedef struct { | |
38 | |
39 int lines; | |
40 | |
41 unsigned long start; | |
42 unsigned long end; | |
43 | |
44 char *text[SUB_MAX_TEXT]; | |
10916
c36db88bfbc4
Subtitle alignment & smart splitting by Salvatore Falco
henry
parents:
9893
diff
changeset
|
45 unsigned char alignment; |
258 | 46 } subtitle; |
47 | |
9870
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
48 typedef struct { |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
49 subtitle *subtitles; |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
50 char *filename; |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
51 int sub_uses_time; |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
52 int sub_num; // number of subtitle structs |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
53 int sub_errs; |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
54 } sub_data; |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
55 |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
56 sub_data* sub_read_file (char *filename, float pts); |
8618
a879b231b7e3
This patch adds a call to subcp_recode1(), so this subtitles too are
arpi
parents:
8451
diff
changeset
|
57 subtitle* subcp_recode1 (subtitle *sub); |
12909
dc8eba991005
fixes a crash and unchecked string-handling in ENCA code.
reimar
parents:
12443
diff
changeset
|
58 // enca_fd is the file enca uses to determine the codepage. |
dc8eba991005
fixes a crash and unchecked string-handling in ENCA code.
reimar
parents:
12443
diff
changeset
|
59 // setting to NULL disables enca. |
dc8eba991005
fixes a crash and unchecked string-handling in ENCA code.
reimar
parents:
12443
diff
changeset
|
60 void subcp_open (FILE *enca_fd); /* for demux_ogg.c */ |
8733
478561617705
compiler warning fixes by Dominik Mierzejewski <dominik@rangers.eu.org>
arpi
parents:
8618
diff
changeset
|
61 void subcp_close (void); /* for demux_ogg.c */ |
12930
b200b94ebc4b
missing guess_cp declaration (patch by Ismail D«Ónmez)
henry
parents:
12910
diff
changeset
|
62 #ifdef HAVE_ENCA |
b200b94ebc4b
missing guess_cp declaration (patch by Ismail D«Ónmez)
henry
parents:
12910
diff
changeset
|
63 void* guess_cp(FILE *enca_fd, char *preferred_language, char *fallback); |
b200b94ebc4b
missing guess_cp declaration (patch by Ismail D«Ónmez)
henry
parents:
12910
diff
changeset
|
64 #endif |
9870
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
65 char ** sub_filenames(char *path, char *fname); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
66 void list_sub_file(sub_data* subd); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
67 void dump_srt(sub_data* subd, float fps); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
68 void dump_mpsub(sub_data* subd, float fps); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
69 void dump_microdvd(sub_data* subd, float fps); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
70 void dump_jacosub(sub_data* subd, float fps); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
71 void dump_sami(sub_data* subd, float fps); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
72 void sub_free( sub_data * subd ); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
73 void find_sub(sub_data* subd,int key); |
09d630a4f991
support for multiple subtitle files by Marcin Wojdyr <wojdyr@unipress.waw.pl>
henry
parents:
9126
diff
changeset
|
74 void step_sub(sub_data *subd, float pts, int movement); |
818 | 75 #endif |