First, I have read the following thread, but I want to harness the webcam hardware JPEG compression as opposed to software h264 compression.
Second, I tested the following pipeline and it works:
gst-launch-1.0 -v v4l2src device=/dev/video1 ! 'image/jpeg,width=640,height=480,videorate=8/1' ! jpegdec ! xvimagesink
Then I tried similar pipeline but with udpsink at the end:
gst-launch-1.0 -v v4l2src device=/dev/video1 ! 'image/jpeg,width=640,height=480,videorate=8/1' ! rtpjpegpay ! udpsink host=127.0.0.1 port=1234
Then I tried to play this stream:
gst-launch-1.0 -v udpsrc port=1234 ! "application/x-rtp, payload=96" ! rtpjpegdepay ! jpegdec ! xvimagesink
And it failed with the following errors:
/GstPipeline:pipeline0/GstJpegDec:jpegdec0.GstPad:sink: caps = image/jpeg, framerate=(fraction)0/1, width=(int)640, height=(int)480
** (gst-launch-1.0:10761): CRITICAL **: gst_adapter_push: assertion 'GST_IS_BUFFER (buf)' failed
** (gst-launch-1.0:10761): CRITICAL **: gst_jpeg_dec_fill_input_buffer: assertion 'dec->current_frame_map.data != NULL' failed
Any suggestions?