11

私は自分のAndroidプログラムによってそのURLでYouTubeビデオを再生しようとしました。setVideoURI(uri);を使用しました。これに関してstackoverflowの他のPOSTで提案されているように、URIを設定する機能もあります。しかし、サーバー側のエラーを試行して、クライアント側でファイルを開くことができませんでした。私のコードの何が問題なのか理解していただけませんか。

しかし、コメント付きのコードでローカルビデオを再生することはできます。

これが私のAndroidコードです-

public class VideoActivity extends Activity {

    //MediaPlayer song= new MediaPlayer();

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_video);

        VideoView videoView = (VideoView)this.findViewById(R.id.VVSimpleVideo);
        MediaController mc = new MediaController(this);
        mc.setAnchorView(videoView);
        mc.setMediaPlayer(videoView);
        videoView.setMediaController(mc);
        //String _path = "mnt/sdcard/Movies/MyCameraApp/video6.mp4";
        String _path = "http://www.youtube.com/watch?v=E43mgXNl0xc";
        Uri uri=Uri.parse(_path);
        videoView.setVideoURI(uri);
       //videoView.setVideoPath(_path);

        videoView.requestFocus();
        videoView.start();

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_video, menu);
        return true;
    }
}

これがログエラーです-

  10-11 04:51:23.480: D/MediaPlayer(4714): Couldn't open file on client side, trying server side
10-11 04:51:26.130: E/MediaPlayer(4714): error (1, -2147483648)
10-11 04:51:26.130: E/MediaPlayer(4714): Error (1,-2147483648)
10-11 04:51:26.130: D/VideoView(4714): Error: 1,-2147483648
10-11 04:51:26.190: D/dalvikvm(4714): GC_CONCURRENT freed 174K, 4% free 6785K/7047K, paused 4ms+3ms

前もって感謝します。

4

3 に答える 3

3

You tube url ...を取得したら、URLからVideo_IDをサブストリングします。以下の例を参照してください。

rtspリンクを取得すると、VideoViewでビデオを再生できます。例を次に示します。

例:このリンクがビデオの場合http://www.youtube.com/watch?v=E43mgXNl0xc

次にE43mgXNl0xc 、Video_IDです。

このビデオIDを使用して、videoviewでビデオを再生します。

次の2つのリンクを参照してください。

リンク1

リンク2

rtspリンクを取得したら、VideoViewで再生できます。

ここで私の答えも確認してください。

于 2012-10-11T05:03:24.233 に答える
0

IntentAndroidデバイスでは、Youtubeビデオ用にを使用できます。

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com/watch?v=E43mgXNl0xc"));
startActivity(browserIntent);                          
于 2012-10-11T05:02:04.540 に答える
0

私は同じ問題を抱えていましたが、どの答えもうまくいきませんでした。問題は、ビデオ形式が適切ではないということです。このビデオは私にとってはうまくいきました。

String vidAddress = "http://www.html5videoplayer.net/videos/toystory.mp4";
于 2016-01-04T11:12:07.197 に答える