Skip to content

Memory Leak due to RTCP #28

@remmius

Description

@remmius

Hi,
i played recently a bit with the plugin-element - great tool.
Unfortunately, there seems to be a memory leak due to the exchange of RTCP-packages. The RAM of the sender increases roughly by ~10MB per ~10 minutes starting right from the beginning. The receiver takes some time 2-5min in my case, and then also starts to build up RAM and CPU consumption (up to 100% CPU after an hour).
Hints:

  • If I deactivate sending RTCP from the sender, the memory leakage in the reciever stops.
  • In the debug-output (GST_DEBUG=rtpsession:5) on the sender of the rr, I saw that the second sdes entry (data=gstreamer) has been disappeared, if a gscreamrx-element is used in the reciever.
  • If i remove the gscreamtx element, the memory consumption still increases on the tx-side. If i remove both gscream elements the memory leak stops.
  • If the RTCP-buffer is freed in the "on_recieving_rtcp"-callback, the memory-leak stops. However, with the downside, that the rtpsession does not have the rtcp-feedback available anymore either.
  • I run on localhost->localhost with GStreamer 1.14.5 and the build based on the master branch.

Thanks for your work!

Note: Please also update the file ScreamRx.h in the gst-plugin folder. It does not match with referenced ScreamRx.cpp in the main-folder any more. It is difficult to determine the latest version among multiple versions of the same file with same name in different locations.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions