unsigned bandwidth; \
unsigned afterburner; \
unsigned lowdelay_sbr; \
+ unsigned sbr_ratio; \
unsigned sbr_signaling; \
unsigned transport_format; \
unsigned adts_crc_check; \
AACENC_PARAMS
} aacenc_param_t;
+typedef struct aacenc_frame_t {
+ uint8_t *data;
+ uint32_t size, capacity;
+} aacenc_frame_t;
+
+int aacenc_is_sbr_ratio_available();
+
int aacenc_is_sbr_active(const aacenc_param_t *params);
+int aacenc_is_dual_rate_sbr(const aacenc_param_t *params);
+
+void aacenc_get_lib_info(LIB_INFO *info);
+
int aacenc_init(HANDLE_AACENCODER *encoder, const aacenc_param_t *params,
const pcm_sample_description_t *format,
AACENC_InfoStruct *info);
int aac_encode_frame(HANDLE_AACENCODER encoder,
const pcm_sample_description_t *format,
const int16_t *input, unsigned iframes,
- uint8_t **output, uint32_t *olen, uint32_t *osize);
+ aacenc_frame_t *output);
#endif