当前位置: 代码迷 >> 综合 >> 不懂得 GStreamer 就别做视频算法了,跟我一起去搂搂官网,看看如何安装
  详细解决方案

不懂得 GStreamer 就别做视频算法了,跟我一起去搂搂官网,看看如何安装

热度:82   发布时间:2023-12-12 16:05:48.0

在这里插入图片描述

啥都不说了,先给个地址:
https://gstreamer.freedesktop.org/documentation/index.html?gi-language=c

作为 C/C++ 的开源库,当然是各种平台通吃。
在这里插入图片描述

安装很简单,我用的是 Ubuntu 18.04,按照 Installing on Linux 安装步骤一次成功,没有任何悬念。

一、先决条件

GStreamer包含在所有Linux发行版中。我们建议使用快速移动发行版的最新版本,如Fedora、Ubuntu(非LTS)、Debian sid或OpenSuse,以获取最新的GStreamer版本。

本节中给出的所有命令都是从终端输入的。

警告:请确保您具有安装GStreamer的超级用户(根)访问权限。

二、在Fedora上安装GStreamer

运行以下命令:

dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-devel-docs gstreamer1-plugins-base-devel gstreamer1-plugins-base-devel-docs gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-ugly-devel-docs  gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras

三、在Ubuntu或Debian上安装GStreamer

运行以下命令:

apt-get install libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

四、使用GStreamer构建应用程序

唯一需要的“开发环境”是gcc编译器和文本编辑器。为了编译需要GStreamer并使用GStreamer核心库的代码,请记住将此字符串添加到gcc命令中:

pkg-config --cflags --libs gstreamer-1.0

如果使用其他GStreamer库,例如视频库,则必须在上述字符串中的GStreamer-1.0之后添加其他包(例如,视频库的GStreamer-video-1.0)。

如果您的应用程序是在libtool的帮助下构建的,例如,当使用automake/autoconf作为构建系统时,您必须从gst-sdk-shell环境中运行配置脚本。

五、获取教程的源代码

教程的源代码可以从教程页面复制并粘贴到文本文件中,但是为了方便起见,它也可以在examples/tutorials子目录中的GIT存储库中找到。

GIT存储库可以通过以下方式克隆:

git clone https://gitlab.freedesktop.org/gstreamer/gst-docs

六、构建教程

gcc basic-tutorial-1.c -o basic-tutorial-1 `pkg-config --cflags --libs gstreamer-1.0`

使用您感兴趣的教程的文件名(本例中为basic-tutorial-1)。

警告:根据需要使用的GStreamer库,除了每个教程源代码底部的GStreamer-1.0之外,还必须向pkg-config
命令添加更多的包。您将按照所需的顺序找到该特定教程的命令,包括所需的库。在开发自己的应用程序时,GStreamer文档将告诉您函数属于哪个库。

七、运行教程

要运行教程,只需执行所需的教程:

./basic-tutorial-1

八、说说我趟的坑

  • 我在一台惠普台式机上安装的GStreamer,机器配了一块 nvidia RTX 2080 显卡。安装一切顺利,basic-tutorial-1编译也很顺利,但是运行这个程序时,只能听到视频中的声音,但是视频画面窗口始终没出现。
  • 折腾了两天后,换了一台华硕主板的 i7 CPU + nvidia GTX970 显卡的机器,这个例子顺利运行,显示出一段动画片视频剪辑,一次运行成功。
  • 最后还是没搞明白原因,但是感觉硬件配置,尤其显卡驱动等,应该会影响结果。因为前后两者区别主要在驱动程序、Cuda平台方面。
  相关解决方案