Memory leak:
Recurrence conditions:
- 2 or 4 web users join the room;
- Then push the stream to the room through the tool, such as pushing 20 streams (audio + video)
- After stopping streaming, the web user also leaves;
Finally, the memory cannot be restored.
Repeat the above experiment, such as increasing the number of push streams. Even if the push stream is stopped and the user leaves the room, the memory will not be restored.
After repeated trials, if there are no users in the room, there will be no memory leaks by just pushing the stream.
But if there are a large number of stream subscriptions, memory leaks will occur;
Because our mediasoup-work is a child process, it is started through nodejs. Memory leak detection tools like Valgrind cannot be used. Is there any good way to do memory testing? I can help reproduce these issues and resolve it.
Test streaming tool: GitHub - runner365/cpp_streamer: cpp streamer work in dynamic modules for media develop. It include flv/mpegts/rtmp/webrtc modules, and go on developing more modules
Supports using mpegts (h264+opus) as source file to push streaming pressure test mediasoup.