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
0cc874dd
authored
Dec 01, 2016
by
Oliver Woodman
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Fix indentation
parent
54b4df70
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
54 additions
and
54 deletions
library/src/main/java/com/google/android/exoplayer2/text/cea/Cea608Decoder.java
library/src/main/java/com/google/android/exoplayer2/ui/SubtitlePainter.java
library/src/main/java/com/google/android/exoplayer2/text/cea/Cea608Decoder.java
View file @
0cc874dd
...
@@ -124,70 +124,70 @@ public final class Cea608Decoder extends CeaDecoder {
...
@@ -124,70 +124,70 @@ public final class Cea608Decoder extends CeaDecoder {
// Basic North American 608 CC char set, mostly ASCII. Indexed by (char-0x20).
// Basic North American 608 CC char set, mostly ASCII. Indexed by (char-0x20).
private
static
final
int
[]
BASIC_CHARACTER_SET
=
new
int
[]
{
private
static
final
int
[]
BASIC_CHARACTER_SET
=
new
int
[]
{
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
// ! " # $ % & '
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
// ! " # $ % & '
0x28
,
0x29
,
// ( )
0x28
,
0x29
,
// ( )
0xE1
,
// 2A: 225 'á' "Latin small letter A with acute"
0xE1
,
// 2A: 225 'á' "Latin small letter A with acute"
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
// + , - . /
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
// + , - . /
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
// 0 1 2 3 4 5 6 7
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
// 0 1 2 3 4 5 6 7
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
// 8 9 : ; < = > ?
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
// 8 9 : ; < = > ?
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
// @ A B C D E F G
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
// @ A B C D E F G
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
// H I J K L M N O
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
// H I J K L M N O
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
// P Q R S T U V W
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
// P Q R S T U V W
0x58
,
0x59
,
0x5A
,
0x5B
,
// X Y Z [
0x58
,
0x59
,
0x5A
,
0x5B
,
// X Y Z [
0xE9
,
// 5C: 233 'é' "Latin small letter E with acute"
0xE9
,
// 5C: 233 'é' "Latin small letter E with acute"
0x5D
,
// ]
0x5D
,
// ]
0xED
,
// 5E: 237 'í' "Latin small letter I with acute"
0xED
,
// 5E: 237 'í' "Latin small letter I with acute"
0xF3
,
// 5F: 243 'ó' "Latin small letter O with acute"
0xF3
,
// 5F: 243 'ó' "Latin small letter O with acute"
0xFA
,
// 60: 250 'ú' "Latin small letter U with acute"
0xFA
,
// 60: 250 'ú' "Latin small letter U with acute"
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
// a b c d e f g
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
// a b c d e f g
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
// h i j k l m n o
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
// h i j k l m n o
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
// p q r s t u v w
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
// p q r s t u v w
0x78
,
0x79
,
0x7A
,
// x y z
0x78
,
0x79
,
0x7A
,
// x y z
0xE7
,
// 7B: 231 'ç' "Latin small letter C with cedilla"
0xE7
,
// 7B: 231 'ç' "Latin small letter C with cedilla"
0xF7
,
// 7C: 247 '÷' "Division sign"
0xF7
,
// 7C: 247 '÷' "Division sign"
0xD1
,
// 7D: 209 'Ñ' "Latin capital letter N with tilde"
0xD1
,
// 7D: 209 'Ñ' "Latin capital letter N with tilde"
0xF1
,
// 7E: 241 'ñ' "Latin small letter N with tilde"
0xF1
,
// 7E: 241 'ñ' "Latin small letter N with tilde"
0x25A0
// 7F: "Black Square" (NB: 2588 = Full Block)
0x25A0
// 7F: "Black Square" (NB: 2588 = Full Block)
};
};
// Special North American 608 CC char set.
// Special North American 608 CC char set.
private
static
final
int
[]
SPECIAL_CHARACTER_SET
=
new
int
[]
{
private
static
final
int
[]
SPECIAL_CHARACTER_SET
=
new
int
[]
{
0xAE
,
// 30: 174 '®' "Registered Sign" - registered trademark symbol
0xAE
,
// 30: 174 '®' "Registered Sign" - registered trademark symbol
0xB0
,
// 31: 176 '°' "Degree Sign"
0xB0
,
// 31: 176 '°' "Degree Sign"
0xBD
,
// 32: 189 '½' "Vulgar Fraction One Half" (1/2 symbol)
0xBD
,
// 32: 189 '½' "Vulgar Fraction One Half" (1/2 symbol)
0xBF
,
// 33: 191 '¿' "Inverted Question Mark"
0xBF
,
// 33: 191 '¿' "Inverted Question Mark"
0x2122
,
// 34: "Trade Mark Sign" (tm superscript)
0x2122
,
// 34: "Trade Mark Sign" (tm superscript)
0xA2
,
// 35: 162 '¢' "Cent Sign"
0xA2
,
// 35: 162 '¢' "Cent Sign"
0xA3
,
// 36: 163 '£' "Pound Sign" - pounds sterling
0xA3
,
// 36: 163 '£' "Pound Sign" - pounds sterling
0x266A
,
// 37: "Eighth Note" - music note
0x266A
,
// 37: "Eighth Note" - music note
0xE0
,
// 38: 224 'à' "Latin small letter A with grave"
0xE0
,
// 38: 224 'à' "Latin small letter A with grave"
0x20
,
// 39: TRANSPARENT SPACE - for now use ordinary space
0x20
,
// 39: TRANSPARENT SPACE - for now use ordinary space
0xE8
,
// 3A: 232 'è' "Latin small letter E with grave"
0xE8
,
// 3A: 232 'è' "Latin small letter E with grave"
0xE2
,
// 3B: 226 'â' "Latin small letter A with circumflex"
0xE2
,
// 3B: 226 'â' "Latin small letter A with circumflex"
0xEA
,
// 3C: 234 'ê' "Latin small letter E with circumflex"
0xEA
,
// 3C: 234 'ê' "Latin small letter E with circumflex"
0xEE
,
// 3D: 238 'î' "Latin small letter I with circumflex"
0xEE
,
// 3D: 238 'î' "Latin small letter I with circumflex"
0xF4
,
// 3E: 244 'ô' "Latin small letter O with circumflex"
0xF4
,
// 3E: 244 'ô' "Latin small letter O with circumflex"
0xFB
// 3F: 251 'û' "Latin small letter U with circumflex"
0xFB
// 3F: 251 'û' "Latin small letter U with circumflex"
};
};
// Extended Spanish/Miscellaneous and French char set.
// Extended Spanish/Miscellaneous and French char set.
private
static
final
int
[]
SPECIAL_ES_FR_CHARACTER_SET
=
new
int
[]
{
private
static
final
int
[]
SPECIAL_ES_FR_CHARACTER_SET
=
new
int
[]
{
// Spanish and misc.
// Spanish and misc.
0xC1
,
0xC9
,
0xD3
,
0xDA
,
0xDC
,
0xFC
,
0x2018
,
0xA1
,
0xC1
,
0xC9
,
0xD3
,
0xDA
,
0xDC
,
0xFC
,
0x2018
,
0xA1
,
0x2A
,
0x27
,
0x2014
,
0xA9
,
0x2120
,
0x2022
,
0x201C
,
0x201D
,
0x2A
,
0x27
,
0x2014
,
0xA9
,
0x2120
,
0x2022
,
0x201C
,
0x201D
,
// French.
// French.
0xC0
,
0xC2
,
0xC7
,
0xC8
,
0xCA
,
0xCB
,
0xEB
,
0xCE
,
0xC0
,
0xC2
,
0xC7
,
0xC8
,
0xCA
,
0xCB
,
0xEB
,
0xCE
,
0xCF
,
0xEF
,
0xD4
,
0xD9
,
0xF9
,
0xDB
,
0xAB
,
0xBB
0xCF
,
0xEF
,
0xD4
,
0xD9
,
0xF9
,
0xDB
,
0xAB
,
0xBB
};
};
//Extended Portuguese and German/Danish char set.
//Extended Portuguese and German/Danish char set.
private
static
final
int
[]
SPECIAL_PT_DE_CHARACTER_SET
=
new
int
[]
{
private
static
final
int
[]
SPECIAL_PT_DE_CHARACTER_SET
=
new
int
[]
{
// Portuguese.
// Portuguese.
0xC3
,
0xE3
,
0xCD
,
0xCC
,
0xEC
,
0xD2
,
0xF2
,
0xD5
,
0xC3
,
0xE3
,
0xCD
,
0xCC
,
0xEC
,
0xD2
,
0xF2
,
0xD5
,
0xF5
,
0x7B
,
0x7D
,
0x5C
,
0x5E
,
0x5F
,
0x7C
,
0x7E
,
0xF5
,
0x7B
,
0x7D
,
0x5C
,
0x5E
,
0x5F
,
0x7C
,
0x7E
,
// German/Danish.
// German/Danish.
0xC4
,
0xE4
,
0xD6
,
0xF6
,
0xDF
,
0xA5
,
0xA4
,
0x2502
,
0xC4
,
0xE4
,
0xD6
,
0xF6
,
0xDF
,
0xA5
,
0xA4
,
0x2502
,
0xC5
,
0xE5
,
0xD8
,
0xF8
,
0x250C
,
0x2510
,
0x2514
,
0x2518
0xC5
,
0xE5
,
0xD8
,
0xF8
,
0x250C
,
0x2510
,
0x2514
,
0x2518
};
};
private
final
ParsableByteArray
ccData
;
private
final
ParsableByteArray
ccData
;
...
...
library/src/main/java/com/google/android/exoplayer2/ui/SubtitlePainter.java
View file @
0cc874dd
...
@@ -233,7 +233,7 @@ import com.google.android.exoplayer2.util.Util;
...
@@ -233,7 +233,7 @@ import com.google.android.exoplayer2.util.Util;
int
anchorPosition
=
Math
.
round
(
parentWidth
*
cuePosition
)
+
parentLeft
;
int
anchorPosition
=
Math
.
round
(
parentWidth
*
cuePosition
)
+
parentLeft
;
textLeft
=
cuePositionAnchor
==
Cue
.
ANCHOR_TYPE_END
?
anchorPosition
-
textWidth
textLeft
=
cuePositionAnchor
==
Cue
.
ANCHOR_TYPE_END
?
anchorPosition
-
textWidth
:
cuePositionAnchor
==
Cue
.
ANCHOR_TYPE_MIDDLE
?
(
anchorPosition
*
2
-
textWidth
)
/
2
:
cuePositionAnchor
==
Cue
.
ANCHOR_TYPE_MIDDLE
?
(
anchorPosition
*
2
-
textWidth
)
/
2
:
anchorPosition
;
:
anchorPosition
;
textLeft
=
Math
.
max
(
textLeft
,
parentLeft
);
textLeft
=
Math
.
max
(
textLeft
,
parentLeft
);
textRight
=
Math
.
min
(
textLeft
+
textWidth
,
parentRight
);
textRight
=
Math
.
min
(
textLeft
+
textWidth
,
parentRight
);
}
else
{
}
else
{
...
@@ -257,7 +257,7 @@ import com.google.android.exoplayer2.util.Util;
...
@@ -257,7 +257,7 @@ import com.google.android.exoplayer2.util.Util;
}
}
textTop
=
cueLineAnchor
==
Cue
.
ANCHOR_TYPE_END
?
anchorPosition
-
textHeight
textTop
=
cueLineAnchor
==
Cue
.
ANCHOR_TYPE_END
?
anchorPosition
-
textHeight
:
cueLineAnchor
==
Cue
.
ANCHOR_TYPE_MIDDLE
?
(
anchorPosition
*
2
-
textHeight
)
/
2
:
cueLineAnchor
==
Cue
.
ANCHOR_TYPE_MIDDLE
?
(
anchorPosition
*
2
-
textHeight
)
/
2
:
anchorPosition
;
:
anchorPosition
;
if
(
textTop
+
textHeight
>
parentBottom
)
{
if
(
textTop
+
textHeight
>
parentBottom
)
{
textTop
=
parentBottom
-
textHeight
;
textTop
=
parentBottom
-
textHeight
;
}
else
if
(
textTop
<
parentTop
)
{
}
else
if
(
textTop
<
parentTop
)
{
...
...
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