[vlc-commits] stream_filter: dash: add classId to segments
Francois Cartegnie
git at videolan.org
Thu Dec 18 22:39:52 CET 2014
vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Fri Nov 28 17:55:43 2014 +0100| [98b674d719d43ae3cc1f34d77b5f794ceba736ad] | committer: Francois Cartegnie
stream_filter: dash: add classId to segments
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=98b674d719d43ae3cc1f34d77b5f794ceba736ad
---
modules/stream_filter/dash/mpd/Segment.cpp | 10 ++++++++++
modules/stream_filter/dash/mpd/Segment.h | 8 ++++++++
2 files changed, 18 insertions(+)
diff --git a/modules/stream_filter/dash/mpd/Segment.cpp b/modules/stream_filter/dash/mpd/Segment.cpp
index 2228624..bbce30e 100644
--- a/modules/stream_filter/dash/mpd/Segment.cpp
+++ b/modules/stream_filter/dash/mpd/Segment.cpp
@@ -41,6 +41,7 @@ ISegment::ISegment(const ICanonicalUrl *parent):
endByte (0)
{
debugName = "Segment";
+ classId = CLASSID_ISEGMENT;
}
dash::http::Chunk * ISegment::getChunk()
@@ -89,6 +90,11 @@ std::string ISegment::toString() const
return ss.str();
}
+int ISegment::getClassId() const
+{
+ return classId;
+}
+
ISegment::SegmentChunk::SegmentChunk(ISegment *segment_) :
dash::http::Chunk()
{
@@ -109,6 +115,7 @@ Segment::Segment(Representation *parent) :
this->size = parent->getBandwidth() * parent->getSegmentInfo()->getDuration();
else
this->size = -1;
+ classId = CLASSID_SEGMENT;
}
Segment::~Segment()
@@ -184,12 +191,14 @@ InitSegment::InitSegment(Representation *parent) :
Segment(parent)
{
debugName = "InitSegment";
+ classId = CLASSID_INITSEGMENT;
}
IndexSegment::IndexSegment(Representation *parent) :
Segment(parent)
{
debugName = "IndexSegment";
+ classId = CLASSID_INDEXSEGMENT;
}
dash::http::Chunk * IndexSegment::getChunk()
@@ -212,6 +221,7 @@ SubSegment::SubSegment(Segment *main, size_t start, size_t end) :
{
setByteRange(start, end);
debugName = "SubSegment";
+ classId = CLASSID_SUBSEGMENT;
}
std::string SubSegment::getUrlSegment() const
diff --git a/modules/stream_filter/dash/mpd/Segment.h b/modules/stream_filter/dash/mpd/Segment.h
index 7c94124..722bade 100644
--- a/modules/stream_filter/dash/mpd/Segment.h
+++ b/modules/stream_filter/dash/mpd/Segment.h
@@ -56,11 +56,15 @@ namespace dash
virtual std::vector<ISegment*> subSegments () = 0;
virtual std::string toString () const;
virtual Representation* getRepresentation() const = 0;
+ int getClassId () const;
+
+ static const int CLASSID_ISEGMENT = 0;
protected:
size_t startByte;
size_t endByte;
std::string debugName;
+ int classId;
class SegmentChunk : public dash::http::Chunk
{
@@ -85,6 +89,7 @@ namespace dash
virtual dash::http::Chunk* toChunk();
virtual std::vector<ISegment*> subSegments();
virtual Representation* getRepresentation() const;
+ static const int CLASSID_SEGMENT = 1;
protected:
Representation* parentRepresentation;
@@ -97,12 +102,14 @@ namespace dash
{
public:
InitSegment( Representation *parent );
+ static const int CLASSID_INITSEGMENT = 2;
};
class IndexSegment : public Segment
{
public:
IndexSegment( Representation *parent );
+ static const int CLASSID_INDEXSEGMENT = 3;
protected:
class IndexSegmentChunk : public SegmentChunk
@@ -122,6 +129,7 @@ namespace dash
virtual std::string getUrlSegment() const; /* impl */
virtual std::vector<ISegment*> subSegments();
virtual Representation* getRepresentation() const;
+ static const int CLASSID_SUBSEGMENT = 4;
private:
Segment *parent;
};
More information about the vlc-commits
mailing list