diff --git a/lib/src/impl/media_player_controller_impl.dart b/lib/src/impl/media_player_controller_impl.dart index 3cdf07265..8c85db682 100644 --- a/lib/src/impl/media_player_controller_impl.dart +++ b/lib/src/impl/media_player_controller_impl.dart @@ -350,7 +350,7 @@ class MediaPlayerControllerImpl @override Future createTextureRender( int uid, String channelId, int videoSourceType) { - return rtcEngine.globalVideoViewController.createTextureRender( + return super.createTextureRender( getMediaPlayerId(), channelId, videoSourceType, @@ -373,7 +373,7 @@ class MediaPlayerControllerImpl @override Future disposeRenderInternal() async { if (shouldUseFlutterTexture) { - await super.disposeRender(); + await super.disposeRenderInternal(); } } } diff --git a/lib/src/impl/video_view_controller_impl.dart b/lib/src/impl/video_view_controller_impl.dart index 43fe2171d..a042b89f1 100644 --- a/lib/src/impl/video_view_controller_impl.dart +++ b/lib/src/impl/video_view_controller_impl.dart @@ -128,7 +128,7 @@ mixin VideoViewControllerBaseMixin implements VideoViewControllerBase { int videoSourceType, ) async { if (_isCreatedRender) { - return kTextureNotInit; + return _textureId; } final textureId = await rtcEngine.globalVideoViewController.createTextureRender( @@ -138,6 +138,7 @@ mixin VideoViewControllerBaseMixin implements VideoViewControllerBase { ); _isCreatedRender = true; + _isDisposeRender = false; return textureId; }