Adjusting the videorate for an mjpeg stream

Sebastian Dröge sebastian at centricular.com
Wed Nov 13 13:10:19 PST 2013


On Mi, 2013-11-13 at 16:33 +0400, Andrey Nikitin wrote:
> В Wed, 13 Nov 2013 13:25:53 +0100
> Severin Kacianka <severin.kacianka at aau.at> wrote:
> > ioctl: VIDIOC_ENUM_FMT
> >       ....
> > 	Index       : 1
> > 	Type        : Video Capture
> > 	Pixel Format: 'H264' (compressed)
> > 	Name        : H.264
> >       ....
> > 		Size: Discrete 320x180
> > 			Interval: Discrete 0.033 s (30.000 fps)
> > 			Interval: Discrete 0.042 s (24.000 fps)
> > 			Interval: Discrete 0.050 s (20.000 fps)
> > 			Interval: Discrete 0.067 s (15.000 fps)
> > 			Interval: Discrete 0.100 s (10.000 fps)
> > 			Interval: Discrete 0.133 s (7.500 fps)
> > 			Interval: Discrete 0.200 s (5.000 fps)
> 
> This list (VIDIOC_ENUM_FMT) does not have your "30/10" fps,
> 5, 7.5, 10, 15, 20, 24 and 30 fps only.

And the problem in the pipeline is probably that videorate proxies the
30/20 framerate to the source, and that fails to configure that rate.
Try adding a supported framerate on the first capsfilter.

> gst-launch-1.0 -e uvch264src device=/dev/video1 name=src
> auto-start=true 
> src.vfsrc ! queue ! video/x-raw,width=320,height=240 ! \
> queue! videorate ! 'video/x-raw,framerate=30/20' ! jpegenc
> quality=10 ! 
> rtpjpegpay ! udpsink host=example.com port=1234 src.vidsrc ! fakesink

If it still doesn't work, debug logs would be useful to have. Probably
with GST_DEBUG=6 as I currently don't know where to start looking.

-- 
Sebastian Dröge <sebastian at centricular.com>
Centricular Ltd - http://www.centricular.com
Expertise, Straight from the Source
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 966 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20131113/8903a467/attachment.pgp>


More information about the gstreamer-devel mailing list