68 #define FIFO_INIT_SIZE 8
106 "Cannot buffer more frames. Consume some available frames "
107 "before adding new ones.\n");
128 "%d buffers queued in %s, something may be wrong.\n",
155 || !strcmp(ctx->
filter->
name,
"ffabuffersink"));
179 || !strcmp(ctx->
filter->
name,
"ffbuffersink"));
192 || !strcmp(ctx->
filter->
name,
"ffabuffersink"));
243 .
name =
"ffbuffersink",
244 .description =
NULL_IF_CONFIG_SMALL(
"Buffer video frames, and make them available to the end of the filter graph."),
250 .
inputs = ffbuffersink_inputs,
265 .
name =
"buffersink",
266 .description =
NULL_IF_CONFIG_SMALL(
"Buffer video frames, and make them available to the end of the filter graph."),
272 .
inputs = buffersink_inputs,
278 int nb_layouts = 0, nb_counts = 0, i;
282 for (; layouts[nb_layouts] != -1; nb_layouts++);
284 for (; counts[nb_counts] != -1; nb_counts++);
285 if (nb_counts > INT_MAX - 1 - nb_layouts)
287 if (!(list =
av_calloc(nb_layouts + nb_counts + 1,
sizeof(*list))))
289 for (i = 0; i < nb_layouts; i++)
290 list[i] = layouts[i];
291 for (i = 0; i < nb_counts; i++)
293 list[nb_layouts + nb_counts] = -1;
315 "Conflicting all_channel_counts and list in parameters\n");
379 .
name =
"ffabuffersink",
380 .description =
NULL_IF_CONFIG_SMALL(
"Buffer audio frames, and make them available to the end of the filter graph."),
385 .
inputs = ffabuffersink_inputs,
400 .
name =
"abuffersink",
401 .description =
NULL_IF_CONFIG_SMALL(
"Buffer audio frames, and make them available to the end of the filter graph."),
406 .
inputs = abuffersink_inputs,
421 avfilter_vsink_buffer.
inputs[0].start_frame ||
426 avfilter_vsink_ffbuffersink.
inputs[0].end_frame ||
444 int ret = 0, have_samples = 0, need_samples;
459 while (have_samples < nb_samples) {
464 nb_samples = have_samples;
471 nb_samples - have_samples);
473 have_samples, 0, need_samples,
474 nb_channels, in_buf->
format);
475 have_samples += need_samples;
476 if (need_samples < in_buf->audio->nb_samples) {
480 nb_channels, in_buf->
format);