I am working with one application that have multi language supported with same video. whenever I switch from English to Hindi or vice versa. It's set seekTo as per got current position But I am getting variation, it's not as I want from exact current position.
public class VideoActivity extends Activity {
VideoView mVideoView;
Button btnHindi,btnEnglish;
int currenth = 0;
int currente = 0;
String videoPathEnglish = "/storage/sdcard1/test/english.mp4";
String videoPathHindi = "/storage/sdcard1/test/hindi.mp4";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnHindi = (Button)findViewById(R.id.btnHindi);
btnEnglish = (Button)findViewById(R.id.btnEnglish);
mVideoView = (VideoView) findViewById(R.id.my_Video_View);
mVideoView.setMediaController(new MediaController(VideoActivity.this));
btnHindi.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (mVideoView.isPlaying()) {
mVideoView.pause();
}
currente = 0;
currente = mVideoView.getCurrentPosition();
Log.e("CurrentEnglish",currente+"");
String videopath = videoPathHindi;
mVideoView.setVideoURI(Uri.parse(videopath));
mVideoView.requestFocus();
mVideoView.seekTo(currente);
mVideoView.start();
btnEnglish.setEnabled(true);
btnHindi.setEnabled(false);
}
});
btnEnglish.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (mVideoView.isPlaying()) {
mVideoView.pause();
}
currenth = 0;
currenth = mVideoView.getCurrentPosition();
Log.e("CurrentHindi",currenth+"");
String videopath = videoPathEnglish;
mVideoView.setVideoURI(Uri.parse(videopath));
mVideoView.requestFocus();
mVideoView.seekTo(currenth);
mVideoView.start();
btnEnglish.setEnabled(false);
btnHindi.setEnabled(true);
}
});
}
}
Please suggest me what I am doing wrong?
Thanks