O decodificador H.264 de hardware Nvidia (nvdec com Gstreamer) está travando

O decodificador H.264 de hardware Nvidia (nvdec com Gstreamer) está travando

Eu criei uma máquina virtual Azure Nc6s_v3 que fornece placa GPU Nvidia V100. Eu configurei os drivers seguindo as instruções aquihttps://docs.microsoft.com/en-us/azure/virtual-machines/linux/n-series-driver-setup.

O driver foi configurado com êxito e consigo ver a saída adequada da nvidia-smiferramenta.

Compilei com sucesso o Video_Codec_SDK_9.0.20 e consegui executar os aplicativos de exemplo.

Compilei a base de código Gstreamer ativando o suporte ao codificador/decodificação Nvidia hw. O plugin do codificador nvh264encestá funcionando bem. Mas estou vendo uma falha no plug-in do decodificador (nvdec) com o seguinte rastreamento de pilha.

erro nvdec:

Caught SIGSEGV
#0  0x00007fa33d47720d in poll () from /lib64/libc.so.6
#1  0x00007fa33ddc5414 in g_main_context_poll (priority=2147483647, n_fds=2,
#2  g_main_context_iterate (context=0x7fa32c001660, block=block@entry=1,
#3  0x00007fa33ddc574a in g_main_loop_run (loop=0x12ef7d0) at gmain.c:4116
#4  0x00007fa33ea65387 in gst_bus_poll (bus=bus@entry=0xb76160,
#5  0x0000000000404918 in event_loop (pipeline=0xb741d0,
#6  0x000000000040388e in main (argc=15, argv=0x7ffc11cfee18)

Qualquer ajuda aqui será muito apreciada

Adicionando mais alguns logs:

Starting program: /home/autoinstall/install-1.14.5/bin/gst-launch-1.0 filesrc location=/home/autoinstall/streams/crowd_run_720p30_2300kbps_120s.mp4 \! qtdemux \! h264parse \! nvdec \! gldownload \! fakesink
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Setting pipeline to PAUSED ...
[New Thread 0x7fffea615700 (LWP 53914)]
[Thread 0x7fffea615700 (LWP 53914) exited]
[New Thread 0x7fffea414700 (LWP 53915)]
[New Thread 0x7fffea615700 (LWP 53933)]
[New Thread 0x7fffea213700 (LWP 53934)]
[New Thread 0x7fffe9e6e700 (LWP 53935)]
Pipeline is PREROLLING ...
[New Thread 0x7fffe9c6d700 (LWP 53936)]
Got context from element 'gldownloadelement0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplay\)\ gldisplay0";
[New Thread 0x7fffe949a700 (LWP 53937)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffe949a700 (LWP 53937)]
0x00007fffedac5aba in gst_gl_window_x11_open (window=0x7a69b0, error=0x0) at gstglwindow_x11.c:171
171           DefaultVisual (window_x11->device, window_x11->screen_num);
Missing separate debuginfos, use: debuginfo-install glibc-2.17-260.el7_6.3.x86_64 libX11-1.6.5-2.el7.x86_64 libXau-1.0.8-2.1.el7.x86_64 libXext-1.3.3-3.el7.x86_64 libglvnd-1.0.1-0.8.git5baa1e5.el7.x86_64 libglvnd-glx-1.0.1-0.8.git5baa1e5.el7.x86_64 libxcb-1.13-1.el7.x86_64 zlib-1.2.7-18.el7.x86_64
(gdb) bt
#0  0x00007fffedac5aba in gst_gl_window_x11_open (window=0x7a69b0, error=0x0) at gstglwindow_x11.c:171
#1  0x00007fffedaa226a in gst_gl_context_create_thread (context=0x7fffa8499090) at gstglcontext.c:1200
#2  0x00007ffff6e71390 in g_thread_proxy (data=0x7fffa8007d90) at gthread.c:784
#3  0x00007ffff6be9dd5 in start_thread () from /lib64/libpthread.so.0
#4  0x00007ffff6506ead in clone () from /lib64/libc.so.6
(gdb)

informação relacionada