Memleak with playbin2 and mpeg ts with multiple audio tracks

Julian Scheel julian at jusst.de
Wed Mar 28 12:50:33 PDT 2012


Hi,

I ran into a problem with playbin2 and streams with multiple audio tracks. Whenever a stream contains more than one audio track it seems like the data coming from tsdemux and is not decoded by the decoders, because their pipes and in input-selector which sends back NOT_LINKED flow status is not freed.

Actually I uploaded two 30 second sample files which allow me to easily reproduce the problem:
http://jusst.de/files/full.ts
http://jusst.de/files/filtered.ts

Both files are captures from a DVB-S broadcast from the same channel. full.ts contains all originally included tracks, which is one video track (mpeg2) and three audio tracks (2x mpeg, 2x ac3). When playing this file with gst-launch playbin2 uri=file://full.ts flags=0x160 the memory usage on my system increases by about 4MB.
Now if you try filtered.ts, in which I just removed all packets of the two additional audio streams, the memory usage throughout the whole playback is constant.

Even worse is the problem when I run it on am embedded system (nvidia tegra/arm), where in parallel to the raising memory usage the cpu load increases as well, until it is close to 100% and playback begins to stuck and shows artifacts.

Any thoughts what might be wrong here?

Regards,
Julian



More information about the gstreamer-devel mailing list