Использование Android MediaCodec для декодирования видеопотока MPEG2

Я пытаюсь использоватьMediaCodec API для декодирования и отображенияMPEG2 закодированный поток. я используюMediaExtractor извлечь поток из транспортного потока MPEG (TS).

Я замечаю чтоconfigure() сбой декодера на всех устройствах, которые я пробовал - Nexus7 (2012), Nexus7 (2013), Nexus10, с кодом ошибки 0x80001001.

Единственный параметр, который может пойти не так при использованииconfigure() API являетсяMediaFormat Конфигурация предоставлена, и это получено из AndroidMediaExtractor, Я не понимаю, что может пойти не так, в результате чего эта проблема была замечена.

Параметры конфигурации, присутствующие вMediaFormat Объектом являются:

            1. `CSD-0` - Containing Sequence header and sequence extension header.

                            Seq_Hdr    - 00 00 01 B3 2D 01 E0 24 09 C4 23 80 

                            Seq_extnsn - 00 00 01 B5 14 8A 00 01 00 80

            2. Height - 480

            3. Width - 720

            4. KEY_MIME - `video/mpeg2`

Ошибка в некоторой степени похожа на все устройства, что может означать, что ошибка, возможно, происходит от общего объекта вMediaCodec стек. Здесь ошибка от Nexus7 (2013). (0x80001001 - OMX_ErrorUndefined)

E/ACodec  ( 6504): [OMX.qcom.video.decoder.mpeg2] configureCodec returning error -1010
E/MediaCodec( 6504): Codec reported an error. (omx error 0x80001001, internalError -1010)

Это поведение, потому чтоMPEG2 не является обязательным кодек для поддержки на платформах Android или я делаю что-то не так? Любая информация о поведенииMPEG2 декодер будет с благодарностью.

Ответы на вопрос(1)

Ваш ответ на вопрос