Mercurial > mplayer.hg
annotate libass/ass_mp.h @ 28992:947ef23ba798
Test if create_vdp_decoder() might succeed by calling it from config()
with a small value for max_reference_frames.
This does not make automatic recovery by using software decoder possible,
but lets MPlayer fail more graciously on - actually existing - buggy
hardware that does not support certain H264 widths when using
hardware accelerated decoding (784, 864, 944, 1024, 1808, 1888 pixels on
NVIDIA G98) and if the user tries to hardware-decode more samples at
the same time than supported.
Might break playback of H264 Intra-Only samples on hardware with very
little video memory.
author | cehoyos |
---|---|
date | Sat, 21 Mar 2009 20:11:05 +0000 |
parents | 588ce97b44f2 |
children | 868442ec038e |
rev | line source |
---|---|
20008
fa122b7c71c6
Add copyright notice and vim/emacs comments to libass and vf_ass.c.
eugeni
parents:
19652
diff
changeset
|
1 // -*- c-basic-offset: 8; indent-tabs-mode: t -*- |
fa122b7c71c6
Add copyright notice and vim/emacs comments to libass and vf_ass.c.
eugeni
parents:
19652
diff
changeset
|
2 // vim:ts=8:sw=8:noet:ai: |
fa122b7c71c6
Add copyright notice and vim/emacs comments to libass and vf_ass.c.
eugeni
parents:
19652
diff
changeset
|
3 /* |
26723 | 4 * Copyright (C) 2006 Evgeniy Stepanov <eugeni.stepanov@gmail.com> |
5 * | |
26738
588ce97b44f2
Speak of libass instead of MPlayer in the libass license headers.
diego
parents:
26723
diff
changeset
|
6 * This file is part of libass. |
26723 | 7 * |
26738
588ce97b44f2
Speak of libass instead of MPlayer in the libass license headers.
diego
parents:
26723
diff
changeset
|
8 * libass is free software; you can redistribute it and/or modify |
26723 | 9 * it under the terms of the GNU General Public License as published by |
10 * the Free Software Foundation; either version 2 of the License, or | |
11 * (at your option) any later version. | |
12 * | |
26738
588ce97b44f2
Speak of libass instead of MPlayer in the libass license headers.
diego
parents:
26723
diff
changeset
|
13 * libass is distributed in the hope that it will be useful, |
26723 | 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 * GNU General Public License for more details. | |
17 * | |
18 * You should have received a copy of the GNU General Public License along | |
26738
588ce97b44f2
Speak of libass instead of MPlayer in the libass license headers.
diego
parents:
26723
diff
changeset
|
19 * with libass; if not, write to the Free Software Foundation, Inc., |
26723 | 20 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
21 */ | |
20008
fa122b7c71c6
Add copyright notice and vim/emacs comments to libass and vf_ass.c.
eugeni
parents:
19652
diff
changeset
|
22 |
25897
aaebaf255b23
Consistently give all libass multiple inclusion guards a LIBASS_ prefix.
diego
parents:
25813
diff
changeset
|
23 #ifndef LIBASS_MP_H |
aaebaf255b23
Consistently give all libass multiple inclusion guards a LIBASS_ prefix.
diego
parents:
25813
diff
changeset
|
24 #define LIBASS_MP_H |
18937 | 25 |
19401
c0c3a2f8bb32
Add subdata to ass_track conversion for external subtitles.
eugeni
parents:
18937
diff
changeset
|
26 #include "subreader.h" |
26138
74055622161d
Add missing header #includes to fix 'make checkheaders'.
diego
parents:
25897
diff
changeset
|
27 #include "ass_types.h" |
74055622161d
Add missing header #includes to fix 'make checkheaders'.
diego
parents:
25897
diff
changeset
|
28 #include "ass.h" |
19401
c0c3a2f8bb32
Add subdata to ass_track conversion for external subtitles.
eugeni
parents:
18937
diff
changeset
|
29 |
20477 | 30 extern ass_library_t* ass_library; |
18937 | 31 extern int ass_enabled; |
32 extern float ass_font_scale; | |
33 extern float ass_line_spacing; | |
34 extern int ass_top_margin; | |
35 extern int ass_bottom_margin; | |
36 extern int extract_embedded_fonts; | |
19495 | 37 extern char **ass_force_style_list; |
19563 | 38 extern int ass_use_margins; |
19646 | 39 extern char* ass_color; |
40 extern char* ass_border_color; | |
19652
2c016957360a
Add -ass-styles option. It allows to load styles from a file and use them
eugeni
parents:
19646
diff
changeset
|
41 extern char* ass_styles_file; |
23134
1de2a46a0987
Add -ass-hinting option for setting font hinting method.
eugeni
parents:
22886
diff
changeset
|
42 extern int ass_hinting; |
18937 | 43 |
20477 | 44 ass_track_t* ass_default_track(ass_library_t* library); |
19643
f48d49b400cf
Add support for rendering matroska plaintext subtitles with libass.
eugeni
parents:
19563
diff
changeset
|
45 int ass_process_subtitle(ass_track_t* track, subtitle* sub); |
20477 | 46 ass_track_t* ass_read_subdata(ass_library_t* library, sub_data* subdata, double fps); |
19401
c0c3a2f8bb32
Add subdata to ass_track conversion for external subtitles.
eugeni
parents:
18937
diff
changeset
|
47 |
23134
1de2a46a0987
Add -ass-hinting option for setting font hinting method.
eugeni
parents:
22886
diff
changeset
|
48 void ass_configure(ass_renderer_t* priv, int w, int h, int hinting); |
20706
6ae01628975f
Initialize fontconfig in VFCTRL_INIT_EOSD handler.
eugeni
parents:
20502
diff
changeset
|
49 void ass_configure_fonts(ass_renderer_t* priv); |
22886 | 50 ass_library_t* ass_init(void); |
20446
e8adc3778348
Split ass_configure() into several smaller functions.
eugeni
parents:
20008
diff
changeset
|
51 |
21506
8174acbf0633
Speed up ASS subtitles display by detecting changes between two consecutive
eugeni
parents:
20706
diff
changeset
|
52 typedef struct { |
8174acbf0633
Speed up ASS subtitles display by detecting changes between two consecutive
eugeni
parents:
20706
diff
changeset
|
53 ass_image_t* imgs; |
8174acbf0633
Speed up ASS subtitles display by detecting changes between two consecutive
eugeni
parents:
20706
diff
changeset
|
54 int changed; |
8174acbf0633
Speed up ASS subtitles display by detecting changes between two consecutive
eugeni
parents:
20706
diff
changeset
|
55 } mp_eosd_images_t; |
8174acbf0633
Speed up ASS subtitles display by detecting changes between two consecutive
eugeni
parents:
20706
diff
changeset
|
56 |
25813 | 57 extern int ass_force_reload; |
58 ass_image_t* ass_mp_render_frame(ass_renderer_t *priv, ass_track_t* track, long long now, int* detect_change); | |
59 | |
25897
aaebaf255b23
Consistently give all libass multiple inclusion guards a LIBASS_ prefix.
diego
parents:
25813
diff
changeset
|
60 #endif /* LIBASS_MP_H */ |