0%

Debian 12搭建GStreamer开发环境

安装GStreamer

使用以下命令进行安装GStreamer

1
sudo apt-get install libgstreamer* gstreamer1.0-* -y

测试编译环境

使用如下命令查看GStreamer的编译命令。

1
2
pkg-config --cflags gstreamer-1.0 # 获得头文件路径
pkg-config --libs gstreamer-1.0 # 获得库文件路径

使用如下demo.c进行测试:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <gst/gst.h>

int main(int argc, char *argv[]) {
GstElement *pipeline;
GstBus *bus;
GstMessage *msg;

/* Initialize GStreamer */
gst_init(&argc, &argv);

/* Build the pipeline, please change the URI to the correct one */
pipeline = gst_parse_launch("playbin uri=file:///root/video.mp4", NULL);

/* Start playing */
gst_element_set_state(pipeline, GST_STATE_PLAYING);

/* Wait until error or EOS */
bus = gst_element_get_bus(pipeline);
msg = gst_bus_timed_pop_filtered(bus, GST_CLOCK_TIME_NONE,
GST_MESSAGE_ERROR | GST_MESSAGE_EOS);

/* Free resources */
if(msg != NULL)
gst_message_unref(msg);
gst_object_unref(bus);
gst_element_set_state(pipeline, GST_STATE_NULL);
gst_object_unref(pipeline);
return 0;
}

使用如下命令进行编译:

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

使用如下命令运行:

1
./demo

出现一个窗口播放视频,证明安装成功:

安装桌面环境

由于之前的开发环境中未安装桌面环境,为了能够看到GStreamer程序执行结果,因此需要安装新的桌面环境。

使用下列命令最小化安装gnome,并设置startx启动:

1
2
3
sudo apt install xorg gnome-core
echo "exec gnome-session" > ~/.xinitrc
startx

之后可以看到启动后的gnome桌面。

设置默认进入命令行

为了提高开机速度和降低性能损耗,希望开机默认进入命令行,只在需要时进入桌面环境。

修改/etc/default/grub文件,将GRUB_CMDLINE_LINUX的值从""改为"text"

之后执行以下命令:

1
2
sudo update-grub
sudo systemctl set-default multi-user.target

重启后会发现直接进入命令行。