mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-25 16:52:31 +00:00
lavfi/formats: avoid using AV_{PIX,SAMPLE}_FMT_NB
Thatt hardcodes the number of formats into lavfi and will break when a shared lavu is updated, adding new formats.
This commit is contained in:
parent
b03b2d86aa
commit
7cc4c9f32f
@ -209,15 +209,19 @@ int ff_add_channel_layout(AVFilterChannelLayouts **l, uint64_t channel_layout)
|
||||
AVFilterFormats *ff_all_formats(enum AVMediaType type)
|
||||
{
|
||||
AVFilterFormats *ret = NULL;
|
||||
int fmt;
|
||||
int num_formats = type == AVMEDIA_TYPE_VIDEO ? AV_PIX_FMT_NB :
|
||||
type == AVMEDIA_TYPE_AUDIO ? AV_SAMPLE_FMT_NB : 0;
|
||||
|
||||
for (fmt = 0; fmt < num_formats; fmt++) {
|
||||
const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt);
|
||||
if ((type != AVMEDIA_TYPE_VIDEO) ||
|
||||
(type == AVMEDIA_TYPE_VIDEO && !(desc->flags & AV_PIX_FMT_FLAG_HWACCEL)))
|
||||
if (type == AVMEDIA_TYPE_VIDEO) {
|
||||
const AVPixFmtDescriptor *desc = NULL;
|
||||
while ((desc = av_pix_fmt_desc_next(desc))) {
|
||||
if (!(desc->flags & AV_PIX_FMT_FLAG_HWACCEL))
|
||||
ff_add_format(&ret, av_pix_fmt_desc_get_id(desc));
|
||||
}
|
||||
} else if (type == AVMEDIA_TYPE_AUDIO) {
|
||||
enum AVSampleFormat fmt = 0;
|
||||
while (av_get_sample_fmt_name(fmt)) {
|
||||
ff_add_format(&ret, fmt);
|
||||
fmt++;
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user