sws/tests/pixdesc_query: save every pix fmts in a list

This will be required for the next commit.
This commit is contained in:
Clément Bœsch 2017-03-23 23:21:07 +01:00
parent e433497160
commit ca23d3491d
1 changed files with 15 additions and 4 deletions

View File

@ -18,6 +18,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavutil/mem.h"
#include "libswscale/swscale_internal.h"
static const struct {
@ -45,17 +46,27 @@ static const struct {
int main(void)
{
int i;
int i, j;
for (i = 0; i < FF_ARRAY_ELEMS(query_tab); i++) {
const char **pix_fmts = NULL;
int nb_pix_fmts = 0;
const AVPixFmtDescriptor *pix_desc = NULL;
printf("%s:\n", query_tab[i].class);
while ((pix_desc = av_pix_fmt_desc_next(pix_desc))) {
enum AVPixelFormat pix_fmt = av_pix_fmt_desc_get_id(pix_desc);
if (query_tab[i].cond(pix_fmt))
printf(" %s\n", pix_desc->name);
av_dynarray_add(&pix_fmts, &nb_pix_fmts, (void *)pix_desc->name);
}
if (pix_fmts) {
printf("%s:\n", query_tab[i].class);
for (j = 0; j < nb_pix_fmts; j++)
printf(" %s\n", pix_fmts[j]);
printf("\n");
free(pix_fmts);
}
printf("\n");
}
return 0;
}