diff options
author | Stefano Sabatini <stefano.sabatini-lala@poste.it> | 2011-07-29 20:19:04 +0200 |
---|---|---|
committer | Stefano Sabatini <stefano.sabatini-lala@poste.it> | 2011-07-29 20:24:44 +0200 |
commit | d9c23a0d5a56488b146eef17a19a9b47643be333 (patch) | |
tree | 51d017179c9f36d01c6e9b4f983a306b9189fff7 | |
parent | 2dd2abe391ccf1b9140c6eea95767b5a8c503ddd (diff) | |
download | ffmpeg-d9c23a0d5a56488b146eef17a19a9b47643be333.tar.gz |
vf_transpose: avoid multiple calls to avfilter_draw_slice()
avfilter_draw_slice() is already called in the end_frame() callback,
this avoids multiple calls. This is done by adding a null draw_slice()
callback.
In particular fix crash occurring with -vf transpose=3,hflip, fix trac
issue #371.
-rw-r--r-- | libavfilter/vf_transpose.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libavfilter/vf_transpose.c b/libavfilter/vf_transpose.c index 8b11ae8d53..f4f72b9c64 100644 --- a/libavfilter/vf_transpose.c +++ b/libavfilter/vf_transpose.c @@ -195,6 +195,8 @@ static void end_frame(AVFilterLink *inlink) avfilter_unref_buffer(outpic); } +static void null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir) { } + AVFilter avfilter_vf_transpose = { .name = "transpose", .description = NULL_IF_CONFIG_SMALL("Transpose input video."), @@ -207,6 +209,7 @@ AVFilter avfilter_vf_transpose = { .inputs = (AVFilterPad[]) {{ .name = "default", .type = AVMEDIA_TYPE_VIDEO, .start_frame = start_frame, + .draw_slice = null_draw_slice, .end_frame = end_frame, .min_perms = AV_PERM_READ, }, { .name = NULL}}, |