static int query_formats(AVFilterContext *ctx) { BufferSourceContext *c = ctx->priv; AVFilterChannelLayouts *channel_layouts = NULL; AVFilterFormats *formats = NULL; AVFilterFormats *samplerates = NULL; switch (ctx->outputs[0]->type) { case AVMEDIA_TYPE_VIDEO: ff_add_format(&formats, c->pix_fmt); ff_set_common_formats(ctx, formats); break; case AVMEDIA_TYPE_AUDIO: ff_add_format(&formats, c->sample_fmt); ff_set_common_formats(ctx, formats); ff_add_format(&samplerates, c->sample_rate); ff_set_common_samplerates(ctx, samplerates); ff_add_channel_layout(&channel_layouts, c->channel_layout); ff_set_common_channel_layouts(ctx, channel_layouts); break; default: return AVERROR(EINVAL); } return 0; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layouts; int ret; layouts = ff_all_channel_counts(); if (!layouts) { ret = AVERROR(ENOMEM); goto fail; } if ((ret = ff_add_format(&formats, AV_SAMPLE_FMT_FLT )) < 0 || (ret = ff_add_format(&formats, AV_SAMPLE_FMT_FLTP)) < 0 || (ret = ff_add_format(&formats, AV_SAMPLE_FMT_DBL )) < 0 || (ret = ff_add_format(&formats, AV_SAMPLE_FMT_DBLP)) < 0 || (ret = ff_set_common_formats (ctx, formats)) < 0 || (ret = ff_set_common_channel_layouts(ctx, layouts)) < 0 || (ret = ff_set_common_samplerates(ctx, ff_all_samplerates())) < 0) goto fail; return 0; fail: if (layouts) av_freep(&layouts->channel_layouts); av_freep(&layouts); return ret; }
static int hwdownload_query_formats(AVFilterContext *avctx) { AVFilterFormats *infmts = NULL; AVFilterFormats *outfmts = NULL; const AVPixFmtDescriptor *desc; int err; for (desc = av_pix_fmt_desc_next(NULL); desc; desc = av_pix_fmt_desc_next(desc)) { if (desc->flags & AV_PIX_FMT_FLAG_HWACCEL) err = ff_add_format(&infmts, av_pix_fmt_desc_get_id(desc)); else err = ff_add_format(&outfmts, av_pix_fmt_desc_get_id(desc)); if (err) { ff_formats_unref(&infmts); ff_formats_unref(&outfmts); return err; } } if ((err = ff_formats_ref(infmts, &avctx->inputs[0]->out_formats)) < 0 || (err = ff_formats_ref(outfmts, &avctx->outputs[0]->in_formats)) < 0) return err; return 0; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; ff_add_format(&formats, AV_SAMPLE_FMT_FLT); ff_add_format(&formats, AV_SAMPLE_FMT_FLTP); ff_set_common_formats(ctx, formats); ff_set_common_channel_layouts(ctx, ff_all_channel_layouts()); ff_set_common_samplerates(ctx, ff_all_samplerates()); return 0; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats; enum AVPixelFormat pix_fmt; int ret; /** accept any input pixel format that is not hardware accelerated, not * a bitstream format, and does not have vertically sub-sampled chroma */ if (ctx->inputs[0]) { const AVPixFmtDescriptor *desc = NULL; formats = NULL; while ((desc = av_pix_fmt_desc_next(desc))) { pix_fmt = av_pix_fmt_desc_get_id(desc); if (!(desc->flags & AV_PIX_FMT_FLAG_HWACCEL || desc->flags & AV_PIX_FMT_FLAG_PAL || desc->flags & AV_PIX_FMT_FLAG_BITSTREAM) && desc->nb_components && !desc->log2_chroma_h && (ret = ff_add_format(&formats, pix_fmt)) < 0) { ff_formats_unref(&formats); return ret; } } ff_formats_ref(formats, &ctx->inputs[0]->out_formats); ff_formats_ref(formats, &ctx->outputs[0]->in_formats); } return 0; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; AConvertContext *aconvert = ctx->priv; AVFilterLink *inlink = ctx->inputs[0]; AVFilterLink *outlink = ctx->outputs[0]; AVFilterChannelLayouts *layouts; ff_formats_ref(ff_all_formats(AVMEDIA_TYPE_AUDIO), &inlink->out_formats); if (aconvert->out_sample_fmt != AV_SAMPLE_FMT_NONE) { formats = NULL; ff_add_format(&formats, aconvert->out_sample_fmt); ff_formats_ref(formats, &outlink->in_formats); } else ff_formats_ref(ff_all_formats(AVMEDIA_TYPE_AUDIO), &outlink->in_formats); ff_channel_layouts_ref(ff_all_channel_layouts(), &inlink->out_channel_layouts); if (aconvert->out_chlayout != 0) { layouts = NULL; ff_add_channel_layout(&layouts, aconvert->out_chlayout); ff_channel_layouts_ref(layouts, &outlink->in_channel_layouts); } else ff_channel_layouts_ref(ff_all_channel_layouts(), &outlink->in_channel_layouts); return 0; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats; enum PixelFormat pix_fmt; int ret; /** accept any input pixel format that is not hardware accelerated, not * a bitstream format, and does not have vertically sub-sampled chroma */ if (ctx->inputs[0]) { formats = NULL; for (pix_fmt = 0; pix_fmt < PIX_FMT_NB; pix_fmt++) if (!( av_pix_fmt_descriptors[pix_fmt].flags & PIX_FMT_HWACCEL || av_pix_fmt_descriptors[pix_fmt].flags & PIX_FMT_BITSTREAM) && av_pix_fmt_descriptors[pix_fmt].nb_components && !av_pix_fmt_descriptors[pix_fmt].log2_chroma_h && (ret = ff_add_format(&formats, pix_fmt)) < 0) { ff_formats_unref(&formats); return ret; } ff_formats_ref(formats, &ctx->inputs[0]->out_formats); ff_formats_ref(formats, &ctx->outputs[0]->in_formats); } return 0; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layouts; layouts = ff_all_channel_layouts(); if (!layouts) return AVERROR(ENOMEM); ff_add_format(&formats, AV_SAMPLE_FMT_FLT); ff_add_format(&formats, AV_SAMPLE_FMT_FLTP); ff_set_common_formats(ctx, formats); ff_set_common_channel_layouts(ctx, layouts); ff_set_common_samplerates(ctx, ff_all_samplerates()); return 0; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layout = NULL; int i; ff_add_format(&formats, AV_SAMPLE_FMT_FLT); ff_set_common_formats(ctx, formats); ff_add_channel_layout(&layout, AV_CH_LAYOUT_STEREO); ff_set_common_channel_layouts(ctx, layout); formats = NULL; for (i = 0; i < FF_ARRAY_ELEMS(freqinfos); i++) ff_add_format(&formats, freqinfos[i].sample_rate); ff_set_common_samplerates(ctx, formats); return 0; }
AVFilterFormats *ff_all_formats(enum AVMediaType type) { AVFilterFormats *ret = NULL; 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; }
AVFilterFormats *ff_planar_sample_fmts(void) { AVFilterFormats *ret = NULL; int fmt; for (fmt = 0; fmt < AV_SAMPLE_FMT_NB; fmt++) if (av_sample_fmt_is_planar(fmt)) ff_add_format(&ret, fmt); return ret; }
AVFilterFormats *ff_planar_sample_fmts(void) { AVFilterFormats *ret = NULL; int fmt; for (fmt = 0; av_get_bytes_per_sample(fmt)>0; fmt++) if (av_sample_fmt_is_planar(fmt)) ff_add_format(&ret, fmt); return ret; }
static int query_formats(AVFilterContext *ctx) { Frei0rContext *s = ctx->priv; AVFilterFormats *formats = NULL; if (s->plugin_info.color_model == F0R_COLOR_MODEL_BGRA8888) { ff_add_format(&formats, AV_PIX_FMT_BGRA); } else if (s->plugin_info.color_model == F0R_COLOR_MODEL_RGBA8888) { ff_add_format(&formats, AV_PIX_FMT_RGBA); } else { /* F0R_COLOR_MODEL_PACKED32 */ static const enum AVPixelFormat pix_fmts[] = { AV_PIX_FMT_BGRA, AV_PIX_FMT_ARGB, AV_PIX_FMT_ABGR, AV_PIX_FMT_ARGB, AV_PIX_FMT_NONE }; formats = ff_make_format_list(pix_fmts); } if (!formats) return AVERROR(ENOMEM); return ff_set_common_formats(ctx, formats); }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layouts = NULL; int ret; ret = ff_add_channel_layout(&layouts, AV_CH_LAYOUT_STEREO); if (ret < 0) return ret; ret = ff_set_common_channel_layouts(ctx, layouts); if (ret < 0) return ret; #if 0 ret = ff_add_format(&formats, AV_SAMPLE_FMT_FLT); if (ret < 0) return ret; #endif ret = ff_add_format(&formats, AV_SAMPLE_FMT_FLTP); if (ret < 0) return ret; ret = ff_set_common_formats(ctx, formats); if (ret < 0) return ret; return ff_set_common_samplerates(ctx, ff_all_samplerates()); }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; int fmt, ret; for (fmt = 0; av_pix_fmt_desc_get(fmt); fmt++) { const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt); if (is_planar_yuv(desc) && (ret = ff_add_format(&formats, fmt)) < 0) return ret; } return ff_set_common_formats(ctx, formats); }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; int fmt; for (fmt = 0; av_pix_fmt_desc_get(fmt); fmt++) { const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt); if (!(desc->flags & (AV_PIX_FMT_FLAG_HWACCEL | AV_PIX_FMT_FLAG_BITSTREAM)) && !((desc->log2_chroma_w || desc->log2_chroma_h) && !(desc->flags & AV_PIX_FMT_FLAG_PLANAR))) ff_add_format(&formats, fmt); } return ff_set_common_formats(ctx, formats); }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; int fmt; for (fmt = 0; fmt < AV_PIX_FMT_NB; fmt++) { const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt); if (is_planar_yuv(desc)) ff_add_format(&formats, fmt); } ff_set_common_formats(ctx, formats); return 0; }
AVFilterFormats *ff_all_formats(enum AVMediaType type) { AVFilterFormats *ret = NULL; int fmt; int num_formats = type == AVMEDIA_TYPE_VIDEO ? PIX_FMT_NB : type == AVMEDIA_TYPE_AUDIO ? AV_SAMPLE_FMT_NB : 0; for (fmt = 0; fmt < num_formats; fmt++) if ((type != AVMEDIA_TYPE_VIDEO) || (type == AVMEDIA_TYPE_VIDEO && !(av_pix_fmt_descriptors[fmt].flags & PIX_FMT_HWACCEL))) ff_add_format(&ret, fmt); return ret; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layout = NULL; ff_add_format(&formats, AV_SAMPLE_FMT_FLT); ff_set_common_formats(ctx, formats); ff_add_channel_layout(&layout, AV_CH_LAYOUT_STEREO); ff_set_common_channel_layouts(ctx, layout); formats = ff_all_samplerates(); if (!formats) return AVERROR(ENOMEM); return ff_set_common_samplerates(ctx, formats); }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layout = NULL; int ret; if ((ret = ff_add_format (&formats, AV_SAMPLE_FMT_FLT )) < 0 || (ret = ff_set_common_formats (ctx , formats )) < 0 || (ret = ff_add_channel_layout (&layout , AV_CH_LAYOUT_STEREO)) < 0 || (ret = ff_set_common_channel_layouts (ctx , layout )) < 0) return ret; formats = ff_all_samplerates(); return ff_set_common_samplerates(ctx, formats); }
static int query_formats(AVFilterContext *ctx) { static const int sample_rates[] = { 44100, -1 }; AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layout = NULL; ff_add_format(&formats, AV_SAMPLE_FMT_S16); ff_set_common_formats(ctx, formats); ff_add_channel_layout(&layout, AV_CH_LAYOUT_STEREO); ff_set_common_channel_layouts(ctx, layout); ff_set_common_samplerates(ctx, ff_make_format_list(sample_rates)); return 0; }
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))) ff_add_format(&ret, fmt); } return ret; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; int fmt, ret; for (fmt = 0; av_pix_fmt_desc_get(fmt); fmt++) { const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt); if (!(desc->flags & (AV_PIX_FMT_FLAG_HWACCEL | AV_PIX_FMT_FLAG_BITSTREAM | AV_PIX_FMT_FLAG_PAL)) && (desc->flags & AV_PIX_FMT_FLAG_PLANAR || desc->nb_components == 1) && (!(desc->flags & AV_PIX_FMT_FLAG_BE) == !HAVE_BIGENDIAN || desc->comp[0].depth == 8) && (ret = ff_add_format(&formats, fmt)) < 0) return ret; } return ff_set_common_formats(ctx, formats); }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *pix_fmts = NULL; int fmt, ret; for (fmt = 0; av_pix_fmt_desc_get(fmt); fmt++) { const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt); if (!(desc->flags & AV_PIX_FMT_FLAG_PAL || desc->flags & AV_PIX_FMT_FLAG_HWACCEL || desc->flags & AV_PIX_FMT_FLAG_BITSTREAM) && (ret = ff_add_format(&pix_fmts, fmt)) < 0) return ret; } return ff_set_common_formats(ctx, pix_fmts); }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *pix_fmts = NULL; int fmt; for (fmt = 0; fmt < AV_PIX_FMT_NB; fmt++) { const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt); if (!(desc->flags & AV_PIX_FMT_FLAG_HWACCEL || desc->flags & AV_PIX_FMT_FLAG_BITSTREAM || (desc->log2_chroma_w != desc->log2_chroma_h && desc->comp[0].plane == desc->comp[1].plane))) ff_add_format(&pix_fmts, fmt); } ff_set_common_formats(ctx, pix_fmts); return 0; }
static int query_formats(AVFilterContext *ctx) { ASRContext *s = ctx->priv; int sample_rates[] = { s->rate, -1 }; int ret; AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layout = NULL; if ((ret = ff_add_format (&formats, AV_SAMPLE_FMT_S16 )) < 0 || (ret = ff_set_common_formats (ctx , formats )) < 0 || (ret = ff_add_channel_layout (&layout , AV_CH_LAYOUT_MONO )) < 0 || (ret = ff_set_common_channel_layouts (ctx , layout )) < 0 || (ret = ff_set_common_samplerates (ctx , ff_make_format_list(sample_rates) )) < 0) return ret; return 0; }
static int query_formats(AVFilterContext *ctx) { SoxContext *sox = ctx->priv; AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layouts = NULL; ff_add_format(&formats, AV_SAMPLE_FMT_S32); ff_set_common_formats(ctx, formats); if (sox->effect->handler.flags & SOX_EFF_CHAN) { layouts = NULL; ff_add_channel_layout(&layouts, av_get_default_channel_layout(sox->effect->out_signal.channels)); ff_channel_layouts_ref(layouts, &ctx->outputs[0]->in_channel_layouts); ff_channel_layouts_ref(ff_all_channel_layouts(), &ctx->inputs[0]->out_channel_layouts); } else { ff_set_common_channel_layouts(ctx, ff_all_channel_layouts()); } return 0; }
static int query_formats(AVFilterContext *ctx) { AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layouts = NULL; int ret; if ((ret = ff_add_format (&formats, AV_SAMPLE_FMT_FLT )) < 0 || (ret = ff_set_common_formats(ctx , formats )) < 0) return ret; layouts = ff_all_channel_counts(); if (!layouts) return AVERROR(ENOMEM); ret = ff_set_common_channel_layouts(ctx, layouts); if (ret < 0) return ret; formats = ff_all_samplerates(); return ff_set_common_samplerates(ctx, formats); }
static int query_formats(AVFilterContext *ctx) { AudioSurroundContext *s = ctx->priv; AVFilterFormats *formats = NULL; AVFilterChannelLayouts *layouts = NULL; int ret; ret = ff_add_format(&formats, AV_SAMPLE_FMT_FLTP); if (ret) return ret; ret = ff_set_common_formats(ctx, formats); if (ret) return ret; layouts = NULL; ret = ff_add_channel_layout(&layouts, s->out_channel_layout); if (ret) return ret; ret = ff_channel_layouts_ref(layouts, &ctx->outputs[0]->in_channel_layouts); if (ret) return ret; layouts = NULL; ret = ff_add_channel_layout(&layouts, s->in_channel_layout); if (ret) return ret; ret = ff_channel_layouts_ref(layouts, &ctx->inputs[0]->out_channel_layouts); if (ret) return ret; formats = ff_all_samplerates(); if (!formats) return AVERROR(ENOMEM); return ff_set_common_samplerates(ctx, formats); }