Add InfoListener to Widevine Test Application
In order to test the MediaPlayer info events, an OnInfoListener was added to the VideoPlayerView class. It is set to listen to events coming from the videoView. This allows testers to verify that events are occuring. Note: This change was made by Alexander Oliphant who does not have write permission to commit to the Android tree. Change-Id: Ia2faa927b4fe2850e15644bd332e50601a424c4a
This commit is contained in:
@@ -28,6 +28,7 @@ import android.media.MediaExtractor;
|
||||
import android.media.MediaPlayer;
|
||||
import android.media.MediaPlayer.OnErrorListener;
|
||||
import android.media.MediaPlayer.OnCompletionListener;
|
||||
import android.media.MediaPlayer.OnInfoListener;
|
||||
import android.util.Log;
|
||||
|
||||
import java.io.IOException;
|
||||
@@ -160,6 +161,8 @@ public class VideoPlayerView extends Activity {
|
||||
view = videoView;
|
||||
}
|
||||
|
||||
|
||||
|
||||
playerFrame.addView(view, new FrameLayout.LayoutParams(
|
||||
LinearLayout.LayoutParams.WRAP_CONTENT,
|
||||
FrameLayout.LayoutParams.MATCH_PARENT));
|
||||
@@ -252,16 +255,62 @@ public class VideoPlayerView extends Activity {
|
||||
break;
|
||||
}
|
||||
drm.logBuffer.append(message + "\n");
|
||||
|
||||
updateLogs();
|
||||
bgImage.setVisibility(View.VISIBLE);
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
videoView.setOnCompletionListener(new OnCompletionListener() {
|
||||
public void onCompletion(MediaPlayer mp) {
|
||||
stopPlayback();
|
||||
}
|
||||
});
|
||||
|
||||
videoView.setOnInfoListener(new OnInfoListener() {
|
||||
public boolean onInfo(MediaPlayer mp, int what, int extra) {
|
||||
|
||||
String message = "Unknown info message";
|
||||
switch (what) {
|
||||
case MediaPlayer.MEDIA_INFO_UNKNOWN:
|
||||
message = "Unknown info message 2";
|
||||
break;
|
||||
case MediaPlayer.MEDIA_INFO_VIDEO_RENDERING_START:
|
||||
message = "Video rendering start";
|
||||
break;
|
||||
case MediaPlayer.MEDIA_INFO_VIDEO_TRACK_LAGGING:
|
||||
message = "Video track lagging";
|
||||
break;
|
||||
case MediaPlayer.MEDIA_INFO_BUFFERING_START:
|
||||
message = "Buffering start";
|
||||
break;
|
||||
case MediaPlayer.MEDIA_INFO_BUFFERING_END:
|
||||
message = "Buffering end";
|
||||
break;
|
||||
/*** TODO: Below needs to be added to MediaPlayer.java. Hard coded for now --Zan
|
||||
case MediaPlayer.MEDIA_INFO_NETWORK_BANDWIDTH: ***/
|
||||
case 703:
|
||||
message = "Network bandwidth";
|
||||
break;
|
||||
case MediaPlayer.MEDIA_INFO_BAD_INTERLEAVING:
|
||||
message = "Bad interleaving";
|
||||
break;
|
||||
case MediaPlayer.MEDIA_INFO_NOT_SEEKABLE:
|
||||
message = "Not seekable";
|
||||
break;
|
||||
case MediaPlayer.MEDIA_INFO_METADATA_UPDATE:
|
||||
message = "Metadata update";
|
||||
break;
|
||||
}
|
||||
drm.logBuffer.append(message + "\n");
|
||||
|
||||
updateLogs();
|
||||
|
||||
return true;
|
||||
}
|
||||
});
|
||||
|
||||
videoView.requestFocus();
|
||||
|
||||
videoView.start();
|
||||
|
||||
Reference in New Issue
Block a user