在将缓冲区提供给 Raspberry Pi 上的音频解码器组件后,我收到 OMX_ErrorUnsupportedSetting 错误事件。我尝试了任何想到的方法来更改参数,但回调仍然到达。OpenMAX 标准中是否有任何方法可以尝试调查导致该事件的参数?
这就是我正在做的事情:
- 创建组件;
- 禁用所有端口;
- 将状态设置为空闲;
- 设置端口格式以使用 OMX_AUDIO_CodingAAC;
- 将端口定义设置为使用 OMX_AUDIO_CodingAAC,每个 6144 字节的 4 个缓冲区;
- 将配置文件设置为这些值(不确定是否需要):profileType.nSampleRate = 48000; profileType.nFrameLength = 0; profileType.nChannels = 6; profileType.nBitRate = 288000; profileType.nAudioBandWidth = 0; 将带有 bCodecConfigIsComplete 的 OMX_PARAM_CODECCONFIGTYPE 设置为 1;
- 将 OMX_IndexParamBrcmDecoderPassThrough 设置为 true。
将所有缓冲区发送到组件后,我突然收到 OMX_ErrorUnsupportedSetting 事件并且端口未启用。知道我可能做错了什么或如何检查导致错误的参数吗?