首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GStreamer vs FFmpeg

GStreamer vs FFmpeg
EN

Stack Overflow用户
提问于 2012-01-04 16:32:23
回答 3查看 20.3K关注 0票数 19

我试着用OpenCV框架录制一个视频,并想把它和一些额外的数据流一起保存到一个Matroska(mkv)容器中。

首先,我认为使用FFmpeg是实现这一目标的方法。但是当我查看OpenCV源码并在网络上搜索时,我发现了GStreamer。

因为GStreamer中的文档比FFmpeg文档要好得多,所以我更喜欢使用这个框架。

在我的理解中,GStreamer主要用于流媒体,但也可以对视频数据进行rncode和mux。

使用GStreamer而不是FFmpeg有什么缺点吗?

提前感谢霍斯特

EN

回答 3

Stack Overflow用户

发布于 2012-01-04 20:29:24

我尝试使用OpenCV框架录制视频,并希望将其保存到mkv中。

我不认为OpenCV可以将视频存储为MKV,

和一些额外的数据流。

OpenCV不提供此操作的功能。

的一个简单的变通方法是简单地调用ffmpeg或gstreamer的cmd-line应用程序来为您进行转换。

GStreamer确实有一个不错的文档,它也可以做这项工作。的明显缺点是,如果您知道如何使用FFmpeg,那么更改到GStreamer将需要一些额外的时间来了解它是如何工作的,因为两者具有完全不同的API: GStreamer架构的灵感来自于DirectShow和Quicktime。

advantage是GStreamer (除了是跨平台的)在几个大项目中使用,并且了解GStreamer肯定会为您的编程技能增加很大的技能。

票数 19
EN

Stack Overflow用户

发布于 2020-09-29 23:32:01

我看不出使用gstreamer有什么坏处。事实上,我认为gstreamer是一个框架,而不仅仅是一个工具或单一目标库。您可以使用它来开发您自己的插件,这些插件可以无缝地挂接到gstreamer管道中。

票数 0
EN

Stack Overflow用户

发布于 2022-02-10 20:45:11

您可以使用OpenCv VideoWriter,使用ffmpeg或gstreamer后端并进行比较。例如(您可以适应您的平台插件和视频模式):

代码语言:javascript
复制
# Using ffmpeg backend
cv::VideoWriter ffmpeg_h264_writer ("test-ffmpeg-h264-writer.mkv",
   cv::CAP_FFMPEG,
   cv::VideoWriter::fourcc ('X', '2', '6', '4'),
   fps,
   cv::Size (width, height));

# Using gstreamer backend:
cv::VideoWriter gst_omxh264_writer ("appsrc ! queue ! videoconvert ! video/x-raw,format=I420 ! queue ! omxh264enc ! video/x-h264,format=byte-stream ! matroskamux ! filesink location=test-gstreamer-omxh264-writer.mkv ",
   cv::CAP_GSTREAMER,
   0,
   fps, 
   cv::Size (width, height));

其中width和height是整数值,fps是浮点值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8724002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档