| 1212 | static const int availableCodecsCount = (sizeof(availableCodecs) / sizeof(availableCodecs[0])) - 1; |
| 1213 | |
| 1214 | static struct AvailableCodec * findAvailableCodec(avifCodecChoice choice, avifCodecFlags requiredFlags) |
| 1215 | { |
| 1216 | for (int i = 0; i < availableCodecsCount; ++i) { |
| 1217 | if ((choice != AVIF_CODEC_CHOICE_AUTO) && (availableCodecs[i].choice != choice)) { |
| 1218 | continue; |
| 1219 | } |
| 1220 | if (requiredFlags && ((availableCodecs[i].flags & requiredFlags) != requiredFlags)) { |
| 1221 | continue; |
| 1222 | } |
| 1223 | if ((choice == AVIF_CODEC_CHOICE_AUTO) && (availableCodecs[i].choice == AVIF_CODEC_CHOICE_AVM)) { |
| 1224 | // AV2 is experimental and cannot be the default, it must be explicitly selected. |
| 1225 | continue; |
| 1226 | } |
| 1227 | return &availableCodecs[i]; |
| 1228 | } |
| 1229 | return NULL; |
| 1230 | } |
| 1231 | |
| 1232 | const char * avifCodecName(avifCodecChoice choice, avifCodecFlags requiredFlags) |
| 1233 | { |
no outgoing calls
no test coverage detected