在我的项目中,使用 MobileVLCKit 3.0.0 播放媒体。

所有类型的视频都可以在iOS9&10上成功播放,但是可以在上播放。iOS 11视频音频可以收听,但是图片无法显示,并且显示黑屏

提供以下日志:

2017-09-18 18:26:17.640065+0800 DemoPlayer[39923:369260] creating player instance using shared library
=================================================================
Main Thread Checker: UI API called on a background thread: -[UIView bounds]
PID: 39923, TID: 369593, Thread name: (none), Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4   DemoPlayer                          0x0000000108349895 Open + 405
2017-09-18 18:26:23.490963+0800 DemoPlayer[39923:369593] [reports] Main Thread Checker: UI API called on a background thread: -[UIView bounds]
PID: 39923, TID: 369593, Thread name: (none), Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4   DemoPlayer                          0x0000000108349895 Open + 405
=================================================================
Main Thread Checker: UI API called on a background thread: -[UIView initWithFrame:]
PID: 39923, TID: 369593, Thread name: (none), Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4   DemoPlayer                          0x0000000108349f3b -[VLCOpenGLES2VideoView initWithFrame:zeroCopy:voutDisplay:] + 91
2017-09-18 18:26:23.875359+0800 DemoPlayer[39923:369593] [reports] Main Thread Checker: UI API called on a background thread: -[UIView initWithFrame:]
PID: 39923, TID: 369593, Thread name: (none), Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4   DemoPlayer                          0x0000000108349f3b -[VLCOpenGLES2VideoView initWithFrame:zeroCopy:voutDisplay:] + 91
2017-09-18 18:26:23.959355+0800 DemoPlayer[39923:369593] CoreAnimation: [EAGLContext renderbufferStorage:fromDrawable:] was called from a non-main thread in an implicit transaction! Note that this may be unsafe without an explicit CATransaction or a call to [CATransaction flush].
shader program 1: WARNING: Output of vertex shader 'TexCoord1' not read by fragment shader
WARNING: Output of vertex shader 'TexCoord2' not read by fragment shader

提前致谢。

最佳答案

最后,找到解决方案...

现在,“MobileVLCKit-Unstable”版本已于9月20日通过UIKit从后台线程(iOS 11视频播放)问题更新为正式版本。

解决方案1:

pod 'MobileVLCKit-unstable', '3.0.0a38'添加到podfile并运行pod install
解决方案2:

  • 从以下URL复制了存储库:http://code.videolan.org/videolan/VLCKit.git
  • 打开终端,导航到根目录并执行./buildMobileVLCKit.sh -f(注意:可能需要1-2个小时才能完成)
  • 成功完成后,将在VLCKit / build /文件夹位置生成MobileVLCKit.framework
  • 只需将其拖到您的项目中即可。
  • 10-08 06:19