{
const GstMetaInfo *info = meta->info;
const gchar *const *tags;
+ const gchar *const supported_tags[] = {
+ GST_META_TAG_AUDIO_STR,
+ GST_META_TAG_AUDIO_CHANNELS_STR,
+ NULL,
+ };
tags = gst_meta_api_type_get_tags (info->api);
- if (!tags || (g_strv_length ((gchar **) tags) == 1
- && gst_meta_api_type_has_tag (info->api, META_TAG_AUDIO)))
+ if (!tags)
return TRUE;
- return FALSE;
+ while (*tags) {
+ if (!g_strv_contains (supported_tags, *tags))
+ return FALSE;
+ tags++;
+ }
+
+ return TRUE;
}
typedef struct
{
const GstMetaInfo *info = meta->info;
const gchar *const *tags;
+ const gchar *const supported_tags[] = {
+ GST_META_TAG_AUDIO_STR,
+ GST_META_TAG_AUDIO_CHANNELS_STR,
+ NULL,
+ };
tags = gst_meta_api_type_get_tags (info->api);
- if (!tags || (g_strv_length ((gchar **) tags) == 1
- && gst_meta_api_type_has_tag (info->api, META_TAG_AUDIO)))
+ if (!tags)
return TRUE;
- return FALSE;
+ while (*tags) {
+ if (!g_strv_contains (supported_tags, *tags))
+ return FALSE;
+ tags++;
+ }
+
+ return TRUE;
}
typedef struct
{
const GstMetaInfo *info = meta->info;
const gchar *const *tags;
+ const gchar *const supported_tags[] = {
+ GST_META_TAG_VIDEO_STR,
+ GST_META_TAG_VIDEO_ORIENTATION_STR,
+ GST_META_TAG_VIDEO_SIZE_STR,
+ NULL,
+ };
tags = gst_meta_api_type_get_tags (info->api);
- if (!tags || (g_strv_length ((gchar **) tags) == 1
- && gst_meta_api_type_has_tag (info->api, META_TAG_VIDEO)))
+ if (!tags)
return TRUE;
- return FALSE;
+ while (*tags) {
+ if (!g_strv_contains (supported_tags, *tags))
+ return FALSE;
+ tags++;
+ }
+
+ return TRUE;
}
typedef struct
{
const GstMetaInfo *info = meta->info;
const gchar *const *tags;
+ const gchar *const supported_tags[] = {
+ GST_META_TAG_VIDEO_STR,
+ GST_META_TAG_VIDEO_ORIENTATION_STR,
+ GST_META_TAG_VIDEO_SIZE_STR,
+ NULL,
+ };
tags = gst_meta_api_type_get_tags (info->api);
- if (!tags || (g_strv_length ((gchar **) tags) == 1
- && gst_meta_api_type_has_tag (info->api, META_TAG_VIDEO)))
+ if (!tags)
return TRUE;
- return FALSE;
+ while (*tags) {
+ if (!g_strv_contains (supported_tags, *tags))
+ return FALSE;
+ tags++;
+ }
+
+ return TRUE;
}
typedef struct