This is a Java library that wraps the FFmpeg and FFprobe command-line tools, providing a fluent builder API to programmatically construct and execute media transcoding, probing, and processing commands. It is not a standalone application but a reusable Maven artifact. The core architecture consists of builder classes (FFmpegBuilder, FFmpegOutputBuilder, etc.) that generate ffmpeg command-line arguments, an executor (FFmpegExecutor) that creates runnable jobs (single-pass, two-pass), and progress parsers (TCP, UDP, stream) for real-time encoding feedback. Probing is handled via FFprobe, with JSON output deserialized into typed model classes (FFmpegProbeResult, FFmpegStream, etc.) using custom Gson adapters. The library also includes a partial NUT container demuxer. Its primary data flows involve constructing command arguments, launching external processes, parsing text/JSON output, and delivering typed results and progress events to the caller. External dependencies include a local ffmpeg/ffprobe installation and Java libraries (Guava, Commons IO, Gson, ModelMapper). The codebase is well-tested, actively maintained, and supports features like HLS multi-variant output, stream and metadata specifiers, complex filters, and encoding progress monitoring.