0

私がやりたいことは非常に単純ですが、ストリーミング方法/ソフトウェアの経験が不足しています。私がやりたいのは、ラップトップのウェブカメラをアンドロイドのビデオビューにライブでストリーミングすることです。vlc を使用して、http://:privateIP:8080/stream を使用して Web カメラをストリーミングし、WMV + WMA をトランスコーディングしています。これは、vlc で生成された出力文字列です。

    :sout=#transcode{vcodec=WMV2,vb=800,scale=1,acodec=wma2,ab=128,channels=2,samplerate=44100}:http{mux=asf,dst=:8080/stream} :sout-all :sout-keep

私のアンドロイドコードは次のとおりです:

    package com.example.vlctest;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.graphics.PixelFormat;
import android.view.Menu;
import android.widget.MediaController;
import android.widget.VideoView;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


     VideoView view1 = (VideoView) findViewById(R.id.videoView1); 
     getWindow().setFormat(PixelFormat.TRANSLUCENT);

     MediaController mc = new MediaController(this); 
     mc.setMediaPlayer(view1); 

     view1.setMediaController(mc); 
     view1.setVideoURI(Uri.parse("http://192.168.1.100:8080/stream")); 
     view1.requestFocus(); 
     view1.start();
}
}

アプリが動画を再生できないと言う場合もあれば、トランスコーディングを変更した後、動画ビューが何もせずに黒のままになる場合もあります。これに対する解決策またはより効率的な方法がある場合は、教えてください。

4

1 に答える 1

1

問題は、Android でサポートされていない WMV 形式を使用してストリーミングしていることです。VLC でもサポートされている Android と互換性のある形式をストリーミングする必要があります。

VLC の次の設定は、Android デバイスで機能します。

H.264ビデオとAACオーディオを使用してトランスコードします。MPEG TSorMP4をカプセル化形式として使用します。

これらは VLC と Android 3.0+ で利用できるはずです。

詳細については、VLC および Android でサポートされているメディア形式に関する次のドキュメントを参照してください。

http://www.videolan.org/doc/streaming-howto/en/ch02.html http://developer.android.com/guide/appendix/media-formats.html

于 2013-03-18T20:36:02.300 に答える