Andreas Rheinhardt
8be701d9f7
avfilter/avfilter: Add numbers of (in|out)pads directly to AVFilter
...
Up until now, an AVFilter's lists of input and output AVFilterPads
were terminated by a sentinel and the only way to get the length
of these lists was by using avfilter_pad_count(). This has two
drawbacks: first, sizeof(AVFilterPad) is not negligible
(i.e. 64B on 64bit systems); second, getting the size involves
a function call instead of just reading the data.
This commit therefore changes this. The sentinels are removed and new
private fields nb_inputs and nb_outputs are added to AVFilter that
contain the number of elements of the respective AVFilterPad array.
Given that AVFilter.(in|out)puts are the only arrays of zero-terminated
AVFilterPads an API user has access to (AVFilterContext.(in|out)put_pads
are not zero-terminated and they already have a size field) the argument
to avfilter_pad_count() is always one of these lists, so it just has to
find the filter the list belongs to and read said number. This is slower
than before, but a replacement function that just reads the internal numbers
that users are expected to switch to will be added soon; and furthermore,
avfilter_pad_count() is probably never called in hot loops anyway.
This saves about 49KiB from the binary; notice that these sentinels are
not in .bss despite being zeroed: they are in .data.rel.ro due to the
non-sentinels.
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-08-20 12:53:58 +02:00
Andreas Rheinhardt
a04ad248a0
avfilter: Constify all AVFilters
...
This is possible now that the next-API is gone.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2021-04-27 11:48:05 -03:00
Jun Zhao
04037e2966
lavfi/setpts: fix setpts/asetpts option dump error
...
fix the command ffmpeg -h filter=setpts/asetpts both dump the expr
option with "FVA" flags.
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
2020-07-12 08:11:42 +08:00
Limin Wang
548ef7a12b
avfilter: add D2TS, TS2D, TS2T as a common macro in internal.h
...
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-06-19 23:12:49 +08:00
Paul B Mahol
2a546fb7d5
avfilter/setpts: switch to activate
...
Also properly handle EOF timestamps.
Fixes #6833 .
2019-10-02 21:05:25 +02:00
Gyan Doshi
c71e1e6030
avfilter/setpts: add FR shorthand for FRAME_RATE
2018-07-07 21:08:08 +05:30
Muhammad Faiz
6af050d7d0
avfilter: do not use AVFrame accessor
...
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2017-04-23 14:40:30 +07:00
Hendrik Leppkes
ef636aacf5
Merge commit '018bdaed37d2f1735dbecfc58309a1a164abadd5'
...
* commit '018bdaed37d2f1735dbecfc58309a1a164abadd5':
setpts: add FRAME_RATE constant
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-11-11 14:56:53 +01:00
Stefano Sabatini
018bdaed37
setpts: add FRAME_RATE constant
...
Useful for dealing with constant frame-rate video.
(cherry picked from ffmpeg commit 722762f7e1
)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-11-09 08:09:41 +01:00
Michael Niedermayer
40d552dae6
Merge commit '1a3eb042c704dea190c644def5b32c9cee8832b8'
...
* commit '1a3eb042c704dea190c644def5b32c9cee8832b8':
Replace av_dlog with normal av_log at trace level
Conflicts:
ffplay.c
libavdevice/fbdev_dec.c
libavfilter/avfilter.c
libavfilter/internal.h
libavfilter/setpts.c
libavfilter/src_movie.c
libavfilter/vf_crop.c
libavfilter/vf_drawtext.c
libavfilter/vf_fieldorder.c
libavformat/assdec.c
libavformat/avidec.c
libavformat/flvdec.c
libavformat/http.c
libavformat/ipmovie.c
libavformat/isom.c
libavformat/mov.c
libavformat/mpegenc.c
libavformat/mpegts.c
libavformat/mpegtsenc.c
libavformat/mux.c
libavformat/mxfdec.c
libavformat/nsvdec.c
libavformat/oggdec.c
libavformat/r3d.c
libavformat/rtspdec.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 03:19:47 +02:00
Vittorio Giovara
1a3eb042c7
Replace av_dlog with normal av_log at trace level
...
This applies to every library where performance is not critical.
2015-04-19 12:41:59 +01:00
Michael Niedermayer
2bfd4ff16d
Merge commit '593aaee953f8b07c141ff115e67bae85ef0350c7'
...
* commit '593aaee953f8b07c141ff115e67bae85ef0350c7':
setpts: Add missing inttypes.h #include for PRId64
Conflicts:
libavfilter/setpts.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-21 21:47:43 +02:00
Diego Biurrun
593aaee953
setpts: Add missing inttypes.h #include for PRId64
...
Also convert a debug av_log() to av_dlog().
2014-08-21 04:18:24 -07:00
Michael Niedermayer
74a8dbe1c4
Merge commit '58400ac133bcfb6bf8196b4e5208bc178307739b'
...
* commit '58400ac133bcfb6bf8196b4e5208bc178307739b':
lavfi: name anonymous structs
Conflicts:
libavfilter/buffersink.c
libavfilter/f_select.c
libavfilter/src_movie.c
libavfilter/vf_drawbox.c
libavfilter/vf_drawtext.c
libavfilter/vf_overlay.c
libavfilter/vf_showinfo.c
libavfilter/vf_unsharp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-19 18:20:17 +02:00
Vittorio Giovara
58400ac133
lavfi: name anonymous structs
2014-04-19 16:20:57 +02:00
Michael Niedermayer
325f6e0a97
Merge remote-tracking branch 'qatar/master'
...
* 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>
2013-10-29 11:58:11 +01:00
Anton Khirnov
cd43ca0443
lavfi: do not export the filters from shared objects
2013-10-28 15:29:54 +01:00
Paul B Mahol
b211607b5c
avfilter: various cosmetics
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-09-12 14:01:43 +00:00
Paul B Mahol
b077d8d908
avfilter: remove redundant .get_(audio/video)_buffer initializations
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-09-07 18:20:16 +00:00
Paul B Mahol
e457f2cf1f
lavfi/setpts: make use of AVFILTER_DEFINE_CLASS
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-05-27 11:14:43 +00:00
Diego Biurrun
2832ea26f3
Remove commented-out debug #define cruft
2013-05-16 00:23:30 +02:00
Michael Niedermayer
1cba7fa364
Merge commit 'b472938233b98178ed6c1353c37e0dc7ab585902'
...
* commit 'b472938233b98178ed6c1353c37e0dc7ab585902':
lavfi: add an asetpts filter
Conflicts:
Changelog
doc/filters.texi
libavfilter/Makefile
libavfilter/allfilters.c
libavfilter/f_setpts.c
libavfilter/setpts.c
libavfilter/version.h
libavfilter/vf_setpts.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-01 10:59:21 +02:00
Anton Khirnov
b472938233
lavfi: add an asetpts filter
2013-04-30 11:17:57 +02:00