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
85441996
authored
Mar 05, 2019
by
Arnold Szabo
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Merge role and accessibility fields into RoleFlags
parent
58d746ec
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
135 additions
and
182 deletions
library/core/src/main/java/com/google/android/exoplayer2/C.java
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/HlsMediaPeriod.java
library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.java
library/smoothstreaming/src/main/java/com/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifestParser.java
library/core/src/main/java/com/google/android/exoplayer2/C.java
View file @
85441996
...
@@ -977,52 +977,36 @@ public final class C {
...
@@ -977,52 +977,36 @@ public final class C {
public
static
final
int
NETWORK_TYPE_OTHER
=
8
;
public
static
final
int
NETWORK_TYPE_OTHER
=
8
;
/**
/**
* Adaptation set's role
descriptor value (ISO 23009-1)
* Adaptation set's role
and accessibility descriptor value.
*/
*/
@Documented
@Documented
@Retention
(
RetentionPolicy
.
SOURCE
)
@Retention
(
RetentionPolicy
.
SOURCE
)
@IntDef
({
@IntDef
(
ROLE_UNSET
,
flag
=
true
,
ROLE_MAIN
,
value
=
{
ROLE_ALTERNATE
,
ROLE_FLAGS_MAIN
,
ROLE_SUPPLEMENTARY
,
ROLE_FLAGS_ALTERNATE
,
ROLE_COMMENTARY
,
ROLE_FLAGS_SUPPLEMENTARY
,
ROLE_DUB
,
ROLE_FLAGS_COMMENTARY
,
ROLE_EMERGENCY
,
ROLE_FLAGS_DUB
,
ROLE_CAPTION
,
ROLE_FLAGS_EMERGENCY
,
ROLE_SIGN
ROLE_FLAGS_CAPTION
,
})
ROLE_FLAGS_SIGN
,
public
@interface
Role
{}
ROLE_FLAGS_ENHANCED_AUDIO_INTELLIGIBILITY
,
ROLE_FLAGS_DESCRIPTION
public
static
final
int
ROLE_UNSET
=
-
1
;
public
static
final
int
ROLE_MAIN
=
0
;
public
static
final
int
ROLE_ALTERNATE
=
1
;
public
static
final
int
ROLE_SUPPLEMENTARY
=
2
;
public
static
final
int
ROLE_COMMENTARY
=
3
;
public
static
final
int
ROLE_DUB
=
4
;
public
static
final
int
ROLE_EMERGENCY
=
5
;
public
static
final
int
ROLE_CAPTION
=
6
;
public
static
final
int
ROLE_SIGN
=
7
;
/**
* Adaptation set's accessibility descriptor value (ISO 23009-1)
*/
@Documented
@Retention
(
RetentionPolicy
.
SOURCE
)
@IntDef
({
ACCESSIBILITY_UNSET
,
ACCESSIBILITY_ENHANCED_AUDIO_INTELLIGIBILITY
,
ACCESSIBILITY_DESCRIPTION
,
ACCESSIBILITY_CAPTION
,
ACCESSIBILITY_SIGN
})
})
public
@interface
Accessibility
{}
public
@interface
RoleFlags
{}
public
static
final
int
ACCESSIBILITY_UNSET
=
-
1
;
public
static
final
int
ROLE_FLAGS_MAIN
=
1
;
public
static
final
int
ACCESSIBILITY_ENHANCED_AUDIO_INTELLIGIBILITY
=
1
;
public
static
final
int
ROLE_FLAGS_ALTERNATE
=
1
<<
1
;
public
static
final
int
ACCESSIBILITY_DESCRIPTION
=
2
;
public
static
final
int
ROLE_FLAGS_SUPPLEMENTARY
=
1
<<
2
;
public
static
final
int
ACCESSIBILITY_CAPTION
=
3
;
public
static
final
int
ROLE_FLAGS_COMMENTARY
=
1
<<
3
;
public
static
final
int
ACCESSIBILITY_SIGN
=
4
;
public
static
final
int
ROLE_FLAGS_DUB
=
1
<<
4
;
public
static
final
int
ROLE_FLAGS_EMERGENCY
=
1
<<
5
;
public
static
final
int
ROLE_FLAGS_CAPTION
=
1
<<
6
;
public
static
final
int
ROLE_FLAGS_SIGN
=
1
<<
7
;
public
static
final
int
ROLE_FLAGS_ENHANCED_AUDIO_INTELLIGIBILITY
=
1
<<
8
;
public
static
final
int
ROLE_FLAGS_DESCRIPTION
=
1
<<
9
;
/**
/**
* Converts a time in microseconds to the corresponding time in milliseconds, preserving
* Converts a time in microseconds to the corresponding time in milliseconds, preserving
...
...
library/core/src/main/java/com/google/android/exoplayer2/Format.java
View file @
85441996
...
@@ -51,15 +51,9 @@ public final class Format implements Parcelable {
...
@@ -51,15 +51,9 @@ public final class Format implements Parcelable {
/** Track selection flags. **/
/** Track selection flags. **/
@C
.
SelectionFlags
@C
.
SelectionFlags
public
final
int
selectionFlags
;
public
final
int
selectionFlags
;
/** Track role descriptor value, or {@link C#ROLE_UNSET} if unknown or not applicable. **/
/** Track role and accessibility descriptor values. **/
@C
.
Role
@C
.
RoleFlags
public
final
int
role
;
public
final
int
roleFlags
;
/**
* Track accessibility descriptor value, or {@link C#ACCESSIBILITY_UNSET} if unknown
* or not applicable.
*/
@C
.
Accessibility
public
final
int
accessibility
;
/**
/**
* The average bandwidth in bits per second, or {@link #NO_VALUE} if unknown or not applicable.
* The average bandwidth in bits per second, or {@link #NO_VALUE} if unknown or not applicable.
*/
*/
...
@@ -189,8 +183,7 @@ public final class Format implements Parcelable {
...
@@ -189,8 +183,7 @@ public final class Format implements Parcelable {
float
frameRate
,
float
frameRate
,
@Nullable
List
<
byte
[]>
initializationData
,
@Nullable
List
<
byte
[]>
initializationData
,
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
Role
int
role
,
@C
.
RoleFlags
int
roleFlags
)
{
@C
.
Accessibility
int
accessibility
)
{
return
createVideoContainerFormat
(
return
createVideoContainerFormat
(
id
,
id
,
/* label= */
null
,
/* label= */
null
,
...
@@ -203,8 +196,7 @@ public final class Format implements Parcelable {
...
@@ -203,8 +196,7 @@ public final class Format implements Parcelable {
frameRate
,
frameRate
,
initializationData
,
initializationData
,
selectionFlags
,
selectionFlags
,
role
,
roleFlags
);
accessibility
);
}
}
public
static
Format
createVideoContainerFormat
(
public
static
Format
createVideoContainerFormat
(
...
@@ -219,8 +211,7 @@ public final class Format implements Parcelable {
...
@@ -219,8 +211,7 @@ public final class Format implements Parcelable {
float
frameRate
,
float
frameRate
,
@Nullable
List
<
byte
[]>
initializationData
,
@Nullable
List
<
byte
[]>
initializationData
,
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
Role
int
role
,
@C
.
RoleFlags
int
roleFlags
)
{
@C
.
Accessibility
int
accessibility
)
{
return
new
Format
(
return
new
Format
(
id
,
id
,
label
,
label
,
...
@@ -245,8 +236,7 @@ public final class Format implements Parcelable {
...
@@ -245,8 +236,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
/* language= */
null
,
/* language= */
null
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
role
,
roleFlags
,
accessibility
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -350,8 +340,7 @@ public final class Format implements Parcelable {
...
@@ -350,8 +340,7 @@ public final class Format implements Parcelable {
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
/* language= */
null
,
/* language= */
null
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
,
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -372,8 +361,7 @@ public final class Format implements Parcelable {
...
@@ -372,8 +361,7 @@ public final class Format implements Parcelable {
@Nullable
List
<
byte
[]>
initializationData
,
@Nullable
List
<
byte
[]>
initializationData
,
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
@Nullable
String
language
,
@Nullable
String
language
,
@C
.
Role
int
role
,
@C
.
RoleFlags
int
roleFlags
)
{
@C
.
Accessibility
int
accessibility
)
{
return
createAudioContainerFormat
(
return
createAudioContainerFormat
(
id
,
id
,
/* label= */
null
,
/* label= */
null
,
...
@@ -386,8 +374,7 @@ public final class Format implements Parcelable {
...
@@ -386,8 +374,7 @@ public final class Format implements Parcelable {
initializationData
,
initializationData
,
selectionFlags
,
selectionFlags
,
language
,
language
,
role
,
roleFlags
);
accessibility
);
}
}
public
static
Format
createAudioContainerFormat
(
public
static
Format
createAudioContainerFormat
(
...
@@ -402,8 +389,7 @@ public final class Format implements Parcelable {
...
@@ -402,8 +389,7 @@ public final class Format implements Parcelable {
@Nullable
List
<
byte
[]>
initializationData
,
@Nullable
List
<
byte
[]>
initializationData
,
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
@Nullable
String
language
,
@Nullable
String
language
,
@C
.
Role
int
role
,
@C
.
RoleFlags
int
roleFlags
)
{
@C
.
Accessibility
int
accessibility
)
{
return
new
Format
(
return
new
Format
(
id
,
id
,
label
,
label
,
...
@@ -428,8 +414,7 @@ public final class Format implements Parcelable {
...
@@ -428,8 +414,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
role
,
roleFlags
,
accessibility
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -534,8 +519,7 @@ public final class Format implements Parcelable {
...
@@ -534,8 +519,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
,
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -583,8 +567,7 @@ public final class Format implements Parcelable {
...
@@ -583,8 +567,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
);
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
);
}
}
public
static
Format
createTextContainerFormat
(
public
static
Format
createTextContainerFormat
(
...
@@ -597,8 +580,7 @@ public final class Format implements Parcelable {
...
@@ -597,8 +580,7 @@ public final class Format implements Parcelable {
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
@Nullable
String
language
,
@Nullable
String
language
,
int
accessibilityChannel
,
int
accessibilityChannel
,
@C
.
Role
int
role
,
@C
.
RoleFlags
int
roleFlags
)
{
@C
.
Accessibility
int
accessibility
)
{
return
new
Format
(
return
new
Format
(
id
,
id
,
label
,
label
,
...
@@ -623,8 +605,7 @@ public final class Format implements Parcelable {
...
@@ -623,8 +605,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
/* initializationData= */
null
,
/* initializationData= */
null
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -737,8 +718,7 @@ public final class Format implements Parcelable {
...
@@ -737,8 +718,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
,
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -780,8 +760,7 @@ public final class Format implements Parcelable {
...
@@ -780,8 +760,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
,
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -843,8 +822,7 @@ public final class Format implements Parcelable {
...
@@ -843,8 +822,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
,
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
/* initializationData= */
null
,
/* initializationData= */
null
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -877,8 +855,7 @@ public final class Format implements Parcelable {
...
@@ -877,8 +855,7 @@ public final class Format implements Parcelable {
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
/* language= */
null
,
/* language= */
null
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
,
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
,
subsampleOffsetUs
,
subsampleOffsetUs
,
/* initializationData= */
null
,
/* initializationData= */
null
,
/* drmInitData= */
null
,
/* drmInitData= */
null
,
...
@@ -915,8 +892,7 @@ public final class Format implements Parcelable {
...
@@ -915,8 +892,7 @@ public final class Format implements Parcelable {
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
/* language= */
null
,
/* language= */
null
,
/* accessibilityChannel= */
NO_VALUE
,
/* accessibilityChannel= */
NO_VALUE
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
,
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
,
OFFSET_SAMPLE_RELATIVE
,
OFFSET_SAMPLE_RELATIVE
,
/* initializationData= */
null
,
/* initializationData= */
null
,
drmInitData
,
drmInitData
,
...
@@ -947,8 +923,7 @@ public final class Format implements Parcelable {
...
@@ -947,8 +923,7 @@ public final class Format implements Parcelable {
@C
.
SelectionFlags
int
selectionFlags
,
@C
.
SelectionFlags
int
selectionFlags
,
@Nullable
String
language
,
@Nullable
String
language
,
int
accessibilityChannel
,
int
accessibilityChannel
,
@C
.
Role
int
role
,
@C
.
RoleFlags
int
roleFlags
,
@C
.
Accessibility
int
accessibility
,
long
subsampleOffsetUs
,
long
subsampleOffsetUs
,
@Nullable
List
<
byte
[]>
initializationData
,
@Nullable
List
<
byte
[]>
initializationData
,
@Nullable
DrmInitData
drmInitData
,
@Nullable
DrmInitData
drmInitData
,
...
@@ -977,8 +952,7 @@ public final class Format implements Parcelable {
...
@@ -977,8 +952,7 @@ 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
.
roleFlags
=
roleFlags
;
this
.
accessibility
=
accessibility
;
this
.
subsampleOffsetUs
=
subsampleOffsetUs
;
this
.
subsampleOffsetUs
=
subsampleOffsetUs
;
this
.
initializationData
=
this
.
initializationData
=
initializationData
==
null
?
Collections
.
emptyList
()
:
initializationData
;
initializationData
==
null
?
Collections
.
emptyList
()
:
initializationData
;
...
@@ -1012,8 +986,7 @@ public final class Format implements Parcelable {
...
@@ -1012,8 +986,7 @@ 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
.
readInt
();
roleFlags
=
in
.
readInt
();
accessibility
=
in
.
readInt
();
subsampleOffsetUs
=
in
.
readLong
();
subsampleOffsetUs
=
in
.
readLong
();
int
initializationDataSize
=
in
.
readInt
();
int
initializationDataSize
=
in
.
readInt
();
initializationData
=
new
ArrayList
<>(
initializationDataSize
);
initializationData
=
new
ArrayList
<>(
initializationDataSize
);
...
@@ -1049,8 +1022,7 @@ public final class Format implements Parcelable {
...
@@ -1049,8 +1022,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1082,8 +1054,7 @@ public final class Format implements Parcelable {
...
@@ -1082,8 +1054,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1124,8 +1095,7 @@ public final class Format implements Parcelable {
...
@@ -1124,8 +1095,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1197,8 +1167,7 @@ public final class Format implements Parcelable {
...
@@ -1197,8 +1167,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1230,8 +1199,7 @@ public final class Format implements Parcelable {
...
@@ -1230,8 +1199,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1263,8 +1231,7 @@ public final class Format implements Parcelable {
...
@@ -1263,8 +1231,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1296,8 +1263,7 @@ public final class Format implements Parcelable {
...
@@ -1296,8 +1263,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1329,8 +1295,7 @@ public final class Format implements Parcelable {
...
@@ -1329,8 +1295,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1362,8 +1327,7 @@ public final class Format implements Parcelable {
...
@@ -1362,8 +1327,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1395,8 +1359,7 @@ public final class Format implements Parcelable {
...
@@ -1395,8 +1359,7 @@ public final class Format implements Parcelable {
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
,
accessibility
,
subsampleOffsetUs
,
subsampleOffsetUs
,
initializationData
,
initializationData
,
drmInitData
,
drmInitData
,
...
@@ -1506,8 +1469,7 @@ public final class Format implements Parcelable {
...
@@ -1506,8 +1469,7 @@ 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
)
&&
roleFlags
==
other
.
roleFlags
&&
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
)
...
@@ -1609,8 +1571,7 @@ public final class Format implements Parcelable {
...
@@ -1609,8 +1571,7 @@ 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
.
writeInt
(
role
);
dest
.
writeInt
(
roleFlags
);
dest
.
writeInt
(
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 @
85441996
...
@@ -588,8 +588,9 @@ public class DashManifestParser extends DefaultHandler
...
@@ -588,8 +588,9 @@ public class DashManifestParser extends DefaultHandler
List
<
Descriptor
>
supplementalProperties
)
{
List
<
Descriptor
>
supplementalProperties
)
{
String
sampleMimeType
=
getSampleMimeType
(
containerMimeType
,
codecs
);
String
sampleMimeType
=
getSampleMimeType
(
containerMimeType
,
codecs
);
if
(
sampleMimeType
!=
null
)
{
if
(
sampleMimeType
!=
null
)
{
int
role
=
parseRole
(
roleDescriptors
);
@C
.
RoleFlags
int
role
=
parseRole
(
roleDescriptors
);
int
accessibility
=
parseAccessibility
(
accessibilityDescriptors
);
@C
.
RoleFlags
int
accessibility
=
parseAccessibility
(
accessibilityDescriptors
);
@C
.
RoleFlags
int
roleFlags
=
role
|
accessibility
;
if
(
MimeTypes
.
AUDIO_E_AC3
.
equals
(
sampleMimeType
))
{
if
(
MimeTypes
.
AUDIO_E_AC3
.
equals
(
sampleMimeType
))
{
sampleMimeType
=
parseEac3SupplementalProperties
(
supplementalProperties
);
sampleMimeType
=
parseEac3SupplementalProperties
(
supplementalProperties
);
}
}
...
@@ -606,8 +607,7 @@ public class DashManifestParser extends DefaultHandler
...
@@ -606,8 +607,7 @@ public class DashManifestParser extends DefaultHandler
frameRate
,
frameRate
,
/* initializationData= */
null
,
/* initializationData= */
null
,
selectionFlags
,
selectionFlags
,
role
,
roleFlags
);
accessibility
);
}
else
if
(
MimeTypes
.
isAudio
(
sampleMimeType
))
{
}
else
if
(
MimeTypes
.
isAudio
(
sampleMimeType
))
{
return
Format
.
createAudioContainerFormat
(
return
Format
.
createAudioContainerFormat
(
id
,
id
,
...
@@ -621,8 +621,7 @@ public class DashManifestParser extends DefaultHandler
...
@@ -621,8 +621,7 @@ public class DashManifestParser extends DefaultHandler
/* initializationData= */
null
,
/* initializationData= */
null
,
selectionFlags
,
selectionFlags
,
language
,
language
,
role
,
roleFlags
);
accessibility
);
}
else
if
(
mimeTypeIsRawText
(
sampleMimeType
))
{
}
else
if
(
mimeTypeIsRawText
(
sampleMimeType
))
{
int
accessibilityChannel
;
int
accessibilityChannel
;
if
(
MimeTypes
.
APPLICATION_CEA608
.
equals
(
sampleMimeType
))
{
if
(
MimeTypes
.
APPLICATION_CEA608
.
equals
(
sampleMimeType
))
{
...
@@ -642,8 +641,7 @@ public class DashManifestParser extends DefaultHandler
...
@@ -642,8 +641,7 @@ public class DashManifestParser extends DefaultHandler
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
role
,
roleFlags
);
accessibility
);
}
}
}
}
return
Format
.
createContainerFormat
(
return
Format
.
createContainerFormat
(
...
@@ -1070,66 +1068,83 @@ public class DashManifestParser extends DefaultHandler
...
@@ -1070,66 +1068,83 @@ public class DashManifestParser extends DefaultHandler
// Role and Accessibility parsing.
// Role and Accessibility parsing.
protected
@C
.
Role
int
parseRole
(
List
<
Descriptor
>
roleDescriptors
)
{
protected
@C
.
RoleFlags
int
parseRole
(
List
<
Descriptor
>
roleDescriptors
)
{
@C
.
RoleFlags
int
result
=
0
;
for
(
int
i
=
0
;
i
<
roleDescriptors
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
roleDescriptors
.
size
();
i
++)
{
Descriptor
descriptor
=
roleDescriptors
.
get
(
i
);
Descriptor
descriptor
=
roleDescriptors
.
get
(
i
);
if
(
"urn:mpeg:dash:role:2011"
.
equalsIgnoreCase
(
descriptor
.
schemeIdUri
)
&&
descriptor
.
value
!=
null
)
{
if
(
"urn:mpeg:dash:role:2011"
.
equalsIgnoreCase
(
descriptor
.
schemeIdUri
)
&&
descriptor
.
value
!=
null
)
{
switch
(
descriptor
.
value
)
{
result
|=
parseRoleSchemeValue
(
descriptor
.
value
);
case
"main"
:
return
C
.
ROLE_MAIN
;
case
"alternate"
:
return
C
.
ROLE_ALTERNATE
;
case
"supplementary"
:
return
C
.
ROLE_SUPPLEMENTARY
;
case
"commentary"
:
return
C
.
ROLE_COMMENTARY
;
case
"dub"
:
return
C
.
ROLE_DUB
;
case
"emergency"
:
return
C
.
ROLE_EMERGENCY
;
case
"caption"
:
return
C
.
ROLE_CAPTION
;
case
"sign"
:
return
C
.
ROLE_SIGN
;
default
:
return
C
.
ROLE_UNSET
;
}
}
}
}
}
return
result
;
return
C
.
ROLE_UNSET
;
}
}
protected
@C
.
Accessibility
int
parseAccessibility
(
List
<
Descriptor
>
accessibilityDescriptors
)
{
protected
@C
.
RoleFlags
int
parseAccessibility
(
List
<
Descriptor
>
accessibilityDescriptors
)
{
@C
.
RoleFlags
int
result
=
0
;
for
(
int
i
=
0
;
i
<
accessibilityDescriptors
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
accessibilityDescriptors
.
size
();
i
++)
{
Descriptor
descriptor
=
accessibilityDescriptors
.
get
(
i
);
Descriptor
descriptor
=
accessibilityDescriptors
.
get
(
i
);
if
(
"urn:mpeg:dash:role:2011"
.
equalsIgnoreCase
(
descriptor
.
schemeIdUri
)
&&
descriptor
.
value
!=
null
)
{
if
(
"urn:mpeg:dash:role:2011"
.
equalsIgnoreCase
(
descriptor
.
schemeIdUri
)
&&
descriptor
.
value
!=
null
)
{
switch
(
descriptor
.
value
){
result
|=
parseRoleSchemeValue
(
descriptor
.
value
);
case
"description"
:
return
C
.
ACCESSIBILITY_DESCRIPTION
;
case
"enhanced-audio-intelligibility"
:
return
C
.
ACCESSIBILITY_ENHANCED_AUDIO_INTELLIGIBILITY
;
case
"caption"
:
return
C
.
ACCESSIBILITY_CAPTION
;
case
"sign"
:
return
C
.
ACCESSIBILITY_SIGN
;
default
:
return
C
.
ACCESSIBILITY_UNSET
;
}
}
}
if
(
"urn:tva:metadata:cs:AudioPurposeCS:2007"
.
equalsIgnoreCase
(
descriptor
.
schemeIdUri
)
&&
if
(
"urn:tva:metadata:cs:AudioPurposeCS:2007"
.
equalsIgnoreCase
(
descriptor
.
schemeIdUri
)
&&
descriptor
.
value
!=
null
)
{
descriptor
.
value
!=
null
)
{
switch
(
descriptor
.
value
){
switch
(
descriptor
.
value
){
case
"1"
:
case
"1"
:
// Audio description for the visually impaired
return
C
.
ACCESSIBILITY_ENHANCED_AUDIO_INTELLIGIBILITY
;
result
|=
C
.
ROLE_FLAGS_DESCRIPTION
;
case
"2"
:
break
;
return
C
.
ACCESSIBILITY_CAPTION
;
case
"2"
:
// Audio description for the hard of hearing
default
:
result
|=
C
.
ROLE_FLAGS_ENHANCED_AUDIO_INTELLIGIBILITY
;
return
C
.
ACCESSIBILITY_UNSET
;
break
;
case
"3"
:
// Supplemental commentary
result
|=
C
.
ROLE_FLAGS_SUPPLEMENTARY
;
break
;
case
"4"
:
// Director's commentary
result
|=
C
.
ROLE_FLAGS_COMMENTARY
;
break
;
case
"6"
:
// Main programme audio
result
|=
C
.
ROLE_FLAGS_MAIN
;
break
;
}
}
}
}
}
}
return
C
.
ACCESSIBILITY_UNSET
;
return
result
;
}
protected
@C
.
RoleFlags
int
parseRoleSchemeValue
(
String
value
){
@C
.
RoleFlags
int
result
=
0
;
switch
(
value
)
{
case
"main"
:
result
|=
C
.
ROLE_FLAGS_MAIN
;
break
;
case
"alternate"
:
result
|=
C
.
ROLE_FLAGS_ALTERNATE
;
break
;
case
"supplementary"
:
result
|=
C
.
ROLE_FLAGS_SUPPLEMENTARY
;
break
;
case
"commentary"
:
result
|=
C
.
ROLE_FLAGS_COMMENTARY
;
break
;
case
"dub"
:
result
|=
C
.
ROLE_FLAGS_DUB
;
break
;
case
"emergency"
:
result
|=
C
.
ROLE_FLAGS_EMERGENCY
;
break
;
case
"caption"
:
result
|=
C
.
ROLE_FLAGS_CAPTION
;
break
;
case
"sign"
:
result
|=
C
.
ROLE_FLAGS_SIGN
;
break
;
case
"description"
:
result
|=
C
.
ROLE_FLAGS_DESCRIPTION
;
break
;
case
"enhanced-audio-intelligibility"
:
result
|=
C
.
ROLE_FLAGS_ENHANCED_AUDIO_INTELLIGIBILITY
;
break
;
}
return
result
;
}
}
// Utility methods.
// Utility methods.
...
...
library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java
View file @
85441996
...
@@ -703,8 +703,7 @@ public final class HlsMediaPeriod implements MediaPeriod, HlsSampleStreamWrapper
...
@@ -703,8 +703,7 @@ public final class HlsMediaPeriod implements MediaPeriod, HlsSampleStreamWrapper
variantFormat
.
frameRate
,
variantFormat
.
frameRate
,
/* initializationData= */
null
,
/* initializationData= */
null
,
variantFormat
.
selectionFlags
,
variantFormat
.
selectionFlags
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
);
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
);
}
}
private
static
Format
deriveAudioFormat
(
private
static
Format
deriveAudioFormat
(
...
@@ -743,8 +742,7 @@ public final class HlsMediaPeriod implements MediaPeriod, HlsSampleStreamWrapper
...
@@ -743,8 +742,7 @@ public final class HlsMediaPeriod implements MediaPeriod, HlsSampleStreamWrapper
/* initializationData= */
null
,
/* initializationData= */
null
,
selectionFlags
,
selectionFlags
,
language
,
language
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
);
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
);
}
}
}
}
library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.java
View file @
85441996
...
@@ -330,8 +330,7 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser<HlsPlayli
...
@@ -330,8 +330,7 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser<HlsPlayli
frameRate
,
frameRate
,
/* initializationData= */
null
,
/* initializationData= */
null
,
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
);
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
);
variants
.
add
(
new
HlsMasterPlaylist
.
HlsUrl
(
line
,
format
,
/* name= */
""
));
variants
.
add
(
new
HlsMasterPlaylist
.
HlsUrl
(
line
,
format
,
/* name= */
""
));
}
}
}
}
...
@@ -364,8 +363,7 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser<HlsPlayli
...
@@ -364,8 +363,7 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser<HlsPlayli
/* initializationData= */
null
,
/* initializationData= */
null
,
selectionFlags
,
selectionFlags
,
language
,
language
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
);
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
);
if
(
isMediaTagMuxed
(
variants
,
uri
))
{
if
(
isMediaTagMuxed
(
variants
,
uri
))
{
muxedAudioFormat
=
format
;
muxedAudioFormat
=
format
;
}
else
{
}
else
{
...
@@ -410,8 +408,7 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser<HlsPlayli
...
@@ -410,8 +408,7 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser<HlsPlayli
selectionFlags
,
selectionFlags
,
language
,
language
,
accessibilityChannel
,
accessibilityChannel
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
));
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
));
break
;
break
;
default
:
default
:
// Do nothing.
// Do nothing.
...
...
library/smoothstreaming/src/main/java/com/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifestParser.java
View file @
85441996
...
@@ -682,8 +682,7 @@ public class SsManifestParser implements ParsingLoadable.Parser<SsManifest> {
...
@@ -682,8 +682,7 @@ public class SsManifestParser implements ParsingLoadable.Parser<SsManifest> {
/* frameRate= */
Format
.
NO_VALUE
,
/* frameRate= */
Format
.
NO_VALUE
,
codecSpecificData
,
codecSpecificData
,
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
);
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
);
}
else
if
(
type
==
C
.
TRACK_TYPE_AUDIO
)
{
}
else
if
(
type
==
C
.
TRACK_TYPE_AUDIO
)
{
sampleMimeType
=
sampleMimeType
==
null
?
MimeTypes
.
AUDIO_AAC
:
sampleMimeType
;
sampleMimeType
=
sampleMimeType
==
null
?
MimeTypes
.
AUDIO_AAC
:
sampleMimeType
;
int
channels
=
parseRequiredInt
(
parser
,
KEY_CHANNELS
);
int
channels
=
parseRequiredInt
(
parser
,
KEY_CHANNELS
);
...
@@ -708,8 +707,7 @@ public class SsManifestParser implements ParsingLoadable.Parser<SsManifest> {
...
@@ -708,8 +707,7 @@ public class SsManifestParser implements ParsingLoadable.Parser<SsManifest> {
codecSpecificData
,
codecSpecificData
,
/* selectionFlags= */
0
,
/* selectionFlags= */
0
,
language
,
language
,
/* role= */
C
.
ROLE_UNSET
,
/* roleFlags= */
0
);
/* accessibility= */
C
.
ACCESSIBILITY_UNSET
);
}
else
if
(
type
==
C
.
TRACK_TYPE_TEXT
)
{
}
else
if
(
type
==
C
.
TRACK_TYPE_TEXT
)
{
String
language
=
(
String
)
getNormalizedAttribute
(
KEY_LANGUAGE
);
String
language
=
(
String
)
getNormalizedAttribute
(
KEY_LANGUAGE
);
format
=
format
=
...
...
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