【发布时间】:2020-08-26 14:48:29
【问题描述】:
我正在尝试在 c++ 中使用 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;
如何在我的代码中实现此功能?
【问题讨论】:
标签: c++ opengl ffmpeg video-processing