gstreamer 编译实例
时间:2019-12-31
本文章向大家介绍gstreamer 编译实例,主要包括gstreamer 编译实例使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1.首先搭建 Gstreamer 所需环境
(1).先安装Gstreamer所需的程序包:
1 sudo apt-get update
// 安装之前最好检查下面的tools是否已经安装,例如输入:autoconf -v;如果提示未发现该命令请安装。
2 sudo apt-get install automake autoconf libtool autopoint
3 sudo apt-get install -y bison flex libffi-dev libmount-dev libpcre3 libpcre3-dev zlib1g-dev libssl-dev gtk-doc-tools
(2).安装 ORC 支持库,编译 gst-plugins-base 将会依赖这个库
下载安装包地址:
运行以下命令进行解压缩和编译安装:
1 $tar xvJf orc-0.4.27.tar.xz
2 $cd orc-0.4.27
3 $./autogen.sh --prefix=/usr/lib
4 $make -j6
5 $sudo make install
(3).安装 GLIB 支持库
下载安装包地址:
运行以下命令进行解压缩和编译安装:
1 $tar xvJf glib-2.52.3.tar.xz
2 $cd glib-2.52.3
3 $./autogen.sh
4 $make -j6
5 $sudo make install
2.安装 Gstreamer 1.16.2 基础软件包(适用于其他版本)
(1).下载以下几个软件源码包:(地址:https://gstreamer.freedesktop.org/src/)
1 gstreamer-1.16.2
2 gst-plugins-base-1.16.2
3 gst-plugins-good-1.16.2
4 gst-plugins-bad-1.16.2
5 gst-plugins-ugly-1.16.2
6 gst-rtsp-server-1.16.2
(2).编译安装gstreamer-1.16.2
说明:下面的 ... 是自己真实路径(建议最好使用绝对路径)
1 $tar xvJf gstreamer-1.16.2.tar.xz
2 $cd gstreamer-1.16.2
3 $ ./configure --prefix=.../gst-out/gstreamer-1.16.2
4 $make -j6
5 $sudo make install
说明因为后面的gst-plugins-*都会依赖这个gstreamer-1.16.2因此必须加到PKG_CONFIG_PATH中。
export PKG_CONFIG_PATH=.../gst-out/gstreamer-1.16.2/lib/pkgconfig
(3).编译安装gst-plugins-base-1.16.2
1 $tar xvJf gst-plugins-base-1.16.2.tar.xz
2 $cd gst-plugins-base-1.16.2
3 $ ./configure --prefix=.../gst-out/gst-plugins-base-1.16.2
4 $make -j6
5 $sudo make install
(4).编译安装gst-plugins-good-1.16.2
说明:gst-plugins-good-1.16.2是依赖于gst-plugins-base-1.16.2和gstreamer-1.16.2的,因此需要设置PKG_CONFIG_PATH(之前已经包含gstreamer-1.16.2)为如下值:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:.../gst-out/gst-plugins-base-1.16.2/lib/pkgconfig
1 $tar xvJf gst-plugins-good-1.16.2.tar.xz
2 $cd gst-plugins-good-1.16.2
3 $ ./configure --prefix=.../gst-out/gst-plugins-good-1.16.2
4 $make -j6
5 $sudo make install
(5).编译安装gst-plugins-bad-1.16.2
1 $tar xvJf gst-plugins-bad-1.16.2.tar.xz
2 $cd gst-plugins-bad-1.16.2
3 $ ./configure --prefix=.../gst-out/gst-plugins-bad-1.16.2
4 $make -j6
5 $sudo make install
(6).编译安装gst-plugins-ugly-1.16.2
1 $sudo apt-get install libx264-dev //支持x264软编码插件
2 $tar xvJf gst-plugins-ugly-1.12.6.tar.xz
3 $cd gst-plugins-ugly-1.16.2
4 $ ./configure --prefix=.../gst-out/gst-plugins-ugly-1.16.2
5 $make -j6
6 $sudo make install
(7).配置Gstreamer环境
1 $cd ~ 2 $sudo vim .bashrc(在文件最后新增以下内容保存退出) 3 export LD_LIBRARY_PATH=/usr/local/lib 4 export GST_PLUGIN_PATH=/usr/local/lib:/usr/lib/aarch64-linux-gnu/gstreamer-1.0 //此处需要根据实际的环境,不一定为aarch64-linux-gnu
5 $source .bashrc
(8).编译安装gst-rtsp-server-1.16.2(如果需要进行流媒体推流才进行安装)
1 $tar xvJf gst-rtsp-server-1.16.2.tar.xz
2 $cd gst-rtsp-server-1.16.2
3 $ ./configure --prefix=.../gst-out/gst-rtsp-server-1.16.2
4 $make -j6
5 $sudo make install
测试指令:软编码加推流
gst-launch-1.0 videotestsrc! videoconvert ! 'video/x-raw,width=320,height=240,framerate=(fraction)15' ! autovideoconvert ! x264enc ! rtph264pay ! udpsink host=192.168.1.94 port=8006
引用风中旅客的博客(做部分补充):https://www.cnblogs.com/sxgloverr1314/p/10541491.html
原文地址:https://www.cnblogs.com/grandblogs/p/12123186.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法