7

私は、RTSPストリームを取り込み、オーディオ/ビデオを表示するAndroidアプリケーションを構築しようとしています。私はVideoViewを使用していて、リアルタイムから3〜10秒の遅延を得ています。この遅れが3秒未満になるようにする必要があります。Android:VideoView/MediaPlayerのメディア遅延/レイテンシを減らす方法はありますか?

PC上では、1〜2秒の遅延でVLCを使用して同じRTSPストリームを見ることができます。 Androidでこれをどのように複製できますか? MoboPlayer/RockPlayerのような他のアプリを使用しても、遅延は3〜10秒です。 (問題があれば、PCとAndroidの両方でRTSPストリームにワイヤレスで接続しています)

MediaPlayerの代替として、私は自分のような初心者のために働くのが大変で、私は複数の問題に遭遇しています。

すべての情報をお待ちしております。

+1

誰でも?私はまったく同じ問題を抱えています。 – Scot

答えて

1

まず、遅延は、AndroidハードウェアMediaPlayerで制御不能な初期バッファサイズのためだと思います。これは、カスタムSWメディアプレーヤーをFFMpeg(AVconv now)またはGStreamerとして使用することで修正できます。しかし、それはあなたのパフォーマンス(ビデオストリームの圧縮、解像度、fpsに依存する)とデバイスのバッテリ寿命にかかります。

もちろん、FFMpegまたは類似のC/C++フレームワークを使用したネイティブ開発は複雑で、多くの時間と経験が必要です。

別のオプション:ビデオとオーディオのデコーダにアクセスするために新しいAndroid 4.1 Java APIを試すことができます。そして、このAPIといくつかのコードを使用してRTSPサーバーからビデオストリームをロードするための独自のRTSPプレーヤーを構築してください。

Android 4.1 Multimedia

関連する問題