2013-02-11 12 views
6

Pracuję nad przykładową aplikacją odtwarzacza multimediów w systemie Android, aby odtwarzać filmy online, opracowałem kod do odtwarzania filmów. Bardzo dobrze odtwarza wideo z karty SD, ale mam do czynienia z dwoma problemami w tym zakresie.Jak odtwarzać filmy online w systemie Android?

1- kiedy otwieram aplikację do filmów online, pokazuje wideo, ale nie odtwarza wideo i po chwili wyświetla okno dialogowe z ostrzeżeniem o treści "Niestety, tego wideo nie można odtworzyć".

2 - Mam kod "Pasek postępu", ale nie wiem, gdzie umieścić kod, gdy wideo jest pobierane z Internetu.

Oto mój kod, który możesz sprawdzić. Z góry dziękuję.

myVideoView = (VideoView) findViewById(R.id.surface_view); 


     try 
     { 

      myVideoView.setVideoURI(Uri.parse("http://www.MY_DOMAIN_NAME.com/videos/video1.mp4")); 
      myVideoView.setMediaController(new MediaController(this)); 
      myVideoView.requestFocus(); 
      myVideoView.start(); 
     } 
     catch(Exception e) 
     { 
      Toast.makeText(getApplicationContext(), "No Media found", Toast.LENGTH_LONG).show(); 
     } 

Odpowiedz

13

spróbować jak to

VideoView v; 
MediaController mediaController; 
ProgressDialog progressDialog; 

następnie

public void playvideo(String videopath) { 
    Log.e("entered", "playvide"); 
    Log.e("path is", "" + videopath); 
    try { 
     progressDialog = ProgressDialog.show(VideoPlay.this, "", 
       "Buffering video...", false); 
     progressDialog.setCancelable(true); 
     getWindow().setFormat(PixelFormat.TRANSLUCENT); 

     mediaController = new MediaController(VideoPlay.this); 

     Uri video = Uri.parse(videopath); 
     v.setMediaController(mediaController); 
     v.setVideoURI(video); 

     v.setOnPreparedListener(new OnPreparedListener() { 

      public void onPrepared(MediaPlayer mp) { 
       progressDialog.dismiss(); 
       v.start(); 
      } 
     }); 

    } catch (Exception e) { 
     progressDialog.dismiss(); 
     System.out.println("Video Play Error :" + e.getMessage()); 
    } 

} 

jeśli nadal ma problemu "Ten film nie mogą być odtwarzane" próbować zmienić format wideo, nadzieję, że u pomóc.

2

Bardzo łatwo jest odtwarzać wideo na żywo przy użyciu widoku wideo w systemie Android. wklejam tutaj kod, wypróbuj ten, który zadziała dobrze dla ciebie.

public class PlayVideo extends Activity 

{ 

     //private String videoPath ="Url"; 

     private static ProgressDialog progressDialog; 
     String videourl; 
     VideoView videoView ; 

     protected void onCreate(Bundle savedInstanceState) 
     { 

      super.onCreate(savedInstanceState); 
      setContentView(R.layout.play_video); 

      videoView = (VideoView) findViewById(R.id.videoView); 

      progressDialog = ProgressDialog.show(PlayVideo.this, "", "Buffering     
      video...",true); 
      progressDialog.setCancelable(true); 


      PlayVideo(); 

     } 
     private void PlayVideo() 
     { 
      try 
      {  
        getWindow().setFormat(PixelFormat.TRANSLUCENT); 
        MediaController mediaController = new MediaController(PlayVideo.this); 
        mediaController.setAnchorView(videoView);   

        Uri video = Uri.parse(videourl);   
        videoView.setMediaController(mediaController); 
        videoView.setVideoURI(videoPath); 
        videoView.requestFocus();    
        videoView.setOnPreparedListener(new OnPreparedListener() 
        { 

         public void onPrepared(MediaPlayer mp) 
         {     
           progressDialog.dismiss(); 
           videoView.start(); 
         } 
        }); 

      } 
      catch(Exception e) 
      { 
        progressDialog.dismiss(); 
        System.out.println("Video Play Error :"+e.toString()); 
        finish(); 
      } 

     } 
} 

Można znaleźć kod z poniższego linku:

http://hasmukhbhadani.blogspot.in/search/label/Video-Play%20Live%20Streaming%20in%20Android.

Powiązane problemy