summaryrefslogtreecommitdiff
path: root/libavfilter/avfiltergraph.c
Commit message (Collapse)AuthorAge
* avfilter/avfiltergraph: Clear graph pointers in ff_filter_graph_remove_filter()Michael Niedermayer2016-05-27
| | | | | | | When a filter is no longer part of a graph, its pointers should be cleared so no stale pointers remain. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavfi: make request_frame() non-recursive.Nicolas George2015-12-22
| | | | | | | 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.
* lavfi: rename link.current_pts to current_pts_us.Nicolas George2015-12-22
| | | | | | | 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.
* avfilter/avfiltergraph: fix -Wunused-result warningsGanesh Ajjanagadde2015-10-16
| | | | | | | | | | | | Commit bf0d2d6030c239f91e0368a20fb2dc0705bfec99 introduced av_warn_unused_result to avfilter/formats, whose associated warnings were mostly fixed in 6aaac24d72a7da631173209841a3944fcb4a3309. This fixes the issues in avfilter/avfiltergraph. Tested with FATE. Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* avfilter/all: propagate errors of functions from avfilter/formatsGanesh Ajjanagadde2015-10-14
| | | | | | | | | | | | | | | | | | Many of the functions from avfilter/formats can return errors, usually AVERROR(ENOMEM). This propagates the return values. All of these were found by using av_warn_unused_result, demonstrating its utility. Tested with FATE. I am least sure of the changes to avfilter/filtergraph, since I don't know what/how reduce_format is intended to behave and how it should react to errors. Fixes: CID 1325680, 1325679, 1325678. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Previous version Reviewed-by: Nicolas George <george@nsup.org> Previous version Reviewed-by: Clément Bœsch <u@pkh.me> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* Merge commit 'e65e4cbbda03ca3c9087f069c9867d518415fca1'Hendrik Leppkes2015-09-05
|\ | | | | | | | | | | | | * commit 'e65e4cbbda03ca3c9087f069c9867d518415fca1': lavfi: Drop deprecated *_count suffixed variables Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * lavfi: Drop deprecated *_count suffixed variablesVittorio Giovara2015-08-28
| | | | | | | | Deprecated in 06/2012.
* | avfilter/avfiltergraph: Implement and use find_best_sample_fmt_of_2()Michael Niedermayer2015-08-16
| | | | | | | | | | | | | | | | Similar to the pixel format code Fixes Ticket3847 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avfilter/avfiltergraph: Rename ff_avfilter_graph_config_pointers to ↵Michael Niedermayer2015-05-18
| | | | | | | | | | | | | | | | graph_config_pointers. The function is static and only used once in the file its defined in. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avfilter/avfiltergraph: assert that the heap_bubble index is validMichael Niedermayer2015-02-18
| | | | | | | | | | | | This might help coverity Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avfilter: Properly check for failed format queryDerek Buitenhuis2014-10-02
| | | | | | | | Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | lavfi: check refcount before merging.Nicolas George2014-07-17
| | | | | | | | | | | | | | | | | | | | When merging the formats around the automatically inserted convert filters, the refcount of the format lists can not be 0. Coverity does not detect it, and suspects a memory leak, because if refcount is 0 the newly allocated lists are not stored anywhere. That gives CIDs 1224282, 1224283 and 1224284. Lists with refcount 0 are used in can_merge_formats(), so the asserts can not be moved inside the merge functions.
* | avfilter/avfiltergraph: dont "or" together error codesMichael Niedermayer2014-07-03
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Move av_find_best_pix_fmt_of_2() from avcodec to avutilMichael Niedermayer2014-04-30
| | | | | | | | | | | | | | | | | | This avoids a dependancy of libavfilter on libavcodec See Ticket 3592 Fixes Ticket2784 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avfilter: make avfilter_graph_get_filter use const string nameYu Xiaolei2014-03-14
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavfi/avfiltergraph: do not reduce incompatible lists.Nicolas George2013-11-03
| | | | | | | | | | A list of "all channel layouts" but not "all channel counts" can not be reduced to a single unknown channel count.
* | lavfi/avfiltergraph: suggest a solution when format selection fails.Nicolas George2013-11-03
| | | | | | | | | | Format selection can fail if unknown channel layouts are used with filters that do not support it.
* | avfiltergraph: Properly handle memory allocation failureDerek Buitenhuis2013-10-27
| | | | | | | | Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | Do not leave positive values undefined when negative are defined as errorMichael Niedermayer2013-10-19
| | | | | | | | | | | | | | | | Define positive return values as non errors and leave further meaning undefined This allows future extensions to use these values Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-09-28
|\| | | | | | | | | | | | | | | | | | | | | * qatar/master: lavfi: allow user-provided execute() callbacks Conflicts: libavfilter/avfilter.h libavfilter/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: allow user-provided execute() callbacksAnton Khirnov2013-09-28
| |
* | Merge commit '77cc958f60f73963be4281d6e82ef81707e40c26'Michael Niedermayer2013-08-05
|\| | | | | | | | | | | | | * commit '77cc958f60f73963be4281d6e82ef81707e40c26': lavfi: add const to the AVFilter parameter of avfilter_graph_create_filter() Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: add const to the AVFilter parameter of avfilter_graph_create_filter()Anton Khirnov2013-08-04
| | | | | | | | This function should never modify the filter.
* | Merge commit '7950e519bb094897f957b9a9531cc60ba46cbc91'Michael Niedermayer2013-08-03
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * Disable deprecation warnings for cases where a replacement is availableDiego Biurrun2013-08-02
| |
* | avfilter/can_merge_formats: fix memleakMichael Niedermayer2013-07-25
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avfilter/avfiltergraph: fix check using the wrong variablesMichael Niedermayer2013-07-25
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avfilter/avfiltergraph: minor cosmeticMichael Niedermayer2013-07-23
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avfilter: Dont partially merge listsMichael Niedermayer2013-07-23
| | | | | | | | | | | | | | | | | | | | This prevents the unneeded insertion of multiple aresample filters in some cases The format merging is moved to avoid having to call the channel layout merge twice. The channel layout merge code uses different structures and is not compatible with the added dry run wrappers. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avfilter/REDUCE_FORMATS: fix bug that ended reducing too earlyMichael Niedermayer2013-07-22
| | | | | | | | | | | | | | | | | | | | Prior to this it was possible that format reduction was ended before it fully propagated leading to failure later in picking formats. No testcase with unmodified source exists, the case was reproduced with less aggressive list merging though. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '129bb238430ec45a3b5f8f1d384df590ddf7b62f'Michael Niedermayer2013-05-24
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '129bb238430ec45a3b5f8f1d384df590ddf7b62f': lavfi: add a slice threading infrastructure Conflicts: Changelog cmdutils.c doc/APIchanges libavfilter/Makefile libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/avfiltergraph.c libavfilter/internal.h libavfilter/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: add a slice threading infrastructureAnton Khirnov2013-05-24
| | | | | | | | Mostly based on libavcodec's
* | Merge commit 'b01f6041f4260fba053c2f96ce1611ea77e833a0'Michael Niedermayer2013-05-18
|\| | | | | | | | | | | | | | | | | | | | | | | * commit 'b01f6041f4260fba053c2f96ce1611ea77e833a0': lavfi: rename AVFilterFormats.format_count to nb_formats Conflicts: libavfilter/avfiltergraph.c libavfilter/filtfmts.c libavfilter/formats.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: rename AVFilterFormats.format_count to nb_formatsAnton Khirnov2013-05-17
| | | | | | | | This is more consistent with naming in the rest of Libav.
* | Merge commit '096696ef0dd391d9430376d1444c1a3cde9171fd'Michael Niedermayer2013-05-15
|\| | | | | | | | | | | | | | | * commit '096696ef0dd391d9430376d1444c1a3cde9171fd': avfiltergraph: simplify inserting conversion filters. Clarify output of av_get_bits_per_pixel Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avfiltergraph: simplify inserting conversion filters.Anton Khirnov2013-05-15
| | | | | | | | | | There is now no need to explicitly pass 0:0 as width/height to scale, those are the defaults.
* | lavfi/avfiltergraph: fix styleStefano Sabatini2013-05-10
| |
* | lavfi: add comments to explain the negotiation loop.Nicolas George2013-05-07
| |
* | lavfi: fix filter format negotiation loop.Nicolas George2013-05-07
| | | | | | | | | | | | | | | | | | | | | | query_formats() returning EAGAIN is not considered a progress in the format negotiation. If the filter returns EAGAIN but did set some of its formats lists, it could be considered a partial success and counted as progress in the negotiation. Not counting it is not a problem because it currently only happens in the first round, where there will always be some progress on the other filters.
* | avfilter: remove opaque passing hacksMichael Niedermayer2013-04-12
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '48a5adab62bd2a553f5069d41fa632a0701835e5'Michael Niedermayer2013-04-12
|\| | | | | | | | | | | | | | | | | | | | | * commit '48a5adab62bd2a553f5069d41fa632a0701835e5': lavfi: add avfilter_init_str() to replace avfilter_init_filter(). avfilter_graph_create_filter() opaque is still passed to avfilter_init_filter() which continues to pass it to init_opaque as its still used in the buffer sinks the sinks should be changed and the opaque passing removed Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: add avfilter_init_str() to replace avfilter_init_filter().Anton Khirnov2013-04-11
| | | | | | | | Drop the unused opaque parameter from its signature.
* | Merge commit '1565cbc65cbb9f95c11367314a080068895e0cf0'Michael Niedermayer2013-04-12
|\| | | | | | | | | | | | | | | | | | | | | | | * commit '1565cbc65cbb9f95c11367314a080068895e0cf0': lavfi: make avfilter_free() remove the filter from its graph. Conflicts: libavfilter/avfilter.c libavfilter/avfiltergraph.c libavfilter/graphparser.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: make avfilter_free() remove the filter from its graph.Anton Khirnov2013-04-11
| |
* | Merge commit '111367263af41c88a44bd763ceefc11d53a7f655'Michael Niedermayer2013-04-12
|\| | | | | | | | | | | | | | | | | | | * commit '111367263af41c88a44bd763ceefc11d53a7f655': lavfi: add AVFilterContext.graph. Conflicts: libavfilter/avfilter.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: add AVFilterContext.graph.Anton Khirnov2013-04-11
| | | | | | | | It will be useful in the following commits.
* | Merge commit 'c2c9801bc9bce688d51d1a96f5f3ea93933e2dee'Michael Niedermayer2013-04-12
|\| | | | | | | | | | | | | * commit 'c2c9801bc9bce688d51d1a96f5f3ea93933e2dee': lavfi: deprecate avfilter_graph_add_filter(). Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: deprecate avfilter_graph_add_filter().Anton Khirnov2013-04-11
| | | | | | | | | | | | Since this function adds a standalone filter to a filter graph and we do not support creating such filters, there is no reason for this function to exist.
* | Merge commit 'bc1a985ba030e9861d24965d42792850b43a43ea'Michael Niedermayer2013-04-12
|\| | | | | | | | | | | | | | | | | | | | | | | * commit 'bc1a985ba030e9861d24965d42792850b43a43ea': lavfi: replace avfilter_open() with avfilter_graph_alloc_filter(). Conflicts: libavfilter/avfiltergraph.c libavfilter/internal.h libavfilter/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavfi: replace avfilter_open() with avfilter_graph_alloc_filter().Anton Khirnov2013-04-11
| | | | | | | | | | | | | | Since we do not support "standalone" filters not attached to an AVFilterGraph, we should not have a public function to create such filters. In addition that function is horribly named, the action it does cannot be possibly described as "opening" a filter.