DeepStream on WSL

I’m trying to run the DeepStream SDK on WSL. Following the instructions on the DeepStream On WSL, getting to the Run Deepstream Container chapter and running the command:

gst-launch-1.0 filesrc location= sample_720p.mp4 ! qtdemux ! h264parse ! nvv4l2decoder ! nveglglessink -v

And I get the following output:

“Getting pipeline to PAUSED …
Pipeline is PREROLLING …
Got context from element ‘eglglessink0’: gst.egl.EGLDisplay=context, display=(GstEGLDisplay)NULL;
/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:sink: caps = video/x-h264, stream-format=(string)avc, alignment=(string)au, level=(string)3.1, profile=(string)high, codec_data=(buffer)0164001fffe100196764001facd9405005ba10000003001000000303c0f183196001000568ebecb22c, width=(int)1280, height=(int)720, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1
/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:src: caps = video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, level=(string)3.1, profile=(string)high, width=(int)1280, height=(int)720, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
/GstPipeline:pipeline0/nvv4l2decoder:nvv4l2decoder0.GstPad:sink: caps = video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, level=(string)3.1, profile=(string)high, width=(int)1280, height=(int)720, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
Error String : Feature not supported on this GPUError Code : 801
ERROR: from element /GstPipeline:pipeline0/nvv4l2decoder:nvv4l2decoder0: Failed to process frame.
Additional debug info:
gstv4l2videodec.c(2279): gst_v4l2_video_dec_handle_frame (): /GstPipeline:pipeline0/nvv4l2decoder:nvv4l2decoder0:
Maybe be due to not enough memory or failing driver
ERROR: pipeline doesn’t want to preroll.
Setting pipeline to NULL …
ERROR: from element /GstPipeline:pipeline0/GstQTDemux:qtdemux0: Internal data stream error.
Additional debug info:
…/gst/isomp4/qtdemux.c(6749): gst_qtdemux_loop (): /GstPipeline:pipeline0/GstQTDemux:qtdemux0:
streaming stopped, reason error (-5)
ERROR: pipeline doesn’t want to preroll.
ERROR: from element /GstPipeline:pipeline0/nvv4l2decoder:nvv4l2decoder0: No valid frames decoded before end of stream
Additional debug info:
…/gst-libs/gst/video/gstvideodecoder.c(1416): gst_video_decoder_sink_event_default (): /GstPipeline:pipeline0/nvv4l2decoder:nvv4l2decoder0:
no valid frames found
ERROR: pipeline doesn’t want to preroll.
Freeing pipeline …”

What is the problem(s)? I can’t figure it out…
I installed it and fulfilled the prerequisites (NVIDIA Drivers, software version, …)

Is it possible to run DeepStream on WSL using my webcam? I want to use DeepStream in WSL and with my webcam to get used to using the software and make it easier to implement in Jetson

What is the output of the following command line ? I can run this command line normally on my WSL.

echo $DISPLAY

Typically, this value is: 0, Try export DISPLAY=:0.

This depends on the v4l2src plugin, but the plugin is driver-dependent and does not always work on WSL.

Running “echo $DISPLAY” the output is :0

So what I have to do to work on WSL?

I think the problem is caused by incorrect installation. You need to check the installation steps.

Are you using docker in wsl? This is the recommended approach.

I installed the docker but the error still appears

Try reinstalling the GPU driver and restarting wsl using wsl --shutdown in cmd.

In addition, Deepstream on WSL is an alpha release and has many issues.

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