lavfi/buffersink: add a summary documentation of the API.

This commit is contained in:
Nicolas George 2020-08-14 11:21:39 +02:00
parent 1f12b7b1d3
commit f103731e21

View File

@ -31,6 +31,42 @@
* @defgroup lavfi_buffersink Buffer sink API
* @ingroup lavfi
* @{
*
* The buffersink and abuffersink filters are there to connect filter graphs
* to applications. They have a single input, connected to the graph, and no
* output. Frames must be extracted using av_buffersink_get_frame() or
* av_buffersink_get_samples().
*
* The format negotiated by the graph during configuration can be obtained
* using the accessor functions:
* - av_buffersink_get_time_base(),
* - av_buffersink_get_format(),
* - av_buffersink_get_frame_rate(),
* - av_buffersink_get_w(),
* - av_buffersink_get_h(),
* - av_buffersink_get_sample_aspect_ratio(),
* - av_buffersink_get_channels(),
* - av_buffersink_get_channel_layout(),
* - av_buffersink_get_sample_rate().
*
* The format can be constrained by setting options, using av_opt_set() and
* related functions with the AV_OPT_SEARCH_CHILDREN flag.
* - pix_fmts (int list),
* - sample_fmts (int list),
* - sample_rates (int list),
* - channel_layouts (int64_t),
* - channel_counts (int list),
* - all_channel_counts (bool).
* Most of these options are of type binary, and should be set using
* av_opt_set_int_list() or av_opt_set_bin(). If they are not set, all
* corresponding formats are accepted.
*
* As a special case, if neither channel_layouts nor channel_counts is set,
* all valid channel layouts are accepted, but channel counts without a
* layout are not, unless all_channel_counts is set.
* Also, channel_layouts must not contain a channel layout already accepted
* by a value in channel_counts; for example, if channel_counts contains 2,
* then channel_layouts must not contain stereo.
*/
/**