Building a Capture-to-Encode Pipeline with FFmpeg’s libav* APIs
When the ffmpeg command line isn’t enough, the libav* libraries give you frame-level control. A walkthrough of pipeline threading, timestamps, the send/receive encode loop, RAII wrappers, GPU frames and licensing.