I am not sure if the design is like this, but it does incur unstopping memory 
increasing.


OnDemandServerMediaSubsession::getStreamParameters() in 
liveMedia/OnDemandServerMediaSubsession.cpp 
This function will allocate a new StreamState object and append it to the 
global array: fStreamStates.
Within the new StreamState, some objects are allocated, such as rtcpGroupsock.
However these new allocated memory seem only be freed by 
streamState->reclaim(); in afterPlayingStreamState() function.
And this function seems not be executed.

After a while, what I observe is that all these new allocated memory are not 
freed.
I guess the size of fStreamState is not limited?

At least, it is unnormal to consume more than 2GB after sending the same 
request for 1 minute, and the rtcpGroupsock consumes around 1 GB itself , right?


Best regards,
Jinsheng Ba

-----Original Message-----
From: live-devel <live-devel-boun...@us.live555.com> On Behalf Of Ross Finlayson
Sent: Monday, January 10, 2022 2:06 PM
To: LIVE555 Streaming Media - development & use <live-de...@us.live555.com>
Subject: Re: [Live-devel] Memory leak in OnDemandServerMediaSubsession

        - External Email -



Unfortunately, reports of memory leaks aren’t worthwhile for me to investigate 
unless you can identify a specific object (class) that is allocated, and not 
later deallocated.  Otherwise I can’t be sure that the heap isn’t just growing 
due to fragmentation - i.e., not a real memory leak.


Ross Finlayson
Live Networks, Inc.
http://www.live555.com/


_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to