Skip to content

调用 snapshotVideo 导致应用奔溃 #65

@Gavin0x0

Description

@Gavin0x0

【当前现象】:持续调用 snapshotVideo 到第 23s iOS应用会奔溃
【SDK版本】:tencent_trtc_cloud-2.4.1
【iOS版本】:iOS 15.2
【设备型号】:iPhone X
【是否必现】:必现
【复现步骤】:
在 iOS 15.2 上的 iPhone X 设备上运行应用
调用 snapshotVideo 方法,并设置 isRecording 为 true
在持续调用 snapshotVideo 方法的过程中,平均每秒截取16张图,应用会在第 23s 崩溃
【期望结果】:应用能够正常运行
【代码】:

while (isRecording) {
      await Future.delayed(const Duration(milliseconds: captureInterval));
      String suffix = DateTime.now().millisecondsSinceEpoch.toString();
      String filePath = "$recordStoragePath/${suffix}_temp.jpg";
      await client.snapshotVideo(
        trtcChannel.isLocal ? null : channel.member.userId,
        0,
        filePath,
      );
}

【异常信息】:

[XPC] Handle connection with error: Connection interrupted
[Process] 0x13a944000 - NetworkProcessProxy::didClose (Network Process 8461 crash)
[ServicesDaemonManager] interruptionHandler is called. -[FontServicesDaemonManager connection]_block_invoke
* thread #72, queue = 'com.Metal.CommandQueueDispatch', stop reason = EXC_RESOURCE RESOURCE_TYPE_MEMORY (limit=1850 MB, unused=0x0)
    frame #0: 0x00000001bd1d4b10 libsystem_kernel.dylib`mach_msg_trap + 8
libsystem_kernel.dylib`mach_msg_trap:
->  0x1bd1d4b10 <+8>: ret
libsystem_kernel.dylib`mach_msg_overwrite_trap:
    0x1bd1d4b14 <+0>: mov    x16, #-0x20
    0x1bd1d4b18 <+4>: svc    #0x80
    0x1bd1d4b1c <+8>: ret
Target 0: (Runner) stopped.
Lost connection to device.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions