Remove unused parameter from VideoFrameRenderControl.FrameRenderer

PiperOrigin-RevId: 689281689
This commit is contained in:
kimvde 2024-10-24 01:24:50 -07:00 committed by Copybara-Service
parent b5615d5e91
commit d25a423888
3 changed files with 4 additions and 20 deletions

View File

@ -926,10 +926,7 @@ public final class PlaybackVideoGraphWrapper implements VideoSinkProvider, Video
@Override @Override
public void renderFrame( public void renderFrame(
long renderTimeNs, long renderTimeNs, long bufferPresentationTimeUs, boolean isFirstFrame) {
long bufferPresentationTimeUs,
long streamOffsetUs,
boolean isFirstFrame) {
if (isFirstFrame && currentSurfaceAndSize != null) { if (isFirstFrame && currentSurfaceAndSize != null) {
for (PlaybackVideoGraphWrapper.Listener listener : listeners) { for (PlaybackVideoGraphWrapper.Listener listener : listeners) {
listener.onFirstFrameRendered(PlaybackVideoGraphWrapper.this); listener.onFirstFrameRendered(PlaybackVideoGraphWrapper.this);

View File

@ -49,11 +49,9 @@ import androidx.media3.exoplayer.ExoPlaybackException;
* rendered immediately. * rendered immediately.
* @param presentationTimeUs The frame's presentation time, in microseconds, which was announced * @param presentationTimeUs The frame's presentation time, in microseconds, which was announced
* with {@link VideoFrameRenderControl#onOutputFrameAvailableForRendering(long)}. * with {@link VideoFrameRenderControl#onOutputFrameAvailableForRendering(long)}.
* @param streamOffsetUs The stream offset, in microseconds, that is associated with this frame.
* @param isFirstFrame Whether this is the first frame of the stream. * @param isFirstFrame Whether this is the first frame of the stream.
*/ */
void renderFrame( void renderFrame(long renderTimeNs, long presentationTimeUs, boolean isFirstFrame);
long renderTimeNs, long presentationTimeUs, long streamOffsetUs, boolean isFirstFrame);
/** /**
* Called to drop the {@linkplain * Called to drop the {@linkplain
@ -218,10 +216,7 @@ import androidx.media3.exoplayer.ExoPlaybackException;
? VideoFrameProcessor.RENDER_OUTPUT_FRAME_IMMEDIATELY ? VideoFrameProcessor.RENDER_OUTPUT_FRAME_IMMEDIATELY
: videoFrameReleaseInfo.getReleaseTimeNs(); : videoFrameReleaseInfo.getReleaseTimeNs();
frameRenderer.renderFrame( frameRenderer.renderFrame(
renderTimeNs, renderTimeNs, presentationTimeUs, videoFrameReleaseControl.onFrameReleasedIsFirstFrame());
presentationTimeUs,
outputStreamOffsetUs,
videoFrameReleaseControl.onFrameReleasedIsFirstFrame());
} }
private boolean maybeUpdateOutputStreamOffset(long presentationTimeUs) { private boolean maybeUpdateOutputStreamOffset(long presentationTimeUs) {

View File

@ -60,7 +60,6 @@ public class VideoFrameRenderControlTest {
.renderFrame( .renderFrame(
/* renderTimeNs= */ anyLong(), /* renderTimeNs= */ anyLong(),
/* presentationTimeUs= */ eq(0L), /* presentationTimeUs= */ eq(0L),
/* streamOffsetUs= */ eq(0L),
/* isFirstFrame= */ eq(true)); /* isFirstFrame= */ eq(true));
} }
@ -92,7 +91,6 @@ public class VideoFrameRenderControlTest {
.renderFrame( .renderFrame(
/* renderTimeNs= */ anyLong(), /* renderTimeNs= */ anyLong(),
/* presentationTimeUs= */ eq(0L), /* presentationTimeUs= */ eq(0L),
/* streamOffsetUs= */ eq(0L),
/* isFirstFrame= */ eq(true)); /* isFirstFrame= */ eq(true));
inOrder.verifyNoMoreInteractions(); inOrder.verifyNoMoreInteractions();
@ -106,7 +104,6 @@ public class VideoFrameRenderControlTest {
.renderFrame( .renderFrame(
/* renderTimeNs= */ anyLong(), /* renderTimeNs= */ anyLong(),
/* presentationTimeUs= */ eq(10_000L), /* presentationTimeUs= */ eq(10_000L),
/* streamOffsetUs= */ eq(0L),
/* isFirstFrame= */ eq(false)); /* isFirstFrame= */ eq(false));
inOrder.verifyNoMoreInteractions(); inOrder.verifyNoMoreInteractions();
} }
@ -135,7 +132,7 @@ public class VideoFrameRenderControlTest {
.verify(frameRenderer) .verify(frameRenderer)
.onVideoSizeChanged(new VideoSize(/* width= */ VIDEO_WIDTH, /* height= */ VIDEO_HEIGHT)); .onVideoSizeChanged(new VideoSize(/* width= */ VIDEO_WIDTH, /* height= */ VIDEO_HEIGHT));
// First frame has the first stream offset. // First frame has the first stream offset.
inOrder.verify(frameRenderer).renderFrame(anyLong(), eq(0L), eq(10_000L), eq(true)); inOrder.verify(frameRenderer).renderFrame(anyLong(), eq(0L), eq(true));
inOrder.verifyNoMoreInteractions(); inOrder.verifyNoMoreInteractions();
// 10 milliseconds pass // 10 milliseconds pass
@ -151,7 +148,6 @@ public class VideoFrameRenderControlTest {
.renderFrame( .renderFrame(
/* renderTimeNs= */ anyLong(), /* renderTimeNs= */ anyLong(),
/* presentationTimeUs= */ eq(10_000L), /* presentationTimeUs= */ eq(10_000L),
/* streamOffsetUs= */ eq(20_000L),
/* isFirstFrame= */ eq(true)); /* isFirstFrame= */ eq(true));
inOrder.verifyNoMoreInteractions(); inOrder.verifyNoMoreInteractions();
} }
@ -189,7 +185,6 @@ public class VideoFrameRenderControlTest {
.renderFrame( .renderFrame(
/* renderTimeNs= */ anyLong(), /* renderTimeNs= */ anyLong(),
/* presentationTimeUs= */ eq(0L), /* presentationTimeUs= */ eq(0L),
/* streamOffsetUs= */ eq(0L),
/* isFirstFrame= */ eq(true)); /* isFirstFrame= */ eq(true));
inOrder.verifyNoMoreInteractions(); inOrder.verifyNoMoreInteractions();
@ -233,7 +228,6 @@ public class VideoFrameRenderControlTest {
.renderFrame( .renderFrame(
/* renderTimeNs= */ anyLong(), /* renderTimeNs= */ anyLong(),
/* presentationTimeUs= */ eq(10_000L), /* presentationTimeUs= */ eq(10_000L),
/* streamOffsetUs= */ eq(0L),
/* isFirstFrame= */ eq(true)); /* isFirstFrame= */ eq(true));
inOrder.verifyNoMoreInteractions(); inOrder.verifyNoMoreInteractions();
} }
@ -271,7 +265,6 @@ public class VideoFrameRenderControlTest {
.renderFrame( .renderFrame(
/* renderTimeNs= */ anyLong(), /* renderTimeNs= */ anyLong(),
/* presentationTimeUs= */ eq(0L), /* presentationTimeUs= */ eq(0L),
/* streamOffsetUs= */ eq(0L),
/* isFirstFrame= */ eq(true)); /* isFirstFrame= */ eq(true));
assertThat(videoFrameRenderControl.hasReleasedFrame(/* presentationTimeUs= */ 0)).isTrue(); assertThat(videoFrameRenderControl.hasReleasedFrame(/* presentationTimeUs= */ 0)).isTrue();
} }
@ -299,7 +292,6 @@ public class VideoFrameRenderControlTest {
.renderFrame( .renderFrame(
/* renderTimeNs= */ anyLong(), /* renderTimeNs= */ anyLong(),
/* presentationTimeUs= */ eq(0L), /* presentationTimeUs= */ eq(0L),
/* streamOffsetUs= */ eq(0L),
/* isFirstFrame= */ eq(true)); /* isFirstFrame= */ eq(true));
videoFrameRenderControl.flush(); videoFrameRenderControl.flush();