package com.ifpdos.player.media3;

import android.annotation.SuppressLint;
import android.os.Handler;
import android.os.Looper;
import android.util.Log;
import androidx.annotation.Nullable;
import androidx.core.os.EnvironmentCompat;
import androidx.media3.common.ColorInfo;
import androidx.media3.common.Format;
import androidx.media3.common.Player;
import androidx.media3.common.VideoSize;
import androidx.media3.common.util.Assertions;
import androidx.media3.common.util.UnstableApi;
import androidx.media3.exoplayer.DecoderCounters;
import androidx.media3.exoplayer.ExoPlayer;
import java.util.Locale;
import okhttp3.HttpUrl;

/* JADX INFO: loaded from: classes.dex */
public class DebugLoggerHelper {
    private static final int REFRESH_INTERVAL_MS = 1000;
    private static final String TAG = "DebugLoggerHelper";
    private Handler mHandler = new Handler(Looper.getMainLooper());
    private final ExoPlayer player;
    private boolean started;
    private final Updater updater;

    private final class Updater implements Player.Listener, Runnable {
        public void onPlayWhenReadyChanged(boolean z2, int i2) {
            DebugLoggerHelper.this.updateAndPost();
        }

        public void onPlaybackStateChanged(int i2) {
            DebugLoggerHelper.this.updateAndPost();
        }

        public void onPositionDiscontinuity(Player.PositionInfo positionInfo, Player.PositionInfo positionInfo2, int i2) {
            DebugLoggerHelper.this.updateAndPost();
        }

        @Override // java.lang.Runnable
        public void run() {
            DebugLoggerHelper.this.updateAndPost();
        }

        private Updater() {
        }
    }

    public DebugLoggerHelper(ExoPlayer exoPlayer) {
        Assertions.checkArgument(exoPlayer.getApplicationLooper() == Looper.getMainLooper());
        this.player = exoPlayer;
        this.updater = new Updater();
    }

    private static String getColorInfoString(@Nullable ColorInfo colorInfo) {
        if (colorInfo == null || !colorInfo.isValid()) {
            return HttpUrl.FRAGMENT_ENCODE_SET;
        }
        return " colr:" + colorInfo.toLogString();
    }

    private static String getDecoderCountersBufferCountString(DecoderCounters decoderCounters) {
        if (decoderCounters == null) {
            return HttpUrl.FRAGMENT_ENCODE_SET;
        }
        decoderCounters.ensureUpdated();
        return " sib:" + decoderCounters.skippedInputBufferCount + " sb:" + decoderCounters.skippedOutputBufferCount + " rb:" + decoderCounters.renderedOutputBufferCount + " dib:" + decoderCounters.droppedInputBufferCount + " db:" + decoderCounters.droppedBufferCount + " mcdb:" + decoderCounters.maxConsecutiveDroppedBufferCount + " dk:" + decoderCounters.droppedToKeyframeCount;
    }

    private static String getPixelAspectRatioString(float f2) {
        if (f2 == -1.0f || f2 == 1.0f) {
            return HttpUrl.FRAGMENT_ENCODE_SET;
        }
        return " par:" + String.format(Locale.US, "%.02f", Float.valueOf(f2));
    }

    private static String getVideoFrameProcessingOffsetAverageString(long j2, int i2) {
        return i2 == 0 ? "N/A" : String.valueOf((long) (j2 / ((double) i2)));
    }

    @UnstableApi
    protected String getAudioString() {
        Format audioFormat = this.player.getAudioFormat();
        DecoderCounters audioDecoderCounters = this.player.getAudioDecoderCounters();
        if (audioFormat == null || audioDecoderCounters == null) {
            return HttpUrl.FRAGMENT_ENCODE_SET;
        }
        return "\n" + audioFormat.sampleMimeType + "(id:" + audioFormat.id + " hz:" + audioFormat.sampleRate + " ch:" + audioFormat.channelCount + getDecoderCountersBufferCountString(audioDecoderCounters) + ")";
    }

    @UnstableApi
    protected String getDebugString() {
        return getPlayerStateString() + getVideoString() + getAudioString();
    }

    @UnstableApi
    protected String getPlayerStateString() {
        int playbackState = this.player.getPlaybackState();
        return String.format("playWhenReady:%s playbackState:%s item:%s", Boolean.valueOf(this.player.getPlayWhenReady()), playbackState != 1 ? playbackState != 2 ? playbackState != 3 ? playbackState != 4 ? EnvironmentCompat.MEDIA_UNKNOWN : "ended" : "ready" : "buffering" : "idle", Integer.valueOf(this.player.getCurrentMediaItemIndex()));
    }

    @UnstableApi
    protected String getVideoString() {
        Format videoFormat = this.player.getVideoFormat();
        VideoSize videoSize = this.player.getVideoSize();
        DecoderCounters videoDecoderCounters = this.player.getVideoDecoderCounters();
        if (videoFormat == null || videoDecoderCounters == null) {
            return HttpUrl.FRAGMENT_ENCODE_SET;
        }
        return "\n" + videoFormat.sampleMimeType + "(id:" + videoFormat.id + " r:" + videoSize.width + "x" + videoSize.height + getColorInfoString(videoFormat.colorInfo) + getPixelAspectRatioString(videoSize.pixelWidthHeightRatio) + getDecoderCountersBufferCountString(videoDecoderCounters) + " vfpo: " + getVideoFrameProcessingOffsetAverageString(videoDecoderCounters.totalVideoFrameProcessingOffsetUs, videoDecoderCounters.videoFrameProcessingOffsetCount) + ")";
    }

    public final void start() {
        if (this.started) {
            return;
        }
        this.started = true;
        this.player.addListener(this.updater);
        updateAndPost();
    }

    public final void stop() {
        if (this.started) {
            this.started = false;
            this.player.removeListener(this.updater);
        }
    }

    @SuppressLint({"SetTextI18n"})
    @UnstableApi
    protected final void updateAndPost() {
        Log.d(TAG, getDebugString());
        this.mHandler.removeCallbacks(this.updater);
        this.mHandler.postDelayed(this.updater, 1000L);
    }
}
