Re: Internal Data Stream Error Occurs When Adding Two Caps Filters with Different Resolutions in Webcam GStreamer Pipeline Using Tee

Florian Echtler via gstreamer-devel <[email protected]>
Newsgroups gmane.comp.video.gstreamer.devel
Message-ID <[email protected]>
Hello Sulthan,

I'm pretty certain this won't be possible without videoscale & friends.

Reason: almost all V4L2 cameras are configured to stream a single resolution at 
the hardware level, and even if the camera would be capable of delivering two 
streams at different resolutions, I'm nearly 100% sure the V4L2-Gstreamer path 
won't be able to deliver that. Your only option, as far as I can tell, is to get 
the larger resolution from the device directly and scale it down.

(*) Should you happen to use a Raspberry Pi camera, which can do separate 
preview and main streams, then you might have a shot by using the libcamera 
stack. But for generic V4L2 devices, I don't think you can avoid the software 
scaler.

Best, Florian

On 13.07.23 19:37, Sulthan Amanu via gstreamer-devel wrote:
> Hi Team,
> 
> I have encountered an issue while
> creating a GStreamer pipeline with a webcam source and two caps filters using 
> the tee element. The pipeline is designed to apply different resolutions to the 
> video stream. Below is an example of the pipeline:
> 
> gst-launch-1.0 -e v4l2src device=/dev/video0 ! \
>      tee name=t ! \
>          queue ! \
>          videoconvert ! \
>          capsfilter caps="video/x-raw, width=640, height=480" ! \
>          autovideosink t. ! \
>          queue ! \
>          videoconvert ! \
>          capsfilter caps="video/x-raw, width=1280, height=720" ! \
>          autovideosink
> 
> 
> However, when executing the pipeline, I encountered the following error message:
> 
> Setting pipeline to PAUSED ...
> Pipeline is live and does not need PREROLL ...
> Setting pipeline to PLAYING ...
> New clock: GstSystemClock
> ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data 
> stream error.
> Additional debug info:
> gstbasesrc.c(3055): gst_base_src_loop (): 
> /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
> streaming stopped, reason not-negotiated (-4)
> EOS on shutdown enabled -- waiting for EOS after Error
> Waiting for EOS...
> 
> 
> I kindly request your assistance in resolving this issue and achieving the 
> desired behavior without utilizing the *videoscale , videoconvertscale, other 
> frame resize element. And I need to orignal data of both resolution.*
> *
> *
> Issue link - 
> https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2808#note_1999618 
> <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2808#note_1999618>
> *
> *
> Regards,
> Sulthan

-- 
SENT FROM MY DEC VT50 TERMINAL
OpenPGP_signature (application/pgp-signature, 203 B) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.