From 089cd664ebac9ecaa1f7f47a5f03a736eb373d30 Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 7 Jan 2023 17:21:28 +0800 Subject: [PATCH] Clean code --- .../media/player/ISurfaceTextureHolder.java | 28 ------------ .../ijk/media/player/ISurfaceTextureHost.java | 24 ----------- .../ijk/media/player/ui/IjkVideoView.java | 6 +-- .../media/player/ui/SurfaceRenderView.java | 9 +--- .../media/player/ui/TextureRenderView.java | 43 +------------------ 5 files changed, 4 insertions(+), 106 deletions(-) delete mode 100644 ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ISurfaceTextureHolder.java delete mode 100644 ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ISurfaceTextureHost.java diff --git a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ISurfaceTextureHolder.java b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ISurfaceTextureHolder.java deleted file mode 100644 index e1259f6d9..000000000 --- a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ISurfaceTextureHolder.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (C) 2015 Bilibili - * Copyright (C) 2015 Zhang Rui - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package tv.danmaku.ijk.media.player; - -import android.graphics.SurfaceTexture; - -public interface ISurfaceTextureHolder { - void setSurfaceTexture(SurfaceTexture surfaceTexture); - - SurfaceTexture getSurfaceTexture(); - - void setSurfaceTextureHost(ISurfaceTextureHost surfaceTextureHost); -} diff --git a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ISurfaceTextureHost.java b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ISurfaceTextureHost.java deleted file mode 100644 index 6f465a141..000000000 --- a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ISurfaceTextureHost.java +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Copyright (C) 2015 Bilibili - * Copyright (C) 2015 Zhang Rui - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package tv.danmaku.ijk.media.player; - -import android.graphics.SurfaceTexture; - -public interface ISurfaceTextureHost { - void releaseSurfaceTexture(SurfaceTexture surfaceTexture); -} diff --git a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java index bd6ff105d..df80fb7e0 100644 --- a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java +++ b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/IjkVideoView.java @@ -323,11 +323,7 @@ public class IjkVideoView extends FrameLayout implements MediaController.MediaPl } private void bindSurfaceHolder(IMediaPlayer mp, IRenderView.ISurfaceHolder holder) { - if (mp == null) return; - if (holder == null) { - mp.setDisplay(null); - return; - } + if (mp == null || holder == null) return; holder.bindToMediaPlayer(mp); } diff --git a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/SurfaceRenderView.java b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/SurfaceRenderView.java index 6bbbed923..a8fd0221a 100644 --- a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/SurfaceRenderView.java +++ b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/SurfaceRenderView.java @@ -18,7 +18,6 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import tv.danmaku.ijk.media.player.IMediaPlayer; -import tv.danmaku.ijk.media.player.ISurfaceTextureHolder; public class SurfaceRenderView extends SurfaceView implements IRenderView { @@ -105,13 +104,7 @@ public class SurfaceRenderView extends SurfaceView implements IRenderView { } public void bindToMediaPlayer(IMediaPlayer mp) { - if (mp != null) { - if (mp instanceof ISurfaceTextureHolder) { - ISurfaceTextureHolder textureHolder = (ISurfaceTextureHolder) mp; - textureHolder.setSurfaceTexture(null); - } - mp.setDisplay(mSurfaceHolder); - } + mp.setDisplay(mSurfaceHolder); } @NonNull diff --git a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/TextureRenderView.java b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/TextureRenderView.java index ad84bde58..888685546 100644 --- a/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/TextureRenderView.java +++ b/ijkplayer/src/main/java/tv/danmaku/ijk/media/player/ui/TextureRenderView.java @@ -18,8 +18,6 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import tv.danmaku.ijk.media.player.IMediaPlayer; -import tv.danmaku.ijk.media.player.ISurfaceTextureHolder; -import tv.danmaku.ijk.media.player.ISurfaceTextureHost; public class TextureRenderView extends TextureView implements IRenderView { @@ -117,20 +115,7 @@ public class TextureRenderView extends TextureView implements IRenderView { } public void bindToMediaPlayer(IMediaPlayer mp) { - if (mp == null) return; - if (mp instanceof ISurfaceTextureHolder) { - ISurfaceTextureHolder textureHolder = (ISurfaceTextureHolder) mp; - mTextureView.mSurfaceCallback.setOwnSurfaceTexture(false); - SurfaceTexture surfaceTexture = textureHolder.getSurfaceTexture(); - if (surfaceTexture != null) { - mTextureView.setSurfaceTexture(surfaceTexture); - } else { - textureHolder.setSurfaceTexture(mSurfaceTexture); - textureHolder.setSurfaceTextureHost(mTextureView.mSurfaceCallback); - } - } else { - mp.setSurface(openSurface()); - } + mp.setSurface(openSurface()); } @NonNull @@ -171,7 +156,7 @@ public class TextureRenderView extends TextureView implements IRenderView { private SurfaceCallback mSurfaceCallback; - private static final class SurfaceCallback implements SurfaceTextureListener, ISurfaceTextureHost { + private static final class SurfaceCallback implements SurfaceTextureListener { private SurfaceTexture mSurfaceTexture; private boolean mIsFormatChanged; @@ -245,30 +230,6 @@ public class TextureRenderView extends TextureView implements IRenderView { public void onSurfaceTextureUpdated(SurfaceTexture surface) { } - @Override - public void releaseSurfaceTexture(SurfaceTexture surfaceTexture) { - if (surfaceTexture == null) return; - if (mDidDetachFromWindow) { - if (surfaceTexture != mSurfaceTexture) { - surfaceTexture.release(); - } else if (!mOwnSurfaceTexture) { - surfaceTexture.release(); - } - } else if (mWillDetachFromWindow) { - if (surfaceTexture != mSurfaceTexture) { - surfaceTexture.release(); - } else if (!mOwnSurfaceTexture) { - setOwnSurfaceTexture(true); - } - } else { - if (surfaceTexture != mSurfaceTexture) { - surfaceTexture.release(); - } else if (!mOwnSurfaceTexture) { - setOwnSurfaceTexture(true); - } - } - } - private void willDetachFromWindow() { mWillDetachFromWindow = true; }