ffmpeg/libavfilter
Neil Birkbeck e4788e9cd9 avfilter/vf_yadif: fix extra leading dup frame when deint=1
Logic for handling single frame in yadif (0f9f24c9), caused deint=1 (e.g., yadif=0👎1) to output extra duplicate leading frame:

ffmpeg -i fate-suite/ffmpeg-synthetic/vsynth1/%02d.pgm  -vf yadif=0👎1,showinfo -f null -y /dev/null
 [Parsed_showinfo_1 @ 0x1d967d0] n:0 pts:0 pts_time:0 pos:-1 fmt:gray sar:0/1 s:352x432 i:P iskey:1 type:I checksum:E457EEA0 plane_checksum:[E457EEA0] mean:[126] stdev:[46.6]
 [Parsed_showinfo_1 @ 0x1d967d0] n:1 pts:0 pts_time:0 pos:-1 fmt:gray sar:0/1 s:352x432 i:P iskey:1 type:I checksum:E457EEA0 plane_checksum:[E457EEA0] mean:[126] stdev:[46.6]
(Outputs 51 frames)

After patch, vf "yadif=0👎1" behaves correctly (like "yadif=0👎0") and outputs 50 frames, first two:

[Parsed_showinfo_1 @ 0x1e307d0] n:0 pts:0 pts_time:0 pos:-1 fmt:gray sar:0/1 s:352x432 i:P iskey:1 type:I checksum:68E8D1EB plane_checksum:[68E8D1EB] mean:[126] stdev:[46.0]
[Parsed_showinfo_1 @ 0x1e307d0] n:1 pts:2 pts_time:0.04 pos:-1 fmt:gray sar:0/1 s:352x432 i:P iskey:1 type:I checksum:4E674BC7 plane_checksum:[4E674BC7] mean:[125] stdev:[46.0]
(Outputs 50 frames)

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-29 21:59:47 +01:00
..
libmpcodecs mpcodecs: Use _INLINE guards for inline asm. 2014-11-17 15:16:34 +01:00
x86 avfilter/x86/vf_interlace: remove redundant instructions 2014-11-25 12:37:19 +01:00
aeval.c
af_adelay.c avfilter/af_adelay: use av_freep(), do not leave stale pointers in memory 2014-10-07 13:44:26 +02:00
af_aecho.c
af_afade.c lavfi/afade: fix cur_sample computation 2014-10-21 13:28:08 +02:00
af_aformat.c
af_amerge.c
af_amix.c avfilter/af_amix: Use avpriv_float_dsp_alloc() 2014-11-18 12:24:16 +01:00
af_anull.c
af_apad.c
af_aphaser.c
af_aresample.c avfilter/af_aresample: remove unused variable 2014-11-06 15:58:28 +01:00
af_asetnsamples.c
af_asetrate.c
af_ashowinfo.c
af_astats.c
af_astreamsync.c
af_asyncts.c
af_atempo.c
af_biquads.c
af_bs2b.c
af_channelmap.c libavfilter/af_channelmap: avoid derreferencing possible null 2014-09-26 18:42:39 -03:00
af_channelsplit.c
af_compand.c
af_earwax.c
af_flanger.c
af_join.c libavfilter/af_join: avoid derreferencing possible null 2014-09-26 18:42:39 -03:00
af_ladspa.c
af_pan.c
af_replaygain.c
af_resample.c Merge commit '0d989dbfc4bc5bc1d563e967449116a7a9865258' 2014-10-18 22:04:36 +02:00
af_silencedetect.c
af_silenceremove.c
af_volume.c avfilter/af_volume: Use avpriv_float_dsp_alloc() 2014-11-18 12:38:38 +01:00
af_volume.h avfilter/af_volume: Use avpriv_float_dsp_alloc() 2014-11-18 12:38:38 +01:00
af_volumedetect.c
all_channel_layouts.inc
allfilters.c lavfi: add xbr filter xBR 2014-11-10 03:45:00 +01:00
asink_anullsink.c
asrc_abuffer.h
asrc_anullsrc.c
asrc_flite.c
asrc_sine.c
audio.c
audio.h
avcodec.c avfilter: remove obsolete FF_API_FILL_FRAME cruft 2014-09-17 15:23:26 -03:00
avcodec.h avfilter: remove obsolete FF_API_FILL_FRAME cruft 2014-09-17 15:23:26 -03:00
avf_avectorscope.c
avf_concat.c avfilter/avf_concat: Use av_freep(), avoid leaving stale pointers in memory 2014-11-22 18:47:26 +01:00
avf_showcqt.c
avf_showspectrum.c
avf_showwaves.c avfilter/avf_showwaves: fix off by one error in loop condition 2014-11-09 16:44:10 +01:00
avfilter.c Merge commit 'ac84c1ce24a285f9cf16d4297bce73b1c4a6e435' 2014-10-25 03:08:19 +02:00
avfilter.h
avfiltergraph.c avfilter: Properly check for failed format query 2014-10-02 12:22:49 +01:00
avfiltergraph.h
avfilterres.rc
bbox.c
bbox.h
buffer.c
bufferqueue.h
buffersink.c
buffersink.h
buffersrc.c
buffersrc.h
deshake_opencl_kernel.h
deshake_opencl.c
deshake_opencl.h
deshake.h vf_deshake: rename Transform.vector to Transform.vec to avoid compiler confusion 2014-09-18 00:48:15 +02:00
drawutils.c
drawutils.h
dualinput.c
dualinput.h
f_ebur128.c
f_interleave.c
f_perms.c
f_select.c
f_sendcmd.c
f_zmq.c
fifo.c
filtfmts.c
formats.c avfilter/formats: Alloc NULL fmts in SET_COMMON_FORMATS() 2014-11-21 22:15:32 +01:00
formats.h
framesync.c
framesync.h
generate_wave_table.c
generate_wave_table.h
gradfun.h
graphdump.c
graphparser.c avfilter/graphparser: Use av_freep(), avoid leaving stale pointers in memory 2014-11-22 18:56:37 +01:00
interlace.h Merge commit '2e1704059ae8625beda2ffde847ad22c5ba416dc' 2014-11-15 02:39:49 +01:00
internal.h
lavfutils.c
lavfutils.h
libavfilter.v
log2_tab.c
lswsutils.c
lswsutils.h
Makefile lavfi: add xbr filter xBR 2014-11-10 03:45:00 +01:00
opencl_allkernels.c
opencl_allkernels.h
pthread.c
setpts.c
settb.c
split.c
src_movie.c
thread.h
tinterlace.h avfilter/tinterlace: add Support for ff_lowpass_line_avx() & ff_lowpass_line_sse2() 2014-11-15 04:02:33 +01:00
transform.c
transform.h
trim.c
unsharp_opencl_kernel.h
unsharp_opencl.c
unsharp_opencl.h
unsharp.h
version.h avfilter/vf_idet: add a repeated field detection 2014-11-05 12:10:42 +01:00
vf_alphamerge.c
vf_aspect.c
vf_bbox.c
vf_blackdetect.c
vf_blackframe.c
vf_blend.c
vf_boxblur.c
vf_codecview.c
vf_colorbalance.c
vf_colorchannelmixer.c
vf_colormatrix.c
vf_copy.c
vf_crop.c
vf_cropdetect.c
vf_curves.c
vf_dctdnoiz.c
vf_decimate.c
vf_dejudder.c
vf_delogo.c
vf_deshake.c vf_deshake: rename Transform.vector to Transform.vec to avoid compiler confusion 2014-09-18 00:48:15 +02:00
vf_drawbox.c
vf_drawtext.c avfilter/vf_drawtext: use gm_time_r() for thread saftey 2014-11-02 19:20:26 +01:00
vf_edgedetect.c
vf_elbg.c
vf_extractplanes.c
vf_fade.c
vf_field.c
vf_fieldmatch.c
vf_fieldorder.c
vf_format.c Merge commit 'd1afd3e1d6e43f4d37ae147091f270124ac48e04' 2014-10-20 22:02:45 +02:00
vf_fps.c
vf_framepack.c
vf_framestep.c
vf_frei0r.c
vf_geq.c
vf_gradfun.c
vf_hflip.c
vf_histeq.c
vf_histogram.c
vf_hqdn3d.c
vf_hqdn3d.h
vf_hqx.c
vf_hue.c
vf_idet.c avfilter/vf_idet: Fixing idet for single-frame inputs. 2014-11-28 23:38:59 +01:00
vf_idet.h avfilter/vf_idet: add a repeated field detection 2014-11-05 12:10:42 +01:00
vf_il.c
vf_interlace.c Merge commit '2e1704059ae8625beda2ffde847ad22c5ba416dc' 2014-11-15 02:39:49 +01:00
vf_kerndeint.c
vf_lenscorrection.c
vf_libopencv.c
vf_lut3d.c
vf_lut.c avfilter/vf_lut: gammaval709() 2014-11-14 02:55:15 +01:00
vf_mcdeint.c
vf_mergeplanes.c
vf_mp.c
vf_mpdecimate.c
vf_noise.c x86/vf_noise: move asm code to a separate file 2014-10-17 00:44:35 -03:00
vf_noise.h x86/vf_noise: move asm code to a separate file 2014-10-17 00:44:35 -03:00
vf_null.c
vf_overlay.c
vf_owdenoise.c
vf_pad.c
vf_perspective.c libavfi: added option to vf_perspective to specify transformation by giving destinations of corners of source. 2014-10-19 17:59:53 +02:00
vf_phase.c
vf_pixdesctest.c
vf_pp.c avfilter/vf_pp: add gbrp support 2014-10-14 17:15:56 +02:00
vf_psnr.c
vf_pullup.c
vf_pullup.h
vf_removelogo.c
vf_rotate.c
vf_sab.c
vf_scale.c avfilter/vf_scale: Allow chroma samples to be above and to the left of luma samples 2014-09-21 12:24:03 +02:00
vf_separatefields.c
vf_setfield.c
vf_showinfo.c Merge commit '6d96c7ea89600655b1f18a3b12f3f041fa714152' 2014-10-18 21:50:34 +02:00
vf_shuffleplanes.c
vf_signalstats.c avfilter/signalstats: re-use yuv/yuvu/yuvv vars in diff 2014-11-26 21:29:09 +01:00
vf_smartblur.c
vf_spp.c
vf_spp.h
vf_stereo3d.c
vf_subtitles.c avfilter/ass: add shaping option 2014-09-16 21:23:33 +02:00
vf_super2xsai.c
vf_swapuv.c
vf_telecine.c
vf_thumbnail.c
vf_tile.c
vf_tinterlace.c avfilter/vf_tinterlace: remove unused variable 2014-11-16 01:06:18 +01:00
vf_transpose.c
vf_unsharp.c
vf_vflip.c
vf_vidstabdetect.c avfilter: Read errno before av_log() as the callback from av_log() might affect errno 2014-10-25 13:28:51 +02:00
vf_vidstabtransform.c avfilter: Read errno before av_log() as the callback from av_log() might affect errno 2014-10-25 13:28:51 +02:00
vf_vignette.c
vf_w3fdif.c
vf_xbr.c avfilter/xbr: fix style in FILT4() calls 2014-11-15 22:48:22 +01:00
vf_yadif.c avfilter/vf_yadif: fix extra leading dup frame when deint=1 2014-11-29 21:59:47 +01:00
vf_zoompan.c
video.c
video.h
vidstabutils.c
vidstabutils.h
vsink_nullsink.c
vsrc_cellauto.c
vsrc_life.c
vsrc_mandelbrot.c
vsrc_mptestsrc.c
vsrc_testsrc.c
yadif.h