summaryrefslogtreecommitdiffstats
path: root/sub/dec_sub.c
diff options
context:
space:
mode:
authorDudemanguy <random342@airmail.cc>2022-01-19 11:23:52 -0600
committerDudemanguy <random342@airmail.cc>2022-01-22 16:22:25 +0000
commit024e0cd4c1405a41edd6a8b302ec6b747bc60ea3 (patch)
tree5df7dfe8d7d860e70ef57c5143d345b8c1da8cc3 /sub/dec_sub.c
parent9cddd73f67f11dba2f2921124e2c39c77af01651 (diff)
downloadmpv-024e0cd4c1405a41edd6a8b302ec6b747bc60ea3.tar.bz2
mpv-024e0cd4c1405a41edd6a8b302ec6b747bc60ea3.tar.xz
options: only apply sub-visibility to primary subs
Previously, the sub-visibility option changed the visibility of all subtitles including secondary ones. This meant that it was not possible to only display secondary subtitles while hiding the primary ones. This modifies the sub-visibility option so that it only affects primary subtitles which allows only secondary subtitles to be displayed.
Diffstat (limited to 'sub/dec_sub.c')
-rw-r--r--sub/dec_sub.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/sub/dec_sub.c b/sub/dec_sub.c
index a283a5151d..5a49f6e4a3 100644
--- a/sub/dec_sub.c
+++ b/sub/dec_sub.c
@@ -334,8 +334,6 @@ struct sub_bitmaps *sub_get_bitmaps(struct dec_sub *sub, struct mp_osd_res dim,
{
pthread_mutex_lock(&sub->lock);
- struct mp_subtitle_opts *opts = sub->opts;
-
pts = pts_to_subtitle(sub, pts);
sub->last_vo_pts = pts;
@@ -344,7 +342,7 @@ struct sub_bitmaps *sub_get_bitmaps(struct dec_sub *sub, struct mp_osd_res dim,
struct sub_bitmaps *res = NULL;
if (!(sub->end != MP_NOPTS_VALUE && pts >= sub->end) &&
- opts->sub_visibility && sub->sd->driver->get_bitmaps)
+ sub->sd->driver->get_bitmaps)
res = sub->sd->driver->get_bitmaps(sub->sd, dim, format, pts);
pthread_mutex_unlock(&sub->lock);
@@ -453,6 +451,11 @@ void sub_set_play_dir(struct dec_sub *sub, int dir)
pthread_mutex_unlock(&sub->lock);
}
+bool sub_is_primary_visible(struct dec_sub *sub)
+{
+ return !!sub->opts->sub_visibility;
+}
+
bool sub_is_secondary_visible(struct dec_sub *sub)
{
return !!sub->opts->sec_sub_visibility;