AVPlayerViewController 根本无法在全屏模式下播放,一旦点击展开图标,什么设置会导致这种情况?

问题描述 投票:0回答:1

我有一个简单的

AVPlayerViewController
,它以通常的方式位于屏幕上的一个盒子里,它可以完美地播放/完成所有事情。

如果点击扩展器,

手机完美调出平常的普通全屏播放器,

但是它根本无法播放 - 它只是保持黑色。

详细来说,

  • 在主屏幕上,应用程序中的“小”视频播放器似乎暂停了
  • 您现在根本听不到电话中的任何声音
  • 在全屏播放器上,似乎正确设置了滑动条位置,与应用程序中“小”播放器上的位置相同
  • 全屏播放器当前似乎处于播放而非暂停模式 FWIW
  • 全屏播放器根本不播放任何内容。如果您在全屏播放器上录制暂停/播放/暂停等内容,那没有什么区别
  • 当您关闭全屏播放器时,一切都会正常工作(应用程序中的“小”播放器继续愉快地播放,音频等正常)

我有这套,

我尝试了当前的 Xcode,也会回到 14.3。

我尝试了无数的实体手机、iOS版本等等

AVPlayerViewController 实际上位于视图控制器堆栈中,即为其设置了“addChild”。

我没有子类化 AVPlayerViewController。

我尝试了很多设置,例如

entersFullScreenWhenPlaybackBegins
canStartPictureInPictureAutomaticallyFromInline
,它们不相关。

这到底是什么问题?

ios swift avplayer avplayerviewcontroller
1个回答
0
投票

当我在一个项目中在 iPhone 和 iPad 屏幕上播放视频内容时,我遇到了同样的问题。所以我所做的是根据设备的屏幕尺寸初始化视频的重力,如下所示。

var videoGravity: AVLayerVideoGravity = .resizeAspectFill

通过设置此项,可以帮助视频帧自动调整到屏幕尺寸。

© www.soinside.com 2019 - 2024. All rights reserved.