Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
SDK
/
exoplayer
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
06ed8778
authored
Feb 27, 2019
by
Arnold Szabo
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Pass role and accessibility descriptor values from adaptation set to format
parent
8746d4a8
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
111 additions
and
5 deletions
library/core/src/main/java/com/google/android/exoplayer2/Format.java
library/dash/src/main/java/com/google/android/exoplayer2/source/dash/manifest/DashManifestParser.java
library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.java
library/core/src/main/java/com/google/android/exoplayer2/Format.java
View file @
06ed8778
...
@@ -167,6 +167,16 @@ public final class Format implements Parcelable {
...
@@ -167,6 +167,16 @@ public final class Format implements Parcelable {
*/
*/
public
final
int
accessibilityChannel
;
public
final
int
accessibilityChannel
;
/**
* The Role descriptor value.
*/
public
final
String
role
;
/**
* The Accessibility descriptor value.
*/
public
final
String
accessibility
;
// Lazily initialized hashcode.
// Lazily initialized hashcode.
private
int
hashCode
;
private
int
hashCode
;
...
@@ -234,6 +244,8 @@ public final class Format implements Parcelable {
...
@@ -234,6 +244,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
/* language= */
null
,
/* language= */
null
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -337,6 +349,8 @@ public final class Format implements Parcelable {
...
@@ -337,6 +349,8 @@ public final class Format implements Parcelable {
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
/* language= */
null
,
/* language= */
null
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -407,6 +421,8 @@ public final class Format implements Parcelable {
...
@@ -407,6 +421,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -511,6 +527,8 @@ public final class Format implements Parcelable {
...
@@ -511,6 +527,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -557,7 +575,9 @@ public final class Format implements Parcelable {
...
@@ -557,7 +575,9 @@ public final class Format implements Parcelable {
bitrate
,
bitrate
,
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
);
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
);
}
}
public
static
Format
createTextContainerFormat
(
public
static
Format
createTextContainerFormat
(
...
@@ -569,7 +589,9 @@ public final class Format implements Parcelable {
...
@@ -569,7 +589,9 @@ public final class Format implements Parcelable {
int
bitrate
,
int
bitrate
,
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
@Nullable
String
language
,
@Nullable
String
language
,
int
accessibilityChannel
)
{
int
accessibilityChannel
,
@Nullable
String
role
,
@Nullable
String
accessibility
)
{
return
new
Format
(
return
new
Format
(
id
,
id
,
label
,
label
,
...
@@ -594,6 +616,8 @@ public final class Format implements Parcelable {
...
@@ -594,6 +616,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
/* initializationData= */
null
,
/* initializationData= */
null
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -706,6 +730,8 @@ public final class Format implements Parcelable {
...
@@ -706,6 +730,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
/* role= */
null
,
/* accessibility= */
null
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -747,6 +773,8 @@ public final class Format implements Parcelable {
...
@@ -747,6 +773,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -808,6 +836,8 @@ public final class Format implements Parcelable {
...
@@ -808,6 +836,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
/* initializationData= */
null
,
/* initializationData= */
null
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -840,6 +870,8 @@ public final class Format implements Parcelable {
...
@@ -840,6 +870,8 @@ public final class Format implements Parcelable {
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
/* language= */
null
,
/* language= */
null
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
,
subsampleOffsetUs
,
subsampleOffsetUs
,
/* initializationData= */
null
,
/* initializationData= */
null
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -876,6 +908,8 @@ public final class Format implements Parcelable {
...
@@ -876,6 +908,8 @@ public final class Format implements Parcelable {
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
/* language= */
null
,
/* language= */
null
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
null
,
/* accessibility= */
null
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
/* initializationData= */
null
,
/* initializationData= */
null
,
drmInitData
,
drmInitData
,
...
@@ -906,6 +940,8 @@ public final class Format implements Parcelable {
...
@@ -906,6 +940,8 @@ public final class Format implements Parcelable {
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
@Nullable
String
language
,
@Nullable
String
language
,
int
accessibilityChannel
,
int
accessibilityChannel
,
@Nullable
String
role
,
@Nullable
String
accessibility
,
long
subsampleOffsetUs
,
long
subsampleOffsetUs
,
@Nullable
List
<
byte
[]>
initializationData
,
@Nullable
List
<
byte
[]>
initializationData
,
@Nullable
DrmInitData
drmInitData
,
@Nullable
DrmInitData
drmInitData
,
...
@@ -934,6 +970,8 @@ public final class Format implements Parcelable {
...
@@ -934,6 +970,8 @@ public final class Format implements Parcelable {
this
.
selectionFlags
=
selectionFlags
;
this
.
selectionFlags
=
selectionFlags
;
this
.
language
=
Util
.
normalizeLanguageCode
(
language
);
this
.
language
=
Util
.
normalizeLanguageCode
(
language
);
this
.
accessibilityChannel
=
accessibilityChannel
;
this
.
accessibilityChannel
=
accessibilityChannel
;
this
.
role
=
role
;
this
.
accessibility
=
accessibility
;
this
.
subsampleOffsetUs
=
subsampleOffsetUs
;
this
.
subsampleOffsetUs
=
subsampleOffsetUs
;
this
.
initializationData
=
this
.
initializationData
=
initializationData
==
null
?
Collections
.
emptyList
()
:
initializationData
;
initializationData
==
null
?
Collections
.
emptyList
()
:
initializationData
;
...
@@ -967,6 +1005,8 @@ public final class Format implements Parcelable {
...
@@ -967,6 +1005,8 @@ public final class Format implements Parcelable {
selectionFlags
=
in
.
readInt
();
selectionFlags
=
in
.
readInt
();
language
=
in
.
readString
();
language
=
in
.
readString
();
accessibilityChannel
=
in
.
readInt
();
accessibilityChannel
=
in
.
readInt
();
role
=
in
.
readString
();
accessibility
=
in
.
readString
();
subsampleOffsetUs
=
in
.
readLong
();
subsampleOffsetUs
=
in
.
readLong
();
int
initializationDataSize
=
in
.
readInt
();
int
initializationDataSize
=
in
.
readInt
();
initializationData
=
new
ArrayList
<>(
initializationDataSize
);
initializationData
=
new
ArrayList
<>(
initializationDataSize
);
...
@@ -1002,6 +1042,8 @@ public final class Format implements Parcelable {
...
@@ -1002,6 +1042,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1033,6 +1075,8 @@ public final class Format implements Parcelable {
...
@@ -1033,6 +1075,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1073,6 +1117,8 @@ public final class Format implements Parcelable {
...
@@ -1073,6 +1117,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1144,6 +1190,8 @@ public final class Format implements Parcelable {
...
@@ -1144,6 +1190,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1175,6 +1223,8 @@ public final class Format implements Parcelable {
...
@@ -1175,6 +1223,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1206,6 +1256,8 @@ public final class Format implements Parcelable {
...
@@ -1206,6 +1256,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1237,6 +1289,8 @@ public final class Format implements Parcelable {
...
@@ -1237,6 +1289,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1268,6 +1322,8 @@ public final class Format implements Parcelable {
...
@@ -1268,6 +1322,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1299,6 +1355,8 @@ public final class Format implements Parcelable {
...
@@ -1299,6 +1355,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1330,6 +1388,8 @@ public final class Format implements Parcelable {
...
@@ -1330,6 +1388,8 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1439,6 +1499,8 @@ public final class Format implements Parcelable {
...
@@ -1439,6 +1499,8 @@ public final class Format implements Parcelable {
&&
Util
.
areEqual
(
label
,
other
.
label
)
&&
Util
.
areEqual
(
label
,
other
.
label
)
&&
Util
.
areEqual
(
language
,
other
.
language
)
&&
Util
.
areEqual
(
language
,
other
.
language
)
&&
accessibilityChannel
==
other
.
accessibilityChannel
&&
accessibilityChannel
==
other
.
accessibilityChannel
&&
Util
.
areEqual
(
role
,
other
.
role
)
&&
Util
.
areEqual
(
accessibility
,
other
.
accessibility
)
&&
Util
.
areEqual
(
containerMimeType
,
other
.
containerMimeType
)
&&
Util
.
areEqual
(
containerMimeType
,
other
.
containerMimeType
)
&&
Util
.
areEqual
(
sampleMimeType
,
other
.
sampleMimeType
)
&&
Util
.
areEqual
(
sampleMimeType
,
other
.
sampleMimeType
)
&&
Util
.
areEqual
(
codecs
,
other
.
codecs
)
&&
Util
.
areEqual
(
codecs
,
other
.
codecs
)
...
@@ -1540,6 +1602,8 @@ public final class Format implements Parcelable {
...
@@ -1540,6 +1602,8 @@ public final class Format implements Parcelable {
dest
.
writeInt
(
selectionFlags
);
dest
.
writeInt
(
selectionFlags
);
dest
.
writeString
(
language
);
dest
.
writeString
(
language
);
dest
.
writeInt
(
accessibilityChannel
);
dest
.
writeInt
(
accessibilityChannel
);
dest
.
writeString
(
role
);
dest
.
writeString
(
accessibility
);
dest
.
writeLong
(
subsampleOffsetUs
);
dest
.
writeLong
(
subsampleOffsetUs
);
int
initializationDataSize
=
initializationData
.
size
();
int
initializationDataSize
=
initializationData
.
size
();
dest
.
writeInt
(
initializationDataSize
);
dest
.
writeInt
(
initializationDataSize
);
...
...
library/dash/src/main/java/com/google/android/exoplayer2/source/dash/manifest/DashManifestParser.java
View file @
06ed8778
...
@@ -276,6 +276,7 @@ public class DashManifestParser extends DefaultHandler
...
@@ -276,6 +276,7 @@ public class DashManifestParser extends DefaultHandler
ArrayList
<
SchemeData
>
drmSchemeDatas
=
new
ArrayList
<>();
ArrayList
<
SchemeData
>
drmSchemeDatas
=
new
ArrayList
<>();
ArrayList
<
Descriptor
>
inbandEventStreams
=
new
ArrayList
<>();
ArrayList
<
Descriptor
>
inbandEventStreams
=
new
ArrayList
<>();
ArrayList
<
Descriptor
>
accessibilityDescriptors
=
new
ArrayList
<>();
ArrayList
<
Descriptor
>
accessibilityDescriptors
=
new
ArrayList
<>();
ArrayList
<
Descriptor
>
roleDescriptors
=
new
ArrayList
<>();
ArrayList
<
Descriptor
>
supplementalProperties
=
new
ArrayList
<>();
ArrayList
<
Descriptor
>
supplementalProperties
=
new
ArrayList
<>();
List
<
RepresentationInfo
>
representationInfos
=
new
ArrayList
<>();
List
<
RepresentationInfo
>
representationInfos
=
new
ArrayList
<>();
@C
.
SelectionFlags
int
selectionFlags
=
0
;
@C
.
SelectionFlags
int
selectionFlags
=
0
;
...
@@ -300,7 +301,10 @@ public class DashManifestParser extends DefaultHandler
...
@@ -300,7 +301,10 @@ public class DashManifestParser extends DefaultHandler
language
=
checkLanguageConsistency
(
language
,
xpp
.
getAttributeValue
(
null
,
"lang"
));
language
=
checkLanguageConsistency
(
language
,
xpp
.
getAttributeValue
(
null
,
"lang"
));
contentType
=
checkContentTypeConsistency
(
contentType
,
parseContentType
(
xpp
));
contentType
=
checkContentTypeConsistency
(
contentType
,
parseContentType
(
xpp
));
}
else
if
(
XmlPullParserUtil
.
isStartTag
(
xpp
,
"Role"
))
{
}
else
if
(
XmlPullParserUtil
.
isStartTag
(
xpp
,
"Role"
))
{
selectionFlags
|=
parseRole
(
xpp
);
Descriptor
descriptor
=
parseDescriptor
(
xpp
,
"Role"
);
selectionFlags
|=
"urn:mpeg:dash:role:2011"
.
equals
(
descriptor
.
schemeIdUri
)
&&
"main"
.
equals
(
descriptor
.
value
)
?
C
.
SELECTION_FLAG_DEFAULT
:
0
;
roleDescriptors
.
add
(
descriptor
);
}
else
if
(
XmlPullParserUtil
.
isStartTag
(
xpp
,
"AudioChannelConfiguration"
))
{
}
else
if
(
XmlPullParserUtil
.
isStartTag
(
xpp
,
"AudioChannelConfiguration"
))
{
audioChannels
=
parseAudioChannelConfiguration
(
xpp
);
audioChannels
=
parseAudioChannelConfiguration
(
xpp
);
}
else
if
(
XmlPullParserUtil
.
isStartTag
(
xpp
,
"Accessibility"
))
{
}
else
if
(
XmlPullParserUtil
.
isStartTag
(
xpp
,
"Accessibility"
))
{
...
@@ -322,6 +326,7 @@ public class DashManifestParser extends DefaultHandler
...
@@ -322,6 +326,7 @@ public class DashManifestParser extends DefaultHandler
audioSamplingRate
,
audioSamplingRate
,
language
,
language
,
selectionFlags
,
selectionFlags
,
roleDescriptors
,
accessibilityDescriptors
,
accessibilityDescriptors
,
segmentBase
);
segmentBase
);
contentType
=
checkContentTypeConsistency
(
contentType
,
contentType
=
checkContentTypeConsistency
(
contentType
,
...
@@ -509,6 +514,7 @@ public class DashManifestParser extends DefaultHandler
...
@@ -509,6 +514,7 @@ public class DashManifestParser extends DefaultHandler
int
adaptationSetAudioSamplingRate
,
int
adaptationSetAudioSamplingRate
,
String
adaptationSetLanguage
,
String
adaptationSetLanguage
,
@C
.
SelectionFlags
int
adaptationSetSelectionFlags
,
@C
.
SelectionFlags
int
adaptationSetSelectionFlags
,
List
<
Descriptor
>
adaptationSetRoleDescriptors
,
List
<
Descriptor
>
adaptationSetAccessibilityDescriptors
,
List
<
Descriptor
>
adaptationSetAccessibilityDescriptors
,
SegmentBase
segmentBase
)
SegmentBase
segmentBase
)
throws
XmlPullParserException
,
IOException
{
throws
XmlPullParserException
,
IOException
{
...
@@ -573,6 +579,7 @@ public class DashManifestParser extends DefaultHandler
...
@@ -573,6 +579,7 @@ public class DashManifestParser extends DefaultHandler
bandwidth
,
bandwidth
,
adaptationSetLanguage
,
adaptationSetLanguage
,
adaptationSetSelectionFlags
,
adaptationSetSelectionFlags
,
adaptationSetRoleDescriptors
,
adaptationSetAccessibilityDescriptors
,
adaptationSetAccessibilityDescriptors
,
codecs
,
codecs
,
supplementalProperties
);
supplementalProperties
);
...
@@ -594,6 +601,7 @@ public class DashManifestParser extends DefaultHandler
...
@@ -594,6 +601,7 @@ public class DashManifestParser extends DefaultHandler
int
bitrate
,
int
bitrate
,
String
language
,
String
language
,
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
List
<
Descriptor
>
roleDescriptors
,
List
<
Descriptor
>
accessibilityDescriptors
,
List
<
Descriptor
>
accessibilityDescriptors
,
String
codecs
,
String
codecs
,
List
<
Descriptor
>
supplementalProperties
)
{
List
<
Descriptor
>
supplementalProperties
)
{
...
@@ -637,6 +645,10 @@ public class DashManifestParser extends DefaultHandler
...
@@ -637,6 +645,10 @@ public class DashManifestParser extends DefaultHandler
}
else
{
}
else
{
accessibilityChannel
=
Format
.
NO_VALUE
;
accessibilityChannel
=
Format
.
NO_VALUE
;
}
}
String
role
=
parseRole
(
roleDescriptors
);
String
accessibility
=
parseAccessibility
(
accessibilityDescriptors
);
return
Format
.
createTextContainerFormat
(
return
Format
.
createTextContainerFormat
(
id
,
id
,
label
,
label
,
...
@@ -646,7 +658,9 @@ public class DashManifestParser extends DefaultHandler
...
@@ -646,7 +658,9 @@ public class DashManifestParser extends DefaultHandler
bitrate
,
bitrate
,
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
);
accessibilityChannel
,
role
,
accessibility
);
}
}
}
}
return
Format
.
createContainerFormat
(
return
Format
.
createContainerFormat
(
...
@@ -1266,6 +1280,32 @@ public class DashManifestParser extends DefaultHandler
...
@@ -1266,6 +1280,32 @@ public class DashManifestParser extends DefaultHandler
return
MimeTypes
.
AUDIO_E_AC3
;
return
MimeTypes
.
AUDIO_E_AC3
;
}
}
protected
static
String
parseRole
(
List
<
Descriptor
>
roleDescriptors
)
{
for
(
int
i
=
0
;
i
<
roleDescriptors
.
size
();
i
++)
{
Descriptor
descriptor
=
roleDescriptors
.
get
(
i
);
if
(
"urn:mpeg:dash:role:2011"
.
equals
(
descriptor
.
schemeIdUri
)
&&
descriptor
.
value
!=
null
)
{
return
descriptor
.
value
;
}
}
return
null
;
}
protected
static
String
parseAccessibility
(
List
<
Descriptor
>
accessibilityDescriptors
)
{
for
(
int
i
=
0
;
i
<
accessibilityDescriptors
.
size
();
i
++)
{
Descriptor
descriptor
=
accessibilityDescriptors
.
get
(
i
);
if
(
"urn:mpeg:dash:role:2011"
.
equals
(
descriptor
.
schemeIdUri
)
&&
descriptor
.
value
!=
null
)
{
return
descriptor
.
value
;
}
if
(
"urn:tva:metadata:cs:AudioPurposeCS:2007"
.
equals
(
descriptor
.
schemeIdUri
))
{
if
(
"1"
.
equals
(
descriptor
.
value
)
||
"2"
.
equals
(
descriptor
.
value
))
{
return
descriptor
.
value
;
}
}
}
return
null
;
}
protected
static
float
parseFrameRate
(
XmlPullParser
xpp
,
float
defaultValue
)
{
protected
static
float
parseFrameRate
(
XmlPullParser
xpp
,
float
defaultValue
)
{
float
frameRate
=
defaultValue
;
float
frameRate
=
defaultValue
;
String
frameRateAttribute
=
xpp
.
getAttributeValue
(
null
,
"frameRate"
);
String
frameRateAttribute
=
xpp
.
getAttributeValue
(
null
,
"frameRate"
);
...
...
library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.java
View file @
06ed8778
...
@@ -405,7 +405,9 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser<HlsPlayli
...
@@ -405,7 +405,9 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser<HlsPlayli
/* bitrate= */
Format
.
NO_VALUE
,
/* bitrate= */
Format
.
NO_VALUE
,
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
));
accessibilityChannel
,
/* role= */
null
,
/* accessibility= */
null
));
break
;
break
;
default
:
default
:
// Do nothing.
// Do nothing.
...
...
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