2014-09-04 8 views
0

비디오의 20 % 만 버퍼링하도록하고 싶습니다. 하지만 어떤 이유로 내 onBufferingUpdate()가 호출되지 않습니다.VideoView onBufferingUpdate()가 호출되지 않습니까?

이유가 무엇입니까? VideoView에서 .m3u8을 재생하려고합니다. 동영상이 재생되지만 onBufferingUpdate()가 호출되지 않습니다.

String VideoURL =  "http://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8" 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.videoview_main); 

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

    pDialog = new ProgressDialog(VideoViewActivity.this); 
    pDialog.setTitle("Android Video Streaming POC"); 
    pDialog.setMessage("Buffering..."); 
    pDialog.setIndeterminate(false); 
    pDialog.setCancelable(false); 
    pDialog.show(); 

    try { 
     // Start the MediaController 
     MediaController mediacontroller = new MediaController(
      VideoViewActivity.this); 
     mediacontroller.setAnchorView(videoview); 
     // Get the URL from String VideoURL 
     Uri video = Uri.parse(VideoURL); 
     videoview.setMediaController(mediacontroller); 
     videoview.setVideoURI(video); 

    } catch (Exception e) { 
     Log.e("Error", e.getMessage()); 
     e.printStackTrace(); 
    } 

    videoview.requestFocus(); 
    videoview.setOnPreparedListener(VideoViewActivity.this); 
} 

@Override 
public void onPrepared(MediaPlayer mp) { 
    pDialog.dismiss(); 
    mp.setOnBufferingUpdateListener(new OnBufferingUpdateListener() { 
     // show updated information about the buffering progress 
     @Override 
     public void onBufferingUpdate(MediaPlayer mp, int percent) { 
      Log.e("ERRORRRRRRRRRR", "percent: " + percent); 
     } 
    }); 
    videoview.start(); 
} 

제안 감사합니다 내 아래 코드입니다.

+0

사용중인 Android 버전은 무엇입니까? –

답변

0

MediaPlayer에서 start()를 호출 한 후 수신기를 설정해보십시오.

0

나는 이것이 HLS 비디오이기 때문에, 진보적 인 HTTP 다운로드를 시도 했습니까? Test mp4 나는 이걸로 해봤는데 그걸 호출 할 수있다. 나는 또한 onPrepared가 아니라 .setVideoURI() 다음에 .start()를 호출했다.