Commit Graph

539 Commits

Author SHA1 Message Date
Derek Buitenhuis
10424024a1 Merge commit 'b3dd30db0b2d857147fc0e1461a00bd6172a26a3'
* commit 'b3dd30db0b2d857147fc0e1461a00bd6172a26a3':
  lavfi: pass the hw frames context through the filter chain

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 16:03:57 +00:00
Anton Khirnov
b3dd30db0b lavfi: pass the hw frames context through the filter chain 2016-02-14 22:21:00 +01:00
Nicolas George
1655788712 lavfi: make request_frame() non-recursive.
Instead of calling the input filter request_frame() method,
ff_request_frame() now marks the link and returns immediately.
buffersink is changed to activate the marked filters until
a frame is obtained.
2015-12-22 16:04:30 +01:00
Nicolas George
108b4de552 lavfi: replace link.closed by link.status.
The status field can carry any error code instead of just EOF.
Also only update it through a wrapper function and provide a timestamp.
Update the few filters that used it directly.
2015-12-22 16:04:30 +01:00
Nicolas George
b8b7d5ac6c lavfi: add link.current_pts field. 2015-12-22 15:55:00 +01:00
Nicolas George
d03eab34dd lavfi: rename link.current_pts to current_pts_us.
This field is used for fast comparison between link ages,
it is in AV_TIME_BASE units, in other words microseconds,
µs =~ us.
Renaming it allows a second field in link time base units.
2015-12-22 15:55:00 +01:00
Matthieu Bouron
0c59d40ae0 lavfi: use a video frame pool for each link of the filtergraph 2015-12-15 10:35:41 +01:00
Hendrik Leppkes
0b73d0ff0d Merge commit '48ff6683ba5d40b629428673b1028e8ec542a9fa'
* commit '48ff6683ba5d40b629428673b1028e8ec542a9fa':
  lavfi: add a frame_rate field to AVFilterLink.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-11-11 14:47:29 +01:00
Nicolas George
48ff6683ba lavfi: add a frame_rate field to AVFilterLink.
(cherry picked from ffmpeg commit 7b42036b3b)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-11-09 08:09:34 +01:00
Timothy Gu
87d5509261 avfilter: Reindent 2015-10-26 23:24:18 -07:00
Michael Niedermayer
377883c4be avfilter/avfilter: Error out if audio parameters change instead of failing an assert
Filters which support such changes should be excluded from these checks

Fixes Ticket4884

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-16 15:25:09 +02:00
Nicolas George
44f660e7e7 lavfi: remove FF_LINK_FLAG_REQUEST_LOOP.
It has no longer any effect.
2015-09-20 19:02:33 +02:00
Nicolas George
2a351f6c55 lavfi: drop the requirement that request_frame returns a frame.
It requires a loop in filters or the framework,
that makes the scheduling less efficient and more complex.
This is purely an internal change since the loop is now
present in buffersink.
Note that no filter except buffersink did rely on the requirement.
2015-09-20 19:02:33 +02:00
Hendrik Leppkes
43e2e172df Merge commit 'e65e4cbbda03ca3c9087f069c9867d518415fca1'
* commit 'e65e4cbbda03ca3c9087f069c9867d518415fca1':
  lavfi: Drop deprecated *_count suffixed variables

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-09-05 16:11:22 +02:00
Hendrik Leppkes
2751d5f0ba Merge commit '86e5056575f55f070609dd3926605302f7d2280e'
* commit '86e5056575f55f070609dd3926605302f7d2280e':
  lavfi: Drop deprecated public AVFilterPad struct

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-09-05 16:01:24 +02:00
Michael Niedermayer
5d859e5980 avfilter/avfilter: Add a few more basic filters to the list which support frame size changes
Fixes assertion failures

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-09-05 11:43:27 +02:00
Vittorio Giovara
e65e4cbbda lavfi: Drop deprecated *_count suffixed variables
Deprecated in 06/2012.
2015-08-28 16:01:13 +02:00
Ronald S. Bultje
6495c4c687 lavfi: fix compilation with FF_API_OLD_FILTER_OPTS=0. 2015-08-18 22:22:49 -04:00
Ronald S. Bultje
ad7d972e08 lavfi: add error message to help users convert to new lavfi syntax. 2015-08-18 10:18:43 -04:00
Andreas Cadhalpun
13b3462b7a avfilter: add missing FF_API_AVFILTERPAD_PUBLIC guard
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-08-12 00:14:13 +02:00
Andreas Cadhalpun
8bd74aafe8 avfilter: remove obsolete function declarations
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-08-08 21:58:48 +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
f455c8fdef Merge commit '88b160a457e491cb9e014630ef5387ad3500258e'
* commit '88b160a457e491cb9e014630ef5387ad3500258e':
  avfilter: Return more meaningful error codes

Conflicts:
	libavfilter/avfilter.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-06 01:16:47 +01:00
Himangi Saraogi
88b160a457 avfilter: Return more meaningful error codes
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2015-03-05 19:36:39 +01:00
Michael Niedermayer
b288f67434 avfilter/avfilter: Remove CONFIG_MP_FILTER case
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-31 13:47:17 +01:00
Michael Niedermayer
6c702c3c63 avfilter/avfilter: allow idet like scale to have parameter changes
Fixes assertion failure

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-19 06:03:57 +01:00
Michael Niedermayer
649c158e8c Add FFMPEG_VERSION into the binary libs
This simplifies identifying from which revision a binary of a lib came from

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-19 19:32:40 +01:00
Michael Niedermayer
1945db1f13 Merge commit 'ac84c1ce24a285f9cf16d4297bce73b1c4a6e435'
* commit 'ac84c1ce24a285f9cf16d4297bce73b1c4a6e435':
  avfilter: check filter link validity

Conflicts:
	libavfilter/avfilter.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-25 03:08:19 +02:00
Vittorio Giovara
ac84c1ce24 avfilter: check filter link validity
Remove now redundant check.

CC: libav-stable@libav.org
Bug-Id: CID 700371
2014-10-24 23:42:19 +01:00
Clément Bœsch
abaf4245a1 avfilter: add w/h parameters in timeline
Fixes Ticket #4008.
2014-10-07 15:05:50 +02:00
Michael Niedermayer
d9ddbaa924 avfilter/avfilter: use av_malloc(z)_array()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 19:42:46 +02:00
Michael Niedermayer
b76059058a Merge commit 'bba2a7cc5f7c7aaa32a938f3d4edd9f555f39cdb'
* commit 'bba2a7cc5f7c7aaa32a938f3d4edd9f555f39cdb':
  lavfi: use the correct filter context for logging an error.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-06 12:38:09 +01:00
Anton Khirnov
bba2a7cc5f lavfi: use the correct filter context for logging an error. 2014-03-05 21:52:02 +01:00
Michael Niedermayer
41003da94a avfilter/avfilter: fix use of uninitialized pointer
Fixes CID1163852
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 04:14:52 +01:00
Michael Niedermayer
d9481dcd61 Merge commit 'abb5e37f64c48bba8bd0fde2bada0f7544defa24'
* commit 'abb5e37f64c48bba8bd0fde2bada0f7544defa24':
  avfilter: fix leaks on error in ff_filter_frame

Conflicts:
	libavfilter/avfilter.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-10 03:46:28 +01:00
Vittorio Giovara
abb5e37f64 avfilter: fix leaks on error in ff_filter_frame 2014-01-09 23:13:05 +01:00
Michael Niedermayer
c0a33c4770 avfilter: avfilter_register() that works in O(1) time
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-09 00:53:04 +01:00
Michael Niedermayer
133fbfc781 do O(1) instead of O(n) atomic operations in register functions
about 1ms faster startup time

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 15:27:36 +01:00
Michael Niedermayer
a1ce060c51 Merge commit '5c439b41d0489412c0a4cf6dfb98915251677b8e'
* commit '5c439b41d0489412c0a4cf6dfb98915251677b8e':
  avfilter: have avfilter_get_by_name return const for next bump

Conflicts:
	libavfilter/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 13:07:05 +01:00
Vittorio Giovara
884c7a6eb8 avfilter: fix const use of avfilter_next
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-28 07:58:23 +01:00
Vittorio Giovara
5c439b41d0 avfilter: have avfilter_get_by_name return const for next bump
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-28 07:57:44 +01:00
Michael Niedermayer
ab2bfb85d4 avfilter/ff_insert_pad: fix order of operations
Fixes out of bounds access
Fixes CID732170
Fixes CID732169

No filter is known to use this function in a way so the issue can be reproduced.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-21 16:43:25 +02:00
Michael Niedermayer
8780f7fbfa avfilter/ff_filter_frame_needs_framing: fix handling of AV_NOPTS_VALUE
Fixes Ticket3015

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-09 16:33:18 +02:00
Michael Niedermayer
7381d31f22 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavfi: allow user-provided execute() callbacks

Conflicts:
	libavfilter/avfilter.h
	libavfilter/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-28 11:02:01 +02:00
Anton Khirnov
0767bfd199 lavfi: allow user-provided execute() callbacks 2013-09-28 08:06:19 +02:00
Michael Niedermayer
4bc7a2a64b avfilter: remove duplicate includes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-21 15:36:33 +02:00
Michael Niedermayer
3dfc5f551f avfilter: avoid testing float == 0
This fixes the hypothetical case of rounding errors causing
incorrect values to be used.
We do not use *_EPSILON, because non trivial expressions can contain
errors larger than that making a zero equality test with *_EPSILON
unreliable.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-15 15:33:39 +02:00
Paul B Mahol
211a185cba avfilter/avfilter: check allocation failure in ff_insert_pad()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-09-15 11:09:23 +00:00
Michael Niedermayer
bb23bf8fd7 avfilter/avfilter: fix null pointer dereference with queued ping filters
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-10 13:39:57 +02:00
Michael Niedermayer
20be5e0a0e Merge commit '7950e519bb094897f957b9a9531cc60ba46cbc91'
* commit '7950e519bb094897f957b9a9531cc60ba46cbc91':
  Disable deprecation warnings for cases where a replacement is available

Conflicts:
	libavcodec/avpacket.c
	libavcodec/pthread.c
	libavcodec/utils.c
	libavdevice/v4l2.c
	libavfilter/avfiltergraph.c
	libavfilter/buffersrc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-03 10:08:30 +02:00