mirror of
https://github.com/samsonjs/media.git
synced 2026-03-25 09:25:53 +00:00
DecodeOneFrameUtil: do not access release players
A player that is being released may report an error with null `player.getPlayerError()`. Do not try to read errors of players that are released. PiperOrigin-RevId: 690953083
This commit is contained in:
parent
dd6e88889a
commit
b0df3b2da3
1 changed files with 6 additions and 0 deletions
|
|
@ -90,6 +90,9 @@ public final class DecodeOneFrameUtil {
|
|||
|
||||
@Override
|
||||
public void onRenderedFirstFrame(EventTime eventTime, Object output, long renderTimeMs) {
|
||||
if (exoPlayer.isReleased()) {
|
||||
return;
|
||||
}
|
||||
listener.onFrameDecoded(
|
||||
createMediaFormatFromFormat(checkNotNull(exoPlayer.getVideoFormat())));
|
||||
firstFrameRenderedOrError.open();
|
||||
|
|
@ -97,6 +100,9 @@ public final class DecodeOneFrameUtil {
|
|||
|
||||
@Override
|
||||
public void onEvents(Player player, Events events) {
|
||||
if (exoPlayer.isReleased()) {
|
||||
return;
|
||||
}
|
||||
if (events.contains(EVENT_PLAYER_ERROR)) {
|
||||
playbackExceptionReference.set(checkNotNull(player.getPlayerError()));
|
||||
firstFrameRenderedOrError.open();
|
||||
|
|
|
|||
Loading…
Reference in a new issue