【发布时间】:2014-03-05 13:12:38
【问题描述】:
我正在 Android 上录制音频。这是一个相关的sn-p
mediaRecorder = new MediaRecorder();
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.AAC_ADTS);
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
但是,生成的 adts 文件使用 AAC LTP(长期预测)对象类型记录。有什么方法可以强制 MediaRecorder 在所有支持它的设备上生成 AAC LC?
【问题讨论】:
-
我也遇到了类似的问题。我正在使用 ExoPlayer 播放流式音频。它可以处理使用 AAC_LC 但不能处理 AAC LTP 编码的音频。使用 AAC LTP 录制的样本也无法在 Android 版 chrome 应用中播放; exoplayer 团队表示 AAC LTP 不是受支持的格式。我相信这些样本是在 Android 上录制的;这意味着 Android 正在录制它无法播放的内容。还有另一个AudioEncoder 选项,AAC_ELD,代表Enhanced Low Delay;如果只生产可以解决我们问题的 AAC LC。但是,从它的描述来看,它似乎无济于事