swift - 无法在 Apple Silicon 上录制 iPhone 屏幕
问题描述
我设置了一个简单的捕获会话,通过 USB 从我的 Mac Mini M1 录制我的 iPhone。
当我尝试将捕获会话记录到文件时,没有任何内容写入磁盘,并且控制台一遍又一遍地输出相同的错误消息。
我只能在 Apple Silicon 上重现此问题。完全相同的代码适用于英特尔。
脚步
- 允许屏幕截图
kCMIOHardwarePropertyAllowScreenCaptureDevices
AVCaptureDevice.devices:for
通过- muxed找到 iPhone- 使用该设备创建捕获设备输入
- 启动会话,并显示其预览层。这行得通。
- 告诉输出开始记录
- 几秒钟后,告诉输出停止记录
预期: 在给定文件 URL 中找到的文件。我的基于 Intel 的 Mac 就是这种情况。
实际: 在 Apple Silicon 上,没有写入文件,Xcode 控制台充满了以下错误消息:
2021-06-04 14:00:23.379063+0200 Device Recording Demo[4786:102932] [] CMIO_Unit_Convertor_VideoToolboxCompressor.cpp:1958:doCompressBuffer [0x14683c800] EXCEPTION ON ERROR -67447
完整回购:
解决方案
推荐阅读
- virtual-machine - 是否有可能从虚拟框中损坏的操作系统中检索文件?
- spring - Spring boot+JSP中GET方法、视图、POST方法如何保持模型对象一致
- html - Bootstrap 在输入组 div 中包装内容
- javascript - Vue 单元测试 - 模拟插件返回值
- apache-zeppelin - 动态表单在 zeppelin spark 解释器中不起作用
- sql - 活动记录嵌套关联
- scala - 如何将 CollectionAccumulator[(Double, Double)] 转换为 SparkdataFrame?
- vb.net - 将数据从第二个 datagridview 复制到第一个 datagridview,而第一个 datagridview 已经在 vb.net 中有数据
- javascript - 如何从谷歌地图方向api获取纬度和经度数组
- javascript - 使用字形图标单击进行表单验证