1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-15 11:25:10 +00:00
Commit Graph

291 Commits

Author SHA1 Message Date
eugeni
df5bbaa735 Text alignment should not use bounding boxes of individual glyphs.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22474 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-03-06 09:59:53 +00:00
eugeni
3a14d1c37a Reset advance vector and glyph bounding box if glyph could not be found.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22473 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-03-06 09:31:12 +00:00
eugeni
cb9cde3f8c Fix incorrect spacing introduced in r22231:
these two lines were supposed to perform truncation, not rounding.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22419 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-03-03 08:20:00 +00:00
eugeni
5c927f2367 10l: x2scr used twice instead of y2scr.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22415 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-03-02 17:59:19 +00:00
eugeni
83ef3fedab Bugfix: transform origin to screen coordinates.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22414 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-03-02 17:54:47 +00:00
uau
0a02ca6ec3 Fix \a parsing broken in r22291
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22321 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-23 03:08:54 +00:00
eugeni
f2daf2d930 Add some missing includes.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22310 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-22 15:48:37 +00:00
eugeni
6177b51841 Oops, forgot {} before "else".
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22300 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-21 09:25:52 +00:00
eugeni
87cb56fa1f Cosmetics: fix indentation.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22294 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-20 17:22:34 +00:00
eugeni
a267f03bfa With \t(\b) text becomes bold at the middle of time interval, not at the end
of it like before. The same for \t(\i).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22293 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-20 17:20:21 +00:00
eugeni
b4dac96e5a Any style modifier followed by no recognizable parameter resets to the default.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22291 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-20 17:17:51 +00:00
eugeni
796df56724 \fn without an argument resets font family to the value from style.
Fixes bugzilla #762.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22287 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-20 16:37:18 +00:00
eugeni
c8497d4177 Fix display order of events.
Starting time does not matter, it depends on Layer and ReadOrder only.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22286 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-20 16:20:55 +00:00
eugeni
999e603eb7 Both (-1) and 1 mean bold font in SSA/ASS styles.
The same for italics and some other fields.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22281 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-19 20:10:55 +00:00
eugeni
11399e2ac8 Add \t(\b) support.
Contradicts the specification, but supported by all other renderers.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22280 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-19 19:01:45 +00:00
eugeni
2287f5662d Fix bounding box calculation with \fscx/\fscy.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22279 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-19 18:37:54 +00:00
eugeni
3e1dde83ba Fix \fscx/\fscy animation.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22278 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-19 18:31:05 +00:00
eugeni
39c818a551 Correct implementation of text spacing.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22277 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-19 18:01:49 +00:00
eugeni
beaa890438 Reallocate event_images_t, removing limit on simultanious events count.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22276 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-19 17:44:29 +00:00
eugeni
885b7a1d4e Restore a minus sign that was lost in r22231.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22239 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-16 23:18:47 +00:00
eugeni
fb6a1101ce Implement \frx and \fry (and reimplement \frz) as 3d rotations.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22233 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-16 17:54:47 +00:00
eugeni
a2195cd28f Consistently name z-axis rotation angle "frz".
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22232 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-16 17:51:07 +00:00
eugeni
42871d8220 Move conversions between 16.16, 26.6 fixed point and int, double to separate
functions. Some rounding errors are fixed along the way.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22231 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-16 17:49:35 +00:00
eugeni
1400b0f436 Select the first charmap in the font, if FreeType did not autoselect any.
This happens, for example, with fonts only having an Apple Roman charmap.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22228 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-15 22:03:09 +00:00
eugeni
520db0d850 \r resets \frz to style value.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22227 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-15 21:53:28 +00:00
eugeni
e802fdf790 Fix \t(\frz) handling.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22226 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-15 21:51:51 +00:00
eugeni
42cfb2bb4d \org(0,0) is different from no \org at all.
Use render_context.have_origin to tell them apart.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22225 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-02-15 21:50:21 +00:00
eugeni
7c137f48c6 Bugfix: glyph and bitmap pointers could be left uninitialized after
get_glyph().
Based on a patch by Stanislav Maslovski (stanislav d maslovski a gmail d com).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22063 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-01-29 17:08:29 +00:00
reimar
580dccd5c4 Avoid invalid memory access in ass_process_subtitle for empty subtitles
with sub->lines <= 0


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21853 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-01-07 16:07:45 +00:00
eugeni
896c9c1384 Make -embeddedfonts enabled by default with FontConfig >= 2.4.2.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21648 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-17 12:35:12 +00:00
eugeni
dd1a5a82c1 Update some comments.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21646 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-17 12:00:55 +00:00
eugeni
c0358ff255 Cosmetics: fix indentation.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21636 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-16 19:35:48 +00:00
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
eba0f2e158 Avoid storing font file path and index in ass_font_t.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21634 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-16 19:29:33 +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
624724c001 FT_Set_Transform is fast enough to be called once for each glyph.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21632 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-16 19:24:01 +00:00
eugeni
2875decdc4 Avoid "pointer targets differ in signedness" warnings.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21631 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-16 19:19:27 +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
reimar
f4b7a0e4d1 Get rid on -DGNU_SOURCE for internal code, imported libs should be fixed
ASAP, too, though


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21604 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-12 20:29:30 +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
reimar
e70b5d8500 Also free ass_library_t members in ass_library_done
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21513 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-06 10:11:23 +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
b5a682f0aa Rename: ass_process_font -> ass_add_font.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21471 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-03 17:35:40 +00:00
eugeni
985d92c189 Avoid calling validate_fname() twice for one string.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21469 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-12-03 16:10:23 +00:00
eugeni
9fdb13fd53 If a glyph is not found in the current font, switch to another one.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21367 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-28 22:50:02 +00:00
eugeni
a4d33dbb47 Skip glyphs with char code < 0x20.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21366 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-28 22:44:40 +00:00
eugeni
2dbaab9320 Add FT_Library to ass_font_t.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21365 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-28 22:20:24 +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
edc6501697 Don't include freetype headers in other headers.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21339 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-27 17:56:49 +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
65dbd03fed Move ass_font_desc_t and ass_font_t declarations to ass_font.h.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21337 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-27 17:50:05 +00:00
eugeni
f356ada7fb Cosmetics: reindent.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21336 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-27 17:34:47 +00:00
eugeni
42e4745f17 Don't call FT_Set_Transform/FT_Set_Pixel_Sizes if values have not changed.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21335 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-27 17:33:59 +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
84d0512e5b Initialize font size with 0.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21330 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-27 16:21:10 +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
004c19b520 Move ass_font_t to header.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21282 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-26 20:38:06 +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
diego
dc2be42703 Merge common parts of all Makefiles into one file included by all.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21275 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-26 18:12:36 +00:00
diego
8f167fc5c5 SRCS should be one per line to make patches more readable.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21229 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-25 17:06:08 +00:00
diego
b0e412cc9c Remove pointless indirection.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21227 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-25 17:02:52 +00:00
diego
27b0177662 Remove superfluous comment.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21222 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-25 16:12:36 +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
diego
cf4bf03dc2 Unify dep/depend targets.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21096 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-20 11:18:01 +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
4a27cb5876 Partial fix for semitransparent glyph outlines.
This fix removes semitransparent area (less then pixel width) between glyph and
it's outline. Instead, it makes them overlap a little. It usually looks much
better this way.
Complete fix seems impossible with the current output format (single color
alpha bitmaps). The right way is to blend both glyph and outline into one
bitmap so that 2 pixels with 50% transparency produce a fully solid one.
This requires RGBA bitmap output from libass.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20890 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-13 16:35:15 +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
ff4a1ad4a9 Bugfix: when copying ass_force_style_list, ending 0 was left out.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20738 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-06 20:09:28 +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
aca2396794 Initialize fontconfig in VFCTRL_INIT_EOSD handler.
Recent libass api changes moved fontconfig initialization to filter's
config() function. It is bad, because cache update can take a long time,
resulting in unpleasant sound effects. This change restores the original
behaviour.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20722 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-05 18:56:31 +00:00
eugeni
0a8d19b293 Cosmetics: indentation fix.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20718 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-05 18:21:39 +00:00
eugeni
f78a3783e5 Fix the following compiler warnings:
ass.c:999: warning: unused variable 'i'
ass.c:1041: warning: pointer targets in assignment differ in signedness
ass.c:1043: warning: pointer targets in assignment differ in signedness


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20714 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-05 17:26:55 +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
46afb40907 Prefer microsoft-specific charmaps to all other.
There are some fonts with both 'Unicode' and 'Microsoft/Unicode'
charmaps, and the second always seems to be the right choice.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20653 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-03 23:11:00 +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
593e642133 Implement loading subtitles from memory.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20619 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-03 02:15:08 +00:00
eugeni
452d1d6c61 Bugfix: sub_recode could deallocate global sub_cp under some circumstances.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20618 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-03 01:41:48 +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
978061ad27 Move ass_library initialization code to ass_mp.c.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20518 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-29 15:26:13 +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
572576eb67 Don't set PlayResX for plaintext subtitles.
This way font proportions will not depend on frame aspect.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20512 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-29 13:58:30 +00:00
eugeni
870ed1a164 Add \N at the end of each subtitle line when converting from subdata.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20511 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-29 13:52:51 +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
reimar
ef45c3167f If HAVE_FONTCONFIG is not defined, font_fontconfig might be declared both
extern and static, causing compilation to fail


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20485 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-28 10:21:30 +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
4ad4f781db Reduce margins for plaintext subtitles.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20144 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-09 19:57:56 +00:00
reimar
b7971e6a40 Avoid crash with fontconfig 2.3.9x (as shipped with SuSE 10.1, FcDirScan is broken)
and warn that these are beta versions and not supported.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20111 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-10-08 13:01:14 +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
74727dc564 Cosmetics: add some comments.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19972 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-24 16:15:47 +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
eugeni
a88de95383 Free memory in ass_synth_done().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19968 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-24 15:50:31 +00:00
eugeni
f21b92e1a5 Reduce size of non-blurred bitmaps.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19962 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-23 18:35:19 +00:00
eugeni
50d2386180 Cosmetics. Change indentation of block of code to make it consistent with
the rest of the file.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19961 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-23 17:54:24 +00:00
eugeni
64f3fac3a0 Better fix_outline implementation. No more "fix_outline failed" messages,
should work even with the craziest glyphs.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19947 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-23 00:15:00 +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
6cc5d2fc08 Set ReadOrder values for external subtitles.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19911 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-19 18:22:44 +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
9cfbc0fd80 Cosmetics: fix indentation after last commit.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19908 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-19 13:07:45 +00:00
eugeni
61d45a940d Don't call FcDirScan/FcDirSave with FontConfig >= 2.4.
Font cache is updated automatically in FcConfigAppFontAddDir.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19907 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-19 13:06:44 +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
eugeni
75cc0a6fc8 Reduce code duplication in init_render_context().
Don't use glyph stroker for borderless glyphs.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19879 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-17 15:32:01 +00:00
eugeni
5cdc829b9f Subtract glyph bitmap from outline bitmap.
It greatly improves display of glyphs with semitransparent primary color.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19862 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-16 19:01:56 +00:00
eugeni
69cbeae845 Add \be (blur edges) support to libass.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19854 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-16 13:32:46 +00:00
eugeni
867aa92076 Store bitmap glyphs in a separate struct, instead of FreeType's internal buffer.
This is required for various bitmap modifications (like blur, outline and shadow).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19852 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-16 13:08:17 +00:00
eugeni
dccd5e19ee Make font outline width proportional to movie resolution.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19831 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-13 15:35:10 +00:00
eugeni
6019b400da Bugfix: timing for empty karaoke words was lost, resulting
in faster than normal karaoke playback.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19722 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-06 17:32:31 +00:00
eugeni
4fd16b0702 Workaround for broken fonts with bad ascender/descender.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19699 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-05 20:06:20 +00:00
eugeni
b4d4d22a50 Change \fad behaviour so that it does not get cancelled by \r.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19698 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-05 19:06:15 +00:00
eugeni
1e50bf37ea Simplification.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19697 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-05 18:33:31 +00:00
eugeni
d764df09de Add vertical clipping for subtitles that were moved because of a collision.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19670 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-04 17:55:57 +00:00
eugeni
06ffbd9d7d Fix possible unallocated memory read in libass line wrapping code.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19669 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-04 17:52:28 +00:00
eugeni
1d6919b492 Apply -ass-force-style also to matroska plaintext subs.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19660 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-03 17:57:41 +00:00
eugeni
06b0186037 Cosmetics: restore indentation after recent changes.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19659 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-03 17:44:25 +00:00
eugeni
9d3ed04d47 Add -ass-styles option. It allows to load styles from a file and use them
for plain text subtitles rendering.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19658 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-03 17:42:31 +00:00
eugeni
8ed46df92f Fix last commit.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19657 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-03 17:36:29 +00:00
eugeni
d9f0a7b4ad More checks in ass_render_event.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19656 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-03 17:25:04 +00:00
eugeni
83a3b732c4 Remove unneeded variable.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19655 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-03 17:09:53 +00:00
eugeni
62b44a7d1f ass-color and ass-border-color options.
Only plain text subtitles are affected.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19652 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-03 12:18:49 +00:00
eugeni
cc29cb220f Add support for rendering matroska plaintext subtitles with libass.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19649 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-02 20:46:26 +00:00
eugeni
b1515e31b1 Don't sort events when reading external subs. With r19644, the order does not matter.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19645 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-02 19:21:40 +00:00
eugeni
fc6751b73a Better collision detection algorithm. The idea is to keep a subtitle in place
when a lower placed one disappears, thus improving readability.
As a side effect, layers are supported now.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19644 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-02 19:17:32 +00:00
eugeni
e6206f4e1c Remove some unused code.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19642 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-02 18:33:51 +00:00
eugeni
19e596920d Read layer info from external subs.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19641 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-02 18:10:04 +00:00
eugeni
729b0059a4 Make \fr* parameter a floating point value.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19628 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-09-01 20:36:38 +00:00
eugeni
534fe740f5 Bugfix: potential write of unallocated memory.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19618 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-08-31 22:45:20 +00:00