MediaPlayer выдает ошибку (1, 22) Невозможно воспроизвести медиа
Я делаю экран учебника с несколькими видео внутри ViewPager, проблема в том, что в Samsung Galaxy Fame
07-22 18: 24: 18.787: E / MediaPlayer (11724): ошибка (1,-22) 07-22 18:24:18.787: E/com.unipagos.app.tutorial.TutorialPagerAdapter$1$2@41bbce88(11724): Невозможно воспроизвести медиа
Код, который я использую для воспроизведения видео и который работает на других устройствах:
public void onSurfaceTextureAvailable(SurfaceTexture surface,
int width, int height) {
// TODO Auto-generated method stub
Surface s = new Surface(surface);
mMediaPlayer = new MediaPlayer();
mediaPlayers.put(new Integer(position), mMediaPlayer);
try {
String path = "tutorialvideos/" + tutorialPageItem.getMediaURL();
AssetFileDescriptor afd = context.getAssets().openFd(path);
mMediaPlayer.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(),afd.getLength());
mMediaPlayer.setSurface(s);
mMediaPlayer.setLooping(true);
mMediaPlayer.setOnPreparedListener(new OnPreparedListener() {
private int videoPosition;
public void onPrepared(MediaPlayer mediaPlayer) {
// close the progress bar and play the video
//if we have a position on savedInstanceState, the video playback should start from here
mediaPlayer.seekTo(videoPosition);
if (videoPosition == 0) {
mediaPlayer.start();
} else {
//if we come from a resumed activity, video playback will be paused
mediaPlayer.pause();
}
}
});
mMediaPlayer.setOnErrorListener(new OnErrorListener() {
@Override
public boolean onError(
MediaPlayer paramMediaPlayer,
int what, int extra) {
String message = "Unknown error";
switch (what) {
case MediaPlayer.MEDIA_ERROR_UNKNOWN:
message = "Unable to play media";
break;
case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
message = "Server failed";
break;
case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
message = "Invalid media";
break;
}
Log.e("" + this, message);
return false;
}
});
mMediaPlayer.prepareAsync();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Я не могу найти никакой информации об этом коде ошибки, но мне сказали, что это может быть из-за кодека, который использовался для создания видео.
Заранее спасибо.