zoukankan      html  css  js  c++  java
  • GStreamer 1.0 series序列示例

    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文件配置文件。

    人工智能芯片与自动驾驶
  • 相关阅读:
    python接口自动化测试十三:url编码与解码
    python接口自动化测试十二:对返回的json的简单操作
    python接口自动化测试十一:传参数:data与json
    python接口自动化测试九:重定向相关
    python接口自动化测试十:字典、字符串、json之间的简单处理
    python接口自动化测试八:更新Cookies、session保持会话
    python接口自动化测试七:获取登录的Cookies
    python接口自动化测试六:时间戳,防重复处理
    python接口自动化测试五:乱码、警告、错误处理
    python接口自动化测试四:代码发送HTTPS请求
  • 原文地址:https://www.cnblogs.com/wujianming-110117/p/14066025.html
Copyright © 2011-2022 走看看