2017-03-20 10 views
0

ターゲットデバイスで、MediaCodecSelector DEFAULT実装のgetDecoderInfo()関数を変更すると、ExoPlayerで特定のコーデックを使用する必要があります。カスタマイズされたMediaCodecSelectorを使用するExoPlayer

しかし、実際の製品では、ExoPlayerのソースを変更したくないです。あなた自身のMediaCodecSelectorを実装できると言った記事を見ましたが、どうやって解決するかは分かりませんでした。私はMediaCodecSelector.DEFAULTの使用がbuildVideoRenderersにハードコードされているのでSimpleExoPlayerの)(、SimpleExoPlayerをサブクラス化してる場合

、私は、しかし、私がプライベートプロパティにアクセスすることはできません、)(buildVideoRenderersを上書きするために思っています私が持っていても、それは重複したコードに終わるでしょう。

また、私がExoPlayerを実装するのであれば、さらにプライベートクラスに依存するようです。

私はそれを行うための標準的な方法は、上記のいずれかではないと思います。

+0

私はexoplayerと標準的な方法は、必要に応じてフォークすると思います。 buildVideoRenderersをオーバーライドする際にどのような問題があるか説明できますか?あなたが解決しようとしている正確な問題が何であるかをより詳しく説明すると助けになるかもしれません。 – Okas

答えて

0

ExoPlayerFactoryのファクトリ関数public static ExoPlayer newInstance(Renderer[] renderers, TrackSelector trackSelector)を使用して終了しました。どこで私自身MediaCodecSelectorRendererを作成します。

次に、表面ビューの設定方法が違います。sendMessageタイプはMSG_SET_SURFACEです。

関連する問題