Gstreamer:如何解决快速运动的问题?

时间:2019-05-22 14:30:09

标签: gstreamer gstreamer-1.0

我正在学习Gstreamer,我想将视频流保存到文件中,然后再播放。

服务器中的视频流如下:

gst-launch-1.0 -v udpsrc port=10000 ! application/x-raw,media=(string)video,clock-rate=(int)90000,encoding-name=(string)JPEG,payload=(int)26 ! rtpjpegdepay ! queue ! tcpserversink port=10001 host=192.168.1.200

客户端中的视频流如下:

gst-launch-1.0 -v tcpclientsrc port=10001 host=192.168.1.200 ! application/x-rtp,encoding=JPEG,payload=26 ! rtpjpegdepay ! decodebin ! videoconvert ! x264enc ! avimux ! filesink location=video.avi

在接收器上,出现以下错误:

0:00:00.140217727 22318 0x555582cb6000 ERROR 
  rtpbasedepayload gstrtpbasedepayload.c:583:
  gst_rtp_base_depayload_handle_event:<rtpjpegdepay0>
  Segment with non-TIME format not supported

我可以通过以下管道解决它:

GST_DEBUG=3 gst-launch-1.0 -v port=10001 host=192.168.1.200 \
! image/jpeg,framerate=15/1 \
! jpegparse \
! queue  \
! avdec_mjpeg ! x264enc ! queue \
! avimux \
! filesink location=test1.avi

我可以保存视频流,但是视频可以快速播放。

我该如何解决?

谢谢。

0 个答案:

没有答案