草庐IT

GStreamer1

全部标签

c++ - 将 opencv 处理添加到 gstreamer 应用程序

我正在尝试执行以下操作:使用gstreamer接收视频流并使用opencv处理它。我找到了几个解决方案,其中之一是将视频写入(来自gstreamer)fifo,然后使用opencv读取它。(此处的选项3MJPEGstreaminganddecoding)。问题是我打不开管道。cvCreateFileCapture永远不会返回。这是我写的部分代码:if(mkfifo("fifo.avi",S_IRUSR|S_IWUSR)==-1){cout程序堆栈在最后一行。PS:我使用的是opencv2.3.1。 最佳答案 这是我针对Gstream

c++ - 将 opencv 处理添加到 gstreamer 应用程序

我正在尝试执行以下操作:使用gstreamer接收视频流并使用opencv处理它。我找到了几个解决方案,其中之一是将视频写入(来自gstreamer)fifo,然后使用opencv读取它。(此处的选项3MJPEGstreaminganddecoding)。问题是我打不开管道。cvCreateFileCapture永远不会返回。这是我写的部分代码:if(mkfifo("fifo.avi",S_IRUSR|S_IWUSR)==-1){cout程序堆栈在最后一行。PS:我使用的是opencv2.3.1。 最佳答案 这是我针对Gstream

Gstreamer基础讲解

Gstreamer讲解文章目录Gstreamer讲解基础背景小结元件(Element)衬垫(Pads)Gstreamer的面向对象Gstreamer的多线程实用工具Gstreamer常用插件介绍gstreamer工程记录关于YUV的补充知识基础背景​从历史的角度来看,Linux在多媒体方面已经远远落后于其他的操作系统。Microsoft’sWindows和Apple’sMacOS它们对多媒体设备、多媒体创作、播放和实时处理等方面已经有了很好的支持。另一方面,Linux对多媒体应用的综合贡献比较少,这也使得Linux很难在专业级别的软件上与MSWindows和MacOS去竞争。GStreamer

Gstreamer基础讲解

Gstreamer讲解文章目录Gstreamer讲解基础背景小结元件(Element)衬垫(Pads)Gstreamer的面向对象Gstreamer的多线程实用工具Gstreamer常用插件介绍gstreamer工程记录关于YUV的补充知识基础背景​从历史的角度来看,Linux在多媒体方面已经远远落后于其他的操作系统。Microsoft’sWindows和Apple’sMacOS它们对多媒体设备、多媒体创作、播放和实时处理等方面已经有了很好的支持。另一方面,Linux对多媒体应用的综合贡献比较少,这也使得Linux很难在专业级别的软件上与MSWindows和MacOS去竞争。GStreamer

c++ - 用于 Windows 开发的 GStreamer 或 DirectShow?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭7年前。Improvethisquestion我正在为本地一所大学实现一个讲座捕捉项目。多个视频流将到达一台PC:演示者的桌面幻灯片、演示者本人的摄像机图像以及可选的数字白板捕获。这些传入的流将由桌面应用程序管理,该应用程序显示、转码/混合并最终将它们保存到磁盘。将有一些配置选项,因为Material可以通过多种方式分发:作为DVD上的Flash应用程序、作为在线Flash应用程序或作为WindowsMediaPlayer的视频点播流

c++ - 用于 Windows 开发的 GStreamer 或 DirectShow?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭7年前。Improvethisquestion我正在为本地一所大学实现一个讲座捕捉项目。多个视频流将到达一台PC:演示者的桌面幻灯片、演示者本人的摄像机图像以及可选的数字白板捕获。这些传入的流将由桌面应用程序管理,该应用程序显示、转码/混合并最终将它们保存到磁盘。将有一些配置选项,因为Material可以通过多种方式分发:作为DVD上的Flash应用程序、作为在线Flash应用程序或作为WindowsMediaPlayer的视频点播流

视频编码原理及Gstreamer 硬编码代码实现

背景业务需要对原始YUV数据进行硬编码然后通过第三方库推送到Web端。网上找了很多资料,没有找到对Gstreamer硬编码的详细介绍。这里记录下自己的实现,附完整代码。一、视频编码基础知识像素点的英文叫Pixel(缩写为PX)。Pixel是由Picture(图像)和Element(元素)这两个单词简化而来。像素是图像显示的基本单位。我们通常说一幅图片的大小,例如是1920×1080,就是长度为1920个像素点,宽度为1080个像素点。乘积是2,073,600,也就是说,这个图片是两百万像素的。1920×1080,这个也被称为这幅图片的分辨率。那么视频是怎么来的?相信大家从小都看过动画片,没错,

视频编码原理及Gstreamer 硬编码代码实现

背景业务需要对原始YUV数据进行硬编码然后通过第三方库推送到Web端。网上找了很多资料,没有找到对Gstreamer硬编码的详细介绍。这里记录下自己的实现,附完整代码。一、视频编码基础知识像素点的英文叫Pixel(缩写为PX)。Pixel是由Picture(图像)和Element(元素)这两个单词简化而来。像素是图像显示的基本单位。我们通常说一幅图片的大小,例如是1920×1080,就是长度为1920个像素点,宽度为1080个像素点。乘积是2,073,600,也就是说,这个图片是两百万像素的。1920×1080,这个也被称为这幅图片的分辨率。那么视频是怎么来的?相信大家从小都看过动画片,没错,

opencv+gstreamer拉流

介绍opencv的VideoCapture函数支持以Gstreamerpipeline的方法对RTSP数据进行解码,VideoWriter函数支持以Gstreamerpipeline的方式进行RTSP推流。为了实现上述的功能,opencv在编译时需要打开WITH_GSTREAMER选项,具体编译过程,需要后续进行测试,然后描述相应的过程。查看opencv是否支持gstreameropencv中可以通过调用getBuildInformance函数查看opencv的编译情况,具体如下所示:#includeintmain(void){std::coutcv::getBuildInformation(

c++ - Qt #define "signals"与 GStreamer (gst) 冲突

Qt,它似乎用一个初始的Q来命名其他所有东西,这样做:#definesignalssignalsinqobjectdefs.h。然而,GStream并不自然地不会将signals想象成一个保留字,而是这样做struct_GDBusInterfaceInfo{/**/volatilegintref_count;gchar*name;GDBusMethodInfo**methods;GDBusSignalInfo**signals;在gdbusintrospection.h中。我只是假设Qt和GStreamer不能很好地协同工作,还是有办法解决这个问题?注意:如果我不#defineQ_MO