How to use gstreamer to save webcam video to file?

六眼飞鱼酱① 提交于 2019-12-20 04:53:58

问题


I've been trying to get emgu to save same webcam video to file

The problem is opencv only ssupports avi, and avi does not seem to suit a format like X264 very well.

Could I use Gstreamer to do this for me in C?

It would be good if I could choose the file format and container type too. It would be good if I could use a format like schrodinger dirac.

I'm new to GStreamer so I'm not quite sure if I'm on the right track here.

EDIT

I've managed to capture the webcam video using

gst-launch-0.10 ksvideosrc ! autovideosink

Now how to transcode this to a format like H264 or dirac ...?

EDIT

gst-launch-0.10 ksvideosrc num-buffers=10 ! decodebin2 ! ffmpegcolorspace ! x264enc ! matroskamux ! filesink location=video.mkv

This seems to create a file, but VLC player can't read it.


回答1:


This pipeline captures video from webcam, encodes it in h264 and finally uses flv container to store it at any specified location.

gst-launch-1.0 v4l2src ! videoconvert ! x264enc ! flvmux ! filesink location=xyz.flv

Hope this helps




回答2:


This

gst-launch-0.10

ksvideosrc !  
decodebin2 !      
ffmpegcolorspace !
schronc ! 
matroskamux ! 
filesink location=gopro2.mkv

Seems to handle dirac encoding

And this

gst-launch-0.10 ksvideosrc num-buffers=500 ! decodebin2 ! ffmpegcolorspace ! x264enc ! mp4mux ! filesink location=gopro2.mp4

Handles x264




回答3:


This directly captures the video from webcam and writes as an avi file which will be played-back by VLC player.

   gst-launch v4l2src ! ffmpegcolorspace ! jpegenc ! avimux ! filesink location=output.avi

Hope this help!



来源:https://stackoverflow.com/questions/21152303/how-to-use-gstreamer-to-save-webcam-video-to-file

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!