ffplay: reorder the filters to ensure that inputs of the custom filters are merged first
For more info see http://ffmpeg.org/pipermail/ffmpeg-user/2013-December/018761.html Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
7
ffplay.c
7
ffplay.c
@@ -1727,7 +1727,8 @@ static int get_video_frame(VideoState *is, AVFrame *frame, AVPacket *pkt, int *s
|
|||||||
static int configure_filtergraph(AVFilterGraph *graph, const char *filtergraph,
|
static int configure_filtergraph(AVFilterGraph *graph, const char *filtergraph,
|
||||||
AVFilterContext *source_ctx, AVFilterContext *sink_ctx)
|
AVFilterContext *source_ctx, AVFilterContext *sink_ctx)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret, i;
|
||||||
|
int nb_filters = graph->nb_filters;
|
||||||
AVFilterInOut *outputs = NULL, *inputs = NULL;
|
AVFilterInOut *outputs = NULL, *inputs = NULL;
|
||||||
|
|
||||||
if (filtergraph) {
|
if (filtergraph) {
|
||||||
@@ -1755,6 +1756,10 @@ static int configure_filtergraph(AVFilterGraph *graph, const char *filtergraph,
|
|||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Reorder the filters to ensure that inputs of the custom filters are merged first */
|
||||||
|
for (i = 0; i < graph->nb_filters - nb_filters; i++)
|
||||||
|
FFSWAP(AVFilterContext*, graph->filters[i], graph->filters[i + nb_filters]);
|
||||||
|
|
||||||
ret = avfilter_graph_config(graph, NULL);
|
ret = avfilter_graph_config(graph, NULL);
|
||||||
fail:
|
fail:
|
||||||
avfilter_inout_free(&outputs);
|
avfilter_inout_free(&outputs);
|
||||||
|
Reference in New Issue
Block a user