summaryrefslogtreecommitdiff
path: root/libavfilter/vf_tinterlace.c
Commit message (Collapse)AuthorAge
* lavfi: split frame_count between input and output.Nicolas George2016-11-13
| | | | | | | | | | | | AVFilterLink.frame_count is supposed to count the number of frames that were passed on the link, but with min_samples, that number is not always the same for the source and destination filters. With the addition of a FIFO on the link, the difference will become more significant. Split the variable in two: frame_count_in counts the number of frames that entered the link, frame_count_out counts the number of frames that were sent to the destination filter.
* avfilter/vf_tinterlace: fix image alignmentMichael Niedermayer2016-02-14
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avutil: Rename FF_CEIL_COMPAT to AV_CEIL_COMPATDerek Buitenhuis2016-01-27
| | | | | | | | | | Libav, for some reason, merged this as a public API function. This will aid in future merges. A define is left for backwards compat, just in case some person used it, since it is in a public header. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* avfilter/vf_tinterlace: add mergex2 modePaul B Mahol2015-10-03
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavfi: remove FF_LINK_FLAG_REQUEST_LOOP.Nicolas George2015-09-20
| | | | It has no longer any effect.
* lavfi/tinterlace: Double aspect ratio for modes merge and pad.Carl Eugen Hoyos2015-06-04
|
* avfilter: handle error in query_formats() in bunch of filtersPaul B Mahol2015-04-08
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* vfilter/vf_tinterlace: Fix issues with linesize and colsMichael Niedermayer2015-01-06
| | | | | | Based on patch by Vittorio Giovara <vittorio.giovara@gmail.com> from 696141e898193311c994b399a8dc60713709092f Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/vf_tinterlace: Favor using standard timebases for the outputMichael Niedermayer2014-12-02
| | | | | | Reported-by: Vittorio Giovara <vittorio.giovara@gmail.com> Inspired by discussion with Kieran Kunhya <kierank@obe.tv> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/vf_tinterlace: remove unused variableMichael Niedermayer2014-11-16
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/tinterlace: add Support for ff_lowpass_line_avx() & ↵Michael Niedermayer2014-11-15
| | | | | | | | ff_lowpass_line_sse2() Based-on: 2e1704059ae8625beda2ffde847ad22c5ba416dc by Kieran Kunhya Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/tinterlace: Move lowpass_line to a separate function and call it ↵Michael Niedermayer2014-11-15
| | | | | | | | | through a function pointer This permits replacing it by a optimized implementation Based-on / Idea-from: 2e1704059ae8625beda2ffde847ad22c5ba416dc by Kieran Kunhya Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/tinterlace: split context definition into seperate header so it can ↵Michael Niedermayer2014-11-15
| | | | | | | | be used by future optimizations Idea from 2e1704059ae8625beda2ffde847ad22c5ba416dc from Kieran Kunhya Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/vf_tinterlace: fix linesize vs. widthMichael Niedermayer2014-11-15
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/vf_tinterlace: Fix output top field first flag for MODE_INTERLACEX2Michael Niedermayer2014-11-15
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/vf_tinterlace: fix frame rateAleksey Vasenev2014-11-13
| | | | | Signed-off-by: Aleksey Vasenev <margtu-fivt@ya.ru> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi: add const/static const to pix_fmts arrays.Reimar Döffinger2014-08-31
| | | | Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* avfilter/vf_tinterlace: Fix vf_tinterlace mode 6 (interlacex2)Jasper Taylor2014-03-16
| | | | | | | | | | | | | | | | The purpose of this filter mode is to allow interlaced content to display properly in interlaced video modes, as described in http://forum.xbmc.org/showthread.php?tid=81834 and https://github.com/mpv-player/mpv/issues/624#issuecomment-37685195 . The filter doubles the video frame rate, but does not work properly because: (1) it does not set the properties of the output stream to indicate the doubled frame rate, and (2) it does not set an appropriate PTS on the extra frames. The attached patch fixes these problems by settling these values the same way they are set in vf_yadif mode 1 (field) which also doubles the frame rate. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/vf_tinterlace: check clone return valueMichael Niedermayer2013-11-19
| | | | | | Inspired by: 3a16ec19d2426457419cb8a7304f97982699efda Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-10-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: lavfi: do not export the filters from shared objects Conflicts: libavfilter/af_amix.c libavfilter/af_anull.c libavfilter/asrc_anullsrc.c libavfilter/f_select.c libavfilter/f_settb.c libavfilter/split.c libavfilter/src_movie.c libavfilter/vf_aspect.c libavfilter/vf_blackframe.c libavfilter/vf_colorbalance.c libavfilter/vf_copy.c libavfilter/vf_crop.c libavfilter/vf_cropdetect.c libavfilter/vf_drawbox.c libavfilter/vf_format.c libavfilter/vf_framestep.c libavfilter/vf_frei0r.c libavfilter/vf_hflip.c libavfilter/vf_libopencv.c libavfilter/vf_lut.c libavfilter/vf_null.c libavfilter/vf_overlay.c libavfilter/vf_scale.c libavfilter/vf_transpose.c libavfilter/vf_unsharp.c libavfilter/vf_vflip.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* avfilter/vf_tinterlace: add yuv411p, yuv440p, yuva422p and yuva444pPaul B Mahol2013-09-21
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter: various cosmeticsPaul B Mahol2013-09-12
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-06-18
| | | | | | | * qatar/master: lavfi: math typo in interlace filter Merged-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi/tinterlace: remove request frame hackPaul B Mahol2013-05-27
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavfi: use ceil right shift for chroma width/height.Clément Bœsch2013-05-10
| | | | | | | This should fix several issues with odd dimensions inputs. lut, vflip, pad and crop video filters also need to be checked for such issues. It's possible sws is also affected.
* lavu: add FF_CEIL_RSHIFT and use it in various places.Clément Bœsch2013-05-09
|
* avfilter/vf_tinterlace: fix handling of not so even sizesMichael Niedermayer2013-04-29
| | | | | | Fixes green bottom line Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi/tinterlace: switch to an AVOptions-based system.Clément Bœsch2013-04-11
|
* lavfi: always check return value of ff_get_{audio,video}_buffer()Paul B Mahol2013-04-08
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavfi/tinterlace: use standard options parsing.Clément Bœsch2013-03-24
|
* Merge commit '7e350379f87e7f74420b4813170fe808e2313911'Michael Niedermayer2013-03-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '7e350379f87e7f74420b4813170fe808e2313911': lavfi: switch to AVFrame. Conflicts: doc/filters.texi libavfilter/af_ashowinfo.c libavfilter/audio.c libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/buffersink.c libavfilter/buffersrc.c libavfilter/buffersrc.h libavfilter/f_select.c libavfilter/f_setpts.c libavfilter/fifo.c libavfilter/split.c libavfilter/src_movie.c libavfilter/version.h libavfilter/vf_aspect.c libavfilter/vf_bbox.c libavfilter/vf_blackframe.c libavfilter/vf_delogo.c libavfilter/vf_drawbox.c libavfilter/vf_drawtext.c libavfilter/vf_fade.c libavfilter/vf_fieldorder.c libavfilter/vf_fps.c libavfilter/vf_frei0r.c libavfilter/vf_gradfun.c libavfilter/vf_hqdn3d.c libavfilter/vf_lut.c libavfilter/vf_overlay.c libavfilter/vf_pad.c libavfilter/vf_scale.c libavfilter/vf_showinfo.c libavfilter/vf_transpose.c libavfilter/vf_vflip.c libavfilter/vf_yadif.c libavfilter/video.c libavfilter/vsrc_testsrc.c libavfilter/yadif.h Following are notes about the merge authorship and various technical details. Michael Niedermayer: * Main merge operation, notably avfilter.c and video.c * Switch to AVFrame: - afade - anullsrc - apad - aresample - blackframe - deshake - idet - il - mandelbrot - mptestsrc - noise - setfield - smartblur - tinterlace * various merge changes and fixes in: - ashowinfo - blackdetect - field - fps - select - testsrc - yadif Nicolas George: * Switch to AVFrame: - make rawdec work with refcounted frames. Adapted from commit 759001c534287a96dc96d1e274665feb7059145d by Anton Khirnov. Also, fix the use of || instead of | in a flags check. - make buffer sink and src, audio and video work all together Clément Bœsch: * Switch to AVFrame: - aevalsrc - alphaextract - blend - cellauto - colormatrix - concat - earwax - ebur128 - edgedetect - geq - histeq - histogram - hue - kerndeint - life - movie - mp (with the help of Michael) - overlay - pad - pan - pp - pp - removelogo - sendcmd - showspectrum - showwaves - silencedetect - stereo3d - subtitles - super2xsai - swapuv - thumbnail - tile Hendrik Leppkes: * Switch to AVFrame: - aconvert - amerge - asetnsamples - atempo - biquads Matthieu Bouron: * Switch to AVFrame - alphamerge - decimate - volumedetect Stefano Sabatini: * Switch to AVFrame: - astreamsync - flite - framestep Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Nicolas George <nicolas.george@normalesup.org> Signed-off-by: Clément Bœsch <ubitux@gmail.com> Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com> Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com> Signed-off-by: Stefano Sabatini <stefasab@gmail.com> Merged-by: Michael Niedermayer <michaelni@gmx.at>
* vf_tinterlace: fix logical/bit op mixupMichael Niedermayer2013-01-06
| | | | | | Fixes CID966642 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* vf_tinterlace: dont mix declarations and expressionsMichael Niedermayer2012-12-30
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi/tinterlace: add low-pass-filter for top/bottom interleave modesMark Himsley2012-12-30
| | | | Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
* vf_tinterlace: default of mode switch is impossible, add assert.Michael Niedermayer2012-12-11
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi/tinterlace: drop redundant NULL checks in uninit()Stefano Sabatini2012-12-06
|
* lavfi/tinterlace: add support to option parsingStefano Sabatini2012-12-06
| | | | Simplify code, and provide introspection through the AVOption system.
* lavfi/tinterlace: switch to filter_frame APIStefano Sabatini2012-12-06
| | | | Also add missing NULL checks.
* lavfi: convert remaining input/output list compound literals to named objects.Clément Bœsch2012-11-28
| | | | This is following 568c70e79ee267426c15ef4603c69703f6a5884a.
* vf_tinterlace: check av_image_get_linesize() return valueMichael Niedermayer2012-11-03
| | | | | Fixes CID703717 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi/tinterlace: remove poll_frame() callbackStefano Sabatini2012-10-30
| | | | That interface is deprecated, and apparently useless.
* Replace usage of the deprecated av_pix_fmt_descriptors array with ↵Hendrik Leppkes2012-10-20
| | | | | | av_pix_fmt_desc_get Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '716d413c13981da15323c7a3821860536eefdbbb'Michael Niedermayer2012-10-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '716d413c13981da15323c7a3821860536eefdbbb': Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat Conflicts: doc/examples/muxing.c ffmpeg.h ffmpeg_filter.c ffmpeg_opt.c ffplay.c ffprobe.c libavcodec/8bps.c libavcodec/aasc.c libavcodec/aura.c libavcodec/avcodec.h libavcodec/avs.c libavcodec/bfi.c libavcodec/bmp.c libavcodec/bmpenc.c libavcodec/c93.c libavcodec/cscd.c libavcodec/cyuv.c libavcodec/dpx.c libavcodec/dpxenc.c libavcodec/eatgv.c libavcodec/escape124.c libavcodec/ffv1.c libavcodec/flashsv.c libavcodec/fraps.c libavcodec/h264.c libavcodec/huffyuv.c libavcodec/iff.c libavcodec/imgconvert.c libavcodec/indeo3.c libavcodec/kmvc.c libavcodec/libopenjpegdec.c libavcodec/libopenjpegenc.c libavcodec/libx264.c libavcodec/ljpegenc.c libavcodec/mjpegdec.c libavcodec/mjpegenc.c libavcodec/motionpixels.c libavcodec/mpeg12.c libavcodec/mpeg12enc.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo_enc.c libavcodec/pamenc.c libavcodec/pcxenc.c libavcodec/pgssubdec.c libavcodec/pngdec.c libavcodec/pngenc.c libavcodec/pnm.c libavcodec/pnmdec.c libavcodec/pnmenc.c libavcodec/ptx.c libavcodec/qdrw.c libavcodec/qpeg.c libavcodec/qtrleenc.c libavcodec/raw.c libavcodec/rawdec.c libavcodec/rl2.c libavcodec/sgidec.c libavcodec/sgienc.c libavcodec/snowdec.c libavcodec/snowenc.c libavcodec/sunrast.c libavcodec/targa.c libavcodec/targaenc.c libavcodec/tiff.c libavcodec/tiffenc.c libavcodec/tmv.c libavcodec/truemotion2.c libavcodec/utils.c libavcodec/vb.c libavcodec/vp3.c libavcodec/wnv1.c libavcodec/xl.c libavcodec/xwddec.c libavcodec/xwdenc.c libavcodec/yop.c libavdevice/v4l2.c libavdevice/x11grab.c libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/buffersrc.c libavfilter/drawutils.c libavfilter/formats.c libavfilter/src_movie.c libavfilter/vf_ass.c libavfilter/vf_drawtext.c libavfilter/vf_fade.c libavfilter/vf_format.c libavfilter/vf_hflip.c libavfilter/vf_lut.c libavfilter/vf_overlay.c libavfilter/vf_pad.c libavfilter/vf_scale.c libavfilter/vf_transpose.c libavfilter/vf_yadif.c libavfilter/video.c libavfilter/vsrc_testsrc.c libavformat/movenc.c libavformat/mxf.h libavformat/utils.c libavformat/yuv4mpeg.c libavutil/imgutils.c libavutil/pixdesc.c libswscale/input.c libswscale/output.c libswscale/swscale_internal.h libswscale/swscale_unscaled.c libswscale/utils.c libswscale/x86/swscale_template.c libswscale/x86/yuv2rgb.c libswscale/x86/yuv2rgb_template.c libswscale/yuv2rgb.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi/tinterlace: declare source buffers in copy_picture_field() as constStefano Sabatini2012-09-06
| | | | Increase performance (slightly).
* lavfi/tinterlace: set inlink->cur to NULL, since it is stored internallyStefano Sabatini2012-09-06
| | | | | If not set to NULL, the reference is freed by ff_end_frame(), and later accessed in end_frame() by the filter code, causing a crash.
* vf_tinterlace: leave harmless permissions alone.Nicolas George2012-08-17
|
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: FATE: fix the asyncts test build: Drop gcc-specific warning flag from header compilation rule FATE: add a test for the asyncts audio filter. matroskadec: return more correct error code on read error. buffersrc: check ff_get_audio_buffer() for errors. lavfi: check all ff_get_video_buffer() calls for errors. lavfi: check all avfilter_ref_buffer() calls for errors. vf_select: avoid an unnecessary avfilter_ref_buffer(). buffersrc: avoid creating unnecessary buffer reference lavfi: use avfilter_unref_bufferp() where appropriate. vf_fps: add more error checks. vf_fps: fix a memleak on malloc failure. lavfi: check all ff_start_frame/draw_slice/end_frame calls for errors lavfi: add error handling to end_frame(). lavfi: add error handling to draw_slice(). lavfi: add error handling to start_frame(). Conflicts: Makefile ffplay.c libavfilter/buffersrc.c libavfilter/vf_boxblur.c libavfilter/vf_drawtext.c libavfilter/vf_fade.c libavfilter/vf_frei0r.c libavfilter/vf_hflip.c libavfilter/vf_overlay.c libavfilter/vf_pad.c libavfilter/vf_scale.c libavfilter/video.c libavfilter/vsrc_color.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi: decrease logging level of message showing initial parametersStefano Sabatini2012-07-15
| | | | Reduce log clutter, consistent with 1a49a169eb74a97.
* vf_tinterlace: use av_assertMichael Niedermayer2012-07-08
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavfi: do not pass opaque field to init functionsStefano Sabatini2012-07-08
| | | | Fix signature mismatch warnings.