Hi everyone,
I have been working with a Logitech Brio 4K webcam, on windows 10, 64bit with gstreamer in powershell – trying to get a 4k, 3840x2160 video stream displaying – I believe in order to get this I have to use the image/jpeg cap of the device as the video/raw formats wont run to this. At bottom I have listed the output of \gst-device-monitor-1.0.exe which seems to suggest that the brio will support this as an image/jpeg format I can quite happily get the video/x-raw displaying with this command, all is well: .\gst-launch-1.0 ksvideosrc device-path="\\\\\?\\usb\#vid_046d\&pid_085e\&mi_00\#6\&1db17b4f\&0\&0000\#\{6994ad05-93ef-11d0-a3cc-00a0c9223196\}\\global" ! video/x-raw,format=YUY2,width=1920,height=1080,framerate=30/1 ! videoflip method=horizontal-flip ! autovideosink If I try and run the same command with any image/jpeg they all return with an error .\gst-launch-1.0 -v ksvideosrc device-path="\\\\\?\\usb\#vid_046d\&pid_085e\&mi_00\#6\&1db17b4f\&0\&0000\#\{6994ad05-93ef-11d0-a3cc-00a0c9223196\}\\global" ! image/jpeg,width=1920,height=1080,framerate=60/1 ! multipartmux ! autovideosink Regardless of width, height, rate the error is always this: ERROR: from element /GstPipeline:pipeline0/GstKsVideoSrc:ksvideosrc0: Internal data stream error. Additional debug info: gstbasesrc.c(2939): gst_base_src_loop (): /GstPipeline:pipeline0/GstKsVideoSrc:ksvideosrc0: streaming stopped, reason not-negotiated (-4) which I believe suggest the problem is in ksvideosrc – possibly that the Logitech reports capabilities that it cant in fact do? Would anyone here have any suggestions, or might have seen this before? Might it be a driver/Logitech issue, or maybe something in ksvideosrc ? Many thanks for any pointers! Mark Device-monitor output: name : Logitech BRIO class : Video/Source caps : video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)160, height=(int)120, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)176, height=(int)144, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)12/11; video/x-raw, format=(string)YUY2, width=(int)320, height=(int)180, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)320, height=(int)240, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)352, height=(int)288, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)12/11; video/x-raw, format=(string)YUY2, width=(int)340, height=(int)340, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)12/11; video/x-raw, format=(string)YUY2, width=(int)424, height=(int)240, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)440, height=(int)440, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)12/11; video/x-raw, format=(string)YUY2, width=(int)480, height=(int)270, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)640, height=(int)360, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)800, height=(int)448, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)800, height=(int)600, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)848, height=(int)480, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)960, height=(int)540, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)1024, height=(int)576, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)720, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)896, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)YUY2, width=(int)1920, height=(int)1080, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)640, height=(int)480, framerate=(fraction)[ 5/1, 120/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)160, height=(int)120, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)176, height=(int)144, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)12/11; image/jpeg, width=(int)320, height=(int)180, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)320, height=(int)240, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)352, height=(int)288, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)12/11; image/jpeg, width=(int)424, height=(int)240, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)480, height=(int)270, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)640, height=(int)360, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)800, height=(int)448, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)800, height=(int)600, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)848, height=(int)480, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)960, height=(int)540, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)1024, height=(int)576, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)1280, height=(int)720, framerate=(fraction)[ 5/1, 90/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)1600, height=(int)896, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)1920, height=(int)1080, framerate=(fraction)[ 5/1, 60/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)2560, height=(int)1440, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)3840, height=(int)2160, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; image/jpeg, width=(int)4096, height=(int)2160, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)NV12, width=(int)640, height=(int)480, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)NV12, width=(int)640, height=(int)360, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1080, framerate=(fraction)[ 5/1, 30/1 ], pixel-aspect-ratio=(fraction)1/1; gst-launch-1.0 ksvideosrc device-path="\\\\\?\\usb\#vid_046d\&pid_085e\&mi_00\#6\&1db17b4f\&0\&0000\#\{6994ad05-93ef-11d0-a3cc-00a0c9223196\}\\global" ! ... -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Wed, 2017-10-25 at 16:22 -0700, newguy wrote:
Hi, > If I try and run the same command with any image/jpeg they all return > with an error > > .\gst-launch-1.0 -v ksvideosrc > device- > path="\\\\\?\\usb\#vid_046d\&pid_085e\&mi_00\#6\&1db17b4f\&0\&0000\#\ > {6994ad05-93ef-11d0-a3cc-00a0c9223196\}\\global" > ! image/jpeg,width=1920,height=1080,framerate=60/1 ! multipartmux ! > autovideosink > > > Regardless of width, height, rate the error is always [not- > negotiated] Videosinks usually don't support image/jpeg, but want raw video. So you need a decoder here that decodes the JPEG from the camera to raw video. Try something like: ... ! queue ! jpegdec ! videoconvert ! queue ! autovideosink Cheers -Tim -- Tim Müller, Centricular Ltd - http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Hi, I used a Logitech brio at 4K and you definitively need a jpegdec element. In my case I was on Linux so it was a vaapijpegdec you can try with decodebin. I remember that it was image/jpeg and not video/jpeg but this depends by the camera. Often I use the logi c3300 or logi 920 and they use video/jpeg. Best Matteo On Oct 26, 2017 04:50, "Tim Müller" <[hidden email]> wrote: On Wed, 2017-10-25 at 16:22 -0700, newguy wrote: _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Many thanks Tim, Matteo
I will give this a go later today. I have been able to get the 4k throughput via graphedit and also on a Linux box, although pipeline different will check later and let you know, thanks again Mark -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
gents,
many thanks for those pointers - working now on Windows with gstreamer! ! image/jpeg,width=3840,height=2160,framerate=30/1 ! queue ! jpegdec ! videoconvert ! queue ! autovideosink -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |