- aacenc_mp4asc((aacenc_param_t*)¶ms, aacinfo.confBuf,
- aacinfo.confSize, mp4asc, &ascsize);
- m4af_set_decoder_specific_info(m4af, 0, mp4asc, ascsize);
- m4af_set_fixed_frame_duration(m4af, 0,
- framelen >> downsampled_timescale);
+ m4af_set_num_channels(m4af, 0, sample_format->channels_per_frame);
+ m4af_set_fixed_frame_duration(m4af, 0, framelen >> scale_shift);
+ if (aacenc_is_explicit_bw_compatible_sbr_signaling_available())
+ m4af_set_decoder_specific_info(m4af, 0,
+ aacinfo.confBuf, aacinfo.confSize);
+ else {
+ uint8_t mp4asc[32];
+ uint32_t ascsize = sizeof(mp4asc);
+ aacenc_mp4asc((aacenc_param_t*)¶ms, aacinfo.confBuf,
+ aacinfo.confSize, mp4asc, &ascsize);
+ m4af_set_decoder_specific_info(m4af, 0, mp4asc, ascsize);
+ }