查看: 43|回复: 0

[教程] 当 BMF 遇见玲珑:一款支持 AI 的音视频转换工具这样落地 deepin

[复制链接]

4

主题

0

回帖

0

积分

积极分子

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2010-9-9
发表于 昨天 09:02 | 显示全部楼层 |阅读模式

你是否曾为音视频转换工具安装复杂、依赖繁琐而头疼?是否期待一款既功能强大、又易于分发的一站式处理工具?

这一切,如今在 deepin 上变得异常简单。近期,社区开发者 @Jack Lau 将应用  OpenConverter 适配成玲珑格式,使其能够以完整的形态无缝集成至 deepin 生态中,真正实现了 “下载即用,无需配置” 的流畅体验。

 

【当 BMF 遇见玲珑:一款支持 AI 的音视频转换工具落地 deepin】

OpenConverter:不只是格式转换

OpenConverter 是⼀款基于 FFmpeg 和 BMF 框架编写的跨平台(支持 Windows,Linux,MacOS)开源⾳视频转换⼯具,可以⽅便的进⾏⾳视频信息查看,格式转换,编码转换,视频剪切,⾳频提取,图⽚压缩,批量处理等操作,最近还⽀持了AI超分功能,未来会开放更多AI能⼒。同时,它⽀持 GUI 和 CLI 两种使⽤⽅式,还可以根据需要选择不同的转码内核(FFTOOL, FFMPEG, BMF)。

下载体验

  • deepin 应用商店(AMD64、ARM64)

  • 如意玲珑应用商店:

    https://store.linyaps.org.cn/

  • GitHub:

    https://github.com/OpenConverterLab/OpenConverter

 

BMF 框架:多媒体处理的新选择

OpenConverter 最初完全基于 FFmpeg API 编写的,常做开发的朋友可能了解,FFmpeg 无疑是⾳视频开发领域的“瑞⼠军⼑”,其功能涉及格式转换、编解码、流媒体、滤镜处理等,功能⼗分强⼤。但是基于 FFmpeg API 开发⼀直都是⼀件令新⼿痛苦的事情,⻔槛较⾼,且在对 AI 功能的支持上存在局限。那我们能否找到⼀个更⽅便的多媒体处理框架,并且保留FFmpeg的强⼤功能呢?

BMF(Babit Media Framework)框架是⼀个不错的选择,它继承了 FFmpeg 的强⼤功能,同时模块编写⽀持多语⾔(C++,Python,Go)的特性使其可以轻松接⼊ AI 能⼒,灵活的 pipeline+ 模块化设计也使得其易于扩展和定制。

例如,实现 AI 超分只需构建如下 pipeline:

BMF 解码模块(C++) → AI 超分模块(Python) → BMF 编码模块(C++)

如果要⽀持其他 AI 能⼒,⽐如去噪,只需要编写并替换中间的 AI 模块即可以,也可以根据业务需求构造更复杂的pipeline。限于篇幅,想了解 BMF 的更多功能可以查看官⽅文档( https://babitmf.github.io)。

 

当 BMF 遇见玲珑:一次生态落地的实践

早在 2024 年底,我就尝试过在玲珑容器⾥编译 BMF,并成⽴了 sig-linyaps-bmf,计划给玲珑⽣态贡献⼀款基于 BMF 打造的 GUI 软件。

经过近一年的业余开发,OpenConverter v1.5.3 现已正式上架 deepin 应用商店(AMD64、ARM64),并提供自动化构建的玲珑包。

在编写 Github Action ⾃动化构建玲珑包的过程中,由于缺乏现成样例,我⼿搓了相关脚本(详见.github/workflows/build.yaml),主要包括:

  • 准备⼆进制⽂件,便携 linglong.yaml,以及 desktop,icon 等⽂件;
  • 使⽤ ll-builder build 构建玲珑包;
  • 使用 ll-builder export --layer --no-develop 导出玲珑包文件。

过程中遇到一个典型问题:构建时会拉取 deepin base 依赖,官方源速度较慢,易导致超时。为此,我们在本地制作了包含 deepin base 镜像的 Docker 镜像,提前拉取缓存,显著提升构建速度与稳定性。该 Docker 镜像(ingFang SC\", system-ui, -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", \"Hiragino Sans GB\", \"Microsoft YaHei UI\", \"Microsoft YaHei\", Arial, sans-serif; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; background-color: rgb(255, 255, 255); letter-spacing: 0.578px; font-size: 14px; line-height: 2; visibility: visible; box-sizing: border-box !important; overflow-wrap: break-word !important;"},"namespaceURI":"http://www.w3.org/1999/xhtml"},"node",{"tagName":"span","attributes":{"class":"color_font","style":null},"namespaceURI":"http://www.w3.org/1999/xhtml"}]">https://github.com/JackLau1222?tab=packages)已开源,供有需要的开发者直接使用。

 

未来:持续共建音视频开源生态

这一次的适配,不仅是一次技术集成,更是对玲珑生态的一次真实验证。OpenConverter 依赖复杂(FFmpeg、BMF、AI 运行时等),但通过玲珑的容器化封装,用户无需配置任何环境,即可在 deepin 上稳定运行所有功能,并承载 FFmpeg、BMF 以及 AI 超分等复杂依赖。

这对于⼀个跨平台、GUI 的⾳视频应⽤来说并不容易,⽽玲珑统一的运行环境与可调试的容器特性,也显著降低了分发与维护成本。

OpenConverter 不仅是一个工具,也是一个面向开发者的参考实现。我们希望通过它,降低音视频处理与 AI 融合的开发门槛,并为玲珑生态提供一个真实、可复用的应用案例。

Jack Lau 表示,作为 FFmpeg 与 BMF 的 Maintainer,他将持续推动这两个开源项目与 deepin & 玲珑社区的协作,陆续带来更多“BMF + 玲珑”的开发实例与适配优化。我们也欢迎更多开发者参与到项目中来,无论是反馈问题、贡献代码,还是一起探讨音视频与 AI 的结合可能。

加入如意玲珑生态共建小组

 

关于生态共建,若你有任何见解与想法,欢迎前往【deepin 论坛】,与我们一同交流探讨!

 

 

 

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部