mirror of
https://github.com/samsonjs/media.git
synced 2026-04-27 15:07:40 +00:00
Fix an issue where a keyframe was not skipped.
Keyframe was rendered rather than skipped when performing an exact seek to a non-zero position close to the start of the stream. PiperOrigin-RevId: 284798460
This commit is contained in:
parent
b8eafea176
commit
03b02f98df
2 changed files with 6 additions and 1 deletions
|
|
@ -75,6 +75,9 @@
|
||||||
* Fix Dolby Vision fallback to AVC and HEVC.
|
* Fix Dolby Vision fallback to AVC and HEVC.
|
||||||
* Fix early end-of-stream detection when using video tunneling, on API level
|
* Fix early end-of-stream detection when using video tunneling, on API level
|
||||||
23 and above.
|
23 and above.
|
||||||
|
* Fix an issue where a keyframe was rendered rather than skipped when
|
||||||
|
performing an exact seek to a non-zero position close to the start of the
|
||||||
|
stream.
|
||||||
* Audio:
|
* Audio:
|
||||||
* Fix the start of audio getting truncated when transitioning to a new
|
* Fix the start of audio getting truncated when transitioning to a new
|
||||||
item in a playlist of Opus streams.
|
item in a playlist of Opus streams.
|
||||||
|
|
|
||||||
|
|
@ -365,8 +365,8 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
|
||||||
@DrainAction private int codecDrainAction;
|
@DrainAction private int codecDrainAction;
|
||||||
private boolean codecReceivedBuffers;
|
private boolean codecReceivedBuffers;
|
||||||
private boolean codecReceivedEos;
|
private boolean codecReceivedEos;
|
||||||
private long lastBufferInStreamPresentationTimeUs;
|
|
||||||
private long largestQueuedPresentationTimeUs;
|
private long largestQueuedPresentationTimeUs;
|
||||||
|
private long lastBufferInStreamPresentationTimeUs;
|
||||||
private boolean inputStreamEnded;
|
private boolean inputStreamEnded;
|
||||||
private boolean outputStreamEnded;
|
private boolean outputStreamEnded;
|
||||||
private boolean waitingForKeys;
|
private boolean waitingForKeys;
|
||||||
|
|
@ -954,6 +954,8 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
|
||||||
codecReconfigurationState = RECONFIGURATION_STATE_NONE;
|
codecReconfigurationState = RECONFIGURATION_STATE_NONE;
|
||||||
codecReceivedEos = false;
|
codecReceivedEos = false;
|
||||||
codecReceivedBuffers = false;
|
codecReceivedBuffers = false;
|
||||||
|
largestQueuedPresentationTimeUs = C.TIME_UNSET;
|
||||||
|
lastBufferInStreamPresentationTimeUs = C.TIME_UNSET;
|
||||||
codecDrainState = DRAIN_STATE_NONE;
|
codecDrainState = DRAIN_STATE_NONE;
|
||||||
codecDrainAction = DRAIN_ACTION_NONE;
|
codecDrainAction = DRAIN_ACTION_NONE;
|
||||||
codecNeedsAdaptationWorkaroundBuffer = false;
|
codecNeedsAdaptationWorkaroundBuffer = false;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue