提交 f39de64a authored 作者: kongdywang's avatar kongdywang

Fix the issue of abnormal display when restoring picture-in-picture

上级 cc1ec30c
......@@ -161,6 +161,9 @@ public class FTXLivePlayer extends FTXLivePlayerRenderHost implements TXFlutterL
int startPlayerLivePlay(String url) {
LiteavLog.d(TAG, "startLivePlay:");
if (null != mLivePlayer) {
if (null != mCurRenderView) {
mCurRenderView.setPlayer(this);
}
mLivePlayer.resumeVideo();
if (!mIsMute) {
mLivePlayer.resumeAudio();
......@@ -186,7 +189,6 @@ public class FTXLivePlayer extends FTXLivePlayerRenderHost implements TXFlutterL
if (isNeedClearLastImg && null != mCurRenderView) {
LiteavLog.i(TAG, "stopPlay target clear last img, player:" + hashCode());
mCurRenderView.clearTexture();
mCurRenderView.setPlayer(this);
}
return result;
}
......
......@@ -317,6 +317,9 @@ public class FTXVodPlayer extends FTXVodPlayerRenderHost implements ITXVodPlayLi
void startPlayerVodPlayWithParams(int appId, String fileId, String psign) {
if (mVodPlayer != null) {
if (null != mCurRenderView) {
mCurRenderView.setPlayer(this);
}
TXPlayInfoParams playInfoParams = new TXPlayInfoParams(appId, fileId, psign);
mVodPlayer.startVodPlay(playInfoParams);
}
......
package com.tencent.vod.flutter.tools;
import android.text.TextUtils;
import com.tencent.liteav.base.util.LiteavLog;
import com.tencent.rtmp.TXVodConstants;
import com.tencent.rtmp.TXVodPlayConfig;
......
......@@ -20,6 +20,7 @@ import android.os.Bundle;
import android.os.Handler;
import android.os.IBinder;
import android.text.TextUtils;
import android.view.SurfaceView;
import android.view.TextureView;
import android.view.View;
import android.view.Window;
......@@ -319,10 +320,12 @@ public class FlutterPipImplActivity extends Activity implements ITXVodPlayListen
}
if (null != mPlayerHolder.getVodPlayer()) {
mPlayerHolder.getVodPlayer().setSurface(null);
mPlayerHolder.getVodPlayer().setPlayerView((TXCloudVideoView) null);
mPlayerHolder.getVodPlayer().setVodListener(null);
}
if (null != mPlayerHolder.getLivePlayer()) {
mPlayerHolder.getLivePlayer().setRenderView((TextureView) null);
mPlayerHolder.getLivePlayer().setRenderView((SurfaceView) null);
mPlayerHolder.getLivePlayer().setObserver(null);
}
mPlayerHolder.pause();
......
......@@ -74,8 +74,6 @@ class _DemoTXVodPlayerState extends State<DemoTXVodPlayer> with WidgetsBindingOb
}
});
await _controller.setLoop(true);
await _controller.enableHardwareDecode(enableHardware);
await _controller.setConfig(FTXVodPlayConfig());
await _controller.setRenderMode(_renderMode);
if (!isLicenseSuc.isCompleted) {
......
......@@ -535,7 +535,8 @@ static const int uninitialized = -1;
return [TXCommonUtil boolMsgWith:r];
}
- (void)setPlayerViewRenderViewId:(NSInteger)renderViewId error:(FlutterError * _Nullable __autoreleasing * _Nonnull)error {
- (void)setPlayerViewRenderViewId:(NSInteger)renderViewId error:(FlutterError * _Nullable __autoreleasing * _Nonnull)error {
FTXLOGI(@"setPlayerView, renderViewId:%ld", renderViewId);
FTXRenderView *renderView = [self.renderViewFactory findViewById:renderViewId];
if (nil != renderView) {
self.curRenderView = renderView;
......
......@@ -1035,7 +1035,8 @@ static const int uninitialized = -1;
}
}
- (void)setPlayerViewRenderViewId:(NSInteger)renderViewId error:(FlutterError * _Nullable __autoreleasing * _Nonnull)error {
- (void)setPlayerViewRenderViewId:(NSInteger)renderViewId error:(FlutterError * _Nullable __autoreleasing * _Nonnull)error {
FTXLOGI(@"setPlayerView, renderViewId:%ld", renderViewId);
FTXRenderView *renderView = [self.renderViewFactory findViewById:renderViewId];
if (nil != renderView) {
self.curRenderView = renderView;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论