bmf  by BabitMF

Multimedia framework for video processing, AI inference, and transcoding

created 2 years ago
957 stars

Top 39.2% on sourcepulse

GitHubView on GitHub
Project Summary

BMF (Babit Multimedia Framework) is a cross-platform, multi-language multimedia processing framework designed for high-performance video transcoding, AI inference, and live streaming. It targets developers needing a flexible and customizable solution for complex media pipelines, offering significant GPU acceleration and seamless integration with popular frameworks.

How It Works

BMF employs a decoupled, module-based architecture allowing developers to create custom processing graphs. It supports Python, Go, and C++ APIs, enabling heterogeneous development. The framework boasts a powerful scheduler and strong GPU acceleration, with NVIDIA collaboration for optimized pipelines. It excels at efficient data conversion between various frameworks (FFmpeg, PyTorch, OpenCV) and hardware devices (CPU/GPU), including color space and pixel format conversions.

Quick Start & Requirements

  • Install: pip install bmf-sdk
  • Prerequisites: Python 3.7+, FFmpeg (for some modules). GPU acceleration requires compatible NVIDIA hardware and drivers.
  • Demos: Available on Google Colab for quick experimentation. https://github.com/BabitMF/bmf/tree/main/demo

Highlighted Details

  • Processes over 2 billion videos daily in ByteDance production environments.
  • BMFLite client-side framework used by over a billion users for live streaming and video playback.
  • Demonstrates integration of state-of-the-art AI algorithms like DeOldify and Real-ESRGAN.
  • Supports full GPU transcoding pipelines (decode->scale->flip->rotate->crop->blur->encode).

Maintenance & Community

Developed by ByteDance. Community discussions and issue tracking are managed via GitHub.

Licensing & Compatibility

Apache 2.0 License for the core framework. Third-party components (like FFmpeg wrappers) are under LGPL, which may have implications for commercial use if modified and distributed.

Limitations & Caveats

Some built-in modules are based on FFmpeg and are LGPL licensed, which could restrict commercial use depending on how they are integrated and distributed. The README mentions "over 4 years of testing and improvements" but doesn't detail specific versioning or release cadence.

Health Check
Last commit

6 days ago

Responsiveness

1 day

Pull Requests (30d)
5
Issues (30d)
0
Star History
64 stars in the last 90 days

Explore Similar Projects

Starred by Omar Sanseviero Omar Sanseviero(DevRel at Google DeepMind) and Patrick von Platen Patrick von Platen(Core Contributor to Hugging Face Transformers and Diffusers).

sdnext by vladmandic

0.3%
6k
WebUI for AI generative image and video creation
created 2 years ago
updated 1 day ago
Feedback? Help us improve.