hi,又是我,一个憨憨程序员
上次费了九牛二虎之力终于成功集成了Ijkplayer。然后在播放mp4视频时就遇到了标题所述的问题
我在网上查阅资料后发现了该问题的两种解决方法,在我的项目里一种有用一种没用
1.先说在我的项目中起到作用的:
在IJKSDLGLView.m文件中,- (BOOL)setupEAGLContext:(EAGLContext *)context 方法的
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, _renderbuffer);
代码下面添加
[CATransaction flush];
在- (void)displayInternal: (SDL_VoutOverlay *) overlay 方法中
IJK_GLES2_Renderer_setGravity(_renderer, _rendererGravity, _backingWidth, _backingHeight);
代码下面也添加
[CATransaction flush];
2.再说说另一个
在ijkplayer-master的config文件夹下打开module-lite
在# ./configure --list-decoders下添加如下代码
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=mpegvideo"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=mpeg4"
添加后重新编译一下你的FFmpeg
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all
大家两种方法都试一下,都不好使的话我也没招了(狗头)
我的企鹅号是2952546239欢迎大家来交流(狗头)
参考文档:
https://github.com/Bilibili/ijkplayer/issues/3643
http://www.pianshen.com/article/9346289189/