summaryrefslogtreecommitdiffstats
path: root/libass/ass_render.c
diff options
context:
space:
mode:
Diffstat (limited to 'libass/ass_render.c')
-rw-r--r--libass/ass_render.c81
1 files changed, 39 insertions, 42 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index f442b89..c5d7d06 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -246,7 +246,7 @@ static void ass_lazy_track_init(ass_renderer_t *render_priv)
return;
if (!track->PlayResX && !track->PlayResY) {
ass_msg(MSGL_WARN,
- MSGTR_LIBASS_NeitherPlayResXNorPlayResYDefined);
+ "Neither PlayResX nor PlayResY defined. Assuming 384x288");
track->PlayResX = 384;
track->PlayResY = 288;
} else {
@@ -257,19 +257,19 @@ static void ass_lazy_track_init(ass_renderer_t *render_priv)
if (!track->PlayResY && track->PlayResX == 1280) {
track->PlayResY = 1024;
ass_msg(MSGL_WARN,
- MSGTR_LIBASS_PlayResYUndefinedSettingY, track->PlayResY);
+ "PlayResY undefined, setting to %d", track->PlayResY);
} else if (!track->PlayResY) {
track->PlayResY = track->PlayResX / orig_aspect + .5;
ass_msg(MSGL_WARN,
- MSGTR_LIBASS_PlayResYUndefinedSettingY, track->PlayResY);
+ "PlayResY undefined, setting to %d", track->PlayResY);
} else if (!track->PlayResX && track->PlayResY == 1024) {
track->PlayResX = 1280;
ass_msg(MSGL_WARN,
- MSGTR_LIBASS_PlayResXUndefinedSettingX, track->PlayResX);
+ "PlayResX undefined, setting to %d", track->PlayResX);
} else if (!track->PlayResX) {
track->PlayResX = track->PlayResY * orig_aspect + .5;
ass_msg(MSGL_WARN,
- MSGTR_LIBASS_PlayResXUndefinedSettingX, track->PlayResX);
+ "PlayResX undefined, setting to %d", track->PlayResX);
}
}
}
@@ -283,14 +283,14 @@ ass_renderer_t *ass_renderer_init(ass_library_t *library)
error = FT_Init_FreeType(&ft);
if (error) {
- ass_msg(MSGL_FATAL, MSGTR_LIBASS_FT_Init_FreeTypeFailed);
+ ass_msg(MSGL_FATAL, "%s failed", "FT_Init_FreeType");
goto ass_init_exit;
}
FT_Library_Version(ft, &vmajor, &vminor, &vpatch);
- ass_msg(MSGL_V, "FreeType library version: %d.%d.%d\n",
+ ass_msg(MSGL_V, "FreeType library version: %d.%d.%d",
vmajor, vminor, vpatch);
- ass_msg(MSGL_V, "FreeType headers version: %d.%d.%d\n",
+ ass_msg(MSGL_V, "FreeType headers version: %d.%d.%d",
FREETYPE_MAJOR, FREETYPE_MINOR, FREETYPE_PATCH);
priv = calloc(1, sizeof(ass_renderer_t));
@@ -318,9 +318,9 @@ ass_renderer_t *ass_renderer_init(ass_library_t *library)
ass_init_exit:
if (priv)
- ass_msg(MSGL_INFO, MSGTR_LIBASS_Init);
+ ass_msg(MSGL_INFO, "Init");
else
- ass_msg(MSGL_ERR, MSGTR_LIBASS_InitFailed);
+ ass_msg(MSGL_ERR, "Init failed");
return priv;
}
@@ -527,22 +527,22 @@ static ass_image_t **render_glyph(ass_renderer_t *render_priv,
tmp = dst_x - clip_x0;
if (tmp < 0) {
- ass_msg(MSGL_DBG2, "clip left\n");
+ ass_msg(MSGL_DBG2, "clip left");
b_x0 = -tmp;
}
tmp = dst_y - clip_y0;
if (tmp < 0) {
- ass_msg(MSGL_DBG2, "clip top\n");
+ ass_msg(MSGL_DBG2, "clip top");
b_y0 = -tmp;
}
tmp = clip_x1 - dst_x - bm->w;
if (tmp < 0) {
- ass_msg(MSGL_DBG2, "clip right\n");
+ ass_msg(MSGL_DBG2, "clip right");
b_x1 = bm->w + tmp;
}
tmp = clip_y1 - dst_y - bm->h;
if (tmp < 0) {
- ass_msg(MSGL_DBG2, "clip bottom\n");
+ ass_msg(MSGL_DBG2, "clip bottom");
b_y1 = bm->h + tmp;
}
@@ -939,7 +939,7 @@ static void change_border(ass_renderer_t *render_priv, double border_x,
memory, &render_priv->state.stroker);
#endif
if (error) {
- ass_msg(MSGL_V, "failed to get stroker\n");
+ ass_msg(MSGL_V, "failed to get stroker");
render_priv->state.stroker = 0;
}
}
@@ -1180,7 +1180,7 @@ static char *parse_tag(ass_renderer_t *render_priv, char *p, double pwr)
t1 = 0;
t2 = render_priv->state.event->Duration;
ass_msg(MSGL_DBG2,
- "movement: (%f, %f) -> (%f, %f)\n", x1, y1, x2, y2);
+ "movement: (%f, %f) -> (%f, %f)", x1, y1, x2, y2);
}
skip(')');
delta_t = t2 - t1;
@@ -1260,12 +1260,12 @@ static char *parse_tag(ass_renderer_t *render_priv, char *p, double pwr)
int val;
if (mystrtoi(&p, &val) && val) {
int v = (val - 1) / 3; // 0, 1 or 2 for vertical alignment
- ass_msg(MSGL_DBG2, "an %d\n", val);
+ ass_msg(MSGL_DBG2, "an %d", val);
if (v != 0)
v = 3 - v;
val = ((val - 1) % 3) + 1; // horizontal alignment
val += v * 4;
- ass_msg(MSGL_DBG2, "align %d\n", val);
+ ass_msg(MSGL_DBG2, "align %d", val);
render_priv->state.alignment = val;
} else
render_priv->state.alignment =
@@ -1284,10 +1284,10 @@ static char *parse_tag(ass_renderer_t *render_priv, char *p, double pwr)
skip(',');
mystrtod(&p, &v2);
skip(')');
- ass_msg(MSGL_DBG2, "pos(%f, %f)\n", v1, v2);
+ ass_msg(MSGL_DBG2, "pos(%f, %f)", v1, v2);
if (render_priv->state.evt_type == EVENT_POSITIONED) {
ass_msg(MSGL_V, "Subtitle has a new \\pos "
- "after \\move or \\pos, ignoring\n");
+ "after \\move or \\pos, ignoring");
} else {
render_priv->state.evt_type = EVENT_POSITIONED;
render_priv->state.detect_collisions = 0;
@@ -1339,8 +1339,7 @@ static char *parse_tag(ass_renderer_t *render_priv, char *p, double pwr)
skip(',');
mystrtoi(&p, &v2);
skip(')');
- ass_msg(MSGL_DBG2, "org(%d, %d)\n", v1, v2);
- // render_priv->state.evt_type = EVENT_POSITIONED;
+ ass_msg(MSGL_DBG2, "org(%d, %d)", v1, v2);
if (!render_priv->state.have_origin) {
render_priv->state.org_x = v1;
render_priv->state.org_y = v2;
@@ -1428,7 +1427,7 @@ static char *parse_tag(ass_renderer_t *render_priv, char *p, double pwr)
uint32_t val;
if (!strtocolor(&p, &val))
val = render_priv->state.style->PrimaryColour;
- ass_msg(MSGL_DBG2, "color: %X\n", val);
+ ass_msg(MSGL_DBG2, "color: %X", val);
change_color(&render_priv->state.c[0], val, pwr);
} else if ((*p >= '1') && (*p <= '4') && (++p)
&& (mystrcmp(&p, "c") || mystrcmp(&p, "a"))) {
@@ -1463,10 +1462,10 @@ static char *parse_tag(ass_renderer_t *render_priv, char *p, double pwr)
change_alpha(render_priv->state.c + cidx, val >> 24, pwr);
break;
default:
- ass_msg(MSGL_WARN, MSGTR_LIBASS_BadCommand, n, cmd);
+ ass_msg(MSGL_WARN, "Bad command: %c%c", n, cmd);
break;
}
- ass_msg(MSGL_DBG2, "single c/a at %f: %c%c = %X \n",
+ ass_msg(MSGL_DBG2, "single c/a at %f: %c%c = %X",
pwr, n, cmd, render_priv->state.c[cidx]);
} else if (mystrcmp(&p, "r")) {
reset_render_context(render_priv);
@@ -1580,7 +1579,7 @@ static unsigned get_next_char(ass_renderer_t *render_priv, char **str)
} else
break;
} else if (*p != '\\')
- ass_msg(MSGL_V, "Unable to parse: \"%s\" \n", p);
+ ass_msg(MSGL_V, "Unable to parse: '%s'", p);
if (*p == 0)
break;
}
@@ -1626,7 +1625,7 @@ apply_transition_effects(ass_renderer_t *render_priv, ass_event_t *event)
if (strncmp(event->Effect, "Banner;", 7) == 0) {
int delay;
if (cnt < 1) {
- ass_msg(MSGL_V, "Error parsing effect: %s \n",
+ ass_msg(MSGL_V, "Error parsing effect: '%s'",
event->Effect);
return;
}
@@ -1649,7 +1648,7 @@ apply_transition_effects(ass_renderer_t *render_priv, ass_event_t *event)
} else if (strncmp(event->Effect, "Scroll down;", 12) == 0) {
render_priv->state.scroll_direction = SCROLL_TB;
} else {
- ass_msg(MSGL_V, "Unknown transition effect: %s \n",
+ ass_msg(MSGL_V, "Unknown transition effect: '%s'",
event->Effect);
return;
}
@@ -1658,7 +1657,7 @@ apply_transition_effects(ass_renderer_t *render_priv, ass_event_t *event)
int delay;
int y0, y1;
if (cnt < 3) {
- ass_msg(MSGL_V, "Error parsing effect: %s \n",
+ ass_msg(MSGL_V, "Error parsing effect: '%s'",
event->Effect);
return;
}
@@ -1865,7 +1864,7 @@ static void stroke_outline_glyph(ass_renderer_t *render_priv,
error = FT_Glyph_StrokeBorder((FT_Glyph *) glyph,
render_priv->state.stroker, 0, 1);
if (error)
- ass_msg(MSGL_WARN, MSGTR_LIBASS_FT_Glyph_Stroke_Error, error);
+ ass_msg(MSGL_WARN, "FT_Glyph_Stroke error: %d", error);
// "Stroke" with the outline emboldener in two passes.
// The outlines look uglier, but the emboldening never adds any points
@@ -2134,7 +2133,7 @@ wrap_lines_smart(ass_renderer_t *render_priv, double max_text_width)
if (cur->symbol == '\n') {
break_type = 2;
break_at = i;
- ass_msg(MSGL_DBG2, "forced line break at %d\n",
+ ass_msg(MSGL_DBG2, "forced line break at %d",
break_at);
}
@@ -2146,8 +2145,8 @@ wrap_lines_smart(ass_renderer_t *render_priv, double max_text_width)
break_at = i - 1;
if (break_at == -1)
break_at = 0;
- ass_msg(MSGL_DBG2, "overfill at %d\n", i);
- ass_msg(MSGL_DBG2, "line break at %d\n", break_at);
+ ass_msg(MSGL_DBG2, "overfill at %d", i);
+ ass_msg(MSGL_DBG2, "line break at %d", break_at);
}
if (break_at != -1) {
@@ -2247,7 +2246,7 @@ wrap_lines_smart(ass_renderer_t *render_priv, double max_text_width)
pen_shift_x = d6_to_double(-cur->pos.x);
pen_shift_y += height + render_priv->settings.line_spacing;
ass_msg(MSGL_DBG2,
- "shifting from %d to %d by (%f, %f)\n", i,
+ "shifting from %d to %d by (%f, %f)", i,
text_info->length - 1, pen_shift_x, pen_shift_y);
}
cur->pos.x += double_to_d6(pen_shift_x);
@@ -2311,8 +2310,7 @@ static void process_karaoke_effects(ass_renderer_t *render_priv)
dt /= (tm_end - tm_start);
x = x_start + (x_end - x_start) * dt;
} else {
- ass_msg(MSGL_ERR,
- MSGTR_LIBASS_UnknownEffectType_InternalError);
+ ass_msg(MSGL_ERR, "Unknown effect type");
continue;
}
@@ -2465,11 +2463,11 @@ ass_render_event(ass_renderer_t *render_priv, ass_event_t *event,
ass_drawing_t *drawing;
if (event->Style >= render_priv->track->n_styles) {
- ass_msg(MSGL_WARN, MSGTR_LIBASS_NoStyleFound);
+ ass_msg(MSGL_WARN, "No style found");
return 1;
}
if (!event->Text) {
- ass_msg(MSGL_WARN, MSGTR_LIBASS_EmptyEvent);
+ ass_msg(MSGL_WARN, "Empty event");
return 1;
}
@@ -2770,7 +2768,7 @@ ass_render_event(ass_renderer_t *render_priv, ass_event_t *event,
double scr_y;
if (valign != VALIGN_SUB)
ass_msg(MSGL_V,
- "Invalid valign, supposing 0 (subtitle)\n");
+ "Invalid valign, supposing 0 (subtitle)");
scr_y =
y2scr_sub(render_priv,
render_priv->track->PlayResY - MarginV);
@@ -2795,7 +2793,7 @@ ass_render_event(ass_renderer_t *render_priv, ass_event_t *event,
if (render_priv->state.evt_type == EVENT_POSITIONED) {
double base_x = 0;
double base_y = 0;
- ass_msg(MSGL_DBG2, "positioned event at %f, %f\n",
+ ass_msg(MSGL_DBG2, "positioned event at %f, %f",
render_priv->state.pos_x, render_priv->state.pos_y);
get_base_point(&bbox, alignment, &base_x, &base_y);
device_x =
@@ -3176,8 +3174,7 @@ fix_collisions(ass_renderer_t *render_priv, event_images_t *imgs, int cnt)
s.a = priv->top;
s.b = priv->top + priv->height;
if (priv->height != imgs[i].height) { // no, it's not
- ass_msg(MSGL_WARN,
- MSGTR_LIBASS_EventHeightHasChanged);
+ ass_msg(MSGL_WARN, "Warning! Event height has changed");
priv->top = 0;
priv->height = 0;
}