Я пытаюсь наложить два видео, используя FFmpeg на С++. Поэтому я следил за страницей FFmpeg и выполнял эту команду в терминале.
$ ffmpeg -i Right.mov -i Left.mov -filter_complex "[0:v][1:v] overlay=0:0" -c:a copy output.mov
Я могу реализовать эту функциональность через терминал, но я пытаюсь добиться этой функциональности с помощью кода.
typedef struct {
AVFormatContext *fmt_ctx;
int stream_idx;
AVRational time_base;
AVStream *video_stream;
AVCodecContext *codec_ctx;
AVCodecContext *pCodecCtxOrig;
AVCodec *decoder;
AVPacket *packet;
AVFrame *av_frame;
AVFrame *gl_frame;
AVFrame *out_frame;
AVStream *pStream;
struct SwsContext *conv_ctx;
также я показываю пример кода, но я не уверен в этом
https://ffmpeg.org/doxygen/2.1/doc_2examples_2filtering_video_8c-example.html
и https://code5.cn/so/c%2B%2B/2601062 а>
AVFilterContext *buffersink_ctx;
AVFilterContext *buffersrc_ctx;
AVFilterGraph *filter_graph;
как я могу реализовать эту функцию в своем коде?