二、什么是GStreamer

这篇具有很好参考价值的文章主要介绍了二、什么是GStreamer。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

GStreamer是一个用于创建流媒体应用程序的框架。基本的设计来自俄勒冈研究生院的视频管道,还有一些来自DirectShow的想法。

GStreamer的开发框架使编写任何类型的流媒体应用程序成为可能。GStreamer框架旨在使编写处理音频或视频或两者同时处理的应用程序变得容易。它不局限于音频和视频,可以处理任何类型的数据流。管道设计使其开销比应用的filters的开销小。这使得GStreamer成为一个很好的框架,即使是设计对延迟有很高要求的高端音频应用程序。

GStreamer最明显的用途之一是构建媒体播放器。GStreamer已经包括构建一个媒体播放器的组件,可以支持非常广泛的格式,包括MP3, Ogg/Vorbis, MPEG-1/2, AVI, Quicktime, mod等。然而,GStreamer不仅仅是一个媒体播放器。它的主要优点是可插入组件可以混合和匹配到任意管道中,这样就可以编写完整的视频或音频编辑应用程序。

该框架基于插件plugins,plugins将提供各种编解码器和其他功能。插件可以在管道中链接和排列。这个管道定义了数据流。管道也可以用GUI编辑器编辑,并保存为XML,这样管道库就可以用最少的工作创建。

GStreamer的核心功能是为插件、数据流和媒体类型处理/协商提供一个框架。它还提供了使用各种插件编写应用程序的API。

具体来说,GStreamer提供了

  • an API for multimedia applications

  • a plugin architecture

  • a pipeline architecture

  • a mechanism for media type handling/negotiation

  • a mechanism for synchronization

  • over 250 plug-ins providing more than 1000 elements

  • a set of tools

GStreamer插件可以分为:

  • protocols handling

  • sources: for audio and video (involves protocol plugins)

  • formats: parsers, formaters, muxers, demuxers, metadata, subtitles

  • codecs: coders and decoders

  • filters: converters, mixers, effects, …

  • sinks: for audio and video (involves protocol plugins)
    gstreamer,Gstreamer应用程序开发手册,音视频
    GStreamer被打包为:

  • gstreamer: the core package

  • gst-plugins-base: an essential exemplary set of elements

  • gst-plugins-good: a set of good-quality plug-ins under LGPL

  • gst-plugins-ugly: a set of good-quality plug-ins that might pose distribution problems

  • gst-plugins-bad: a set of plug-ins that need more quality

  • gst-libav: a set of plug-ins that wrap libav for decoding and encoding

  • a few others packages文章来源地址https://www.toymoban.com/news/detail-633516.html

到了这里,关于二、什么是GStreamer的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 什么是单页应用程序?如何选择及架构、优势和挑战

    单页面应用程序(Web应用程序或网站)仅加载单个页面。然后,当用户与Web服务器交互时,它使用从Web服务器获取的新内容重写页面,而不是为每次交互加载新页面。 单页面应用程序是一种网站解决方案,可以直接在浏览器中呈现JavaScript代码。它确保用户在浏览网站时不会重新

    2024年02月12日
    浏览(41)
  • Linux应用程序开发经验

    1.1 熟练掌握命令行环境 • 要学会Linux编程,必须得先学会用Linux,也就是要在Linux命令行环境下“生存”下来 • 给一台主机,能够在上面装一个操作系统(比如Ubuntu18.04或者其他版本) • 给一台Linux服务器,能够熟练地用起来 • 或者在Win10下,熟练使用WSL2 • 安装WSL2 • 基

    2024年02月07日
    浏览(42)
  • 《Qt开发》MDI应用程序

    实现多个子窗体的自定义布局(自定义子窗体尺寸和位置)、平铺布局(titleSubWindows)和分页模式(QMdi::TabbedView)。 运行效果图 初始布局(自定义布局) 平铺布局 多页模式 实现过程 1. 创建项目MdiFirstDemo,并创建3个子窗体,分别为FirstSubWindow、SecondSubWindow和ThirdSubWindow。

    2024年01月16日
    浏览(48)
  • 开发GPT的应用程序流程

    开发一个基于GPT的应用程序(GPT APP)涉及到与GPT模型的集成,用户界面设计,以及应用程序的功能实现。以下是一个一般的开发流程,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 明确目标和用例: 定义您的GPT应用的目标和

    2024年01月19日
    浏览(42)
  • 桌面应用程序开发攻略(初步了解)

            桌面应用开发 是指为桌面计算机或其他类似设备(如服务器)开发软件应用程序的过程。桌面应用通常是独立于浏览器运行的,并且可以在操作系统的桌面或应用程序菜单中找到。桌面应用可以使用各种编程语言开发,包括C++、Java、C#和Python等。桌面应用的开发

    2024年02月09日
    浏览(45)
  • 鸿蒙(HarmonyOS)应用开发——应用程序入口UIAbility(题目答案)

    1.一个应用只能有一个UIAbility。 错误(False) 解析:可以有多个,也可以有一个 2.创建的Empty Ability模板工程,初始会生成一个UIAbility文件。 正确(True) 3.每调用一次router.pushUrl()方法,页面路由栈数量均会加1。 错误(False) 解析: pushUrl()有两种模式,一种单实例模式,一种是多实例

    2024年02月04日
    浏览(89)
  • 开发多点触控MFC应用程序

    当下计算机变得越来越智能化,越来越无所不能,触摸屏的普及只是时间问题了。 虽然鼠标和键盘不会很快就离开人们的视野,毕竟人们使用鼠标跟键盘已经成为一种习惯,但是处理信息或者说操作计算机的其他方法也层出不穷——比如触控技术。从硬件技术的角度来讲,触

    2024年02月10日
    浏览(40)
  • windows驱动开发7:应用程序和驱动程序的通信

    一、基础介绍 1.1 设备与驱动的关系 设备由驱动去创建,访问一个设备,是首先得访问驱动。如果驱动在卸载的时候没有删除符号,r3下也是不能去访问设备的。 驱动程序和系统其他组件之间的交互是通过给设备发送或者接受发给设备的请求来交互的。换句话说,一个没有任

    2023年04月08日
    浏览(48)
  • Linux驱动开发—最详细应用程序调用驱动程序解析

    Linux下进行驱动开发,完全将驱动程序与应用程序隔开,中间通过 C标准库函数 以及 系统调用 完成驱动层和应用层的数据交换。 驱动加载成功以后会在“/dev”目录下生成一个相应的文件,应用程序通过 对“/dev/xxx” (xxx 是具体的驱动文件名字) 的文件进行相应的操作 即可实

    2024年02月16日
    浏览(46)
  • Linux应用程序开发:进程的一些事儿

      进程是一个动态过程,而非静态文件,它是程序的一次运行过程,当应用程序被加载到内存中运行之后它就称为了一个进程,当程序运行结束后也就意味着进程终止,这就是进程的一个生命周期。   Linux 系统下进程通常存在 6 种不同的状态,分为:就绪态、运行态、僵

    2023年04月24日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包