summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2022-02-11 20:06:47 +0100
committerBastien Nocera <hadess@hadess.net>2022-02-13 11:13:21 +0100
commitb03deca446574c6ffdade038c54fc5e6ed2e494f (patch)
treebf01631e72057f9295440bdc1ad2ace5ba1470e3
parent665b65ca817e095e6e9236cc8c39118935e23a5e (diff)
downloadtotem-b03deca446574c6ffdade038c54fc5e6ed2e494f.tar.gz
backend: Simplify _set_language() implementation
To be more like the _set_subtitle() one.
-rw-r--r--src/backend/bacon-video-widget.c23
1 files changed, 1 insertions, 22 deletions
diff --git a/src/backend/bacon-video-widget.c b/src/backend/bacon-video-widget.c
index 3d9e6ad29..f500607ac 100644
--- a/src/backend/bacon-video-widget.c
+++ b/src/backend/bacon-video-widget.c
@@ -2611,20 +2611,6 @@ bacon_video_widget_get_subtitle (BaconVideoWidget * bvw)
return subtitle;
}
-static gboolean
-sublang_is_valid (int sublang,
- int n_sublang)
-{
- if (sublang == BVW_TRACK_AUTO ||
- sublang == BVW_TRACK_NONE)
- return TRUE;
- if (sublang < 0)
- return FALSE;
- if (sublang >= n_sublang)
- return FALSE;
- return TRUE;
-}
-
static BvwLangInfo *
find_info_for_id (GList *list,
int id)
@@ -3064,22 +3050,15 @@ void
bacon_video_widget_set_language (BaconVideoWidget * bvw, int language)
{
GstTagList *tags;
- int n_lang;
g_return_if_fail (BACON_IS_VIDEO_WIDGET (bvw));
g_return_if_fail (bvw->play != NULL);
-
- g_object_get (bvw->play, "n-audio", &n_lang, NULL);
-
- g_return_if_fail (sublang_is_valid (language, n_lang));
+ g_return_if_fail (find_info_for_id (bvw->languages, language) != NULL);
GST_DEBUG ("setting language to %d", language);
g_object_set (bvw->play, "current-audio", language, NULL);
- g_object_get (bvw->play, "current-audio", &language, NULL);
- GST_DEBUG ("current-audio now: %d", language);
-
g_signal_emit_by_name (G_OBJECT (bvw->play), "get-audio-tags", language, &tags);
bvw_update_tags (bvw, tags, "audio");
if (update_languages_tracks (bvw))