From e134c20374ee3cbc6d04885d306b02c9871683a2 Mon Sep 17 00:00:00 2001 From: Steven Liu Date: Wed, 5 Sep 2018 14:15:47 +0800 Subject: [PATCH] avformat/dashdec: refine adaptionset attribute members Signed-off-by: Steven Liu --- libavformat/dashdec.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c index ad7e7d6cdbe..ad60d2ab6f3 100644 --- a/libavformat/dashdec.c +++ b/libavformat/dashdec.c @@ -122,6 +122,19 @@ struct representation { typedef struct DASHContext { const AVClass *class; char *base_url; + char *adaptionset_contenttype_val; + char *adaptionset_par_val; + char *adaptionset_lang_val; + char *adaptionset_minbw_val; + char *adaptionset_maxbw_val; + char *adaptionset_minwidth_val; + char *adaptionset_maxwidth_val; + char *adaptionset_minheight_val; + char *adaptionset_maxheight_val; + char *adaptionset_minframerate_val; + char *adaptionset_maxframerate_val; + char *adaptionset_segmentalignment_val; + char *adaptionset_bitstreamswitching_val; int n_videos; struct representation **videos; @@ -1061,12 +1074,26 @@ static int parse_manifest_adaptationset(AVFormatContext *s, const char *url, xmlNodePtr period_segmentlist_node) { int ret = 0; + DASHContext *c = s->priv_data; xmlNodePtr fragment_template_node = NULL; xmlNodePtr content_component_node = NULL; xmlNodePtr adaptionset_baseurl_node = NULL; xmlNodePtr adaptionset_segmentlist_node = NULL; xmlNodePtr adaptionset_supplementalproperty_node = NULL; xmlNodePtr node = NULL; + c->adaptionset_contenttype_val = xmlGetProp(adaptionset_node, "contentType"); + c->adaptionset_par_val = xmlGetProp(adaptionset_node, "par"); + c->adaptionset_lang_val = xmlGetProp(adaptionset_node, "lang"); + c->adaptionset_minbw_val = xmlGetProp(adaptionset_node, "minBandwidth"); + c->adaptionset_maxbw_val = xmlGetProp(adaptionset_node, "maxBandwidth"); + c->adaptionset_minwidth_val = xmlGetProp(adaptionset_node, "minWidth"); + c->adaptionset_maxwidth_val = xmlGetProp(adaptionset_node, "maxWidth"); + c->adaptionset_minheight_val = xmlGetProp(adaptionset_node, "minHeight"); + c->adaptionset_maxheight_val = xmlGetProp(adaptionset_node, "maxHeight"); + c->adaptionset_minframerate_val = xmlGetProp(adaptionset_node, "minFrameRate"); + c->adaptionset_maxframerate_val = xmlGetProp(adaptionset_node, "maxFrameRate"); + c->adaptionset_segmentalignment_val = xmlGetProp(adaptionset_node, "segmentAlignment"); + c->adaptionset_bitstreamswitching_val = xmlGetProp(adaptionset_node, "bitstreamSwitching"); node = xmlFirstElementChild(adaptionset_node); while (node) { -- 2.39.2