FFMPEG如何在为libavfilter编写过滤器时使用libswscale中的函数

时间:2017-04-14 16:37:02

标签: c ffmpeg libav

我正在尝试为FFMPEG编写一些过滤器,我想使用一些已经创建的过滤器来预处理平面。怎么能这样做?我有一个用于平面处理的标准循环:

int p;
    if (av_frame_is_writable(in)) {
        out = in;
    } else {
        out = ff_get_video_buffer(outlink, outlink->w, outlink->h);
        if (!out) {
            av_frame_free(&in);
            return AVERROR(ENOMEM);
        }
        av_frame_copy_props(out, in);
    }
    // processing planes
    for (p = 0; p < filter->nb_planes; p++) {
        pad_plane();
        transpose_plane(); // etc...  
        apply_my_filter();          
    }

    if (out != in)
        av_frame_free(&in);
    return ff_filter_frame(outlink, out);

我确实认为在FFMPEG的其他库中已经可以进行填充和转置。有什么常用方法可以在我的过滤器代码中使用它们?

0 个答案:

没有答案