overview.md

July 14, 2026 · View on GitHub

Обзор

Библиотека компонентов скрывает сложность C API FFmpeg и предоставляет привычный для Delphi стиль: TComponent, свойства, методы, события, design-time редакторы.

Статус: альфа — см. README компонентов.

Платформы

ОбластьDelphi Win32/Win64FPC Win64Linux64 (FPC / Delphi)
Биндинги source/
Невизуальные компоненты
TFFVideoPlayer (VCL)
TFFFMXVideoPlayer (FMX)✓ (PAServer)
АудиовыходWaveOutALSA → SDL2 fallback

FFmpeg 8.1.x shared libraries должны лежать рядом с исполняемым файлом (bin/win64/, bin/linux64/).

Установка

  1. Соберите rtpFFMPEG (биндинги).
  2. Соберите rtpFFMPEGComponents (runtime-компоненты).
  3. Установите dclFFMPEGComponents в IDE (палитра FFmpeg).

Скопируйте FFmpeg DLL/SO в каталог с .exe или используйте TFFLoader / tools/setup_dev_environment.ps1.

Компоненты на палитре

КомпонентНазначение
TFFLoaderЗагрузка DLL FFmpeg
TFFLoggerПерехват av_log
TFFReaderDemux, AutoPump, custom I/O
TFFDecoderDecode, preview, graph sink/source
TFFEncoderEncode, transcode pipeline
TFFWriterMux / remux
TFFMemoryAccessAdapterAVIOContext поверх TStream
TFFBitmapEncoderBGRA / TBitmap → видеофайл
TFFMediaInfoProbe метаданных
TFFThumbnailExtractorКадр-превью
TFFTranscodeJobPreset-based transcode
TFFRemuxJobStream-copy remux
TFFFrameFilterУзел libavfilter (scale, fps, …)
TFFVideoPlayerVCL-плеер
TFFPlayerControlПлеер + transport bar
TFFFMXVideoPlayerFMX-плеер
TFFSubtitleDecoderДекодирование субтитров для overlay

Вспомогательные модули (не на палитре): uFFPlaybackEngine, uFFLinkedPlayback, uFFSubtitleOverlay, uFFSubtitleBitmap, uFFSubtitleAss, uFFHardwareDecode.

Режимы работы плеера

РежимУсловиеЯдро
EngineFileName задан, VideoDecoder = nilTFFPlaybackEngine
LinkedVideoDecoder назначенTFFLinkedPlayback + graph

См. Воспроизведение.