1 #ifndef CLI_CODEC_AAC_UTILS_H_ 2 #define CLI_CODEC_AAC_UTILS_H_ 3 4 #include <cstddef> 5 6 #include "libSYS/include/FDK_audio.h" 7 #include "libSYS/include/machine_type.h" 8 9 namespace iamf_tools { 10 11 /*!\brief IAMF requires raw AAC frames with no ADTS header. */ GetAacTransportationType()12constexpr TRANSPORT_TYPE GetAacTransportationType() { return TT_MP4_RAW; } 13 14 /*!\brief The FDK AAC encoder uses 16-bit PCM. */ GetFdkAacBytesPerSample()15constexpr size_t GetFdkAacBytesPerSample() { return sizeof(INT_PCM); } 16 17 /*!\brief Convenience method for getting bit depth. */ GetFdkAacBitDepth()18constexpr size_t GetFdkAacBitDepth() { return GetFdkAacBytesPerSample() * 8; } 19 20 } // namespace iamf_tools 21 22 #endif // CLI_CODEC_AAC_UTILS_H_ 23