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
6082bb67
authored
Jul 21, 2015
by
Oliver Woodman
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Always use timed video frame release on V21+.
parent
508e1cab
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
7 deletions
library/src/main/java/com/google/android/exoplayer/MediaCodecVideoTrackRenderer.java
library/src/main/java/com/google/android/exoplayer/MediaCodecVideoTrackRenderer.java
View file @
6082bb67
...
...
@@ -437,7 +437,11 @@ public class MediaCodecVideoTrackRenderer extends MediaCodecTrackRenderer {
}
if
(!
renderedFirstFrame
)
{
renderOutputBufferImmediate
(
codec
,
bufferIndex
);
if
(
Util
.
SDK_INT
>=
21
)
{
renderOutputBufferV21
(
codec
,
bufferIndex
,
System
.
nanoTime
());
}
else
{
renderOutputBuffer
(
codec
,
bufferIndex
);
}
return
true
;
}
...
...
@@ -448,7 +452,7 @@ public class MediaCodecVideoTrackRenderer extends MediaCodecTrackRenderer {
if
(
Util
.
SDK_INT
>=
21
)
{
// Let the underlying framework time the release.
if
(
earlyUs
<
50000
)
{
renderOutputBuffer
Timed
V21
(
codec
,
bufferIndex
,
adjustedReleaseTimeNs
);
renderOutputBufferV21
(
codec
,
bufferIndex
,
adjustedReleaseTimeNs
);
return
true
;
}
}
else
{
...
...
@@ -464,7 +468,7 @@ public class MediaCodecVideoTrackRenderer extends MediaCodecTrackRenderer {
Thread
.
currentThread
().
interrupt
();
}
}
renderOutputBuffer
Immediate
(
codec
,
bufferIndex
);
renderOutputBuffer
(
codec
,
bufferIndex
);
return
true
;
}
}
...
...
@@ -491,9 +495,9 @@ public class MediaCodecVideoTrackRenderer extends MediaCodecTrackRenderer {
}
}
protected
void
renderOutputBuffer
Immediate
(
MediaCodec
codec
,
int
bufferIndex
)
{
protected
void
renderOutputBuffer
(
MediaCodec
codec
,
int
bufferIndex
)
{
maybeNotifyVideoSizeChanged
();
TraceUtil
.
beginSection
(
"re
nderVideoBufferImmediate
"
);
TraceUtil
.
beginSection
(
"re
leaseOutputBuffer
"
);
codec
.
releaseOutputBuffer
(
bufferIndex
,
true
);
TraceUtil
.
endSection
();
codecCounters
.
renderedOutputBufferCount
++;
...
...
@@ -502,9 +506,9 @@ public class MediaCodecVideoTrackRenderer extends MediaCodecTrackRenderer {
}
@TargetApi
(
21
)
protected
void
renderOutputBuffer
Timed
V21
(
MediaCodec
codec
,
int
bufferIndex
,
long
releaseTimeNs
)
{
protected
void
renderOutputBufferV21
(
MediaCodec
codec
,
int
bufferIndex
,
long
releaseTimeNs
)
{
maybeNotifyVideoSizeChanged
();
TraceUtil
.
beginSection
(
"releaseOutputBuffer
Timed
"
);
TraceUtil
.
beginSection
(
"releaseOutputBuffer"
);
codec
.
releaseOutputBuffer
(
bufferIndex
,
releaseTimeNs
);
TraceUtil
.
endSection
();
codecCounters
.
renderedOutputBufferCount
++;
...
...
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