add osd-scale command

Signed-off-by: Paul B Mahol <onemda@gmail.com>

Modified to add docs for --osd-scale option, and adjusted to the
previous commit by wm4.
This commit is contained in:
Paul B Mahol 2013-05-14 12:10:27 +00:00 committed by wm4
parent f562a41ca2
commit 83570fc0fb
7 changed files with 16 additions and 0 deletions

View File

@ -268,6 +268,7 @@ option.
Name W Comment
=========================== = ==================================================
osd-level x see ``--osd-level``
osd-scale x osd font size multiplicator, see ``--osd-scale``
loop x see ``--loop``
speed x see ``--speed``
filename currently played file (path stripped)

View File

@ -1443,6 +1443,9 @@
Default: 10.
--osd-scale=<factor>
OSD font size multiplicator, multiplied with ``--osd-font-size`` value.
--osd-shadow-color=<#RRGGBB>, --sub-text-shadow-color=<#RRGGBB>
See ``--osd-color``. Color used for OSD/sub text shadow.

View File

@ -624,6 +624,7 @@ const m_option_t mplayer_opts[]={
({"0", 0}, {"1", 1}, {"2", 2}, {"3", 3})),
OPT_INTRANGE("osd-duration", osd_duration, 0, 0, 3600000),
OPT_FLAG("osd-fractions", osd_fractions, 0),
OPT_FLOATRANGE("osd-scale", osd_scale, 0, 0, 100),
OPT_DOUBLE("sstep", step_sec, CONF_MIN, 0),

View File

@ -1361,6 +1361,7 @@ static int mp_property_alias(m_option_t *prop, int action, void *arg,
static const m_option_t mp_properties[] = {
// General
M_OPTION_PROPERTY("osd-level"),
M_OPTION_PROPERTY_CUSTOM("osd-scale", property_osd_helper),
M_OPTION_PROPERTY("loop"),
M_OPTION_PROPERTY_CUSTOM("speed", mp_property_playback_speed),
{ "filename", mp_property_filename, CONF_TYPE_STRING,

View File

@ -49,6 +49,7 @@ void set_default_mplayer_options(struct MPOpts *opts)
.osd_bar_align_y = 0.5,
.osd_bar_w = 75.0,
.osd_bar_h = 3.125,
.osd_scale = 1,
.loop_times = -1,
.ordered_chapters = 1,
.chapter_merge_threshold = 100,

View File

@ -174,6 +174,7 @@ typedef struct MPOpts {
float osd_bar_align_y;
float osd_bar_w;
float osd_bar_h;
float osd_scale;
struct osd_style_opts *osd_style;
struct osd_style_opts *sub_text_style;
float sub_scale;

View File

@ -147,11 +147,19 @@ static char *mangle_ass(const char *in)
static void update_osd(struct osd_state *osd, struct osd_object *obj)
{
struct MPOpts *opts = osd->opts;
create_osd_ass_track(osd, obj);
clear_obj(obj);
if (!osd->osd_text[0])
return;
struct osd_style_opts font = *opts->osd_style;
font.font_size *= opts->osd_scale;
ASS_Style *style = obj->osd_track->styles + obj->osd_track->default_style;
mp_ass_set_style(style, &font);
char *text = mangle_ass(osd->osd_text);
add_osd_ass_event(obj->osd_track, text);
talloc_free(text);