Memory Leak observed when nvgstplayer runs in --loop-forever mode

When running nvgstplayer in --loop-forever mode, there is a memory leak. Is this fixed?

Which JetPack version you used?

Hi,
Please try latest Jetpack 4.6.2. If the issue is still present, please share the command so that we can set up and try.

I am running the SD Card image for 4gb Jetson Nano (https://developer.nvidia.com/embedded/l4t/r32_release_v7.1/jp_4.6.1_b110_sd_card/jeston_nano/jetson-nano-jp461-sd-card-image.zip). How do i upgrade to JP 4.6.2 ? Using the SDK Manager? Please advise.

Thanks

I upgraded my jetson nano to 4.6.2 using SDK Manager, and I am still observing significant memory leak on every iteration of loop playback of the rtsp stream. My source is a wowza rtsp server which requires client (in this case nvgstplayer) to reconnect every-time it comes to end of file playback, and hence an EOS (end of stream) event.
Here is the terminal output of my playback using nvgstplayer.

nvgstplayer-1.0 --uri rtsp://192.168.77.27:1935/vod/Interstellar_1080-60.mp4 --loop-forever
Runtime Commands:
q quit the application
h print help
Up Key, ] goto next track
c restart current track
Down Key, [ goto previous track
spos query for position
sdur query for duration
s seek to position in seconds, eg “s5.120”
v seek to percent of the duration, eg “v54”
f seek by seconds, relative to current position eg “f23.901”
Left Key, < seek backwards by 10 seconds
Right Key, > seek forward by 10 seconds
p pause playback
r start/resume the playback
z stop the playback
i: enter a single URI

1 r
** Message: 13:56:08.749: main:3983 iterating…
** Message: 13:56:08.749: <goto_next_track:910> uriCount: 0, uriTotal: 1
** Message: 13:56:08.763: <on_input:576> pausing
** (nvgstplayer-1.0:4355): WARNING **: 13:56:08.763: <bus_call:1310> failed to query duration in time
** Message: 13:56:09.086: <cb_newpad:2077> creating the pipe for “video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, parsed=(boolean)true, level=(string)4.2, profile=(string)high, pixel-aspect-ratio=(fraction)1/1, width=(int)1920, height=(int)1080, framerate=(fraction)25489/436, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8”
** Message: 13:56:09.758: <cb_newpad:2077> creating the pipe for “audio/x-raw, layout=(string)interleaved, format=(string)F32LE”
** Message: 13:56:09.798: <bus_call:1194> redistribute the latency…
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
reference in DPB was never decoded
reference in DPB was never decoded

reference in DPB was never decoded
reference in DPB was never decoded
** Message: 14:00:15.070: <bus_call:1034> eos, END OF STREAM
** Message: 14:00:15.662: <goto_next_track:910> uriCount: 1, uriTotal: 1
** Message: 14:00:15.662: <goto_next_track:913> done playing all URIs
** Message: 14:00:15.662: <goto_next_track:915> Looping over the URI List
** Message: 14:00:15.664: <on_input:576> pausing
** (nvgstplayer-1.0:4355): WARNING **: 14:00:15.665: <bus_call:1310> failed to query duration in time
** Message: 14:00:16.005: <cb_newpad:2077> creating the pipe for “audio/x-raw, layout=(string)interleaved, format=(string)F32LE”
** Message: 14:00:16.020: <bus_call:1194> redistribute the latency…
** Message: 14:00:17.901: <cb_newpad:2077> creating the pipe for “video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, parsed=(boolean)true, level=(string)4.2, profile=(string)high, pixel-aspect-ratio=(fraction)1/1, width=(int)1920, height=(int)1080, framerate=(fraction)25489/436, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8”
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
reference in DPB was never decoded
reference in DPB was never decoded

Hi,
Please apply the patch to rebuild nvv4l2decoder:
Jetson/L4T/r32.6.x patches - eLinux.org

[gstreamer] Memory leak in UDP streaming

And do this:
Memory Leak (Alloc/free mismatch) in Tegra multimedia API (encoder) - #6 by DaneLLL

These are known leaks. Please apply the fix and give it a try.

Even after trying both the fixes, the issue still persists. I am still observing memory leak.

Thanks,
Anand.

Hi,
After apply the fix, it shall be good to pass long-run test. But it is possible that there may be unknown minor leak. Since gst-v4l2 is open source, it would be great if you can take a look. Source code is in
https://developer.nvidia.com/embedded/l4t/r32_release_v7.2/sources/t210/public_sources.tbz2

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.