From: Hugo Beauzée-Luyssen Date: Thu, 24 Nov 2011 16:37:43 +0000 (+0100) Subject: dash: Parser: Standard (§5.4.4.1) specifies there can be at most one SegmentInfo... X-Git-Tag: 1.3.0-git~46 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=740c733e4cb505d709f0ed1d7ac9275db24024c2;p=vlc dash: Parser: Standard (§5.4.4.1) specifies there can be at most one SegmentInfo node. Signed-off-by: Jean-Baptiste Kempf --- diff --git a/modules/stream_filter/dash/mpd/BasicCMParser.cpp b/modules/stream_filter/dash/mpd/BasicCMParser.cpp index b4543b9f86..c1aea0d951 100644 --- a/modules/stream_filter/dash/mpd/BasicCMParser.cpp +++ b/modules/stream_filter/dash/mpd/BasicCMParser.cpp @@ -94,16 +94,12 @@ void BasicCMParser::setRepresentations (Node *root, Group *group) } void BasicCMParser::setSegmentInfo (Node *root, Representation *rep) { - std::vector segmentInfo = DOMHelper::getChildElementByTagName(root, "SegmentInfo"); + Node *segmentInfo = DOMHelper::getFirstChildElementByName( root, "SegmentInfo"); - for(size_t i = 0; i < segmentInfo.size(); i++) - { - SegmentInfo *info = new SegmentInfo(segmentInfo.at(i)->getAttributes()); - this->setInitSegment(segmentInfo.at(i), info); - this->setSegments(segmentInfo.at(i), info); - rep->setSegmentInfo(info); - return; - } + SegmentInfo *info = new SegmentInfo( segmentInfo->getAttributes() ); + this->setInitSegment( segmentInfo, info ); + this->setSegments(segmentInfo, info ); + rep->setSegmentInfo(info); } void BasicCMParser::setInitSegment (Node *root, SegmentInfo *info) {