如何使用gstreamer将网络摄像头视频保存到文件?
我一直在试图让emgu将相同的摄像头视频保存到文件中
问题是opencv只支持avi,而avi似乎并不适合像X264这样的格式。
我可以使用Gstreamer在C中为我做这个吗?
如果我可以选择文件格式和容器类型,这将是一件好事。 如果我可以使用schrodinger dirac这样的格式,那将是一件好事。
我是GStreamer的新手,所以我不太确定自己是否在正确的轨道上。
编辑
我设法使用捕捉摄像头视频
gst-launch-0.10 ksvideosrc! autovideosink
现在如何将此代码转换为H264或Dirac格式?
编辑
gst-launch-0.10 ksvideosrc num-buffers = 10! decodebin2! ffmpegcolorspace! x264enc! matroskamux! filesink位置= video.mkv
这似乎创建了一个文件,但VLC播放器无法读取它。
这个
GST推出-0.10
ksvideosrc !
decodebin2 !
ffmpegcolorspace !
schronc !
matroskamux !
filesink location=gopro2.mkv
似乎处理dirac编码
和这个
gst-launch-0.10 ksvideosrc num-buffers = 500! decodebin2! ffmpegcolorspace! x264enc! mp4mux! filesink位置= gopro2.mp4
处理x264
该管道从网络摄像头捕获视频,在h264中对其进行编码,最后使用flv容器将其存储在任何指定的位置。
gst-launch-1.0 v4l2src ! videoconvert ! x264enc ! flvmux ! filesink location=xyz.flv
希望这可以帮助
这直接从网络摄像头捕获视频,并作为avi文件写入,并由VLC播放器回放。
gst-launch v4l2src ! ffmpegcolorspace ! jpegenc ! avimux ! filesink location=output.avi
希望这个帮助!
链接地址: http://www.djcxy.com/p/43911.html