前言
使用IJKPlayer和Android原生MediaPlayer切换播放视频是,出现如下异常:
SurfaceUtils( 2333): connecting to surface 0xf1067008, reason setVideoSurfaceTexture BufferQueueProducer( 3550): [SurfaceTexture-0-3550-1] connect: already connected (cur=2 req=3) SurfaceUtils( 2333): Failed to connect to surface 0xf1067008, err -22 MediaPlayerService( 2333): setVideoSurfaceTexture failed: -22 NuPlayerDriver( 2333): reset(0xf100b480) at state 2 NuPlayerDriver( 2333): notifyListener_l(0xf100b480), (8, 0, 0, -1), loop setting(0, 0) NuPlayerDriver( 2333): notifyResetComplete(0xf100b480) System.err( 3550): java.lang.IllegalStateException System.err( 3550): at android.media.MediaPlayer._prepare(Native Method) System.err( 3550): at android.media.MediaPlayer.prepare(MediaPlayer.java:1282) System.err( 3550): at com.biumall.video.SystemPlayer.prepare(SystemPlayer.java:135) System.err( 3550): at com.biumall.video.BiuMediaPlayer.prepare(BiuMediaPlayer.java:713)
记录一下解决方式,方便自己查阅。
正文
设计中是如果视频能走硬解就走硬解,否则就走软解,然后相互切换。
时间场景中,如果IJKPlayer播放了视频,然后下一曲用Android原生的MediaPlayer播放时,就出现上面问题。
参考文章
© 版权声明