MCPcopy Create free account
hub / github.com/HandBrake/HandBrake / hb_audio_encoder_is_enabled

Function hb_audio_encoder_is_enabled

libhb/common.c:488–543  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

486};
487int hb_audio_encoders_count = sizeof(hb_audio_encoders) / sizeof(hb_audio_encoders[0]);
488static int hb_audio_encoder_is_enabled(int encoder)
489{
490 if (encoder & HB_ACODEC_PASS_FLAG)
491 {
492 // Passthru encoders are always enabled
493 return 1;
494 }
495 switch (encoder)
496 {
497#ifdef __APPLE__
498 case HB_ACODEC_CA_AAC:
499 case HB_ACODEC_CA_HAAC:
500 return 1;
501#endif
502
503#if HB_PROJECT_FEATURE_FFMPEG_AAC
504 case HB_ACODEC_FFAAC:
505 return avcodec_find_encoder_by_name("aac") != NULL;
506#endif
507
508 case HB_ACODEC_FDK_AAC:
509 case HB_ACODEC_FDK_HAAC:
510 return avcodec_find_encoder_by_name("libfdk_aac") != NULL;
511
512 case HB_ACODEC_AC3:
513 return avcodec_find_encoder(AV_CODEC_ID_AC3) != NULL;
514
515 case HB_ACODEC_FFALAC:
516 case HB_ACODEC_FFALAC24:
517 return avcodec_find_encoder(AV_CODEC_ID_ALAC) != NULL;
518
519 case HB_ACODEC_FFEAC3:
520 return avcodec_find_encoder(AV_CODEC_ID_EAC3) != NULL;
521
522 case HB_ACODEC_FFFLAC:
523 case HB_ACODEC_FFFLAC24:
524 return avcodec_find_encoder(AV_CODEC_ID_FLAC) != NULL;
525
526 case HB_ACODEC_OPUS:
527 return avcodec_find_encoder(AV_CODEC_ID_OPUS) != NULL;
528
529 case HB_ACODEC_FFTRUEHD:
530 return avcodec_find_encoder(AV_CODEC_ID_TRUEHD) != NULL;
531
532 // the following encoders are always enabled
533 case HB_ACODEC_LAME:
534 case HB_ACODEC_VORBIS:
535 case HB_ACODEC_FFPCM16:
536 case HB_ACODEC_FFPCM24:
537 case HB_ACODEC_NONE:
538 return 1;
539
540 default:
541 return 0;
542 }
543}
544
545typedef struct

Callers 1

hb_common_global_initFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected