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
932abaf0
authored
Feb 27, 2018
by
ojw28
Committed by
GitHub
Feb 27, 2018
Browse files
Options
_('Browse Files')
Download
Plain Diff
Merge pull request #3887 from CoryCharlton/dev-v2
Add abstract logging methods to EventLogger
parents
926a276c
9f2d53dc
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
63 additions
and
56 deletions
library/core/src/main/java/com/google/android/exoplayer2/util/EventLogger.java
library/core/src/main/java/com/google/android/exoplayer2/util/EventLogger.java
View file @
932abaf0
...
...
@@ -89,33 +89,33 @@ public class EventLogger
@Override
public
void
onLoadingChanged
(
boolean
isLoading
)
{
Log
.
d
(
TAG
,
"loading ["
+
isLoading
+
"]"
);
log
d
(
TAG
,
"loading ["
+
isLoading
+
"]"
);
}
@Override
public
void
onPlayerStateChanged
(
boolean
playWhenReady
,
int
state
)
{
Log
.
d
(
TAG
,
"state ["
+
getSessionTimeString
()
+
", "
+
playWhenReady
+
", "
log
d
(
TAG
,
"state ["
+
getSessionTimeString
()
+
", "
+
playWhenReady
+
", "
+
getStateString
(
state
)
+
"]"
);
}
@Override
public
void
onRepeatModeChanged
(
@Player
.
RepeatMode
int
repeatMode
)
{
Log
.
d
(
TAG
,
"repeatMode ["
+
getRepeatModeString
(
repeatMode
)
+
"]"
);
log
d
(
TAG
,
"repeatMode ["
+
getRepeatModeString
(
repeatMode
)
+
"]"
);
}
@Override
public
void
onShuffleModeEnabledChanged
(
boolean
shuffleModeEnabled
)
{
Log
.
d
(
TAG
,
"shuffleModeEnabled ["
+
shuffleModeEnabled
+
"]"
);
log
d
(
TAG
,
"shuffleModeEnabled ["
+
shuffleModeEnabled
+
"]"
);
}
@Override
public
void
onPositionDiscontinuity
(
@Player
.
DiscontinuityReason
int
reason
)
{
Log
.
d
(
TAG
,
"positionDiscontinuity ["
+
getDiscontinuityReasonString
(
reason
)
+
"]"
);
log
d
(
TAG
,
"positionDiscontinuity ["
+
getDiscontinuityReasonString
(
reason
)
+
"]"
);
}
@Override
public
void
onPlaybackParametersChanged
(
PlaybackParameters
playbackParameters
)
{
Log
.
d
(
TAG
,
"playbackParameters "
+
String
.
format
(
log
d
(
TAG
,
"playbackParameters "
+
String
.
format
(
"[speed=%.2f, pitch=%.2f]"
,
playbackParameters
.
speed
,
playbackParameters
.
pitch
));
}
...
...
@@ -124,138 +124,138 @@ public class EventLogger
@Player
.
TimelineChangeReason
int
reason
)
{
int
periodCount
=
timeline
.
getPeriodCount
();
int
windowCount
=
timeline
.
getWindowCount
();
Log
.
d
(
TAG
,
"timelineChanged [periodCount="
+
periodCount
+
", windowCount="
+
windowCount
log
d
(
TAG
,
"timelineChanged [periodCount="
+
periodCount
+
", windowCount="
+
windowCount
+
", reason="
+
getTimelineChangeReasonString
(
reason
));
for
(
int
i
=
0
;
i
<
Math
.
min
(
periodCount
,
MAX_TIMELINE_ITEM_LINES
);
i
++)
{
timeline
.
getPeriod
(
i
,
period
);
Log
.
d
(
TAG
,
" "
+
"period ["
+
getTimeString
(
period
.
getDurationMs
())
+
"]"
);
log
d
(
TAG
,
" "
+
"period ["
+
getTimeString
(
period
.
getDurationMs
())
+
"]"
);
}
if
(
periodCount
>
MAX_TIMELINE_ITEM_LINES
)
{
Log
.
d
(
TAG
,
" ..."
);
log
d
(
TAG
,
" ..."
);
}
for
(
int
i
=
0
;
i
<
Math
.
min
(
windowCount
,
MAX_TIMELINE_ITEM_LINES
);
i
++)
{
timeline
.
getWindow
(
i
,
window
);
Log
.
d
(
TAG
,
" "
+
"window ["
+
getTimeString
(
window
.
getDurationMs
())
+
", "
log
d
(
TAG
,
" "
+
"window ["
+
getTimeString
(
window
.
getDurationMs
())
+
", "
+
window
.
isSeekable
+
", "
+
window
.
isDynamic
+
"]"
);
}
if
(
windowCount
>
MAX_TIMELINE_ITEM_LINES
)
{
Log
.
d
(
TAG
,
" ..."
);
log
d
(
TAG
,
" ..."
);
}
Log
.
d
(
TAG
,
"]"
);
log
d
(
TAG
,
"]"
);
}
@Override
public
void
onPlayerError
(
ExoPlaybackException
e
)
{
Log
.
e
(
TAG
,
"playerFailed ["
+
getSessionTimeString
()
+
"]"
,
e
);
log
e
(
TAG
,
"playerFailed ["
+
getSessionTimeString
()
+
"]"
,
e
);
}
@Override
public
void
onTracksChanged
(
TrackGroupArray
ignored
,
TrackSelectionArray
trackSelections
)
{
MappedTrackInfo
mappedTrackInfo
=
trackSelector
.
getCurrentMappedTrackInfo
();
if
(
mappedTrackInfo
==
null
)
{
Log
.
d
(
TAG
,
"Tracks []"
);
log
d
(
TAG
,
"Tracks []"
);
return
;
}
Log
.
d
(
TAG
,
"Tracks ["
);
log
d
(
TAG
,
"Tracks ["
);
// Log tracks associated to renderers.
for
(
int
rendererIndex
=
0
;
rendererIndex
<
mappedTrackInfo
.
length
;
rendererIndex
++)
{
TrackGroupArray
rendererTrackGroups
=
mappedTrackInfo
.
getTrackGroups
(
rendererIndex
);
TrackSelection
trackSelection
=
trackSelections
.
get
(
rendererIndex
);
if
(
rendererTrackGroups
.
length
>
0
)
{
Log
.
d
(
TAG
,
" Renderer:"
+
rendererIndex
+
" ["
);
log
d
(
TAG
,
" Renderer:"
+
rendererIndex
+
" ["
);
for
(
int
groupIndex
=
0
;
groupIndex
<
rendererTrackGroups
.
length
;
groupIndex
++)
{
TrackGroup
trackGroup
=
rendererTrackGroups
.
get
(
groupIndex
);
String
adaptiveSupport
=
getAdaptiveSupportString
(
trackGroup
.
length
,
mappedTrackInfo
.
getAdaptiveSupport
(
rendererIndex
,
groupIndex
,
false
));
Log
.
d
(
TAG
,
" Group:"
+
groupIndex
+
", adaptive_supported="
+
adaptiveSupport
+
" ["
);
log
d
(
TAG
,
" Group:"
+
groupIndex
+
", adaptive_supported="
+
adaptiveSupport
+
" ["
);
for
(
int
trackIndex
=
0
;
trackIndex
<
trackGroup
.
length
;
trackIndex
++)
{
String
status
=
getTrackStatusString
(
trackSelection
,
trackGroup
,
trackIndex
);
String
formatSupport
=
getFormatSupportString
(
mappedTrackInfo
.
getTrackFormatSupport
(
rendererIndex
,
groupIndex
,
trackIndex
));
Log
.
d
(
TAG
,
" "
+
status
+
" Track:"
+
trackIndex
+
", "
log
d
(
TAG
,
" "
+
status
+
" Track:"
+
trackIndex
+
", "
+
Format
.
toLogString
(
trackGroup
.
getFormat
(
trackIndex
))
+
", supported="
+
formatSupport
);
}
Log
.
d
(
TAG
,
" ]"
);
log
d
(
TAG
,
" ]"
);
}
// Log metadata for at most one of the tracks selected for the renderer.
if
(
trackSelection
!=
null
)
{
for
(
int
selectionIndex
=
0
;
selectionIndex
<
trackSelection
.
length
();
selectionIndex
++)
{
Metadata
metadata
=
trackSelection
.
getFormat
(
selectionIndex
).
metadata
;
if
(
metadata
!=
null
)
{
Log
.
d
(
TAG
,
" Metadata ["
);
log
d
(
TAG
,
" Metadata ["
);
printMetadata
(
metadata
,
" "
);
Log
.
d
(
TAG
,
" ]"
);
log
d
(
TAG
,
" ]"
);
break
;
}
}
}
Log
.
d
(
TAG
,
" ]"
);
log
d
(
TAG
,
" ]"
);
}
}
// Log tracks not associated with a renderer.
TrackGroupArray
unassociatedTrackGroups
=
mappedTrackInfo
.
getUnassociatedTrackGroups
();
if
(
unassociatedTrackGroups
.
length
>
0
)
{
Log
.
d
(
TAG
,
" Renderer:None ["
);
log
d
(
TAG
,
" Renderer:None ["
);
for
(
int
groupIndex
=
0
;
groupIndex
<
unassociatedTrackGroups
.
length
;
groupIndex
++)
{
Log
.
d
(
TAG
,
" Group:"
+
groupIndex
+
" ["
);
log
d
(
TAG
,
" Group:"
+
groupIndex
+
" ["
);
TrackGroup
trackGroup
=
unassociatedTrackGroups
.
get
(
groupIndex
);
for
(
int
trackIndex
=
0
;
trackIndex
<
trackGroup
.
length
;
trackIndex
++)
{
String
status
=
getTrackStatusString
(
false
);
String
formatSupport
=
getFormatSupportString
(
RendererCapabilities
.
FORMAT_UNSUPPORTED_TYPE
);
Log
.
d
(
TAG
,
" "
+
status
+
" Track:"
+
trackIndex
+
", "
log
d
(
TAG
,
" "
+
status
+
" Track:"
+
trackIndex
+
", "
+
Format
.
toLogString
(
trackGroup
.
getFormat
(
trackIndex
))
+
", supported="
+
formatSupport
);
}
Log
.
d
(
TAG
,
" ]"
);
log
d
(
TAG
,
" ]"
);
}
Log
.
d
(
TAG
,
" ]"
);
log
d
(
TAG
,
" ]"
);
}
Log
.
d
(
TAG
,
"]"
);
log
d
(
TAG
,
"]"
);
}
@Override
public
void
onSeekProcessed
()
{
Log
.
d
(
TAG
,
"seekProcessed"
);
log
d
(
TAG
,
"seekProcessed"
);
}
// MetadataOutput
@Override
public
void
onMetadata
(
Metadata
metadata
)
{
Log
.
d
(
TAG
,
"onMetadata ["
);
log
d
(
TAG
,
"onMetadata ["
);
printMetadata
(
metadata
,
" "
);
Log
.
d
(
TAG
,
"]"
);
log
d
(
TAG
,
"]"
);
}
// AudioRendererEventListener
@Override
public
void
onAudioEnabled
(
DecoderCounters
counters
)
{
Log
.
d
(
TAG
,
"audioEnabled ["
+
getSessionTimeString
()
+
"]"
);
log
d
(
TAG
,
"audioEnabled ["
+
getSessionTimeString
()
+
"]"
);
}
@Override
public
void
onAudioSessionId
(
int
audioSessionId
)
{
Log
.
d
(
TAG
,
"audioSessionId ["
+
audioSessionId
+
"]"
);
log
d
(
TAG
,
"audioSessionId ["
+
audioSessionId
+
"]"
);
}
@Override
public
void
onAudioDecoderInitialized
(
String
decoderName
,
long
elapsedRealtimeMs
,
long
initializationDurationMs
)
{
Log
.
d
(
TAG
,
"audioDecoderInitialized ["
+
getSessionTimeString
()
+
", "
+
decoderName
+
"]"
);
log
d
(
TAG
,
"audioDecoderInitialized ["
+
getSessionTimeString
()
+
", "
+
decoderName
+
"]"
);
}
@Override
public
void
onAudioInputFormatChanged
(
Format
format
)
{
Log
.
d
(
TAG
,
"audioFormatChanged ["
+
getSessionTimeString
()
+
", "
+
Format
.
toLogString
(
format
)
log
d
(
TAG
,
"audioFormatChanged ["
+
getSessionTimeString
()
+
", "
+
Format
.
toLogString
(
format
)
+
"]"
);
}
@Override
public
void
onAudioDisabled
(
DecoderCounters
counters
)
{
Log
.
d
(
TAG
,
"audioDisabled ["
+
getSessionTimeString
()
+
"]"
);
log
d
(
TAG
,
"audioDisabled ["
+
getSessionTimeString
()
+
"]"
);
}
@Override
...
...
@@ -268,40 +268,40 @@ public class EventLogger
@Override
public
void
onVideoEnabled
(
DecoderCounters
counters
)
{
Log
.
d
(
TAG
,
"videoEnabled ["
+
getSessionTimeString
()
+
"]"
);
log
d
(
TAG
,
"videoEnabled ["
+
getSessionTimeString
()
+
"]"
);
}
@Override
public
void
onVideoDecoderInitialized
(
String
decoderName
,
long
elapsedRealtimeMs
,
long
initializationDurationMs
)
{
Log
.
d
(
TAG
,
"videoDecoderInitialized ["
+
getSessionTimeString
()
+
", "
+
decoderName
+
"]"
);
log
d
(
TAG
,
"videoDecoderInitialized ["
+
getSessionTimeString
()
+
", "
+
decoderName
+
"]"
);
}
@Override
public
void
onVideoInputFormatChanged
(
Format
format
)
{
Log
.
d
(
TAG
,
"videoFormatChanged ["
+
getSessionTimeString
()
+
", "
+
Format
.
toLogString
(
format
)
log
d
(
TAG
,
"videoFormatChanged ["
+
getSessionTimeString
()
+
", "
+
Format
.
toLogString
(
format
)
+
"]"
);
}
@Override
public
void
onVideoDisabled
(
DecoderCounters
counters
)
{
Log
.
d
(
TAG
,
"videoDisabled ["
+
getSessionTimeString
()
+
"]"
);
log
d
(
TAG
,
"videoDisabled ["
+
getSessionTimeString
()
+
"]"
);
}
@Override
public
void
onDroppedFrames
(
int
count
,
long
elapsed
)
{
Log
.
d
(
TAG
,
"droppedFrames ["
+
getSessionTimeString
()
+
", "
+
count
+
"]"
);
log
d
(
TAG
,
"droppedFrames ["
+
getSessionTimeString
()
+
", "
+
count
+
"]"
);
}
@Override
public
void
onVideoSizeChanged
(
int
width
,
int
height
,
int
unappliedRotationDegrees
,
float
pixelWidthHeightRatio
)
{
Log
.
d
(
TAG
,
"videoSizeChanged ["
+
width
+
", "
+
height
+
"]"
);
log
d
(
TAG
,
"videoSizeChanged ["
+
width
+
", "
+
height
+
"]"
);
}
@Override
public
void
onRenderedFirstFrame
(
Surface
surface
)
{
Log
.
d
(
TAG
,
"renderedFirstFrame ["
+
surface
+
"]"
);
log
d
(
TAG
,
"renderedFirstFrame ["
+
surface
+
"]"
);
}
// DefaultDrmSessionManager.EventListener
...
...
@@ -313,17 +313,17 @@ public class EventLogger
@Override
public
void
onDrmKeysRestored
()
{
Log
.
d
(
TAG
,
"drmKeysRestored ["
+
getSessionTimeString
()
+
"]"
);
log
d
(
TAG
,
"drmKeysRestored ["
+
getSessionTimeString
()
+
"]"
);
}
@Override
public
void
onDrmKeysRemoved
()
{
Log
.
d
(
TAG
,
"drmKeysRemoved ["
+
getSessionTimeString
()
+
"]"
);
log
d
(
TAG
,
"drmKeysRemoved ["
+
getSessionTimeString
()
+
"]"
);
}
@Override
public
void
onDrmKeysLoaded
()
{
Log
.
d
(
TAG
,
"drmKeysLoaded ["
+
getSessionTimeString
()
+
"]"
);
log
d
(
TAG
,
"drmKeysLoaded ["
+
getSessionTimeString
()
+
"]"
);
}
// MediaSourceEventListener
...
...
@@ -400,7 +400,7 @@ public class EventLogger
// Internal methods
private
void
printInternalError
(
String
type
,
Exception
e
)
{
Log
.
e
(
TAG
,
"internalError ["
+
getSessionTimeString
()
+
", "
+
type
+
"]"
,
e
);
log
e
(
TAG
,
"internalError ["
+
getSessionTimeString
()
+
", "
+
type
+
"]"
,
e
);
}
private
void
printMetadata
(
Metadata
metadata
,
String
prefix
)
{
...
...
@@ -408,37 +408,37 @@ public class EventLogger
Metadata
.
Entry
entry
=
metadata
.
get
(
i
);
if
(
entry
instanceof
TextInformationFrame
)
{
TextInformationFrame
textInformationFrame
=
(
TextInformationFrame
)
entry
;
Log
.
d
(
TAG
,
prefix
+
String
.
format
(
"%s: value=%s"
,
textInformationFrame
.
id
,
log
d
(
TAG
,
prefix
+
String
.
format
(
"%s: value=%s"
,
textInformationFrame
.
id
,
textInformationFrame
.
value
));
}
else
if
(
entry
instanceof
UrlLinkFrame
)
{
UrlLinkFrame
urlLinkFrame
=
(
UrlLinkFrame
)
entry
;
Log
.
d
(
TAG
,
prefix
+
String
.
format
(
"%s: url=%s"
,
urlLinkFrame
.
id
,
urlLinkFrame
.
url
));
log
d
(
TAG
,
prefix
+
String
.
format
(
"%s: url=%s"
,
urlLinkFrame
.
id
,
urlLinkFrame
.
url
));
}
else
if
(
entry
instanceof
PrivFrame
)
{
PrivFrame
privFrame
=
(
PrivFrame
)
entry
;
Log
.
d
(
TAG
,
prefix
+
String
.
format
(
"%s: owner=%s"
,
privFrame
.
id
,
privFrame
.
owner
));
log
d
(
TAG
,
prefix
+
String
.
format
(
"%s: owner=%s"
,
privFrame
.
id
,
privFrame
.
owner
));
}
else
if
(
entry
instanceof
GeobFrame
)
{
GeobFrame
geobFrame
=
(
GeobFrame
)
entry
;
Log
.
d
(
TAG
,
prefix
+
String
.
format
(
"%s: mimeType=%s, filename=%s, description=%s"
,
log
d
(
TAG
,
prefix
+
String
.
format
(
"%s: mimeType=%s, filename=%s, description=%s"
,
geobFrame
.
id
,
geobFrame
.
mimeType
,
geobFrame
.
filename
,
geobFrame
.
description
));
}
else
if
(
entry
instanceof
ApicFrame
)
{
ApicFrame
apicFrame
=
(
ApicFrame
)
entry
;
Log
.
d
(
TAG
,
prefix
+
String
.
format
(
"%s: mimeType=%s, description=%s"
,
log
d
(
TAG
,
prefix
+
String
.
format
(
"%s: mimeType=%s, description=%s"
,
apicFrame
.
id
,
apicFrame
.
mimeType
,
apicFrame
.
description
));
}
else
if
(
entry
instanceof
CommentFrame
)
{
CommentFrame
commentFrame
=
(
CommentFrame
)
entry
;
Log
.
d
(
TAG
,
prefix
+
String
.
format
(
"%s: language=%s, description=%s"
,
commentFrame
.
id
,
log
d
(
TAG
,
prefix
+
String
.
format
(
"%s: language=%s, description=%s"
,
commentFrame
.
id
,
commentFrame
.
language
,
commentFrame
.
description
));
}
else
if
(
entry
instanceof
Id3Frame
)
{
Id3Frame
id3Frame
=
(
Id3Frame
)
entry
;
Log
.
d
(
TAG
,
prefix
+
String
.
format
(
"%s"
,
id3Frame
.
id
));
log
d
(
TAG
,
prefix
+
String
.
format
(
"%s"
,
id3Frame
.
id
));
}
else
if
(
entry
instanceof
EventMessage
)
{
EventMessage
eventMessage
=
(
EventMessage
)
entry
;
Log
.
d
(
TAG
,
prefix
+
String
.
format
(
"EMSG: scheme=%s, id=%d, value=%s"
,
log
d
(
TAG
,
prefix
+
String
.
format
(
"EMSG: scheme=%s, id=%d, value=%s"
,
eventMessage
.
schemeIdUri
,
eventMessage
.
id
,
eventMessage
.
value
));
}
else
if
(
entry
instanceof
SpliceCommand
)
{
String
description
=
String
.
format
(
"SCTE-35 splice command: type=%s."
,
entry
.
getClass
().
getSimpleName
());
Log
.
d
(
TAG
,
prefix
+
description
);
log
d
(
TAG
,
prefix
+
description
);
}
}
}
...
...
@@ -555,4 +555,11 @@ public class EventLogger
}
}
protected
void
logd
(
String
tag
,
String
msg
)
{
Log
.
d
(
tag
,
msg
);
}
protected
void
loge
(
String
tag
,
String
msg
,
Throwable
tr
)
{
Log
.
e
(
tag
,
msg
,
tr
);
}
}
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