GStreamer初步入手 - Hello World

官网手册: https://gstreamer.freedesktop.org/documentation/index.html?gi-language=c

开发环境:Ubuntu 16.04,默认已经安装GStreamer,可以执行命令,但是编译程序有问题,找不到开发头文件见gst.h,可以locate gst.h验证一下,没有则需要重新安装,本人开发机器就需要重新安装后,才能编译程序。

1.0版本在线安装:

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

在线安装问题解决:

sudo apt-get install gstreamer1.0-plugins-base1.0-dev

出现错误
E: Unable to locate package gstreamer1.0-plugins-base1.0-dev
E: Couldn't find any package by glob 'gstreamer1.0-plugins-base1.0-dev'
E: Couldn't find any package by regex 'gstreamer1.0-plugins-base1.0-dev'

运行下面命令
sudo apt-get install *lib*gstreamer-plugins-base1.0-dev

源码安装:

下载地址:https://gstreamer.freedesktop.org/src/

常见命令:

playbin播放本地文件:

gst-launch-1.0 playbin uri=file:///home/fhwubihe/Desktop/DemoDocker.mp4

playbin播放RTSP网络流文件:

gst-launch-1.0 playbin uri=rtsp://10.1.130.200:10554/32010500001320000002_32010500001320000002

rtspsrc播放RTSP OVER TCP 网络流文件:

gst-launch-1.0 rtspsrc location=rtsp://10.1.130.200:10554/32010500001320000002_32010500001320000002  protocols=tcp latency=0 ! rtph264depay ! capsfilter caps="video/x-h264" ! h264parse ! avdec_h264 ! videoconvert ! videoscale ! video/x-raw,width=800,height=600 ! ximagesink

rtspsrc播放RTSP OVER TCP 网络流文件,保存解码后YUV数据:

gst-launch-1.0 rtspsrc location=rtsp://10.1.130.200:10554/32010500001320000002_32010500001320000002  protocols=tcp latency=0 ! rtph264depay ! capsfilter caps="video/x-h264" ! h264parse ! avdec_h264 ! videoconvert ! videoscale ! video/x-raw,width=800,height=600 ! filesink location=Recv_800x600_yuv420p.yuv

播放MP4文件中的视频内容

gst-launch-1.0 filesrc location=huangdun.mp4 ! qtdemux ! avdec_h264 ! videoconvert ! videoscale ! video/x-raw,width=800,height=600 ! ximagesink

播放AAC文件

gst-launch-1.0 filesrc location=huangdun.aac ! faad ! alsasink

gst-launch-1.0 filesrc location=huangdun.mp4 ! qtdemux ! faad ! alsasink

播放MP4文件,包括播放H264视频和AAC音频

gst-launch-1.0 filesrc location=huangdun.mp4 ! qtdemux name=demux ! queue ! avdec_h264 ! videoconvert ! ximagesink demux. ! queue ! faad ! alsasink

把GRAY8 的灰度图编码成JPEG

gst-launch-1.0 -v filesrc location=lena_256x256_yuv420p.yuv blocksize=65536 ! 'video/x-raw,width=256,height=256,format=GRAY8,framerate=0/1' ! jpegenc quality=90 ! filesink location=lena.jpg

 

 

 

 

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这段代码是在Docker容器中执行的一系列命令,用于安装一些软件包和依赖项。具体来说,它执行以下操作: 1. `apt-get clean`:清理apt-get缓存,以释放磁盘空间。 2. `apt-get update`:更新apt-get软件包列表。 3. `apt-get install -y`:安装以下软件包和依赖项: - `python3`:Python 3的主要二进制文件。 - `python3-pip`:Python 3的包管理工具pip。 - `libopencv-dev`:OpenCV开发库的头文件和静态库。 - `python3-opencv`:Python 3的OpenCV绑定。 - `build-essential`:构建软件包所需的基本工具和编译器。 - `yasm`:视频编解码器的汇编器。 - `cmake`:跨平台的构建工具。 - `libtool`:通用库支持脚本工具。 - `libc6`、`libc6-dev`:C标准库的运行时库和开发文件。 - `unzip`:解压缩工具。 - `wget`:网络下载工具。 - `libnuma1`、`libnuma-dev`:NUMA(非统一内存访问)系统的库和开发文件。 - `libgstreamer1.0-0`:GStreamer多媒体框架的核心库。 - `gstreamer1.0-plugins-base`、`gstreamer1.0-plugins-good`、`gstreamer1.0-plugins-bad`、`gstreamer1.0-plugins-ugly`、`gstreamer1.0-libav`:GStreamer插件和解码器。 - `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的文档、工具和相关库。 - `libglib2.0-dev`:GLib开发库的头文件。 - `libgstrtspserver-1.0-dev`:GStreamer RTSP服务器库的开发文件。 - `gstreamer1.0-rtsp`:GStreamer的RTSP插件。 这些操作旨在为容器配置一个适合开发的环境,使其能够支持Python编程、OpenCV图像处理和GStreamer多媒体处理等任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值