Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
20330719
Commit
20330719
authored
Dec 29, 2011
by
Hugo Beauzée-Luyssen
Committed by
Jean-Baptiste Kempf
Dec 30, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
dash: Handling Group @subsegmentAlignmentFlag in parser.
Signed-off-by:
Jean-Baptiste Kempf
<
jb@videolan.org
>
parent
4abd4469
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
19 additions
and
12 deletions
+19
-12
modules/stream_filter/dash/mpd/BasicCMParser.cpp
modules/stream_filter/dash/mpd/BasicCMParser.cpp
+5
-1
modules/stream_filter/dash/mpd/Group.cpp
modules/stream_filter/dash/mpd/Group.cpp
+8
-6
modules/stream_filter/dash/mpd/Group.h
modules/stream_filter/dash/mpd/Group.h
+6
-5
No files found.
modules/stream_filter/dash/mpd/BasicCMParser.cpp
View file @
20330719
...
@@ -149,12 +149,16 @@ void BasicCMParser::setGroups (Node *root, Period *period)
...
@@ -149,12 +149,16 @@ void BasicCMParser::setGroups (Node *root, Period *period)
for
(
size_t
i
=
0
;
i
<
groups
.
size
();
i
++
)
for
(
size_t
i
=
0
;
i
<
groups
.
size
();
i
++
)
{
{
Group
*
group
=
new
Group
(
groups
.
at
(
i
)
->
getAttributes
());
const
std
::
map
<
std
::
string
,
std
::
string
>
attr
=
groups
.
at
(
i
)
->
getAttributes
();
Group
*
group
=
new
Group
();
if
(
this
->
parseCommonAttributesElements
(
groups
.
at
(
i
),
group
,
NULL
)
==
false
)
if
(
this
->
parseCommonAttributesElements
(
groups
.
at
(
i
),
group
,
NULL
)
==
false
)
{
{
delete
group
;
delete
group
;
continue
;
continue
;
}
}
std
::
map
<
std
::
string
,
std
::
string
>::
const_iterator
it
=
attr
.
find
(
"subsegmentAlignmentFlag"
);
if
(
it
!=
attr
.
end
()
&&
it
->
second
==
"true"
)
group
->
setSubsegmentAlignmentFlag
(
true
);
//Otherwise it is false by default.
this
->
setRepresentations
(
groups
.
at
(
i
),
group
);
this
->
setRepresentations
(
groups
.
at
(
i
),
group
);
period
->
addGroup
(
group
);
period
->
addGroup
(
group
);
}
}
...
...
modules/stream_filter/dash/mpd/Group.cpp
View file @
20330719
...
@@ -30,8 +30,8 @@
...
@@ -30,8 +30,8 @@
using
namespace
dash
::
mpd
;
using
namespace
dash
::
mpd
;
using
namespace
dash
::
exception
;
using
namespace
dash
::
exception
;
Group
::
Group
(
const
std
::
map
<
std
::
string
,
std
::
string
>&
attributes
)
:
Group
::
Group
(
)
:
attributes
(
attributes
)
subsegmentAlignmentFlag
(
false
)
{
{
}
}
...
@@ -40,12 +40,14 @@ Group::~Group ()
...
@@ -40,12 +40,14 @@ Group::~Group ()
vlc_delete_all
(
this
->
representations
);
vlc_delete_all
(
this
->
representations
);
}
}
std
::
string
Group
::
getSubSegmentAlignment
()
throw
(
AttributeNotPresentException
)
bool
Group
::
getSubsegmentAlignmentFlag
()
const
{
{
if
(
this
->
attributes
.
find
(
"subsegmentAlignmentFlag"
)
==
this
->
attributes
.
end
())
return
this
->
subsegmentAlignmentFlag
;
throw
AttributeNotPresentException
();
}
return
this
->
attributes
[
"subsegmentAlignmentFlag"
];
void
Group
::
setSubsegmentAlignmentFlag
(
bool
alignment
)
{
this
->
subsegmentAlignmentFlag
=
alignment
;
}
}
std
::
vector
<
Representation
*>
Group
::
getRepresentations
()
std
::
vector
<
Representation
*>
Group
::
getRepresentations
()
...
...
modules/stream_filter/dash/mpd/Group.h
View file @
20330719
...
@@ -40,17 +40,18 @@ namespace dash
...
@@ -40,17 +40,18 @@ namespace dash
class
Group
:
public
CommonAttributesElements
class
Group
:
public
CommonAttributesElements
{
{
public:
public:
Group
(
const
std
::
map
<
std
::
string
,
std
::
string
>&
attributes
);
Group
(
);
virtual
~
Group
();
virtual
~
Group
();
std
::
string
getSubSegmentAlignment
()
throw
(
dash
::
exception
::
AttributeNotPresentException
);
bool
getSubsegmentAlignmentFlag
()
const
;
void
setSubsegmentAlignmentFlag
(
bool
alignment
);
std
::
vector
<
Representation
*>
getRepresentations
();
std
::
vector
<
Representation
*>
getRepresentations
();
const
Representation
*
getRepresentationById
(
const
std
::
string
&
id
)
const
;
const
Representation
*
getRepresentationById
(
const
std
::
string
&
id
)
const
;
void
addRepresentation
(
Representation
*
rep
);
void
addRepresentation
(
Representation
*
rep
);
private:
private:
std
::
map
<
std
::
string
,
std
::
string
>
attributes
;
bool
subsegmentAlignmentFlag
;
std
::
vector
<
Representation
*>
representations
;
std
::
vector
<
Representation
*>
representations
;
};
};
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment