【问题标题】:How to use gstreamer to save webcam video to file?如何使用 gstreamer 将网络摄像头视频保存到文件?
【发布时间】:2014-01-16 02:26:02
【问题描述】:

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

问题是opencv只支持avi,avi似乎不太适合X264这样的格式。

我可以使用 Gstreamer 在 C 中为我做这件事吗?

如果我也可以选择文件格式和容器类型就好了。如果我可以使用像薛定谔狄拉克这样的格式,那就太好了。

我是 GStreamer 的新手,所以我不太确定我是否走在正确的轨道上。

编辑

我已经设法使用

捕获网络摄像头视频

gst-launch-0.10 ksvideosrc !自动视频接收器

现在如何将其转码为 H264 或 dirac ...等格式?

编辑

gst-launch-0.10 ksvideosrc num-buffers=10 !解码bin2! ffmpeg色彩空间! x264enc ! matroskamux !文件接收器 location=video.mkv

这似乎创建了一个文件,但 VLC 播放器无法读取它。

【问题讨论】:

    标签: c opencv gstreamer avi x264


    【解决方案1】:

    此管道从网络摄像头捕获视频,将其编码为 h264,最后使用 flv 容器将其存储在任何指定位置。

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

    希望对你有帮助

    【讨论】:

    • -e 如果您使用ctrl+c 结束捕获,则应添加到末尾。另外,您能否解释一下如何更改帧速率和分辨率?
    【解决方案2】:

    这个

    gst-launch-0.10

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

    似乎可以处理狄拉克编码

    还有这个

    gst-launch-0.10 ksvideosrc num-buffers=500 !解码bin2! ffmpeg色彩空间! x264enc ! mp4 多路复用器!文件接收器位置=gopro2.mp4

    处理 x264

    【讨论】:

      【解决方案3】:

      这直接从网络摄像头捕获视频并写入将由 VLC 播放器播放的 avi 文件。

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

      希望对您有所帮助!

      【讨论】:

        猜你喜欢
        • 2017-05-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-24
        • 2015-03-14
        • 2010-12-30
        • 2020-10-17
        相关资源
        最近更新 更多