2016-10-07 6 views
0

推定:Android用VLCがデバイスにインストールされていて正常に動作しています。Android:現在のアクティビティを終了せずにVLCを使用する方法(バックグラウンドオーディオの場合)

実は、私は私のURLでVLCを起動して、それとリアルタイム機能(< 1秒)とオーディオストリームを聞くことができます。

private void startRTSPStreamOnVLC(String ip, String port, String path) { 
    final String url = "rtsp://" + ip + ":" + port + "/" + path; 

    Intent i = new Intent(Intent.ACTION_VIEW); 
    i.setPackage("org.videolan.vlc"); 
    i.setDataAndType(Uri.parse(url), "video/h264"); 
    i.setComponent(new ComponentName("org.videolan.vlc", "org.videolan.vlc.gui.video.VideoPlayerActivity")); 
    startActivity(i); 
} 

問題は、それが自分のアプリケーションを引き起こして、画面上のVLCをもたらす、あります一時停止/停止し、私の他の方法のオーディオストリームを壊す。

レイアウトで実際に表示できるビューでVLCを開くことができればさらに大きくなります。

私はGUIなしでアクティビティとして使用されるサービスについて知っていますが、実際に避けたいVLC自体の変更を意味します。

これを達成する秘密のヒントはありますか?

'- ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' - ' Vikash Kumar Vermaが言っていたように、LibVLCを使って行く方法がありました。 私は私が見つけたアプリの最も最近の例では、サーバとしてVLCでWindows 7上で動作している私のRTSPオーディオストリームの550ms遅延にダウンするマネージドthis one.

this guide. に従うことにより、私のABI(MIPS)のためにそれをコンパイルする必要がありました。私はMediaクラスに入って、次のように771行を変更しなければならなかった:

addOption(":network-caching=0"); // Was 1500 
+0

「StartActivity」は常に新しいアクティビティを表示します。唯一の方法は、VLCがいくつかのオーディオを再生することです - それにブロードキャストを送信します。しかし、私はIntentがどんなものであるべきかを知らない。あなたはそれをGoogleにすることができる。 – Ircover

答えて

1

はい、あなたのレイアウトでVLCを使うことができます。 MyVlcPlayerをご覧ください。私はアプリケーションでビデオを再生するためにlibVLCライブラリを使用しています。

+0

ありがとう、それは確かに正しい方向だった。あなたのプロジェクトでは3年以上前のLibVlcを使用していますが、私は自分の投稿を編集して、私が見つけたものについてもっと詳しく説明します。 –

+0

hehe :) @ J.Jacobs-VP私はいつか私は新しいLibVlcに更新する時間を見つけることを願って –

関連する問題