3

MediaCodecAPI を使用して、MPEG2エンコードされたストリームをデコードおよび表示しようとしています。MediaExtractorMPEG トランスポート ストリーム ( ) からストリームを抽出するために使用しTSます。

configure()Nexus7(2012)、Nexus7(2013)、Nexus10 など、試したすべてのデバイスでデコーダーがエラー コード 0x80001001 で失敗していることに気付きました。

configure()APIを使用する際に問題が発生する唯一のパラメーターは、MediaFormat提供されている構成であり、これは Android から取得されますMediaExtractor。何がうまくいかず、この問題が注目されるようになったのか理解できません。

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デコーダーの動作に関する情報は大歓迎です。

4

1 に答える 1

1

デバイスで、/system/etc/media_codecs.xmlを見てリストを表示します。

私の理解では、現在の Nexus デバイスでは、MPEG-2 ビデオ圧縮はサポートされていません。

于 2014-05-16T14:37:54.040 に答える