web-dev-qa-db-ja.com

クライアント側でファイルを開くことができませんでした。サーバー側でエラーが発生しましたAndroid

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

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

これが私のAndroid code-

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

前もって感謝します。

11
Vishal

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

rtspリンクを取得すると、VideoViewでビデオを再生できます ここに例があります

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

次にE43mgXNl0xcはVideo_IDです。

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

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

リンク1

リンク2

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

私の答えもチェックしてください ここ

3
Hardik Joshi

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

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com/watch?v=E43mgXNl0xc"));
startActivity(browserIntent);                          
0

私は同じ問題を抱えていましたが、どの答えもうまくいきませんでした問題はビデオフォーマットが適切ではないということですこのビデオは私のために働きました

String vidAddress = "http://www.html5videoplayer.net/videos/toystory.mp4";
0
Aniruddha KM