| 1460 | } |
| 1461 | |
| 1462 | static unsigned get_codecs_sorted(const AVCodecDescriptor ***rcodecs) |
| 1463 | { |
| 1464 | const AVCodecDescriptor *desc = NULL; |
| 1465 | const AVCodecDescriptor **codecs; |
| 1466 | unsigned nb_codecs = 0, i = 0; |
| 1467 | |
| 1468 | while ((desc = avcodec_descriptor_next(desc))) |
| 1469 | nb_codecs++; |
| 1470 | if (!(codecs = av_calloc(nb_codecs, sizeof(*codecs)))) { |
| 1471 | av_log(NULL, AV_LOG_ERROR, "Out of memory\n"); |
| 1472 | exit_program(1); |
| 1473 | } |
| 1474 | desc = NULL; |
| 1475 | while ((desc = avcodec_descriptor_next(desc))) |
| 1476 | codecs[i++] = desc; |
| 1477 | av_assert0(i == nb_codecs); |
| 1478 | qsort(codecs, nb_codecs, sizeof(*codecs), compare_codec_desc); |
| 1479 | *rcodecs = codecs; |
| 1480 | return nb_codecs; |
| 1481 | } |
| 1482 | |
| 1483 | static void print_codecs_for_id(enum AVCodecID id, int encoder) |
| 1484 | { |
no test coverage detected