GStreamer 将用 Rust 编写的插件与二进制版本一起提供


多媒体框架 GStreamer 宣布将用 Rust 编写的插件作为其官方二进制版本的一部分发布。“经过整整一个月非常恼人的构建系统工作,我们终于可以将用 rustlang 编写的 gstreamer 插件与我们的官方二进制版本一起发布了。”

科技网站 Phoronix 指出,鉴于 Rust 的内存安全性,用该语言编写的媒体编码器/解码器一直是一个很有意义的领域,GStreamer 的开发人员也一直对这种现代编程语言的使用很感兴趣。目前,相关的 GStreamer 合并请求已落地,以支持为 native builds 构建 Cargo-C recipes;这是将 Rust 编写的插件作为项目的官方二进制版本的一部分发布的一个必要步骤。

此功能现下仅在 Linux、macOS 和 MSVC 上默认启用,GStreamer 可能会在即将发布的 1.22 版本中提供。iOS 和 Android 中的支持则预计出现在之后的 1.24 版本中。更多详情及进展可查看其 Rust support tracker issue 页面。

GStreamer 开发人员 Nirbheek Chauhan 补充称,

这真的很令人兴奋,因为现在人们可以轻松访问出色的插件,例如基于 reqwest 的 HTTP elements、WebRTC WHIP sink、dav1d 解码器、rav1e 编码器、RaptorQ FEC 实施、AWS 插件、fallbackswitch 插件(轻松在不同的 sources 之间切换)等等!

值得注意的是,这只是启用了 shared plugins(不是 static plugins)。Rust 生成 C static archives 的方式导致它们有 100 多 MB 大小。

我们需要找到一种方法来修剪插件中不需要的代码,然后才能发布


相關推薦

2022-09-30

ternals 作者:是时候停用 C/C++ 开发新项目并使用 Rust 了 GStreamer 将用 Rust 编写的插件与二进制版本一起提供 微软首席工程师:Rust 将面临十大挑战  

2023-02-01

GStreamer 是开源跨平台多媒体框架,1.22 版本作为一个主要版本带来了许多改进、新功能和错误修复,为用户提供一流的多媒体体验。 亮点 AV1 视频编解码器支持的改进 新的 HLS、DASH 和 Microsoft Smooth Streaming 自适应流媒体客户

2022-09-21

x 内核 Cloudflare 放弃 Nginx,使用内部 Rust 编写的 Pingora GStreamer 准备将 Rust 编写的插件作为其官方二进制版本的一部分发布 Rust 成立专门的安全团队 Asahi Linux 计划使用 Rust 编写 Apple 芯片的 GPU 驱动程序 GCC Rust 得到 GCC 批准

2022-09-28

定将创建一个不基于 GNOME 的新桌面环境,这个桌面环境将用 Rust 编写,并开发成类似于 21.04 版本以来使用的 COSMIC 桌面。 由于 Pop!_OS 在发布 22.04 LTS 版本后,一直没有放出任何 22.10 版本的预览、测试或 RC 版本,鉴于系统新版

2022-12-16

Foundation 框架是苹果 macOS 和 iOS 的基础组件支持核心,几乎所有的 Swift 项目都使用 Foundation 框架,其主要包含了大量常用的 API,为许多基本功能提供了一个基础层,也为编写优秀的 Swift 代码奠定了基础。 swift-corelibs-foundation 项

2024-10-14

平台应用程序的流行默认选择。对 Electron 的内存消耗和二进制文件大小的抱怨是合理的,而且不会很快消失。它们与 Electron 应用程序的设计密切相关,只有重新设计 Electron 或底层浏览器组件才能解决这个问题。 Tauri 应用的设

2022-06-20

写,使用 Tauri 开发的应用程序的后端是一个基于 Rust 的二进制文件,带有一个前端可以与之交互的 API,通过 JS Api 调用后台接口。 可以看到,Tauri 对标的正是 Electron。与 Electron 相比,Tauri 更加轻量、性能更好。 Tauri v.s Electr

2023-10-18

nbsp;docs.astral.sh。 详情查看发布公告。 Ruff 是基于 Rust 编写的高性能 Python 代码分析工具(即 Linter),用于检查代码中的语法错误、编码规范问题、潜在的逻辑问题和代码质量问题等,可以提供实时反馈和自动修复建议。其主

2023-04-18

细说明。使用 Kustomize KCL 插件无需安装任何与 KCL 相关的二进制,仅需您本地安装有 Kustomize 工具即可。 首先执行如下命令获取一个 Kustomize YAML 配置示例: git clone https://github.com/KusionStack/kustomize-kcl.git && cd ./kustomize-kcl/exa

2023-04-07

中桌面操作系统上RISC-V架构平台的开源多媒体框架(FFMPG/Gstreamer/OpenMax)集成及应用开发。   openKylin社区技术进展与成果 一、UKUI SIG UKUI(Ultimate Kylin User Interface) SIG小组致力于桌面环境相关软件包的规划、维护和升级工作,

2024-10-09

写,使用 Tauri 开发的应用程序的后端是一个基于 Rust 的二进制文件,带有一个前端可以与之交互的 API,通过 JS Api 调用后台接口。 Tauri 2.0 主要新特性和改进如下: 移动支持:添加了对 iOS 和 Android 的支持。 多 WebView 支

2022-09-21

编程语言一起运行,因此开发团队希望利用通过这些语言编写的所有包。 以前使用 Gleam 构建工具的项目可能依赖于用 Gleam 或 Erlang 编写的包。从这个版本开始,还支持用 Elixir 编写的项目,让 Gleam 程序员可以访问几乎

2022-11-18

写,使用 Tauri 开发的应用程序的后端是一个基于 Rust 的二进制文件,带有一个前端可以与之交互的 API,通过 JS Api 调用后台接口。 1.2 版本的更新内容包括升级所需的最低 Rust 版本、修复安全问题,以及分别针对 Linux 和 macOS

2023-07-18

游社区源代码构建或直接下载Rust开源社区发布的龙架构二进制版本。Rust开发者将在龙架构平台上获得良好的开发体验。 Rust介绍 Rust是近年来新兴的系统级编程语言,专注于安全性、并发性和性能。Rust拥有丰富的类型系统和所