Commit 6681e69d authored by Francois Cartegnie's avatar Francois Cartegnie

demux: dash: count ranged segment in list

otherwise splits are overriden by default segment
parent 5ada7fd6
...@@ -172,7 +172,7 @@ size_t IsoffMainParser::parseSegmentTemplate(Node *templateNode, SegmentInformat ...@@ -172,7 +172,7 @@ size_t IsoffMainParser::parseSegmentTemplate(Node *templateNode, SegmentInformat
size_t IsoffMainParser::parseSegmentInformation(Node *node, SegmentInformation *info) size_t IsoffMainParser::parseSegmentInformation(Node *node, SegmentInformation *info)
{ {
size_t total = 0; size_t total = 0;
parseSegmentBase(DOMHelper::getFirstChildElementByName(node, "SegmentBase"), info); total += parseSegmentBase(DOMHelper::getFirstChildElementByName(node, "SegmentBase"), info);
total += parseSegmentList(DOMHelper::getFirstChildElementByName(node, "SegmentList"), info); total += parseSegmentList(DOMHelper::getFirstChildElementByName(node, "SegmentList"), info);
total += parseSegmentTemplate(DOMHelper::getFirstChildElementByName(node, "SegmentTemplate" ), info); total += parseSegmentTemplate(DOMHelper::getFirstChildElementByName(node, "SegmentTemplate" ), info);
if(node->hasAttribute("bitstreamSwitching")) if(node->hasAttribute("bitstreamSwitching"))
...@@ -250,11 +250,12 @@ void IsoffMainParser::setRepresentations (Node *adaptationSetNode, Adaptation ...@@ -250,11 +250,12 @@ void IsoffMainParser::setRepresentations (Node *adaptationSetNode, Adaptation
adaptationSet->addRepresentation(this->currentRepresentation); adaptationSet->addRepresentation(this->currentRepresentation);
} }
} }
size_t IsoffMainParser::parseSegmentBase(Node * segmentBaseNode, SegmentInformation *info)
void IsoffMainParser::parseSegmentBase(Node * segmentBaseNode, SegmentInformation *info)
{ {
size_t list_count = 0;
if(!segmentBaseNode) if(!segmentBaseNode)
return; return 0;
else if(segmentBaseNode->hasAttribute("indexRange")) else if(segmentBaseNode->hasAttribute("indexRange"))
{ {
...@@ -276,6 +277,7 @@ void IsoffMainParser::parseSegmentBase(Node * segmentBaseNode, SegmentInformatio ...@@ -276,6 +277,7 @@ void IsoffMainParser::parseSegmentBase(Node * segmentBaseNode, SegmentInformatio
seg = new Segment(info); seg = new Segment(info);
} }
list_count++;
list->addSegment(seg); list->addSegment(seg);
info->setSegmentList(list); info->setSegmentList(list);
...@@ -293,6 +295,8 @@ void IsoffMainParser::parseSegmentBase(Node * segmentBaseNode, SegmentInformatio ...@@ -293,6 +295,8 @@ void IsoffMainParser::parseSegmentBase(Node * segmentBaseNode, SegmentInformatio
parseInitSegment(DOMHelper::getFirstChildElementByName(segmentBaseNode, "Initialization"), base); parseInitSegment(DOMHelper::getFirstChildElementByName(segmentBaseNode, "Initialization"), base);
info->setSegmentBase(base); info->setSegmentBase(base);
} }
return list_count;
} }
size_t IsoffMainParser::parseSegmentList(Node * segListNode, SegmentInformation *info) size_t IsoffMainParser::parseSegmentList(Node * segListNode, SegmentInformation *info)
......
...@@ -71,7 +71,7 @@ namespace dash ...@@ -71,7 +71,7 @@ namespace dash
void parseTimeline (dash::xml::Node *, MediaSegmentTemplate *); void parseTimeline (dash::xml::Node *, MediaSegmentTemplate *);
void parsePeriods (dash::xml::Node *); void parsePeriods (dash::xml::Node *);
size_t parseSegmentInformation(dash::xml::Node *, SegmentInformation *); size_t parseSegmentInformation(dash::xml::Node *, SegmentInformation *);
void parseSegmentBase (dash::xml::Node *, SegmentInformation *); size_t parseSegmentBase (dash::xml::Node *, SegmentInformation *);
size_t parseSegmentList (dash::xml::Node *, SegmentInformation *); size_t parseSegmentList (dash::xml::Node *, SegmentInformation *);
size_t parseSegmentTemplate(dash::xml::Node *, SegmentInformation *); size_t parseSegmentTemplate(dash::xml::Node *, SegmentInformation *);
void parseProgramInformation(dash::xml::Node *, MPD *); void parseProgramInformation(dash::xml::Node *, MPD *);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment