7d65fe87e9
avfilter: add ff_inlink_queued_samples()
2018-10-04 12:10:20 +02:00
8f14170b9a
avfilter/filters: add ff_inlink_peek_frame and ff_inlink_queued_frames to access frames in the inlink fifo
...
Signed-off-by: Marton Balint <cus@passwd.hu >
2018-10-03 22:09:49 +02:00
4c514edc5b
avfilter/avfilter: fix typos in comments
2018-10-03 19:11:52 +02:00
fe06ed22e6
lavfi: fix can't dispaly "slice" sub-option in "ffmpeg -h full"
...
fix can't dispaly "slice" sub-option in "ffmpeg -h full" for
AVFilter options.
Signed-off-by: Jun Zhao <mypopydev@gmail.com >
2018-08-16 19:45:07 +08:00
8f1382f80e
lavfi: add new iteration API
...
Signed-off-by: Josh de Kock <josh@itanimul.li >
2018-03-31 23:26:30 +01:00
bcab11a1a2
Merge commit '6d86cef06ba36c0ed591e14a2382e9630059fc5d'
...
* commit '6d86cef06ba36c0ed591e14a2382e9630059fc5d':
lavfi: Add support for increasing hardware frame pool sizes
Merged-by: Mark Thompson <sw@jkqxz.net >
2018-02-12 22:28:12 +00:00
6d86cef06b
lavfi: Add support for increasing hardware frame pool sizes
...
AVFilterContext.extra_hw_frames functions identically to the field of
the same name in AVCodecContext.
2018-02-11 22:11:06 +00:00
b2c42fc6dc
avfilter: deprecate avfilter_link_get_channels()
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: James Almer <jamrial@gmail.com >
2018-01-06 11:01:16 -03:00
da5b05c833
Revert "avfilter: deprecate avfilter_link_get_channels()"
...
This reverts commit 798dcf2432
.
It was applied by accident before it could be reviewed.
2018-01-05 22:13:28 -03:00
798dcf2432
avfilter: deprecate avfilter_link_get_channels()
...
And move the channels field to the public section of the struct.
Signed-off-by: James Almer <jamrial@gmail.com >
2018-01-05 17:49:09 -03:00
167e659b28
avfilter: use a mutex instead of atomics in avfilter_register()
...
Reviewed-by: wm4 <nfxjfg@googlemail.com >
Signed-off-by: James Almer <jamrial@gmail.com >
2018-01-05 13:18:34 -03:00
e6055af025
avfilter: pass correct argument to helper function
...
Signed-off-by: Paul B Mahol <onemda@gmail.com >
2017-10-31 20:37:22 +01:00
d1b1a65662
Merge commit '96a47364d1cf346a5d0437e054b1b10d44d8d969'
...
* commit '96a47364d1cf346a5d0437e054b1b10d44d8d969':
lavfi: Drop deprecated non-const filter retrieval
Merged-by: James Almer <jamrial@gmail.com >
2017-10-21 15:40:14 -03:00
de0b26ce28
Merge commit '8e18328b18e69b38a5feae5d10ad01b403a205b6'
...
* commit '8e18328b18e69b38a5feae5d10ad01b403a205b6':
lavfi: Drop deprecated filter registration
Merged-by: James Almer <jamrial@gmail.com >
2017-10-21 15:37:34 -03:00
5045cf27aa
Merge commit '52067b3c0e5ddbcf7021a093420798420351a9e2'
...
* commit '52067b3c0e5ddbcf7021a093420798420351a9e2':
lavfi: Drop deprecated filter initialization
Merged-by: James Almer <jamrial@gmail.com >
2017-10-21 15:35:14 -03:00
7c4f63d05b
Merge commit 'c5c7cfd5e80d4c36568c01cc40abfde341657ad9'
...
* commit 'c5c7cfd5e80d4c36568c01cc40abfde341657ad9':
lavfi: Drop deprecated functions to open a filter or a filterchain
Merged-by: James Almer <jamrial@gmail.com >
2017-10-21 15:28:35 -03:00
0ed61546c4
Merge commit '88fd836a015a5f3380df74592e440e7d1e5b8000'
...
* commit '88fd836a015a5f3380df74592e440e7d1e5b8000':
lavfi: Drop deprecated way of passing options for a few filters
Merged-by: James Almer <jamrial@gmail.com >
2017-10-21 15:27:03 -03:00
123f6dc6b5
lavfi/avfilter.c: Correct guess_status_pts to account for differing link timebases.
...
Signed-off-by: Sasi Inguva <isasi@google.com >
2017-10-07 11:17:23 +02:00
76613618d9
lavfi: add helper functions and macros for activate.
2017-09-12 11:03:50 +02:00
f5a9c63401
lavfi: guess a timestamp for compat status change.
...
Use the earliest input with the same status.
If that fails, print a warning and use the earliest source.
With this change, simple filter forward correctly the timestamp
of EOF.
Filters that are supposed to change it should be updated to
actually forward it.
2017-09-08 10:21:59 +02:00
dfa3aaa22a
lavfi: search options on child objects.
...
The child objects must be allocated and inited in the
preinit() callback.
2017-08-29 10:19:04 +02:00
f8d7b5febb
lavfi: add a preinit callback to filters.
...
It is necessary for filters with child objects, to set the class
and default options values.
2017-08-29 10:19:04 +02:00
b77f041dff
lavfi: make FFERROR_NOT_READY available to filters.
...
I am not entirely sure that this return code is useful,
but having and using it makes no harm.
2017-07-30 12:23:56 +02:00
fc3a03fcf9
avfilter: take_samples: do not directly return frame when samples are skipped
...
Modifying data pointer when skipping samples may make it unaligned.
Workaround for Ticket6349.
This should fix the crash of ticket's testcase and a crash/regression
with avxsynth (reported by Michael Niedermayer).
Also change frame->nb_samples < max to frame->nb_samples <= max.
This improves performance. Benchmark:
./ffmpeg -filter_complex "aevalsrc=0:n=1166,firequalizer=fixed=on" -f null null
old:
25767 decicycles in take_samples, 1023 runs, 1 skips
25422 decicycles in take_samples, 2047 runs, 1 skips
25181 decicycles in take_samples, 4095 runs, 1 skips
24904 decicycles in take_samples, 8191 runs, 1 skips
new:
550 decicycles in take_samples, 1024 runs, 0 skips
548 decicycles in take_samples, 2048 runs, 0 skips
545 decicycles in take_samples, 4096 runs, 0 skips
544 decicycles in take_samples, 8192 runs, 0 skips
Reviewed-by: Nicolas George <george@nsup.org >
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc >
Reviewed-by: Paul B Mahol <onemda@gmail.com >
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com >
2017-05-20 23:19:46 +07:00
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
b5e1ec5660
Merge commit 'e3fb74f7f9a8f1895381355f40c92cac3c1023d9'
...
* commit 'e3fb74f7f9a8f1895381355f40c92cac3c1023d9':
lavfi: Always propagate hw_frames_ctx through links
Merged-by: Matthieu Bouron <matthieu.bouron@gmail.com >
2017-03-30 00:02:08 +02:00
96a47364d1
lavfi: Drop deprecated non-const filter retrieval
...
Deprecated in 10/2013.
2017-03-23 10:09:11 +01:00
8e18328b18
lavfi: Drop deprecated filter registration
...
Deprecated in 04/2013.
2017-03-23 09:57:33 +01:00
52067b3c0e
lavfi: Drop deprecated filter initialization
...
Deprecated in 03/2013.
2017-03-23 09:57:33 +01:00
c5c7cfd5e8
lavfi: Drop deprecated functions to open a filter or a filterchain
...
Deprecated in 03/2013.
2017-03-23 09:57:32 +01:00
88fd836a01
lavfi: Drop deprecated way of passing options for a few filters
...
Deprecated in 02/2013.
2017-03-23 09:57:32 +01:00
383057f8e7
lavfi: make ff_framequeue_skip_samples() more useful.
...
Instead of just updating statistics and leaving the work to the
call site, have it actually do the work.
Also: skip the samples by updating the frame data pointers
instead of moving the samples. More efficient and avoid writing
into shared frames.
Found-By: Muhammad Faiz <mfcc64@gmail.com >
2017-01-29 18:53:11 +01:00
aaae459a85
lavfi: reindent after previous commit.
2017-01-12 14:06:16 +01:00
c619a4e525
lavfi: make two functions static.
...
ff_request_frame_to_filter() and ff_filter_frame_to_filter()
are only used in avfilter.c.
2017-01-12 14:06:16 +01:00
ae4650f0b9
lavfi: disallow ff_request_frame for filters using activate.
...
Having two different functions allows to have stricter tests
and detect errors earlier.
2017-01-12 14:06:16 +01:00
9eb4c79afd
lavfi: add ff_inlink_request_frame().
2017-01-12 14:06:16 +01:00
d3cb140433
lavfi: move ff_update_link_current_pts() into the utility functions.
...
It does not change anything for the existing filters and makes
better code fatrorization when future code will use the utility
functions.
2017-01-12 14:06:16 +01:00
7910127a8e
lavfi: cosmetic: remove forward declaration.
2017-01-12 14:06:16 +01:00
3ff01feda3
lavfi: add AVFilter.activate.
2017-01-12 14:06:16 +01:00
db4a71c0ff
lavfi: use the consume helpers in ff_filter_frame_to_filter().
2017-01-12 14:06:16 +01:00
d360ddf03b
lavfi: add helpers to consume frames from link FIFOs.
2017-01-12 14:06:16 +01:00
2e5af443c3
lavfi: pass min explicitly to samples_ready().
2017-01-12 14:06:16 +01:00
e7e4c8dfbe
lavfi: add ff_inlink_evaluate_timeline_at_frame().
2017-01-12 14:06:16 +01:00
0e3d2496e2
lavfi: add ff_inlink_process_commands().
2017-01-12 14:06:16 +01:00
846f142134
lavfi: merge two variables after a recent commit.
2017-01-12 14:06:16 +01:00
28c62df672
lavfi: implement ff_inlink_make_frame_writable().
...
Unlike av_frame_is_writable(), it uses the link's alloc callback,
making direct rendering possible.
The code comes from ff_filter_frame_framed(), moved with mostly
trivial changes.
2017-01-12 14:06:16 +01:00
918891e146
lavfi: export ff_filter_set_ready() to the library.
2017-01-12 14:06:16 +01:00
4c24f3ac16
lavfi: add ff_inlink_acknowledge_status().
...
Also introduce libavfilter/filters.h for all functions needed
to implement filters.
2017-01-12 14:06:16 +01:00
b1f68f00b1
lavfi/framepool: rename FFVideoFramePool to FFFramePool
2017-01-12 10:22:52 +01:00
ff8b17c998
lavfi: take_samples: free frames after taking all samples.
2016-12-22 10:35:48 +01:00