ffmpeg libavfilter/f_selectstream.c有一段代码
static int parse_definition(AVFilterContext *ctx, int nb_pads, void *filter_frame, int is_audio)
{
......
pad.filter_frame = filter_frame
......
}
现在要将其改为C++,但是C++没有隐式类型转换,会报错
解决
static int parse_definition(AVFilterContext *ctx, int nb_pads, void *filter_frame, int is_audio)
{
typedef int (*filterframe_type)(AVFilterLink *link, AVFrame *frame);
......
pad.filter_frame = (filterframe_type)filter_frame
......
}