Conversation
poholo
commented
Apr 10, 2019
- 修正IJKSDLGLView view调用方式
- 编译方式去除armv7 armv7s
- 编译方式用openssl
|
it works! Thanks. |
|
Does it fix the memory leak? |
|
It hasn't happened yet.
It hasn't happened yet. |
|
能说的详细一下吗?谢谢 |
这个问题,主要原因是xcode版本升级导致的,UIKit以前非必须主线程调用的(比如.layer ), 现在必须主线程调用,异步线程调用会导致线程检查等待,故本次的修改主要是对IJKSDLGLView中被检查到的UIKit调用全部用主线程调用。 |
ios/IJKMediaPlayer/IJKMediaPlayer/ijkmedia/ijksdl/ios/IJKSDLGLView.m
Outdated
Show resolved
Hide resolved
观看的时候 快速seek多次会崩溃 , ...我用官方的没事 |
什么机型? 用我编译好的framework看看呢 ? |
...用不了. 你确认没发错?IJKMediaFramework.framework |
|
100%复现了, .... |
| // do not lock AudioQueueStop, or may be run into deadlock | ||
| AudioQueueStop(_audioQueueRef, true); | ||
| AudioQueueDispose(_audioQueueRef, true); | ||
| IJKMainThredExecute(^{ |
There was a problem hiding this comment.
这里会导致野指针崩溃,因AudioQuueueDispose 在主队列的执行时间不确定,可能IJKSDLAudioQueueController的实例已经被释放,但AudioQueueDispose还没执行,导致IJKSDLAudioQueueOuptutCallback回调时访问已释放的IJKSDLAudioQueueController的实例,引起崩溃;
There was a problem hiding this comment.
测试场景:
播放资源切换,因为ijkffmoviecontroller的设计,实际上每次播放一个新的资源都是创建一个新的ijkffmoviecontroller的实例
There was a problem hiding this comment.
试一试
[self.player stop];
[self.player shutdown];
|
是的, 我是两个 url 之间切换 循环, 创建 释放 ijk......
是的, 我是两个 url 之间切换 循环, 创建 释放 ijk...... |
|
https://git.dev.tencent.com/lp_mr/MCIJKPlayer.git |
|
我这边遇到一个问题是播放本地的视频时没有声音,播放进度一直是0 |
|
多找几个视频地址试一下(看看你手机的媒体音量设置模式等。。),我没发现这个问题。 |
https://i.loli.net/2019/08/03/dTqfU9hI6riv1Bg.png 显示模式改了?上面是你的 下面的默认的 |
你好 你这个显示模式有问题啊 视频变得很小 |
|
麻烦贴一下视频地址 感谢
| |
马建成
邮箱:mailjiancheng@163.com
|
签名由 网易邮箱大师 定制
在2019年08月31日 10:29,BinHuang 写道:
图1是默认框架的IJKMPMovieScalingModeAspectFit 会延伸到屏幕宽度
图2是你的框架IJKMPMovieScalingModeAspectFit 视频缩小了
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
|
这块的问题是子view没有随着父view的frame变化而自适应,源码是demo层做了autoresizingMask,现在我把这句直接提到IJKFFMovieController中。命中语句 @YellBinn @chaocharleswang 当然也可以直接用我打的pod |
|
@chaocharleswang 麻烦贴一下视频地址 |
|
@poholo 将才测试时替换出现错误,问题解决了,谢谢! |
|
@poholo 我观察到另外一个问题:视图变小的版本在xcode 10和xcode 11都能正常运行。
或者
错误都出现在下面的语句:
错误出现的操作是缩放移动视频播放界面,操作都是在iPhone X上进行的 |
|
@chaocharleswang 你试试把IJKSDLGLView中304行注释掉看看 其他我没有变动什么 |
|
@poholo 注释后问题确实消失了,只不过视图又变回小视图了 |
|
@chaocharleswang 帮忙验证一下,感谢! |
|
@poholo 视图正常,移动播放窗口xcode 11还是会出现同样的错误,而xcode 10却一切正常 |
|
@chaocharleswang 我去下个测试版的xcode |
|
@poholo 我把你改过的code整合到我的项目中,用户反馈最多的crash是下面这一个: 这是通过xcode 10提交的,和xcode 11无关 |
|
嗯,多少的崩溃率 ?
在 2019-09-06 00:25:27,"Charles" <notifications@github.com> 写道:
@poholo 我把你改过的code整合到我的项目中,用户反馈最多的错误是下面这一个:
Thread 21 name:
Thread 21 Crashed:
0 libGPUSupportMercury.dylib 0x0000000212b0ffe4 gpus_ReturnNotPermittedKillClient + 12 (gpui_client_io.c:78)
1 AGXGLDriver 0x00000002171bced8 glrKillClient + 468 (agxu_kill_client.cpp:175)
2 libGPUSupportMercury.dylib 0x0000000212b10fac gpusSubmitDataBuffers + 176 (gpui_context.c:0)
3 AGXGLDriver 0x00000002171be404 SubmitPackets(AGXContextRec*) + 292 (agxu_gl_command.cpp:93)
4 GLEngine 0x00000002183cd234 gliPresentViewES_Exec + 184 (gli_drawable_es.c:526)
5 OpenGLES 0x00000001f9d10aa4 -[EAGLContext presentRenderbuffer:] + 80 (eagl_context.m:594)
6 TubePlayer 0x0000000100a5da20 -[IJKSDLGLView displayInternal:] + 456 (IJKSDLGLView.m:378)
7 TubePlayer 0x0000000100a5d7c0 -[IJKSDLGLView display:] + 204 (IJKSDLGLView.m:340)
8 TubePlayer 0x0000000100a6e9b8 vout_display_overlay + 300 (ijksdl_vout_ios_gles2.m:0)
9 TubePlayer 0x0000000100a58d30 video_display2 + 348 (ff_ffplay.c:911)
10 TubePlayer 0x0000000100a56ec4 video_refresh_thread + 1868 (ff_ffplay.c:1416)
11 TubePlayer 0x0000000100a5b130 SDL_RunThread + 40 (ijksdl_thread_ios.m:32)
12 libsystem_pthread.dylib 0x00000001f67242c0 _pthread_body + 128 (pthread.c:857)
13 libsystem_pthread.dylib 0x00000001f6724220 _pthread_start + 44 (pthread.c:884)
14 libsystem_pthread.dylib 0x00000001f6727cdc thread_start + 4
这是通过xcode 10提交的,和xcode 11无关
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
|
@poholo 现在有的数据是前者和后者之间相比为15:1 |
请问作者 这个能支持播放https 和MP4格式的么 |
|
支持,编译加了openssl库
在 2019-09-06 11:51:58,"mengzhe360" <notifications@github.com> 写道:
https://git.dev.tencent.com/lp_mr/MCIJKPlayer.git
已做优化,看看是否还是有同样的问题。
请问作者 这个能支持播放https 和MP4格式的么
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
|
感谢回复
| |
mengzhe360
|
|
mengzhe360@163.com
|
签名由网易邮箱大师定制
在2019年09月6日 11:57,littleplayer<notifications@github.com> 写道:
支持,编译加了openssl库
在 2019-09-06 11:51:58,"mengzhe360" <notifications@github.com> 写道:
https://git.dev.tencent.com/lp_mr/MCIJKPlayer.git
已做优化,看看是否还是有同样的问题。
请问作者 这个能支持播放https 和MP4格式的么
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.
|
|
请问只要滑动一点播放屏幕直接就停止播放了,上面的是打印的日志,直接关闭播放器了,请问这个情况遇到怎么解
| |
mengzhe360
|
|
mengzhe360@163.com
|
签名由网易邮箱大师定制
在2019年09月6日 11:57,littleplayer<notifications@github.com> 写道:
支持,编译加了openssl库
在 2019-09-06 11:51:58,"mengzhe360" <notifications@github.com> 写道:
https://git.dev.tencent.com/lp_mr/MCIJKPlayer.git
已做优化,看看是否还是有同样的问题。
请问作者 这个能支持播放https 和MP4格式的么
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.
|
|
謝謝回復,非常感謝啊
| |
mengzhe360
|
|
mengzhe360@163.com
|
签名由网易邮箱大师定制
在2019年12月3日 15:52,littleplayer<notifications@github.com> 写道:
https://github.com/poholo/MCPlayerKit 用这个测试一下
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
|





