Download Delphi FFmpeg VCL Components

Features of FFVCL

Basic Features

  • All-in-one solution for audio/video encoding and playing.
  • Perfect wrapper of FFmpeg libraries, easy to use, flexible and powerful.
  • Input frames editable such as text and/or image overlay.
View FFVCL Architecture
View Architecture of FFVCL - Delphi FFmpeg VCL Components (Video Encoder/Converter and Video Player)
  • Join multiple input files in variable formats to a single output file.
  • Support Frame Input (Bitmap canvas, Bitmap data, Bitmap DeviceContext, YUV).
  • Support Frame Output (RGB, MJPEG, H.263, H.264, YUV).
  • Support Packet Input (H.263, H.264, MJPEG, M4V, MPEGVideo, VC1).
  • Support directly PCM wave data input.
  • Support directly PCM wave data output.
  • Support DirectShow Capture.
  • Support GDI(Screen/Wave) Capture.
  • Support WebCam Capture.
  • Support Video Filters, such as flip, negate, scale, rate, etc.
  • Support previewing while encoding.
  • Support multiple instances of Player.
  • Support controlling playback speed of Player.
  • Support encoding in multiple threads.
  • Encoding multiple files in batchs built in.
  • Task thread priority is configurable.
  • Pause, Resume and Stop operations are available.
  • Log messages event via FFLogger component.
  • Encoding progress event.

Video Hook

  • OnVideoHook event is a very easy and powerful way to edit all input frames acting as internal Video Hook, such as text and/or image overlay, reverse frame picture, and various effects what you can process on Bitmap.
  • OnFrameHook event provides a chance to modify the video frames in original format.

Audio Hook

  • OnAudioHook event is a very easy way to edit all input audio samples acting as internal Audio Hook.

FFEncoder

  • FFEncoder provides audio/video formats transcoding: intput -> decoding(decompression) -> encoding(compression) -> output.
  • FFEncoder is powerful and a little complex, please refer to the encoder document and the sample application.

FFPlayer

  • FFPlayer plays audio and video files.
  • FFPlayer is easy to use and still not powerful enough, please refer to the sample application.

FFDecoder

  • Obtaining detail information of the input file.
  • Previewing any frame picture of the special video stream by seeking timestamp with Bitmap result.

FFLogger

  • FFLogger catchs the log generated by (Add-ons, FFEncoder, FFPlayer, FFDecoder and DLLs).
  • FFLogger is an assistant component, it will be automatically created as an global instance when necessary, and only one instance is allowed.

Add-ons

  • MemoryAccessAdapter provides memory access for intput and output (open, read/write, seek, close).
  • FrameInputAdapter provides directly video frames input (Bitmap canvas, Bitmap data, Bitmap DeviceContext, YUV).
  • FrameOutputAdapter provides directly video frames output (RGB, MJPEG, H.263, H.264, YUV).
  • PacketInputAdapter provides directly video packets input (H.263, H.264, MJPEG, M4V, MPEGVideo, VC1).
  • WaveInputAdapter provides directly PCM wave data input.
  • WaveOutputAdapter provides directly PCM wave data output.
  • GDICapture provides screen capturing for video input and wave recording for audio input.
  • DShowCapture(built in ffmpeg libraries) provides webcam capturing for video input and wave recording for audio input.