Я получаю событие ошибки OMX_ErrorUnsupportedSetting после предоставления буферов компоненту аудиодекодера на Raspberry Pi. Я пробовал все, что пришло мне в голову, чтобы изменить параметры, но обратный вызов все равно приходит. Есть ли в стандарте OpenMAX какой-либо способ попытаться выяснить, какой параметр вызывает это событие?
Вот что я делаю:
- Создал компонент;
- отключил все порты;
- установить состояние ожидания;
- установить формат порта для использования OMX_AUDIO_CodingAAC;
- установить определение порта для использования OMX_AUDIO_CodingAAC, 4 буфера по 6144 байт каждый;
- установите для профиля следующие значения (не уверен, что это необходимо): profileType.nSampleRate = 48000; profileType.nFrameLength = 0; profileType.nChannels = 6; profileType.nBitRate = 288000; profileType.nAudioBandWidth = 0; установите для OMX_PARAM_CODECCONFIGTYPE с bCodecConfigIsComplete значение 1;
- установите для OMX_IndexParamBrcmDecoderPassThrough значение true.
После того, как все буферы отправлены в компонент, я внезапно получаю событие OMX_ErrorUnsupportedSetting, и порт не включен. Любая идея о том, что я могу делать неправильно или как я могу проверить параметр, вызывающий ошибку?