package androidx.media3.exoplayer.video; import android.content.Context; import android.graphics.SurfaceTexture; import android.os.Handler; import android.os.HandlerThread; import android.os.Message; import android.view.Surface; import androidx.media3.common.util.Assertions; import androidx.media3.common.util.EGLSurfaceTexture; import androidx.media3.common.util.GlUtil; import androidx.media3.common.util.Log; /* loaded from: classes2.dex */ public final class PlaceholderSurface extends Surface { private static final String TAG = "PlaceholderSurface"; private static int secureMode; private static boolean secureModeInitialized; public final boolean secure; private final PlaceholderSurfaceThread thread; private boolean threadReleased; public static synchronized boolean isSecureSupported(Context context) { boolean z; synchronized (PlaceholderSurface.class) { if (!secureModeInitialized) { secureMode = getSecureMode(context); secureModeInitialized = true; } z = secureMode != 0; } return z; } public static PlaceholderSurface newInstanceV17(Context context, boolean z) { Assertions.checkState(!z || isSecureSupported(context)); return new PlaceholderSurfaceThread().init(z ? secureMode : 0); } private PlaceholderSurface(PlaceholderSurfaceThread placeholderSurfaceThread, SurfaceTexture surfaceTexture, boolean z) { super(surfaceTexture); this.thread = placeholderSurfaceThread; this.secure = z; } @Override // android.view.Surface public void release() { super.release(); synchronized (this.thread) { if (!this.threadReleased) { this.thread.release(); this.threadReleased = true; } } } private static int getSecureMode(Context context) { if (GlUtil.isProtectedContentExtensionSupported(context)) { return GlUtil.isSurfacelessContextExtensionSupported() ? 1 : 2; } return 0; } /* JADX INFO: Access modifiers changed from: private */ /* loaded from: classes2.dex */ public static class PlaceholderSurfaceThread extends HandlerThread implements Handler.Callback { private static final int MSG_INIT = 1; private static final int MSG_RELEASE = 2; private EGLSurfaceTexture eglSurfaceTexture; private Handler handler; private Error initError; private RuntimeException initException; private PlaceholderSurface surface; public PlaceholderSurfaceThread() { super("ExoPlayer:PlaceholderSurface"); } public PlaceholderSurface init(int i) { boolean z; start(); this.handler = new Handler(getLooper(), this); this.eglSurfaceTexture = new EGLSurfaceTexture(this.handler); synchronized (this) { z = false; this.handler.obtainMessage(1, i, 0).sendToTarget(); while (this.surface == null && this.initException == null && this.initError == null) { try { wait(); } catch (InterruptedException unused) { z = true; } } } if (z) { Thread.currentThread().interrupt(); } RuntimeException runtimeException = this.initException; if (runtimeException != null) { throw runtimeException; } Error error = this.initError; if (error != null) { throw error; } return (PlaceholderSurface) Assertions.checkNotNull(this.surface); } public void release() { Assertions.checkNotNull(this.handler); this.handler.sendEmptyMessage(2); } @Override // android.os.Handler.Callback public boolean handleMessage(Message message) { int i = message.what; try { if (i != 1) { if (i != 2) { return true; } try { releaseInternal(); } finally { try { return true; } finally { } } return true; } try { initInternal(message.arg1); synchronized (this) { notify(); } } catch (GlUtil.GlException e) { Log.e(PlaceholderSurface.TAG, "Failed to initialize placeholder surface", e); this.initException = new IllegalStateException(e); synchronized (this) { notify(); } } catch (Error e2) { Log.e(PlaceholderSurface.TAG, "Failed to initialize placeholder surface", e2); this.initError = e2; synchronized (this) { notify(); } } catch (RuntimeException e3) { Log.e(PlaceholderSurface.TAG, "Failed to initialize placeholder surface", e3); this.initException = e3; synchronized (this) { notify(); } } return true; } catch (Throwable th) { synchronized (this) { notify(); throw th; } } } private void initInternal(int i) throws GlUtil.GlException { Assertions.checkNotNull(this.eglSurfaceTexture); this.eglSurfaceTexture.init(i); this.surface = new PlaceholderSurface(this, this.eglSurfaceTexture.getSurfaceTexture(), i != 0); } private void releaseInternal() { Assertions.checkNotNull(this.eglSurfaceTexture); this.eglSurfaceTexture.release(); } } }