📁
GStreamer中文教程
  • Intuduction
  • Basic Theory
    • Building an Application
    • Autoplugging
    • Threads
  • Tutorial
    • Basic tutorial1: Hello world!
    • Basic tutorial 2: GStreamer concepts
    • Basic tutorial 3: Dynamic pipelines
    • Basic tutorial 6: Media formats and Pad Capabilities
    • Basic tutorial 7: Multithreading and Pad Availability
    • Basic tutorial 8: Short-cutting the pipeline
    • Playback tutorial 1: Playbin usage
    • Playback tutorial 2: Subtitle management
    • Playback tutorial 3: Short-cutting the pipeline
    • Playback tutorial 7: Custom playbin sinks
    • Playback tutorial 4: Progressive streaming
    • Playback tutorial 8: Hardware-accelerated video decoding
  • Application Development
    • Build Pipeline
    • App
      • Appsink
      • Appsrc
    • uridecodebin
    • GstPadProbe
  • Qualcomm GStreamer Plugins
    • qtioverlay
  • DeepStream
    • nvdsosd
    • DeepStream学习拾遗
  • Useful Tricks
    • GStreamer源码剖析之——rtspsrc(1)
    • GStreamer源码剖析——uridecodebin(1)
  • Post Script
Powered by GitBook
On this page
  • 概述
  • 开发平台

Was this helpful?

Application Development

Useful development skills.

PreviousPlayback tutorial 8: Hardware-accelerated video decodingNextBuild Pipeline

Last updated 3 years ago

Was this helpful?

概述

GStreamer作为一个音视频应用开发框架,提供了一个快速开发工具gst-launch-1.0,开发人员能够将现有的Pulgins以一定规则任意组合成一条Pipeline并运行起来。但这显然不能满足更高级的开发需求,对于开发人员来说我们往往需要对音视频的源数据进行操作,操作单位至少是一帧图片或一段音频,事实上这些数据就在Pipeline中以Stream的形式在各个Plugin之间传递,而为了能够操作这些数据,我们需要更高的访问权限。

本章节旨在展示一个基于GStreamer框架的简单应用是如何被开发出来的,以及我们能够实现的功能。

本章节代码仓库:

章节内容:

  • 构建pipeline的两种方式:gst_parse_launch()和gst_element_factory_make()

  • uridecodebin

  • appsink/appsrc

  • GstBufferPool

  • GstPadProbe

  • 自定义plugin

开发平台

  • 开发平台:Qualcomm® QRB5165 (Linux-Ubuntu 18.04)

  • 图形界面:Weston(Wayland)

  • 开发框架:GStreamer, OpenCV

  • 第三方库:gflags,json-glib-1.0,glib-2.0

  • 构建工具:

application-develop
CMake