【问题标题】:iOS will reboot on iPhone XS when play video streaming(iOS 12.0.1)播放视频流时,iOS 将在 iPhone XS 上重启(iOS 12.0.1)
【发布时间】:2018-11-08 05:19:26
【问题描述】:

我是一个新手iOS开发者,最近在iOS 12.0.1中发生了一个奇怪的问题,我们的应用程序是一个视频流应用程序和使用h.264的编解码器协议。 我们使用 VideoToolBox 对流进行解码,并将解码缓冲区显示在屏幕上,但有时控制台日志会显示一些错误日志,如下所示

默认 15:08:51.621355 内核 APPLEAVD: 默认 15:08:51.621497 内核 [CAVDAvcDecErr] 跳到关键帧 默认 15:08:51.621585 内核 APPLEAVD: 默认 15:08:51.621652 内核 processHWResponse(): clientID 1 frameNumber 1257 错误 315 默认 15:08:51.622054 mediaserverd AppleAVDDecodeFrameInternal():失败 - 错误:305 默认 15:08:51.622260 mediaserverd AppleAVDDecodeFrameResponse(): Received frameNum 1257, errorCode 315, index 9 默认 15:08:51.622515 mediaserverd AppleAVDDecodeFrameResponse(): Frame# 1257 DecodeFrame failed with error 0x00000131

运行流媒体一段时间,我的手机会重启,重启前的最新日志在下面的部分,我教 iOS 应用程序运行到沙箱,系统不会被应用程序影响,我不知道这个错误,任何人都可以向我解释相关问题:

默认 15:08:51.855266 内核 APPLEAVD: 默认 15:08:51.855347 内核 APPLEAVD: 默认 15:08:51.855467 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6080 默认 15:08:51.855565 内核 avdOutbox0ISR(): FRM DONE (cid: 1, fno: 1263, codecT: 0) ACK = 3 (FATAL) 默认 15:08:51.855649 内核 APPLEAVD: 默认 15:08:51.855696 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0xf80 默认 15:08:51.855723 内核 APPLEAVD: 默认 15:08:51.855807 内核 DARTErrorHandler():返回 OK 默认 15:08:51.856039 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x00000000 (TTBR 0 SEG 0x0 PTE 0x0) 时出现无效软异常 默认 15:08:51.856079 内核 APPLEAVD: 默认 15:08:51.856109 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6089 默认 15:08:51.856140 内核 APPLEAVD: 默认 15:08:51.856212 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0x2d80 默认 15:08:51.856245 内核 APPLEAVD: 默认 15:08:51.856440 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x608f 默认 15:08:51.856508 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x608a 默认 15:08:51.856600 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6192 默认 15:08:51.856648 内核 APPLEAVD: 默认 15:08:51.856679 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6187 默认 15:08:51.856729 内核 APPLEAVD: 默认 15:08:51.856777 内核 CheckDartStatus(): dartStatus 0x0 dartAddr 0x3000 默认 15:08:51.856811 内核 APPLEAVD: 默认 15:08:51.856859 内核 DARTErrorHandler():返回 OK 默认 15:08:51.856910 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x00003000 (TTBR 0 SEG 0x0 PTE 0x0) 时出现无效软异常 默认 15:08:51.856955 内核 APPLEAVD: 默认 15:08:51.857076 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6088 默认 15:08:51.857262 内核 APPLEAVD: 默认 15:08:51.857291 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x608d 默认 15:08:51.857425 内核 APPLEAVD: 默认 15:08:51.857470 内核 APPLEAVD: 默认 15:08:51.857506 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6090 默认 15:08:51.857531 内核 APPLEAVD: 默认 15:08:51.857557 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0x9900 默认 15:08:51.857612 内核 APPLEAVD: 默认 15:08:51.857670 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x00009780 (TTBR 0 SEG 0x0 PTE 0x2) 时出现无效软异常 默认 15:08:51.857696 内核 APPLEAVD: 默认 15:08:51.857724 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0x4c80 默认 15:08:51.857769 内核 APPLEAVD: 默认 15:08:51.857805 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0x5880 默认 15:08:51.857841 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6096 默认 15:08:51.857877 内核 APPLEAVD: 默认 15:08:51.857912 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0x5080 默认 15:08:51.857944 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6092 默认 15:08:51.857979 内核 APPLEAVD: 默认 15:08:51.858025 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0x6480 默认 15:08:51.858059 内核 APPLEAVD: 默认 15:08:51.858114 内核 DARTErrorHandler():返回 OK 默认 15:08:51.858179 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x0000b580 (TTBR 0 SEG 0x0 PTE 0x2) 时出现无效软异常 默认 15:08:51.858245 内核 APPLEAVD: 默认 15:08:51.858313 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6186 默认 15:08:51.858347 内核 APPLEAVD: 默认 15:08:51.858395 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0x6c00 默认 15:08:51.858420 内核 APPLEAVD: 默认 15:08:51.858446 内核 DARTErrorHandler():返回 OK 默认 15:08:51.858479 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x00006a00 (TTBR 0 SEG 0x0 PTE 0x1) 时出现无效软异常 默认 15:08:51.858512 内核 APPLEAVD: 默认 15:08:51.858572 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x619a 默认 15:08:51.858639 内核 APPLEAVD: 默认 15:08:51.858676 内核 CheckDartStatus(): dartStatus 0x0 dartAddr 0x7480 默认 15:08:51.858703 内核 APPLEAVD: 默认 15:08:51.858730 内核 DARTErrorHandler():返回 OK 默认 15:08:51.858762 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x00007480 (TTBR 0 SEG 0x0 PTE 0x1) 时出现无效软异常 默认 15:08:51.858794 内核 APPLEAVD: 默认 15:08:51.858832 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6092 默认 15:08:51.858885 内核 APPLEAVD: 默认 15:08:51.858921 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0xe300 默认 15:08:51.858948 内核 APPLEAVD: 默认 15:08:51.859096 内核 DARTErrorHandler():返回 OK 默认 15:08:51.859160 内核 dart-avd: DART(DART) SID 0 PTE 使用设备 DVA 0x0000d380 (TTBR 0 SEG 0x0 PTE 0x3) 读取时无效软异常 默认 15:08:51.859197 内核 APPLEAVD: 默认 15:08:51.859283 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x609e 默认 15:08:51.859329 内核 APPLEAVD: 默认 15:08:51.859357 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0xe880 默认 15:08:51.859409 内核 APPLEAVD: 默认 15:08:51.859457 内核 DARTErrorHandler():返回 OK 默认 15:08:51.859501 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x0000e980 (TTBR 0 SEG 0x0 PTE 0x3) 时出现无效软异常 默认 15:08:51.859536 内核 APPLEAVD: 默认 15:08:51.859563 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x609a 默认 15:08:51.859589 内核 APPLEAVD: 默认 15:08:51.859614 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0xf200 默认 15:08:51.859638 内核 APPLEAVD: 默认 15:08:51.859729 内核 DARTErrorHandler():返回 OK 默认 15:08:51.859813 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x0000ee80 (TTBR 0 SEG 0x0 PTE 0x3) 时出现无效软异常 默认 15:08:51.859850 内核 APPLEAVD: 默认 15:08:51.859944 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x609f 默认 15:08:51.859978 内核 APPLEAVD: 默认 15:08:51.860003 内核 CheckDartStatus(): dartStatus 0x80000004 dartAddr 0xf480 默认 15:08:51.860029 内核 APPLEAVD: 默认 15:08:51.860055 内核 DARTErrorHandler():返回 OK 默认 15:08:51.860127 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x0000f800 (TTBR 0 SEG 0x0 PTE 0x3) 时出现无效软异常 默认 15:08:51.860160 内核 APPLEAVD: 默认 15:08:51.860195 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6086 默认 15:08:51.860224 内核 APPLEAVD: 默认 15:08:51.860258 内核 CheckDartStatus(): dartStatus 0x0 dartAddr 0xfb00 默认 15:08:51.860329 内核 APPLEAVD: 默认 15:08:51.860379 内核 DARTErrorHandler():返回 OK 默认 15:08:51.860423 内核 dart-avd: DART(DART) SID 0 PTE 使用设备 DVA 0x0000fb00 (TTBR 0 SEG 0x0 PTE 0x3) 读取时无效软异常 默认 15:08:51.860450 内核 APPLEAVD: 默认 15:08:51.860475 内核 DARTErrorHandler(): Dart 错误 AXIId = 0x6098 默认 15:08:51.860522 内核 APPLEAVD: 默认 15:08:51.860568 内核 CheckDartStatus(): dartStatus 0x0 dartAddr 0x10180 默认 15:08:51.860603 内核 APPLEAVD: 默认 15:08:51.860658 内核 DARTErrorHandler():返回 OK 默认 15:08:51.860699 内核 dart-avd: DART(DART) SID 0 PTE 读取设备 DVA 0x00010180 (TTBR 0 SEG 0x0 PTE 0x4) 时出现无效软异常 默认 15:08:51.956455 内核 APPLEAVD: 默认 15:08:51.956719 内核 StatusLogging(): [DmaTop] 00000000 00000000 00000003 00000001 默认 15:08:51.956795 内核 APPLEAVD: 默认 15:08:51.956859 内核 StatusLogging(): [AvpCfg] 00000000 00043077 0000003f 00000274 默认 15:08:51.956917 内核 APPLEAVD: 默认 15:08:51.957101 内核 StatusLogging(): [Hv0Cfg] 00000000 00000000 00000000 00000000 默认 15:08:51.957273 内核 APPLEAVD: 默认 15:08:51.957409 内核 StatusLogging(): [Hv1Cfg] 00000000 00000000 00000000 00000000 默认 15:08:51.957586 内核 APPLEAVD: 默认 15:08:51.957862 内核 StatusLogging(): [DmaIRQ] 00000001 默认 15:08:51.957972 内核 APPLEAVD: 默认 15:08:51.958127 内核 HardReset(): 重置 AVD HW 默认 15:08:51.958266 内核 APPLEAVD: 默认 15:08:51.958356 内核虚拟 void CAvdWrapCtrlClover::PwmReset()(): Enter 默认 15:08:51.958420 内核 APPLEAVD: 默认 15:08:51.958520 内核 PwmReset(): 调用 avd_resetFunct 0xffffffe000eff680 next

【问题讨论】:

    标签: ios iphone video-streaming ios12


    【解决方案1】:

    注意日志中的 APPLEAVD:由 AppleAVD 解码的 h.264 (AVC) 是 A12 上的新功能。在 A11 上,AppleAVD 仅处理 HEVC,而 AVC 由 AppleD5500 处理。因此,兼容性和健壮性可能需要一些工作。请将此报告给https://developer.apple.com/bug-reporting/,如果您想帮助社区,也可以向https://openradar.appspot.com/page/1 和这里报告。

    您能否获取流的文件版本并使用 TV 应用(或更高级别的 AVFoundation API)播放它以检查实际比特流与打包和传输问题?如果您在播放文件时遇到问题,请将其附加到 Radar 和/或在此处放置 Dropbox 链接。

    【讨论】:

    • 我们遇到了与 iOS 12.0 中的 OP 类似的问题,但在将 iPhone XR/XS 更新到 iOS 12.1 后它就消失了。
    猜你喜欢
    • 2019-07-29
    • 1970-01-01
    • 1970-01-01
    • 2013-02-09
    • 1970-01-01
    • 1970-01-01
    • 2010-10-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多