You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-11-23 21:54:53 +02:00
lavfi: add kerndeint filter
This is a port of the kerndeint filter (libmpcodecs/vf_kerndeint) by Donal A. Graft (original avisynth plugin author), and is based on the work by Jérémy Tran <tran.jeremy.av@gmail.com> done for SOCIS 2012.
This commit is contained in:
@@ -11,6 +11,7 @@ FATE_LAVFI = fate-lavfi-alphaextract_rgb \
|
||||
fate-lavfi-fade \
|
||||
fate-lavfi-field \
|
||||
fate-lavfi-idet \
|
||||
fate-lavfi-kerndeint \
|
||||
fate-lavfi-life \
|
||||
fate-lavfi-null \
|
||||
fate-lavfi-overlay \
|
||||
|
||||
@@ -80,6 +80,7 @@ do_lavfi_pixfmts(){
|
||||
test ${test%_[bl]e} = $testname || return 0
|
||||
filter=$2
|
||||
filter_args=$3
|
||||
prefilter_chain=$4
|
||||
|
||||
showfiltfmts="$target_exec $target_path/libavfilter/filtfmts-test"
|
||||
scale_exclude_fmts=${outfile}${testname}_scale_exclude_fmts
|
||||
@@ -96,7 +97,7 @@ do_lavfi_pixfmts(){
|
||||
pix_fmts=$(comm -12 $scale_exclude_fmts $in_fmts)
|
||||
|
||||
for pix_fmt in $pix_fmts; do
|
||||
do_video_filter $pix_fmt "format=$pix_fmt,$filter=$filter_args" -pix_fmt $pix_fmt
|
||||
do_video_filter $pix_fmt "${prefilter_chain}format=$pix_fmt,$filter=$filter_args" -pix_fmt $pix_fmt
|
||||
done
|
||||
|
||||
rm $in_fmts $scale_in_fmts $scale_out_fmts $scale_exclude_fmts
|
||||
@@ -104,6 +105,7 @@ do_lavfi_pixfmts(){
|
||||
|
||||
# all these filters have exactly one input and exactly one output
|
||||
do_lavfi_pixfmts "field" "field" "bottom"
|
||||
do_lavfi_pixfmts "kerndeint" "kerndeint" "" "tinterlace=interleave_top,"
|
||||
do_lavfi_pixfmts "pixfmts_copy" "copy" ""
|
||||
do_lavfi_pixfmts "pixfmts_crop" "crop" "100:100:100:100"
|
||||
do_lavfi_pixfmts "pixfmts_hflip" "hflip" ""
|
||||
|
||||
3
tests/ref/lavfi/kerndeint
Normal file
3
tests/ref/lavfi/kerndeint
Normal file
@@ -0,0 +1,3 @@
|
||||
argb 484893f83e13c937328f13a7c84d2f50
|
||||
yuv420p a935cce07c5287b92c6d5220361866ed
|
||||
yuyv422 f549c98059ba9ce50e28204256d13b5d
|
||||
Reference in New Issue
Block a user