GStreamer 1.0 series序列示例

OpenEmbedded layer for GStreamer 1.0

这layer层为GStreamer 1.0框架提供了非官方的支持,用于OpenEmbedded/Yocto。它用于GStreamer recipe backports,为早期的OE版本提供对更新GStreamer版本的支持,同时也作为尚未进入OE核心的最新升级(最近发布了一个新的GStreamer版本)。

参考:https://github.com/OSSystems/meta-gstreamer1.0

Dependencies

  • URI: git://git.openembedded.org/openembedded-core
  • branch: master
  • revision: HEAD

此外,the meta-multimedia and meta-oe layers of the meta-openembedded repo at git://git.openembedded.org/meta-openembedded是可选插件所必需的(见下文)。

Package names and coexistence with 0.10

由于1.0版本设计为能够在同一个系统中与0.10共存,GStreamer 1.0的配方命名反映了这一点。这些命名是:

  • gstreamer1.0
  • gstreamer1.0-plugins-base
  • gstreamer1.0-plugins-good
  • gstreamer1.0-plugins-bad
  • gstreamer1.0-plugins-ugly
  • gstreamer1.0-libav
  • gstreamer1.0-omx
  • gstreamer1.0-rtsp-server
  • gstreamer1.0-vaapi

Building git versions

默认情况下,释放tarball是解包和构建的。但是,可以从GStreamer git存储库构建。一般来说,最好使用版本发布release,但是对于最前沿的特性,git版本可能是必要的。

要让Bitbake知道git版本的包是首选的,请添加到本地.conf:

PREFERRED_VERSION_<packagename> = "git"

For example, to use git versions of all packages, add to local.conf:

PREFERRED_VERSION_gstreamer1.0 = "git"

PREFERRED_VERSION_gstreamer1.0-plugins-base = "git"

PREFERRED_VERSION_gstreamer1.0-plugins-good = "git"

PREFERRED_VERSION_gstreamer1.0-plugins-bad = "git"

PREFERRED_VERSION_gstreamer1.0-plugins-ugly = "git"

PREFERRED_VERSION_gstreamer1.0-libav = "git"

PREFERRED_VERSION_gstreamer1.0-omx = "git"

Enabling plugins with dependencies

默认情况下,在base/good/bad/unicky recipes中,只有依赖关系较少的插件和OE core支持的具有依赖关系的插件(即OE core中存在这些插件的配方)始终处于使能状态。

These are:

  • gstreamer1.0-plugins-base : gio-unix-2.0, ogg, pango, theora, vorbis
  • gstreamer1.0-plugins-good : cairo, flac, gdk-pixbuf, gudev, jpeg, lame, libpng, mpg123, soup, speex, taglib, v4l2
  • gstreamer1.0-plugins-bad : bz2, curl, dash, dtls, hls, neon, rsvg, sbc, smoothstreaming, sndfile, uvch264, webp
  • gstreamer1.0-plugins-ugly : a52dec, mpeg2dec
  • gstreamer1.0-libav : yasm
  • gstreamer1.0-vaapi : drm

对于X11、Wayland、ALSA、BlueZ、DirectFB、OpenGL、Vulkan和PulseAudio插件,情况有所不同。它们是根据发行版特性值的内容构建的(换句话说,取决于OE发行版支持的内容)。

其余的默认情况下是禁用的,可以通过附加到相应的PACKAGECONFIG值来启用。例如,要在gstreamer1.0-plugins-good中启用vpx和wappack支持,请添加到本地.conf:

PACKAGECONFIG_append_pn-gstreamer1.0-plugins-good = "vpx wavpack"

注意,以这种方式启用插件后,必须确保插件依赖项的配方可用。在上面的例子中,vpx和wappack的配方必须存在。这通常意味着必须使用额外的additional OE layers层(通常是meta-OE或meta-multimedia)。

这也是内部启用Orc支持的方式。自版本1.6.0以来,Orc包含在该层中,并在默认情况下启用。(Orc存在于OE核心中,但是为了使gstreamre1.6可以用较旧的层构建,它的配方包含在内。)

下面列出了在包中启用附加插件和特性的所有配置值。

  • gstreamer1.0
    • check : build unit test libraries
    • debug : enable debug build
    • tests : build test applications
    • valgrind : enable run-time valgrind detection
    • gst-tracer-hooks : enable tracing subsystem hooks
    • trace-historic : enable historic tracing subsystem
    • unwind: enables libunwind-based stack trace generation
    • dw: adds source lines and numbers to backtraces using the elfutils libdw library
  • gstreamer1.0-plugins-base
    • cdparanoia : cdparanoia audio CD ripping plugin
    • ivorbis: Integer-only Vorbis decoding using the Tremor library
    • opus : Opus audio decoder plugin
  • gstreamer1.0-plugins-good
    • `dv1394' : IEEE 1394 raw video source plugins
    • gtk : GTK+3 plugins
    • jack : JACK audio system plugins
    • libv4l2 : additional v4l2 plugins based on libv4l2
    • vpx : plugins for en- and decoding VP8 video streams, using Google's libvpx
    • wavpack : WavPack plugins
  • gstreamer1.0-plugins-bad
    • assrender : ASS/SSA subtitle renderer plugins
    • dc1394 : libdc1394 based video source plugin for IIDC cameras
    • faac : AAC encoding plugins using the FAAC library
    • faad : AAC decoding plugins using the FAAD library
    • flite : Flite speech synthesizer plugins
    • fluidsynth : FluidSynth plugins
    • kms : Video sink plugin using the Linux kernel mode setting API
    • libmms : Microsoft Multimedia Stream plugins
    • libssh2 : Enable libssh2 support in cURL plugins
    • lcms2 : Little CMS open source color management engine plugins
    • modplug : Decoder plugins for module files (MOD/S3M/XM/IT/..) using the ModPlug library
    • openal : OpenAL audio plugins
    • opencv : OpenCV image processing plugins
    • openjpeg : OpenJPEG-based JPEG2000 image decoder/encoder plugin
    • opusparse : Opus bitstream parser plugin
    • resindvd : DVD navigation and playback plugin
    • rtmp : Real Time Messaging Protocol (RTMP) plugins
    • sctp : Stream Control Transmission Protocol (SCTP) plugin
    • srtp : RFC 3711 SRTP plugin
    • ttml : Timed Text Markup Language plugins
    • voaacenc : OpenCORE based AAC encoder plugin
    • voamrwbenc : OpenCORE based AMR wideband encoder plugin
    • webp : WebP plugins
  • gstreamer1.0-plugins-ugly
    • amrnb : OpenCORE based AMR narrowband decoder plugin
    • amrwb : OpenCORE based AMR wideband decoder plugin
    • cdio : Compact Disc audio plugins using libcdio
    • dvdread : DVD source plugins using libdvdread
    • x264 : h.264/AVC encoder plugin using libx264
  • gstreamer1.0-libav
    • libav : builds the package using the system's libav instead of the included one (not recommended unless you really know what you are doing!)
    • gpl : build the package in GPL mode (enables GPL elements)
    • valgrind : enable run-time valgrind detection
  • gstreamer1.0-vaapi
    • egl : use the EGL backend
    • glx : use the GLX backend
    • wayland : enable Wayland output sinks
    • X11 : enable X11 output sinks

OpenMAX IL support

gstreamer1.0-omx包增加了对OpenMAX-IL的支持。默认情况下,配方配置为使用OE Core附带的bellagio OpenMAX IL实现。BSP激励层添加.bbappend文件,这些文件设置GSTREAMER_1_0_OMX_目标变量,以使gstreamer1.0-OMX使用特定于设备的OpenMAX IL支持。目前,支持这些特定于设备的对象:

rpi : Raspberry Pi OpenMAX IL implementation

如果.bbappend文件将GSTREAMER_1_0_OMX_TARGET的值更改为特定set的值,则配置会自动将gstreamer1.0-OMX的PACKAGE_ARCH设置为MACHINE_ARCH。

此外,如果写入了特定set的.bbappend文件,建议也在其中设置GSTREAMER_1_0_OMX_CORE_NAME的值。此值指定需要使用的OpenMAX核心(共享库)的文件名。对于Bellagio OpenMAX实现,它的值是:${libdir}/libomxil-bellagio.so.0。gstreamer1.0-omx配方需要此值来调整gstomx.conf文件配置文件。

GStreamer 1.0 series序列示例的更多相关文章

  1. CSDN新版Markdown编辑器(Alpha 2.0版)使用示例(文首附源码.md文件)

    CSDN新版Markdown编辑器(Alpha 2.0版) 使用示例 附 本文的Markdown源码: https://github.com/yanglr/AlgoSolutions/blob/mas ...

  2. Series序列

    import pandas as pd '''Series序列:1.序列 的声明,指定index列标签2.查看列索引(index)和元素 (values)3.选择内部元素4.为元素赋值5.用Numpy ...

  3. Hadoop2.6.0版本MapReudce示例之WordCount(二)

    继<Hadoop2.6.0版本MapReudce示例之WordCount(一)>之后,我们继续看MapReduce的WordCount示例,看看如何监控作业运行或查看历史记录,以及作业运行 ...

  4. android4.0 USB Camera示例(五个辅助)jpg压缩

    前的最后一个 我们说,一个直接yuv变成jpg该功能 但是转换不成功 主要功能是yuv420转jpg的 根据研究发现 yuv420的序列是这种 YYYY YYYY UVUV 而yuv422的隔行扫描的 ...

  5. 权限开发 spring security 3.0.7 序列1 数据库脚本

    spring  security  3 细粒度权限控制第一篇,关于权限的初始化测试数据库脚本. 空间脚本: drop user FrameworkTest cascade; drop tablespa ...

  6. 最新虚拟机SAP ECC6.0 EHP7带示例数据IDES版+BW740

    学习SAP,需要虚拟机,请联系QQ:858-048-581 版本:ECC6.0 EHP7.虚拟机操作系统:windows server 2008 64bit..数据库:SQL2008 R2.系统已经做 ...

  7. SkylineGlobe TerraExplorer for Web 7.1.0版本 接口示例

    在SkylineGlobe TerraExplorer for Web 7.1.0版本(俗称H5免插件版本)中,如何使用SGWorld接口的三维视域分析方法呢? 请参考下面的示例: 通过下面的代码大家 ...

  8. [ActionScript 3.0] AS3 ServerSocket示例(官方示例)

    下面的示例创建一个套接字服务器.要使用该服务器,可将套接字绑定到本地端口,然后从其他应用程序连接到该端口.该服务器仅识别 UTF-8 字符串. package { import flash.displ ...

  9. [ActionScript 3.0] AS3 socket示例(官方示例)

    下例对套接字执行读写操作,并输出在套接字事件期间传输的信息. 该示例的要点遵循: 该构造函数创建名为 socket 的 CustomSocket 实例,并将主机名 localhost 和端口 80 作 ...

随机推荐

  1. IIS7.5配置对PHP的支持

    以下环境是 Windows server2008R2 IIS7.5 一般情况下,windows server系统默认是仅支持IIS+asp 或 IIS+aspx 的 搭配的,但是有时候我们的网站程序是 ...

  2. Linux提权—脏牛漏洞(CVE-2016-5195)

    目录 脏牛漏洞 exp1复现: exp2复现: 脏牛漏洞 脏牛漏洞,又叫Dirty COW,存在Linux内核中已经有长达9年的时间,在2007年发布的Linux内核版本中就已经存在此漏洞.Linux ...

  3. 1.关于逆向工程(RE、RCE)-笔记

    名词 逆向工程(Reverse Engineering,简称RE):代码逆向工程(Reverse Code Engineering,简称RCE). 逆向分析方法 静态分析:不执行代码,观察外部特征.获 ...

  4. liunx服务器安装jdk

    1.官网下载需要版本的jdk,官网地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.h ...

  5. 在 Linux 如何优雅的统计程序运行时间?恕我直言,你运行的可能是假 time

    最近在使用 time 命令时,无意间发现了一些隐藏的小秘密和强大功能,今天分享给大家. time 在 Linux 下是比较常用的命令,可以帮助我们方便的计算程序的运行时间,对比采用不同方案时程序的运行 ...

  6. ThreadLocal不好用?那是你没用对!

    在 Java 中,如果要问哪个类使用简单,但用好最不简单?我想你的脑海中一定会浮现出一次词--"ThreadLocal". ​ 确实如此,ThreadLocal 原本设计是为了解决 ...

  7. 提升50%!Presto如何提升Hudi表查询性能?

    分享一篇关于使用Hudi Clustering来优化Presto查询性能的talk talk主要分为如下几个部分 演讲者背景介绍 Apache Hudi介绍 数据湖演进和用例说明 Hudi Clust ...

  8. 设了padding要减去盒高 和 line-height 行高

    增加了padding 一定要减去相应的高度,不然整个元素的高度会增高(原高+padding) line-height:行高 1.行高要比字体大,不然字体会挤到一块去 2.若父盒子没有设置高度,则行高会 ...

  9. Windows系统下consul的安装、启动、配置

    阅读时长:3分钟 操作系统:Windows10 一.consul的安装 首先在consul.exe文件目录下的地址栏中输入cmd. 接着输入consul指令,敲击回车安装consul. 安装成功后会有 ...

  10. .jnlp 文件打开方式

    .jnlp 文件打开方式 jnlp文件打开需要安装jre ,java环境,通过java环境运行即可,下面介绍详细步骤 1.下载.安装最新版jre环境,直接下一步即可 2 java配置 打开控制面板,查 ...