diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-06-06 00:43:44 +0400 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-06-06 03:08:33 +0400 |
commit | ad60b3b1811f6fce23baf8cf081f469244004aae (patch) | |
tree | 940b8fe92e81801860c5d010d3031e51cd02511a /libavfilter/vf_overlay.c | |
parent | 647e2e070f0dbb7055c3a1443de0f5ed3292e0cc (diff) | |
parent | ecf79c4d3e8baaf2f303278ef81db6f8407656bc (diff) |
Merge remote-tracking branch 'qatar/master'
* qatar/master:
vorbis: Validate that the floor 1 X values contain no duplicates.
avprobe: Identify codec probe failures rather than calling them unsupported codecs.
avformat: Probe codecs at score 0 on buffer exhaustion conditions.
avformat: Factorize codec probing.
Indeo Audio decoder
imc: make IMDCT support stereo output
imc: move channel-specific data into separate context
lavfi: remove request/poll and drawing functions from public API on next bump
lavfi: make avfilter_insert_pad and pals private on next bump.
lavfi: make formats API private on next bump.
avplay: use buffersrc instead of custom input filter.
avtools: move buffer management code from avconv to cmdutils.
avconv: don't use InputStream in the buffer management code.
avconv: fix exiting when max frames is reached.
mpc8: fix maximum bands handling
aacdec: Turn PS off when switching to stereo and turn it to implicit when switching to mono.
Conflicts:
Changelog
cmdutils.h
ffmpeg.c
ffplay.c
ffprobe.c
libavcodec/avcodec.h
libavcodec/mpc8.c
libavcodec/v210dec.h
libavcodec/version.h
libavcodec/vorbisdec.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/buffersrc.c
libavfilter/formats.c
libavfilter/src_movie.c
libavfilter/vf_aspect.c
libavfilter/vf_blackframe.c
libavfilter/vf_boxblur.c
libavfilter/vf_crop.c
libavfilter/vf_cropdetect.c
libavfilter/vf_delogo.c
libavfilter/vf_drawbox.c
libavfilter/vf_drawtext.c
libavfilter/vf_fade.c
libavfilter/vf_fifo.c
libavfilter/vf_format.c
libavfilter/vf_frei0r.c
libavfilter/vf_gradfun.c
libavfilter/vf_hflip.c
libavfilter/vf_hqdn3d.c
libavfilter/vf_libopencv.c
libavfilter/vf_lut.c
libavfilter/vf_overlay.c
libavfilter/vf_pad.c
libavfilter/vf_scale.c
libavfilter/vf_select.c
libavfilter/vf_showinfo.c
libavfilter/vf_transpose.c
libavfilter/vf_unsharp.c
libavfilter/vf_yadif.c
libavfilter/vsrc_color.c
libavfilter/vsrc_testsrc.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter/vf_overlay.c')
-rw-r--r-- | libavfilter/vf_overlay.c | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/libavfilter/vf_overlay.c b/libavfilter/vf_overlay.c index 97a3e080c4..5bcd7afb2c 100644 --- a/libavfilter/vf_overlay.c +++ b/libavfilter/vf_overlay.c @@ -28,6 +28,7 @@ /* #define DEBUG */ #include "avfilter.h" +#include "formats.h" #include "libavutil/eval.h" #include "libavutil/avstring.h" #include "libavutil/opt.h" @@ -38,6 +39,7 @@ #include "internal.h" #include "bufferqueue.h" #include "drawutils.h" +#include "video.h" static const char *const var_names[] = { "main_w", "W", ///< width of the main video @@ -176,16 +178,16 @@ static int query_formats(AVFilterContext *ctx) AVFilterFormats *overlay_formats; if (over->allow_packed_rgb) { - main_formats = avfilter_make_format_list(main_pix_fmts_rgb); - overlay_formats = avfilter_make_format_list(overlay_pix_fmts_rgb); + main_formats = ff_make_format_list(main_pix_fmts_rgb); + overlay_formats = ff_make_format_list(overlay_pix_fmts_rgb); } else { - main_formats = avfilter_make_format_list(main_pix_fmts_yuv); - overlay_formats = avfilter_make_format_list(overlay_pix_fmts_yuv); + main_formats = ff_make_format_list(main_pix_fmts_yuv); + overlay_formats = ff_make_format_list(overlay_pix_fmts_yuv); } - avfilter_formats_ref(main_formats, &ctx->inputs [MAIN ]->out_formats); - avfilter_formats_ref(overlay_formats, &ctx->inputs [OVERLAY]->out_formats); - avfilter_formats_ref(main_formats, &ctx->outputs[MAIN ]->in_formats ); + ff_formats_ref(main_formats, &ctx->inputs [MAIN ]->out_formats); + ff_formats_ref(overlay_formats, &ctx->inputs [OVERLAY]->out_formats); + ff_formats_ref(main_formats, &ctx->outputs[MAIN ]->in_formats ); return 0; } @@ -470,7 +472,7 @@ static int try_start_frame(AVFilterContext *ctx, AVFilterBufferRef *mainpic) av_ts2str(over->overpicref->pts), av_ts2timestr(over->overpicref->pts, &outlink->time_base)); av_dlog(ctx, "\n"); - avfilter_start_frame(ctx->outputs[0], avfilter_ref_buffer(outpicref, ~0)); + ff_start_frame(ctx->outputs[0], avfilter_ref_buffer(outpicref, ~0)); over->frame_requested = 0; return 0; } @@ -498,9 +500,9 @@ static int try_push_frame(AVFilterContext *ctx) blend_slice(ctx, outpicref, over->overpicref, over->x, over->y, over->overpicref->video->w, over->overpicref->video->h, 0, outpicref->video->w, outpicref->video->h); - avfilter_draw_slice(outlink, 0, outpicref->video->h, +1); + ff_draw_slice(outlink, 0, outpicref->video->h, +1); avfilter_unref_bufferp(&outlink->out_buf); - avfilter_end_frame(outlink); + ff_end_frame(outlink); return 0; } @@ -536,7 +538,7 @@ static void draw_slice_main(AVFilterLink *inlink, int y, int h, int slice_dir) over->overpicref->video->w, over->overpicref->video->h, y, outpicref->video->w, h); } - avfilter_draw_slice(outlink, y, h, slice_dir); + ff_draw_slice(outlink, y, h, slice_dir); } static void end_frame_main(AVFilterLink *inlink) @@ -550,7 +552,7 @@ static void end_frame_main(AVFilterLink *inlink) return; avfilter_unref_bufferp(&inlink->cur_buf); avfilter_unref_bufferp(&outlink->out_buf); - avfilter_end_frame(ctx->outputs[0]); + ff_end_frame(ctx->outputs[0]); } static void start_frame_over(AVFilterLink *inlink, AVFilterBufferRef *inpicref) @@ -584,7 +586,7 @@ static int request_frame(AVFilterLink *outlink) input = !over->overlay_eof && (over->queue_main.available || over->queue_over.available < 2) ? OVERLAY : MAIN; - ret = avfilter_request_frame(ctx->inputs[input]); + ret = ff_request_frame(ctx->inputs[input]); /* EOF on main is reported immediately */ if (ret == AVERROR_EOF && input == OVERLAY) { over->overlay_eof = 1; |