mirror of https://github.com/mpv-player/mpv
Revert "options: add --sub-visibility=<primary-only|secondary-only>"
This reverts commit 04f0b0abe4
.
It's not a good idea to unify the names only for visibility, while
keeping secondary-* for everything else.
This needs a bit more thought before we allow secondary sub to be
visible on its own.
This commit is contained in:
parent
04f0b0abe4
commit
9cddd73f67
|
@ -39,8 +39,6 @@ Interface changes
|
||||||
- add `--tone-mapping-mode`, replacing `--tone-mapping-desaturate` and
|
- add `--tone-mapping-mode`, replacing `--tone-mapping-desaturate` and
|
||||||
`--tone-mapping-desaturate-exponent`.
|
`--tone-mapping-desaturate-exponent`.
|
||||||
- add `dolbyvision` sub-parameter to `format` video filter
|
- add `dolbyvision` sub-parameter to `format` video filter
|
||||||
- remove `--secondary-sub-visibility` and introduces
|
|
||||||
`--sub-visibility=primary-only` and `--sub-visibility=secondary-only`
|
|
||||||
--- mpv 0.34.0 ---
|
--- mpv 0.34.0 ---
|
||||||
- deprecate selecting by card number with `--drm-connector`, add
|
- deprecate selecting by card number with `--drm-connector`, add
|
||||||
`--drm-device` which can be used instead
|
`--drm-device` which can be used instead
|
||||||
|
|
|
@ -2607,10 +2607,19 @@ Subtitles
|
||||||
|
|
||||||
This is a path list option. See `List Options`_ for details.
|
This is a path list option. See `List Options`_ for details.
|
||||||
|
|
||||||
``--sub-visibility=<no|yes|primary-only|secondary-only>``, ``--no-sub-visibility``
|
``--sub-visibility``, ``--no-sub-visibility``
|
||||||
Can be used to disable display of subtitles, but still select and decode
|
Can be used to disable display of subtitles, but still select and decode
|
||||||
them.
|
them.
|
||||||
|
|
||||||
|
``--secondary-sub-visibility``, ``--no-secondary-sub-visibility``
|
||||||
|
Can be used to disable display of secondary subtitles, but still select and
|
||||||
|
decode them.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
If ``--sub-visibility=no``, secondary subtitles are hidden regardless of
|
||||||
|
``--secondary-sub-visibility``.
|
||||||
|
|
||||||
``--sub-clear-on-seek``
|
``--sub-clear-on-seek``
|
||||||
(Obscure, rarely useful.) Can be used to play broken mkv files with
|
(Obscure, rarely useful.) Can be used to play broken mkv files with
|
||||||
duplicate ReadOrder fields. ReadOrder is the first field in a
|
duplicate ReadOrder fields. ReadOrder is the first field in a
|
||||||
|
|
|
@ -121,6 +121,7 @@
|
||||||
#R add sub-pos +1 # move subtitles down
|
#R add sub-pos +1 # move subtitles down
|
||||||
#t add sub-pos +1 # move subtitles down
|
#t add sub-pos +1 # move subtitles down
|
||||||
#v cycle sub-visibility # hide or show the subtitles
|
#v cycle sub-visibility # hide or show the subtitles
|
||||||
|
#Alt+v cycle secondary-sub-visibility # hide or show the secondary subtitles
|
||||||
#V cycle sub-ass-vsfilter-aspect-compat # toggle stretching SSA/ASS subtitles with anamorphic videos to match the historical renderer
|
#V cycle sub-ass-vsfilter-aspect-compat # toggle stretching SSA/ASS subtitles with anamorphic videos to match the historical renderer
|
||||||
#u cycle-values sub-ass-override "force" "no" # toggle overriding SSA/ASS subtitle styles with the normal styles
|
#u cycle-values sub-ass-override "force" "no" # toggle overriding SSA/ASS subtitle styles with the normal styles
|
||||||
#j cycle sub # switch subtitle track
|
#j cycle sub # switch subtitle track
|
||||||
|
|
|
@ -240,9 +240,8 @@ const struct m_sub_options mp_subtitle_sub_opts = {
|
||||||
{"sub-delay", OPT_FLOAT(sub_delay)},
|
{"sub-delay", OPT_FLOAT(sub_delay)},
|
||||||
{"sub-fps", OPT_FLOAT(sub_fps)},
|
{"sub-fps", OPT_FLOAT(sub_fps)},
|
||||||
{"sub-speed", OPT_FLOAT(sub_speed)},
|
{"sub-speed", OPT_FLOAT(sub_speed)},
|
||||||
{"sub-visibility", OPT_CHOICE(sub_visibility,
|
{"sub-visibility", OPT_FLAG(sub_visibility)},
|
||||||
{"no", 0}, {"yes", 1}, {"primary-only", 2}, {"secondary-only", 3})
|
{"secondary-sub-visibility", OPT_FLAG(sec_sub_visibility)},
|
||||||
},
|
|
||||||
{"sub-forced-only", OPT_CHOICE(forced_subs_only,
|
{"sub-forced-only", OPT_CHOICE(forced_subs_only,
|
||||||
{"auto", -1}, {"no", 0}, {"yes", 1})},
|
{"auto", -1}, {"no", 0}, {"yes", 1})},
|
||||||
{"stretch-dvd-subs", OPT_FLAG(stretch_dvd_subs)},
|
{"stretch-dvd-subs", OPT_FLAG(stretch_dvd_subs)},
|
||||||
|
@ -286,6 +285,7 @@ const struct m_sub_options mp_subtitle_sub_opts = {
|
||||||
.size = sizeof(OPT_BASE_STRUCT),
|
.size = sizeof(OPT_BASE_STRUCT),
|
||||||
.defaults = &(OPT_BASE_STRUCT){
|
.defaults = &(OPT_BASE_STRUCT){
|
||||||
.sub_visibility = 1,
|
.sub_visibility = 1,
|
||||||
|
.sec_sub_visibility = 1,
|
||||||
.forced_subs_only = -1,
|
.forced_subs_only = -1,
|
||||||
.sub_pos = 100,
|
.sub_pos = 100,
|
||||||
.sub_speed = 1.0,
|
.sub_speed = 1.0,
|
||||||
|
@ -880,8 +880,6 @@ static const m_option_t mp_opts[] = {
|
||||||
{"pphelp", OPT_REMOVED(NULL)},
|
{"pphelp", OPT_REMOVED(NULL)},
|
||||||
{"rawaudio", OPT_REMOVED("use --demuxer-rawaudio-...")},
|
{"rawaudio", OPT_REMOVED("use --demuxer-rawaudio-...")},
|
||||||
{"rawvideo", OPT_REMOVED("use --demuxer-rawvideo-...")},
|
{"rawvideo", OPT_REMOVED("use --demuxer-rawvideo-...")},
|
||||||
{"secondary-sub-visibility", OPT_REMOVED(
|
|
||||||
"use --sub-visibility=primary-only/yes")},
|
|
||||||
{"spugauss", OPT_REPLACED("sub-gauss")},
|
{"spugauss", OPT_REPLACED("sub-gauss")},
|
||||||
{"srate", OPT_REPLACED("audio-samplerate")},
|
{"srate", OPT_REPLACED("audio-samplerate")},
|
||||||
{"ss", OPT_REPLACED("start")},
|
{"ss", OPT_REPLACED("start")},
|
||||||
|
|
|
@ -73,6 +73,7 @@ typedef struct mp_vo_opts {
|
||||||
// Subtitle options needed by the subtitle decoders/renderers.
|
// Subtitle options needed by the subtitle decoders/renderers.
|
||||||
struct mp_subtitle_opts {
|
struct mp_subtitle_opts {
|
||||||
int sub_visibility;
|
int sub_visibility;
|
||||||
|
int sec_sub_visibility;
|
||||||
int sub_pos;
|
int sub_pos;
|
||||||
float sub_delay;
|
float sub_delay;
|
||||||
float sub_fps;
|
float sub_fps;
|
||||||
|
|
|
@ -4003,13 +4003,11 @@ static const struct property_osd_display {
|
||||||
{"sub-delay", "Sub delay"},
|
{"sub-delay", "Sub delay"},
|
||||||
{"sub-speed", "Sub speed"},
|
{"sub-speed", "Sub speed"},
|
||||||
{"sub-visibility",
|
{"sub-visibility",
|
||||||
.msg = "Subtitles ${?sub-visibility==no:hidden}"
|
.msg = "Subtitles ${!sub-visibility==yes:hidden}"
|
||||||
"${?sub-visibility==yes:visible}"
|
"${?sub-visibility==yes:visible${?sub==no: (but no subtitles selected)}}"},
|
||||||
"${?sub-visibility==primary-only:visible (primary only"
|
{"secondary-sub-visibility",
|
||||||
"${?sid==no: but no subtitles selected})}"
|
.msg = "Secondary Subtitles ${!secondary-sub-visibility==yes:hidden}"
|
||||||
"${?sub-visibility==secondary-only:visible (secondary only"
|
"${?secondary-sub-visibility==yes:visible${?secondary-sid==no: (but no secondary subtitles selected)}}"},
|
||||||
"${?secondary-sid==no: but no subtitles selected})}"
|
|
||||||
},
|
|
||||||
{"sub-forced-only", "Forced sub only"},
|
{"sub-forced-only", "Forced sub only"},
|
||||||
{"sub-scale", "Sub Scale"},
|
{"sub-scale", "Sub Scale"},
|
||||||
{"sub-ass-vsfilter-aspect-compat", "Subtitle VSFilter aspect compat"},
|
{"sub-ass-vsfilter-aspect-compat", "Subtitle VSFilter aspect compat"},
|
||||||
|
|
|
@ -453,12 +453,7 @@ void sub_set_play_dir(struct dec_sub *sub, int dir)
|
||||||
pthread_mutex_unlock(&sub->lock);
|
pthread_mutex_unlock(&sub->lock);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool sub_is_primary_visible(struct dec_sub *sub)
|
|
||||||
{
|
|
||||||
return sub->opts->sub_visibility == 1 || sub->opts->sub_visibility == 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool sub_is_secondary_visible(struct dec_sub *sub)
|
bool sub_is_secondary_visible(struct dec_sub *sub)
|
||||||
{
|
{
|
||||||
return sub->opts->sub_visibility == 1 || sub->opts->sub_visibility == 3;
|
return !!sub->opts->sec_sub_visibility;
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,6 @@ void sub_reset(struct dec_sub *sub);
|
||||||
void sub_select(struct dec_sub *sub, bool selected);
|
void sub_select(struct dec_sub *sub, bool selected);
|
||||||
void sub_set_recorder_sink(struct dec_sub *sub, struct mp_recorder_sink *sink);
|
void sub_set_recorder_sink(struct dec_sub *sub, struct mp_recorder_sink *sink);
|
||||||
void sub_set_play_dir(struct dec_sub *sub, int dir);
|
void sub_set_play_dir(struct dec_sub *sub, int dir);
|
||||||
bool sub_is_primary_visible(struct dec_sub *sub);
|
|
||||||
bool sub_is_secondary_visible(struct dec_sub *sub);
|
bool sub_is_secondary_visible(struct dec_sub *sub);
|
||||||
|
|
||||||
int sub_control(struct dec_sub *sub, enum sd_ctrl cmd, void *arg);
|
int sub_control(struct dec_sub *sub, enum sd_ctrl cmd, void *arg);
|
||||||
|
|
|
@ -291,7 +291,7 @@ static struct sub_bitmaps *render_object(struct osd_state *osd,
|
||||||
check_obj_resize(osd, osdres, obj);
|
check_obj_resize(osd, osdres, obj);
|
||||||
|
|
||||||
if (obj->type == OSDTYPE_SUB) {
|
if (obj->type == OSDTYPE_SUB) {
|
||||||
if (obj->sub && sub_is_primary_visible(obj->sub))
|
if (obj->sub)
|
||||||
res = sub_get_bitmaps(obj->sub, obj->vo_res, format, video_pts);
|
res = sub_get_bitmaps(obj->sub, obj->vo_res, format, video_pts);
|
||||||
} else if (obj->type == OSDTYPE_SUB2) {
|
} else if (obj->type == OSDTYPE_SUB2) {
|
||||||
if (obj->sub && sub_is_secondary_visible(obj->sub))
|
if (obj->sub && sub_is_secondary_visible(obj->sub))
|
||||||
|
|
Loading…
Reference in New Issue