package com.joyplus.mediaplayer; import android.content.Context; import android.media.MediaPlayer; import android.util.AttributeSet; import android.widget.LinearLayout; import com.joyplus.tvhelper.R; import com.joyplus.tvhelper.utils.Log; public class SystemMediaPlayerVideoView extends LinearLayout implements ViewInterface,VideoViewInterface,MediaPlayer.OnErrorListener,MediaPlayer.OnCompletionListener, MediaPlayer.OnPreparedListener,MediaPlayer.OnInfoListener{ private boolean Debug = true; private String TAG = "SystemMediaPlayerVideoView"; private SystemVideoView mVideoView; @Override protected void onFinishInflate() { // TODO Auto-generated method stub if(Debug)Log.d(TAG,"onFinishInflate()"); super.onFinishInflate(); mVideoView = (SystemVideoView) findViewById(R.id.systemvideoView); mVideoView.setOnErrorListener(this); mVideoView.setOnCompletionListener(this); mVideoView.setOnPreparedListener(this); mVideoView.setOnInfoListener(this); } public SystemMediaPlayerVideoView(Context context) { super(context); // TODO Auto-generated constructor stub } public SystemMediaPlayerVideoView(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub } @Override public void reset() { // TODO Auto-generated method stub } @Override public void setVisibility(boolean visible) { // TODO Auto-generated method stub Log.d("Jas","Mediaplayerssssssssssssssss "+visible); if(visible == false){ mVideoView.StopVideo(); } } @Override public VideoViewInterface getVideoViewInterface() { // TODO Auto-generated method stub return mVideoView; } @Override public MediaInfo getMediaInfo() { // TODO Auto-generated method stub return mVideoView.getMediaInfo(); } @Override public void SetState(STATE state) { // TODO Auto-generated method stub mVideoView.SetState(state); } @Override public void SetVideoPaths(String video) { // TODO Auto-generated method stub mVideoView.SetVideoPaths(video); } @Override public void SetVideoVisibility(boolean visible) { // TODO Auto-generated method stub } @Override public void StartVideo() { // TODO Auto-generated method stub mVideoView.StartVideo(); } @Override public void StopVideo() { // TODO Auto-generated method stub mVideoView.StopVideo(); } @Override public void PauseVideo() { // TODO Auto-generated method stub mVideoView.PauseVideo(); } @Override public void SeekVideo(int seekTo) { // TODO Auto-generated method stub mVideoView.SeekVideo(seekTo); } @Override public boolean IsPlaying() { // TODO Auto-generated method stub return mVideoView.IsPlaying(); } @Override public void onPrepared(MediaPlayer mp) { // TODO Auto-generated method stub if(Debug)Log.d(TAG,"onPrepared()"); mVideoView.SetState(STATE.MEDIA_STATE_INITED); mVideoView.setScreenLayoutParams(JoyplusMediaPlayerScreenManager.getInstance().getScreenParamsDefault()); } @Override public void onCompletion(MediaPlayer mp) { // TODO Auto-generated method stub if(Debug)Log.d(TAG,"onCompletion()"); mVideoView.SetState(STATE.MEDIA_STATE_FINISH); } @Override public boolean onError(MediaPlayer mp, int what, int extra) { // TODO Auto-generated method stub if(Debug)Log.d(TAG,"onError("+what+" ,"+extra+")"); mVideoView.SetState(STATE.MEDIA_STATE_UNKNOW); return true; } @Override public MediaInfo getTargetMediaInfo() { // TODO Auto-generated method stub return null; } @Override public boolean onInfo(MediaPlayer mp, int what, int extra) { // TODO Auto-generated method stub Log.i("Jas","Vitamio info="+what+" "+extra); mVideoView.SetINFO(what); return false; } @Override public void SetINFO(int info) { // TODO Auto-generated method stub } @Override public boolean setScreenLayoutParams(int type) { // TODO Auto-generated method stub return mVideoView.setScreenLayoutParams(type); } @Override public int getScreenLayoutParams() { // TODO Auto-generated method stub return mVideoView.getScreenLayoutParams(); } }