OpenVidu / openvidu-tutorials

OpenVidu tutorials to get started
http://openvidu.io/tutorials
Apache License 2.0
228 stars 253 forks source link

Android example code not releasing the SurfaceViewRenderer videoView in leaveSession() #167

Open matkey opened 2 years ago

matkey commented 2 years ago

Getting lots of the below log lines from webrtc when a call is ended. Looks like something isnt being tidied up as it should be

2021-10-28 17:17:16.022 23656-24679/XXXXX I/org.webrtc.Logging: EglRenderer: local_gl_surface_viewXDuration: 4011 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA. 2021-10-28 17:17:20.031 23656-24679/XXXXX I/org.webrtc.Logging: EglRenderer: local_gl_surface_viewXDuration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA. 2021-10-28 17:17:24.038 23656-24679/XXXXX I/org.webrtc.Logging: EglRenderer: local_gl_surface_viewXDuration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA. 2021-10-28 17:17:28.045 23656-24679/XXXXX I/org.webrtc.Logging: EglRenderer: local_gl_surface_viewXDuration: 4003 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA. 2021-10-28 17:17:32.053 23656-24679/XXXXX I/org.webrtc.Logging: EglRenderer: local_gl_surface_viewXDuration: 4011 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.

matkey commented 2 years ago

Fix is adding the below

for (RemoteParticipant remoteParticipant : remoteParticipants.values())
{
    if (remoteParticipant.getPeerConnection() != null) {
        remoteParticipant.getPeerConnection().close();
    }
    views_container.removeView(remoteParticipant.getView());

    **remoteParticipant.getVideoView().release();**
}
micaelgallego commented 2 years ago

@CSantosM can you take a look please?