Implement avfilter_make_format_list2(), which is going to replace

avfilter_make_format_list().

See the thread:
"[PATCH] Implement avfilter_make_format_list2(enum PixelFormat pix_fmt, ...)".

Originally committed as revision 20299 to svn://svn.ffmpeg.org/ffmpeg/trunk
release/0.6
Stefano Sabatini 15 years ago
parent f28b385d47
commit f6a1fa850a
  1. 12
      libavfilter/avfilter.h
  2. 16
      libavfilter/formats.c

@ -23,8 +23,8 @@
#define AVFILTER_AVFILTER_H
#define LIBAVFILTER_VERSION_MAJOR 1
#define LIBAVFILTER_VERSION_MINOR 0
#define LIBAVFILTER_VERSION_MICRO 1
#define LIBAVFILTER_VERSION_MINOR 1
#define LIBAVFILTER_VERSION_MICRO 0
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
LIBAVFILTER_VERSION_MINOR, \
@ -179,6 +179,14 @@ struct AVFilterFormats
*/
AVFilterFormats *avfilter_make_format_list(int len, ...);
/**
* Creates a list of supported formats. This is intended for use in
* AVFilter->query_formats().
* @param pix_fmt list of pixel formats, terminated by PIX_FMT_NONE
* @return the format list, with no existing references
*/
AVFilterFormats *avfilter_make_format_list2(enum PixelFormat *pix_fmt);
/**
* Returns a list of all colorspaces supported by FFmpeg.
*/

@ -87,6 +87,22 @@ AVFilterFormats *avfilter_make_format_list(int len, ...)
return ret;
}
AVFilterFormats *avfilter_make_format_list2(enum PixelFormat *pix_fmt)
{
AVFilterFormats *formats;
int count;
for (count = 0; pix_fmt[count] != PIX_FMT_NONE; count++)
;
formats = av_mallocz(sizeof(AVFilterFormats));
formats->formats = av_malloc(sizeof(*formats->formats) * count);
formats->format_count = count;
memcpy(formats->formats, pix_fmt, sizeof(*formats->formats) * count);
return formats;
}
AVFilterFormats *avfilter_all_colorspaces(void)
{
AVFilterFormats *ret;

Loading…
Cancel
Save