由gstreamer保存的.avi视频在视频播放器中播放得太快

时间:2019-07-02 10:18:04

标签: linux video gstreamer video-processing gstreamer-1.0

我使用gstreamer-1.0从相机保存.avi视频。然后,我尝试在VLC播放器中播放此视频,但播放速度太快。

例如,我录制了20秒的视频,但是VLS播放了7秒。

gstreamer的播放脚本工作正常。

用于录制视频的脚本:

gst-launch-1.0 -e v4l2src device=/dev/video4 ! video/x-bayer,format=grbg,depth=8,width=1920,height=1080,framerate=30/1 ! bayer2rgbneon ! video/x-raw,format=RGBA,width=1920,height=1080,framerate=30/1 ! videoconvert ! video/x-raw,format=I420,width=1920,height=1080,framerate=30/1 ! v4l2h264enc ! video/x-h264,width=1920,height=1080,framerate=30/1 ! avimux ! filesink location=/mnt/video/a.avi

播放脚本:

gst-launch-1.0 filesrc location=/mnt/video/a.avi ! avidemux ! video/x-h264,width=1920,height=1080,framerate=30/1 ! decodebin ! videoconvert ! video/x-raw,format=RGBA,width=1920,height=1080,framerate=30/1 ! videoscale ! kmssink driver-name=imx-drm force-modesetting=false can-scale=false sync=false

此解决方案基于phyBOARD-Nunki。

1 个答案:

答案 0 :(得分:0)

v4l2h264enc是基于软件的,对于板子来说太慢了。解决方案是使用一些基于硬件的软件,例如imx编码器,ets。