Skip to content

Commit

Permalink
Fix lost shader input capacity after end-of-stream
Browse files Browse the repository at this point in the history
When exporting compositions with multiple images in a row, transformation could
get stuck if a shader was ready to accept input when end-of-stream was already
signaled and queued from upstream. Fix accounting for the downstream capacity.

Manually tested on concatenations with several images and several videos in a
row, by adding logging and verifying the capacity updates as expected across
edited media item transitions.

PiperOrigin-RevId: 532088793
  • Loading branch information
andrewlewis authored and icbaker committed May 16, 2023
1 parent 8f29a5e commit 6850391
Showing 1 changed file with 1 addition and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ public synchronized void onReadyToAcceptInputFrame() {

long presentationTimeUs = pendingFrame.second;
if (presentationTimeUs == C.TIME_END_OF_SOURCE) {
consumingGlShaderProgramInputCapacity++;
videoFrameProcessingTaskExecutor.submit(
consumingGlShaderProgram::signalEndOfCurrentInputStream);
} else {
Expand Down

0 comments on commit 6850391

Please sign in to comment.