[vlc-commits] demux: adaptative: parse dash codecs
Francois Cartegnie
git at videolan.org
Thu Aug 6 17:30:19 CEST 2015
vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Sun Aug 2 16:47:28 2015 +0200| [a3d9425cd6484018833df6862551a1cc81c55725] | committer: Francois Cartegnie
demux: adaptative: parse dash codecs
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a3d9425cd6484018833df6862551a1cc81c55725
---
modules/demux/dash/mpd/IsoffMainParser.cpp | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/modules/demux/dash/mpd/IsoffMainParser.cpp b/modules/demux/dash/mpd/IsoffMainParser.cpp
index aeec8bb..5dc4f49 100644
--- a/modules/demux/dash/mpd/IsoffMainParser.cpp
+++ b/modules/demux/dash/mpd/IsoffMainParser.cpp
@@ -285,6 +285,20 @@ void IsoffMainParser::setRepresentations (Node *adaptationSetNode, Adaptation
if(repNode->hasAttribute("mimeType"))
currentRepresentation->setMimeType(repNode->getAttributeValue("mimeType"));
+ if(repNode->hasAttribute("codecs"))
+ {
+ std::list<std::string> list = Helper::tokenize(repNode->getAttributeValue("codecs"), ',');
+ std::list<std::string>::const_iterator it;
+ for(it=list.begin(); it!=list.end(); ++it)
+ {
+ std::size_t pos = (*it).find_first_of('.', 0);
+ if(pos != std::string::npos)
+ currentRepresentation->addCodec((*it).substr(0, pos));
+ else
+ currentRepresentation->addCodec(*it);
+ }
+ }
+
parseSegmentInformation(repNode, currentRepresentation);
adaptationSet->addRepresentation(currentRepresentation);
More information about the vlc-commits
mailing list