2025
介绍
BMF(Babit Multimedia Framework)是字节跳动开发的一个跨平台、多语言、可定制的多媒体处理框架。经过超过4年的测试与打磨,BMF已被深度定制以应对真实生产环境中的多种挑战。目前该框架已广泛应用于字节跳动的视频点播、直播转码、云剪辑及移动端前后处理等场景中,每天处理的视频数量超过20亿条。
这是我们为 开源软件供应链点亮计划 2025
准备的项目想法页面。请参阅 OSPP 时间表 以获取重要日期信息。
面向学生的信息
入门指南
了解 BMF
如果你是对贡献 BMF 感兴趣的学生,推荐你首先加入我们的 飞书交流群。如果你有任何问题,欢迎随时联系我们。如果你知道其他同学提出问题的答案,也请不要犹豫,积极参与解答。寻找项目
本页面列出的是带有导师的项目。这些项目定义明确,且已经有导师自愿提供指导。如果你对某个项目的描述不够清晰,或者有任何问题,请联系项目导师,或加入我们的飞书群咨询。联系我们
如果你决定参与某个项目,请与我们社区联系并告知你的意愿。如果你希望从一个适合初学者的问题入手,请通知相关导师,以避免重复工作。提交申请
学生需在 6 月 9 日之前 提交申请。项目开发的“正式工作期”将从 7 月 1 日 开始,到 9 月结束。请参考 OSPP 时间表 获取更多信息。
项目想法
CPP动态流式处理接口实现
项目描述
:在BMF中 python和cpp的builder层都是基于connector层构建的,其中python利用了binding技术,目前BMF支持通过python调用dynamic系列接口,支持在BMF graph运行时动态更改节点,比如新增、删除、重置。此项目的实现可以借鉴现有的python builder实现,来补齐cpp缺失的dynamic系列接口。
项目难度
:基础
技术领域、编程语言
:多媒体处理、C++
项目产出要求
:用C++实现dynamic_remove,dynamic_add,dynamic_reset,update接口,并完成测试用例。
项目技术要求
:1.良好的C++编程能力 2.了解基本的多媒体处理
项目成果仓库
:https://github.com/BabitMF/bmf
预估工时
:175 小时
导师
: 刘奇翰 (jacklau1222@qq.com)
项目备注
:https://github.com/BabitMF/bmf/discussions/154#discussioncomment-11442021,https://babitmf.github.io/docs/bmf/multiple_features/dynamic_graph/
模版项目
项目名称
:项目名称应明确直观的体现出项目的技术和目标任务;
项目描述
:项目的相关背景、已有的工作、存在的不足、希望改进的要点、最终项目实现的目标等。
项目难度
:结合项目要求、项目规模、技术难度、项目开发预估工作量、资源限制等因素设置。
技术领域、编程语言
:
项目产出要求
:明确学生需要做什么,预期达到什么效果。
项目技术要求
:可从编程语言、技术栈、开发经验等角度提出要求。
项目成果仓库
:本社区已有项目仓库地址,而非新建空仓。
预估工时
:根据项目难度、产出要求、学生水平等因素给出预估的开发工时参考。
导师
: 姓名(邮箱)
项目备注
:项目自身的相关参考资料,比如书籍、论文、博客和相关的项目或 issue 的链接。