eugeni
d6ffde2900
Keep reselected fonts in an array, adding new ones to the end. Glyph
...
lookup prefers earlier opened fonts.
This way glyph lookup is stable, which means that:
- cache cleanup is never required after font reselecting;
- a single unrecognized char won't change the appearance of all the others.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21635 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-16 19:34:00 +00:00
eugeni
4eb3c3173e
Remove a mistakenly committed debug printf.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21633 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-16 19:28:21 +00:00
eugeni
db088e936d
Move ascender, descender, and kerning computation to ass_font.c.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21630 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-16 19:17:50 +00:00
eugeni
e15d11c89e
Speed up ASS subtitles display by detecting changes between two consecutive
...
rendering results.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21522 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-06 18:44:26 +00:00
eugeni
92256c07d1
Open embedded fonts directly from memory.
...
FontConfig 2.4.2 (released yesterday) supports scanning fonts with
FcFreeTypeQueryFace without writing them to disk. With earlier FontConfig
versions, the old mechanism is used.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21476 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-03 18:24:11 +00:00
eugeni
7db61d9736
Keep embedded fonts in ass_library_t and perform actual disk write
...
in fontconfig initialization. This is required for some fontconfig-related
improvements.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21474 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-03 17:59:13 +00:00
eugeni
27ebb01514
Use (ass_font_t, char code) instead of (FT_Face, glyph index) to identify
...
glyphs in cache.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21364 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-28 22:17:33 +00:00
eugeni
07786c1275
Fix compilation broken in previous commit.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21338 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-27 17:53:33 +00:00
eugeni
6e9a5a842c
Move ass_font_t allocation to ass_font.h.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21333 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-27 17:13:52 +00:00
eugeni
b11cd1d856
Remove obsolete "no_more_font_messages" hack.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21295 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-26 22:53:52 +00:00
eugeni
1cbd5dfd31
Move fonts-related code to a separate file.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21293 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-26 22:49:27 +00:00
eugeni
4d27dbd5c9
Make ass_new_font return ass_font_t struct (instead of just FT_Face).
...
Use it to access the font face.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21283 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-26 20:53:29 +00:00
eugeni
85fb960769
Rename:
...
face_desc_t -> ass_font_desc_t
face_cache_item_t -> ass_font_t
*face* -> *font*
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21281 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-26 20:34:54 +00:00
eugeni
bec3287bd4
Cosmetics: remove unneeded curly brackets.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21114 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-20 17:13:19 +00:00
eugeni
852e37033b
Fix collision detection. The old method tried to avoid gaps between subtitles
...
by moving the upper subtitle down. This is wrong. With this fix, a subtitle
will be moved only if it overlaps with another one.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21113 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-20 17:10:18 +00:00
kraymer
598d5be3ad
MSGTRs for libass
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21082 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-19 22:35:17 +00:00
eugeni
8856d67d40
Collect all includes of mplayer headers in libass in a single file (mputils.h).
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21042 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-19 00:41:00 +00:00
eugeni
656bde87fa
Support \t with acceleration.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20891 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-13 16:49:32 +00:00
eugeni
60d29dbd71
s/break/continue/. A crazy mistake, somehow unnoticed for more that 2 months.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20795 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-08 18:57:40 +00:00
eugeni
c8b995cf2f
Calculate text bounding box in a way that does not depend on actual glyph
...
bitmaps. Each glyph is considered to be bounded by (origin, origin + advance)
horizontally, and (max font ascender, max font descender) vertically.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20734 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-06 02:47:57 +00:00
eugeni
a5c1f03baa
More precise bounding box calculation for karaoke effects.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20669 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-04 17:58:09 +00:00
eugeni
6fef7a200f
Introduce MSGT_ASS, use it for all libass messages.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20645 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-03 18:15:33 +00:00
eugeni
ef5dee5d56
Revert r20517.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20519 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-29 17:29:55 +00:00
eugeni
06758d89bc
Copy the following functions to libass to avoid dependency on the rest of mplayer:
...
guess_buffer_cp
utf8_get_char
blur
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20517 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-29 15:03:30 +00:00
eugeni
7e9c778cf2
Fix width -> orig_width typo.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20513 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-29 13:59:36 +00:00
eugeni
efea99c2c9
Libass interface reworked:
...
- ass_instance_t renamed to ass_renderer_t
- ass_library_t introduced
- use of mplayer-specific global variables limited to ass_mp.c
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20493 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-28 15:07:18 +00:00
eugeni
4d268b94d7
Add missing fontconfig_done() call.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20467 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-27 16:02:44 +00:00
eugeni
e8733cbf9d
Split ass_configure() into several smaller functions.
...
FontConfig initialization moved from ass_init() to ass_set_fonts().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20462 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-26 20:08:46 +00:00
eugeni
08d9c0718a
Don't forget to apply scaling coefficients to kerning values.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20326 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-20 23:06:52 +00:00
eugeni
a4a817a15f
Fix center of rotation calculation. It was overly complex and
...
incorrect for right- and center-aligned text.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20308 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-19 18:08:44 +00:00
eugeni
7abe5a4ef8
Center of rotation depends on alignment.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20302 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-18 21:19:51 +00:00
eugeni
2d3ad59854
Support separate rotation angle for each glyph.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20301 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-18 21:11:29 +00:00
eugeni
5b5798f039
Move base point calculation to a separate function. Will be reused soon.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20300 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-18 18:33:19 +00:00
eugeni
67232605ef
Cosmetics: remove commented code.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20299 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-18 17:57:00 +00:00
eugeni
6d4ad204b2
Fix a typo in collision detection code.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20297 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-18 15:52:26 +00:00
eugeni
28ecbe3cc3
Remove an outdated debug message.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20275 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-16 19:02:11 +00:00
reimar
404c75b083
Fix crash because of last_glyph < first_glyph, probably caused by first line
...
only consisting of '\n'
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20232 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-15 13:03:43 +00:00
eugeni
47006b0d7d
Zerofill libass static variables during initialization.
...
Patch by Jindrich Makovicka <makovick a gmail d com>.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20208 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-14 14:42:23 +00:00
eugeni
965a305938
Free FT_Stroker during libass deinitialization.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20207 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-14 14:35:33 +00:00
eugeni
50ca7a4f72
Add copyright notice and vim/emacs comments to libass and vf_ass.c.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20014 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-01 17:09:04 +00:00
eugeni
1b0251e7ad
Shadow support in libass.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19971 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-24 16:04:37 +00:00
reimar
6c8ab3f263
Fix width -> orig_width typo causing subtitles to be too far to the right
...
for movies with vertical black bars (aspect < monitoraspect).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19946 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-22 20:47:08 +00:00
eugeni
0ba8cc2972
Move calculation of text parameters (number of lines, height, etc.) from
...
wrap_lines_smart() into a separate function. Call it for every event, even
those that do not require line wrapping.
This fixes randomly wrong positioning of 'Banner' events.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19938 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-22 18:56:09 +00:00
eugeni
38ea1d82d8
Move variable declaration to a more deeply nested block. It is not used outside of it.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19937 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-22 18:47:29 +00:00
eugeni
4a09756828
Cosmetics: fix indentation after last commit.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19925 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-21 22:37:42 +00:00
eugeni
a7e1afc5b3
Fix FT_Stroker use in libass. The previous variant ended up with 0-width
...
outline in some cases.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19924 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-21 22:36:47 +00:00
eugeni
997c42f17f
In r19831, font size multiplier was mistakenly applied to border width.
...
Fixed.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19923 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-21 19:31:28 +00:00
eugeni
ef3a4fa04e
Sort events by ReadOrder (if both layer and start time are equal).
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19912 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-19 18:23:36 +00:00
eugeni
0c1c5e7ea2
Calculate text bounding box in such way that it does not depend on the height
...
of individual glyphs.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19910 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-19 17:40:31 +00:00
eugeni
ac4703fc35
Fix a stupid bug in list concatenation.
...
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19897 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-18 18:54:38 +00:00