Always use the new L+ releaseOutputBuffer() to gain drop support on L

This commit is contained in:
Cameron Gutman 2018-12-03 18:15:51 -08:00
parent 404f096d11
commit 4c8d433b6c

View File

@ -405,10 +405,17 @@ public class MediaCodecDecoderRenderer extends VideoDecoderRenderer {
} }
// Render the last buffer // Render the last buffer
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && !legacyFrameDropRendering) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
// Use a PTS that will cause this frame to never be dropped if frame dropping if (legacyFrameDropRendering) {
// is disabled // Use a PTS that will cause this frame to be dropped if another comes in within
videoDecoder.releaseOutputBuffer(lastIndex, 0); // the same V-sync period
videoDecoder.releaseOutputBuffer(lastIndex, System.nanoTime());
}
else {
// Use a PTS that will cause this frame to never be dropped if frame dropping
// is disabled
videoDecoder.releaseOutputBuffer(lastIndex, 0);
}
} }
else { else {
videoDecoder.releaseOutputBuffer(lastIndex, true); videoDecoder.releaseOutputBuffer(lastIndex, true);