Libav
|
#include "avfilter.h"
Go to the source code of this file.
Data Structures | |
struct | AVFilterFormats |
A list of supported formats for one end of a filter link. More... | |
struct | AVFilterChannelLayouts |
Functions | |
AVFilterChannelLayouts * | ff_merge_channel_layouts (AVFilterChannelLayouts *a, AVFilterChannelLayouts *b) |
Return a channel layouts/samplerates list which contains the intersection of the layouts/samplerates of a and b. More... | |
AVFilterFormats * | ff_merge_samplerates (AVFilterFormats *a, AVFilterFormats *b) |
AVFilterChannelLayouts * | ff_all_channel_layouts (void) |
Construct an empty AVFilterChannelLayouts/AVFilterFormats struct – representing any channel layout/sample rate. More... | |
AVFilterFormats * | ff_all_samplerates (void) |
void | ff_set_common_channel_layouts (AVFilterContext *ctx, AVFilterChannelLayouts *layouts) |
A helper for query_formats() which sets all links to the same list of channel layouts/sample rates. More... | |
void | ff_set_common_samplerates (AVFilterContext *ctx, AVFilterFormats *samplerates) |
void | ff_set_common_formats (AVFilterContext *ctx, AVFilterFormats *formats) |
A helper for query_formats() which sets all links to the same list of formats. More... | |
int | ff_add_channel_layout (AVFilterChannelLayouts **l, uint64_t channel_layout) |
void | ff_channel_layouts_ref (AVFilterChannelLayouts *f, AVFilterChannelLayouts **ref) |
Add *ref as a new reference to f. More... | |
void | ff_channel_layouts_unref (AVFilterChannelLayouts **ref) |
Remove a reference to a channel layouts list. More... | |
void | ff_channel_layouts_changeref (AVFilterChannelLayouts **oldref, AVFilterChannelLayouts **newref) |
int | ff_default_query_formats (AVFilterContext *ctx) |
AVFilterFormats * | ff_make_format_list (const int *fmts) |
Create a list of supported formats. More... | |
int | ff_add_format (AVFilterFormats **avff, int fmt) |
Add fmt to the list of media formats contained in *avff. More... | |
AVFilterFormats * | ff_all_formats (enum AVMediaType type) |
Return a list of all formats supported by Libav for the given media type. More... | |
AVFilterFormats * | ff_planar_sample_fmts (void) |
Construct a formats list containing all planar sample formats. More... | |
AVFilterFormats * | ff_merge_formats (AVFilterFormats *a, AVFilterFormats *b) |
Return a format list which contains the intersection of the formats of a and b. More... | |
void | ff_formats_ref (AVFilterFormats *formats, AVFilterFormats **ref) |
Add *ref as a new reference to formats. More... | |
void | ff_formats_unref (AVFilterFormats **ref) |
If *ref is non-NULL, remove *ref as a reference to the format list it currently points to, deallocates that list if this was the last reference, and sets *ref to NULL. More... | |
void | ff_formats_changeref (AVFilterFormats **oldref, AVFilterFormats **newref) |
Before After
|formats |<------—. More... | |
AVFilterChannelLayouts* ff_merge_channel_layouts | ( | AVFilterChannelLayouts * | a, |
AVFilterChannelLayouts * | b | ||
) |
Return a channel layouts/samplerates list which contains the intersection of the layouts/samplerates of a and b.
Also, all the references of a, all the references of b, and a and b themselves will be deallocated.
If a and b do not share any common elements, neither is modified, and NULL is returned.
Definition at line 126 of file formats.c.
Referenced by query_formats().
AVFilterFormats* ff_merge_samplerates | ( | AVFilterFormats * | a, |
AVFilterFormats * | b | ||
) |
Definition at line 99 of file formats.c.
Referenced by query_formats().
AVFilterChannelLayouts* ff_all_channel_layouts | ( | void | ) |
Construct an empty AVFilterChannelLayouts/AVFilterFormats struct – representing any channel layout/sample rate.
Definition at line 244 of file formats.c.
Referenced by channelmap_query_formats(), ff_default_query_formats(), join_query_formats(), and query_formats().
AVFilterFormats* ff_all_samplerates | ( | void | ) |
Definition at line 238 of file formats.c.
Referenced by channelmap_query_formats(), ff_default_query_formats(), join_query_formats(), and query_formats().
void ff_set_common_channel_layouts | ( | AVFilterContext * | ctx, |
AVFilterChannelLayouts * | layouts | ||
) |
A helper for query_formats() which sets all links to the same list of channel layouts/sample rates.
If there are no links hooked to this filter, the list is freed.
Definition at line 356 of file formats.c.
Referenced by ff_default_query_formats(), and query_formats().
void ff_set_common_samplerates | ( | AVFilterContext * | ctx, |
AVFilterFormats * | samplerates | ||
) |
Definition at line 363 of file formats.c.
Referenced by channelmap_query_formats(), ff_default_query_formats(), join_query_formats(), and query_formats().
void ff_set_common_formats | ( | AVFilterContext * | ctx, |
AVFilterFormats * | formats | ||
) |
A helper for query_formats() which sets all links to the same list of formats.
If there are no links hooked to this filter, the list of formats is freed.
Definition at line 375 of file formats.c.
Referenced by channelmap_query_formats(), ff_default_query_formats(), join_query_formats(), and query_formats().
int ff_add_channel_layout | ( | AVFilterChannelLayouts ** | l, |
uint64_t | channel_layout | ||
) |
Definition at line 204 of file formats.c.
Referenced by channelmap_init(), init(), join_query_formats(), query_formats(), and reduce_formats_on_filter().
void ff_channel_layouts_ref | ( | AVFilterChannelLayouts * | f, |
AVFilterChannelLayouts ** | ref | ||
) |
Add *ref as a new reference to f.
Definition at line 257 of file formats.c.
Referenced by channelmap_query_formats(), ff_set_common_channel_layouts(), join_query_formats(), and query_formats().
void ff_channel_layouts_unref | ( | AVFilterChannelLayouts ** | ref | ) |
Remove a reference to a channel layouts list.
Definition at line 303 of file formats.c.
Referenced by free_link(), and pick_format().
void ff_channel_layouts_changeref | ( | AVFilterChannelLayouts ** | oldref, |
AVFilterChannelLayouts ** | newref | ||
) |
Definition at line 321 of file formats.c.
Referenced by avfilter_insert_filter().
int ff_default_query_formats | ( | AVFilterContext * | ctx | ) |
Definition at line 381 of file formats.c.
Referenced by main(), and query_formats().
AVFilterFormats* ff_make_format_list | ( | const int * | fmts | ) |
Create a list of supported formats.
This is intended for use in AVFilter->query_formats().
fmts | list of media formats, terminated by -1 |
Definition at line 165 of file formats.c.
Referenced by query_formats().
int ff_add_format | ( | AVFilterFormats ** | avff, |
int | fmt | ||
) |
Add fmt to the list of media formats contained in *avff.
If *avff is NULL the function allocates the filter formats struct and puts its pointer in *avff.
Definition at line 199 of file formats.c.
Referenced by ff_all_formats(), ff_planar_sample_fmts(), init(), make_format_list(), query_formats(), and reduce_formats_on_filter().
AVFilterFormats* ff_all_formats | ( | enum AVMediaType | type | ) |
Return a list of all formats supported by Libav for the given media type.
Definition at line 209 of file formats.c.
Referenced by ff_default_query_formats(), and query_formats().
AVFilterFormats* ff_planar_sample_fmts | ( | void | ) |
Construct a formats list containing all planar sample formats.
Definition at line 226 of file formats.c.
Referenced by channelmap_query_formats(), join_query_formats(), and query_formats().
AVFilterFormats* ff_merge_formats | ( | AVFilterFormats * | a, |
AVFilterFormats * | b | ||
) |
Return a format list which contains the intersection of the formats of a and b.
Also, all the references of a, all the references of b, and a and b themselves will be deallocated.
If a and b do not share any common formats, neither is modified, and NULL is returned.
Definition at line 80 of file formats.c.
Referenced by query_formats().
void ff_formats_ref | ( | AVFilterFormats * | formats, |
AVFilterFormats ** | ref | ||
) |
Add *ref as a new reference to formats.
That is the pointers will point like in the ascii art below:
|formats |<-----—. | ____ | ____|___________________ | |refs| | | __|_ | |* * | | | | | | AVFilterLink | |* *------—>|*ref| | |____| | | |____| |________| |________________________
Definition at line 262 of file formats.c.
Referenced by ff_set_common_formats(), ff_set_common_samplerates(), and query_formats().
void ff_formats_unref | ( | AVFilterFormats ** | ref | ) |
If *ref is non-NULL, remove *ref as a reference to the format list it currently points to, deallocates that list if this was the last reference, and sets *ref to NULL.
Before After ________ ________ NULL |formats |<-----—. |formats | ^ | ____ | ____|________________ | ____ | ____|________________ | |refs| | | __|_ | |refs| | | __|_ | |* * | | | | | | AVFilterLink | |* * | | | | | | AVFilterLink | |* *------—>|*ref| | |* | | | |*ref| | |____| | | |____| | |____| | | |____| |________| |_____________________ |________| |_____________________
Definition at line 298 of file formats.c.
Referenced by free_link(), make_format_list(), pick_format(), and query_formats().
void ff_formats_changeref | ( | AVFilterFormats ** | oldref, |
AVFilterFormats ** | newref | ||
) |
Before After
|formats |<------—.
|formats |<------—. | ____ | ___|___ | ____ | ___|___ | |refs| | | | | | |refs| | | | | NULL | |* *------—>|*oldref| | |* *------—>|*newref| ^ | |* * | | |_______| | |* * | | |_______| ___|___ | |____| | | |____| | | | | |________| |________| |*oldref| |_______|
Definition at line 327 of file formats.c.
Referenced by avfilter_insert_filter().