MFlow v0.4.0 — Native Packet & Stream Foundation
MFlow v0.4.0 — Native Packet & Stream Foundation
MFlow v0.4.0 introduces the first reusable native media data model of the MFlow engine.
🚀 What's new
- Native
Packetsystem - Native
Streammodel for video, audio and data streams - Rational
Timestampsystem with PTS, DTS and duration - Thread-safe
PacketQueue MediaContextfor managing containers and streams- Pipeline stages now operate directly on MFlow packets
- Expanded automated test coverage
- Native C++20 architecture preserved across Windows and Linux
🧠 Core architecture
MFlow now has the foundations required for a real native media processing pipeline:
INPUT
↓
MEDIA CONTEXT
↓
STREAMS
↓
PACKETS
↓
PACKET QUEUE
↓
PIPELINE
Packets now carry their stream ID, timestamps, duration, flags and sequence information.
This provides the foundation for future native demuxers, frame processing, codecs and muxers.
⚡ Design philosophy
MFlow continues to follow its core principle:
Move less data. Do less work. Measure everything.
The architecture is designed to avoid unnecessary copies, decoding, encoding, memory transfers and processing whenever the requested operation does not require them.
🔒 No FFmpeg dependency
MFlow does not delegate media processing to FFmpeg or another external multimedia executable.
The engine is being developed as an independent native multimedia stack.
⚠️ Current limitations
v0.4.0 does not yet provide:
- Native MP4 demuxing
- Native MP4 muxing
- Native video decoding
- Native video encoding
- Native audio decoding
- Native audio encoding
- Video scaling
- General-purpose media transcoding
These capabilities are being developed progressively.
🛣️ Next steps
The next development stages will focus on:
- Timestamp normalization and ordering
- Native MP4 box parsing
- Native MP4 demuxer
- Native MP4 muxer
- Raw video frame system
- Audio sample system
- Native codec foundations
MFlow is still in active development, but v0.4.0 establishes an important foundation for the future native media engine.
📦 Build
Requirements:
- C++20 compiler
- CMake
- Windows or Linux
Build with:
cmake -S . -B build
cmake --build build --config Release📄 License
MFlow is released under the MIT License.