Ошибки при воспроизведении видео - PullRequest
2 голосов
/ 13 февраля 2012

Я получаю странные ошибки, когда хочу воспроизвести видео в своем приложении.До сих пор видео воспроизводилось нормально, но теперь я получаю эту ошибку на телефоне Samsung Android:

02-13 09:35:58.132: I/System.out(4189): Add Video to RelativeLayout
02-13 09:35:58.242: W/MediaPlayer(4189): info/warning (1, 26)
02-13 09:35:58.247: E/MediaPlayer(4189): SISO TEST MEDIA_ERROR
02-13 09:35:58.247: E/MediaPlayer(4189): error (-4, -4)
02-13 09:35:58.287: I/MediaPlayer(4189): Info (1,26)
02-13 09:35:58.287: E/MediaPlayer(4189): Error (-4,-4)
02-13 09:35:58.287: D/VideoView(4189): Error: -4,-4
02-13 09:35:58.287: I/System.out(4189): onError-error play video

и эту ошибку на Xperia:

02-13 09:39:26.331: I/System.out(10864): Add Video to RelativeLayout
02-13 09:39:26.381: E/MediaPlayer(10864): error (1, -2147483648)
02-13 09:39:26.401: E/MediaPlayer(10864): Error (1,-2147483648)
02-13 09:39:26.401: D/VideoView(10864): Error: 1,-2147483648
02-13 09:39:26.401: I/System.out(10864): onError-error play video

, где "onError-error play video" - сообщение от onErrorListener,Я удалил видео с SD-карты и вставил их снова, но у меня та же проблема.В чем дело?

Вот мой код, в который я добавляю VideoView в RelativeLAyout:

public void onAnimationStart(Animation animation) {
    myVideoView = new VideoView(getApplicationContext());
    myVideoView.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
                        myVideoView.setVideoURI(Uri.parse(Environment                       .getExternalStorageDirectory()+ "/BouyguesSlideShow"+ "idPlaylist"+ "/" +vf.getCurrentView().getTag().toString()));
            myVideoView.requestFocus();

            myVideoView.setOnErrorListener(new OnErrorListener() {
            @Override
            public boolean onError( MediaPlayer mp, int what,int extra) {
            System.out.println("onError-error play video");
            return true;
               }
        });
}

@Override
                        public void onAnimationEnd(Animation animation) {
                            System.out.println("Anim end "
                                    + vf.getDisplayedChild());
                            if ((vf.getCurrentView().getTag().toString()
                                    .endsWith("Video"))
                                    || (vf.getCurrentView().getTag().toString()
                                            .endsWith("Video.mp4"))) {
                                System.out
                                        .println("Add Video to RelativeLayout");
                                ((ViewGroup) vf.getCurrentView())
                                        .addView(myVideoView);
                                myVideoView.bringToFront();
                                myVideoView.start();
                                vf.stopFlipping();
                            }
                        }
...