2011-10-27 8 views
1

アンドロイドエミュレータ(v.3.3.3 - Eclipse IDE)で3gpビデオをストリーミングしようとしています。私はトランスコーディングなしでポート9090でHTTPを使用してVLCメディアプレーヤーでストリームを準備します。ストリーミングをテストするために、VLCの新しいインスタンスを開き、私のローカルIP(192.168.1.107:9090)に接続すると、問題なくビデオが表示されます。今、私は私のActivityクラスののonCreate(バンドル)メソッドでこのコードを使用して、Android上で試してみてください。Android VideoViewを使用したVLCプレーヤーからAVDへのHTTPストリーミング

VideoView video = (VideoView) findViewById(R.id.video); 
String uri = "http://192.168.1.107:9090"; 
video.setVideoURI(Uri.parse(uri)); 
video.setMediaController(new MediaController(this)); 
video.requestFocus(); 
video.start(); 

が、アプリケーションが起動し、このメッセージを表示されます:「インポッシブル映像を再現します」。ここでlogcat:私は同じ結果と同じメッセージと誤差範囲と127.0.0.1:9090でURI 10.0.2.2:9090でも試してみた

D/MediaPlayer(454): Couldn't open file on client side, trying server side 
E/MediaPlayer(454): error (1, -2147483648) 
E/MediaPlayer(454): Error (1,-2147483648) 
D/VideoView(454): Error: 1,-2147483648 

(1、-111)

私はローカルでそれを再生する場合、同じ映像が正常に動作することを

注:

String uri = "android.resource://" + getPackageName() + "/" + R.raw.myvideo; 

私はWindows 7 x64を使用しています。

編集:同じエラーで私のDropboxのパブリックフォルダにビデオをアップロードしようとしましたが、元のlinkを使用しています!私のローカルネットワークに問題はありますか?エラー(1、x)はどういう意味ですか?

Edit2:私はローカルネットワーク上でXAMPPセッションを開始しました。ビデオをフォルダに入れました。これが適切にストリーミングが、(私の最初の編集では、ウェブ上の例のように)アクティブなダウンロードのようなものされていない場合でも、

String uri = "http://192.168.1.107:8080/myfolder/myvideo.3gp"; 

、それが動作します:IPアドレスは次のようなものです。

+0

デスクトップブラウザでURLを開くとストリームが機能しますか? Androidブラウザはどうですか? –

+0

@PeterKnego Google Chromeは、拡張子なしで「ダウンロード」という名前のファイルをダウンロードします。 Androidブラウザでもファイルをダウンロードできますが、ダウンロードフォルダには私のipとの下で「失敗」と表示されます。 – Baduel

+0

裸のdomain:portではなく、より具体的なURL http://192.168.1.107:9090/myfile.3gpを使用してみることをお勧めします。また、実際のデバイスでテストしてみてください。 – yorkw

答えて

0

あなたのローカルWebサーバーが正しいContent-Type(またはMIMEタイプ)のビデオをHTTP応答ヘッダーに設定していることを確認しましたか?

あなたの元のリンクは、オプションページ上のコンテンツやMIMEタイプを指定することができVLCについてContent-Type: video/3gpp

を使用しています。 documentationによれば、オプション文字列を編集して追加する必要があります。

:mime=video/3gpp 
+0

VLCがストリームをHTTPでどのように送信するのかわかりません。私は単純に[this](http://wiki.videolan.org/Documentation:Streaming_HowTo/Easy_Streaming_Newer_Versions)のようなものを使ってビデオをストリーミングします。 – Baduel

+0

@Baduel:私の更新された回答を参照 – Robert

+0

申し訳ありませんが、私は分かりません_where_私はMIMEタイプを指定する必要があります。 – Baduel

関連する問題