Function on below cannot render the video stream in iOS 17.4 and 17.5
struct RemoteVideoView: UIViewRepresentable {
let view:RendererView
init(view: RendererView) {
self.view = view
}
func makeUIView(context: Context) -> UIView {
return view
}
func updateUIView(_ uiView: UIView, context: Context) {
}
}
But it works well for iOS < 17.2.
Exception or Stack Trace
libsystem_platform.dylib`:
0x101213340 <+0>: sub x3, x0, x1
0x101213344 <+4>: cmp x3, x2
0x101213348 <+8>: b.lo 0x101213590 ; <+592>
0x10121334c <+12>: mov x3, x0
0x101213350 <+16>: cmp x2, #0x40
0x101213354 <+20>: b.lo 0x10121356c ; <+556>
0x101213358 <+24>: sub x4, x1, x0
0x10121335c <+28>: cmp x4, x2
0x101213360 <+32>: b.lo 0x101213464 ; <+292>
0x101213364 <+36>: cmp x2, #0x4, lsl #12 ; =0x4000
0x101213368 <+40>: b.lo 0x1012133e8 ; <+168>
0x10121336c <+44>: add x3, x3, #0x20
0x101213370 <+48>: and x3, x3, #0xffffffffffffffe0
0x101213374 <+52>: ldnp x12, x13, [x1]
0x101213378 <+56>: ldnp x14, x15, [x1, #0x10]
0x10121337c <+60>: sub x5, x3, x0
0x101213380 <+64>: add x1, x1, x5
0x101213384 <+68>: ldnp x8, x9, [x1]
0x101213388 <+72>: ldnp x10, x11, [x1, #0x10]
0x10121338c <+76>: add x1, x1, #0x20
0x101213390 <+80>: sub x2, x2, x5
0x101213394 <+84>: stnp x12, x13, [x0]
0x101213398 <+88>: stnp x14, x15, [x0, #0x10]
0x10121339c <+92>: subs x2, x2, #0x40
0x1012133a0 <+96>: b.ls 0x1012133c4 ; <+132>
0x1012133a4 <+100>: stnp x8, x9, [x3]
0x1012133a8 <+104>: stnp x10, x11, [x3, #0x10]
0x1012133ac <+108>: add x3, x3, #0x20
0x1012133b0 <+112>: ldnp x8, x9, [x1]
0x1012133b4 <+116>: ldnp x10, x11, [x1, #0x10]
0x1012133b8 <+120>: add x1, x1, #0x20
0x1012133bc <+124>: subs x2, x2, #0x20
0x1012133c0 <+128>: b.hi 0x1012133a4 ; <+100>
0x1012133c4 <+132>: add x1, x1, x2
0x1012133c8 <+136>: ldnp x12, x13, [x1]
0x1012133cc <+140>: ldnp x14, x15, [x1, #0x10]
0x1012133d0 <+144>: stnp x8, x9, [x3]
0x1012133d4 <+148>: stnp x10, x11, [x3, #0x10]
0x1012133d8 <+152>: add x3, x3, x2
0x1012133dc <+156>: stnp x12, x13, [x3, #0x20]
0x1012133e0 <+160>: stnp x14, x15, [x3, #0x30]
0x1012133e4 <+164>: ret
0x1012133e8 <+168>: add x3, x3, #0x20
0x1012133ec <+172>: and x3, x3, #0xffffffffffffffe0
0x1012133f0 <+176>: ldnp x12, x13, [x1]
0x1012133f4 <+180>: ldnp x14, x15, [x1, #0x10]
0x1012133f8 <+184>: sub x5, x3, x0
0x1012133fc <+188>: add x1, x1, x5
0x101213400 <+192>: ldnp x8, x9, [x1]
0x101213404 <+196>: ldnp x10, x11, [x1, #0x10]
0x101213408 <+200>: add x1, x1, #0x20
0x10121340c <+204>: sub x2, x2, x5
-> 0x101213410 <+208>: stp x12, x13, [x0]
0x101213414 <+212>: stp x14, x15, [x0, #0x10]
0x101213418 <+216>: subs x2, x2, #0x40
0x10121341c <+220>: b.ls 0x101213440 ; <+256>
0x101213420 <+224>: stp x8, x9, [x3]
0x101213424 <+228>: stp x10, x11, [x3, #0x10]
0x101213428 <+232>: add x3, x3, #0x20
0x10121342c <+236>: ldnp x8, x9, [x1]
0x101213430 <+240>: ldnp x10, x11, [x1, #0x10]
0x101213434 <+244>: add x1, x1, #0x20
0x101213438 <+248>: subs x2, x2, #0x20
0x10121343c <+252>: b.hi 0x101213420 ; <+224>
0x101213440 <+256>: add x1, x1, x2
0x101213444 <+260>: ldnp x12, x13, [x1]
0x101213448 <+264>: ldnp x14, x15, [x1, #0x10]
0x10121344c <+268>: stp x8, x9, [x3]
0x101213450 <+272>: stp x10, x11, [x3, #0x10]
0x101213454 <+276>: add x3, x3, x2
0x101213458 <+280>: stp x12, x13, [x3, #0x20]
0x10121345c <+284>: stp x14, x15, [x3, #0x30]
0x101213460 <+288>: ret
0x101213464 <+292>: cmp x2, #0x4, lsl #12 ; =0x4000
0x101213468 <+296>: b.lo 0x1012134e8 ; <+424>
0x10121346c <+300>: add x3, x3, #0x20
0x101213470 <+304>: and x3, x3, #0xffffffffffffffe0
0x101213474 <+308>: ldp x12, x13, [x1]
0x101213478 <+312>: ldp x14, x15, [x1, #0x10]
0x10121347c <+316>: sub x5, x3, x0
0x101213480 <+320>: add x1, x1, x5
0x101213484 <+324>: ldp x8, x9, [x1]
0x101213488 <+328>: ldp x10, x11, [x1, #0x10]
0x10121348c <+332>: add x1, x1, #0x20
0x101213490 <+336>: sub x2, x2, x5
0x101213494 <+340>: stnp x12, x13, [x0]
0x101213498 <+344>: stnp x14, x15, [x0, #0x10]
0x10121349c <+348>: subs x2, x2, #0x40
0x1012134a0 <+352>: b.ls 0x1012134c4 ; <+388>
0x1012134a4 <+356>: stnp x8, x9, [x3]
0x1012134a8 <+360>: stnp x10, x11, [x3, #0x10]
0x1012134ac <+364>: add x3, x3, #0x20
0x1012134b0 <+368>: ldp x8, x9, [x1]
0x1012134b4 <+372>: ldp x10, x11, [x1, #0x10]
0x1012134b8 <+376>: add x1, x1, #0x20
0x1012134bc <+380>: subs x2, x2, #0x20
0x1012134c0 <+384>: b.hi 0x1012134a4 ; <+356>
0x1012134c4 <+388>: add x1, x1, x2
0x1012134c8 <+392>: ldp x12, x13, [x1]
0x1012134cc <+396>: ldp x14, x15, [x1, #0x10]
0x1012134d0 <+400>: stnp x8, x9, [x3]
0x1012134d4 <+404>: stnp x10, x11, [x3, #0x10]
0x1012134d8 <+408>: add x3, x3, x2
0x1012134dc <+412>: stnp x12, x13, [x3, #0x20]
0x1012134e0 <+416>: stnp x14, x15, [x3, #0x30]
0x1012134e4 <+420>: ret
0x1012134e8 <+424>: add x3, x3, #0x20
0x1012134ec <+428>: and x3, x3, #0xffffffffffffffe0
0x1012134f0 <+432>: ldp x12, x13, [x1]
0x1012134f4 <+436>: ldp x14, x15, [x1, #0x10]
0x1012134f8 <+440>: sub x5, x3, x0
0x1012134fc <+444>: add x1, x1, x5
0x101213500 <+448>: ldp x8, x9, [x1]
0x101213504 <+452>: ldp x10, x11, [x1, #0x10]
0x101213508 <+456>: add x1, x1, #0x20
0x10121350c <+460>: sub x2, x2, x5
0x101213510 <+464>: stp x12, x13, [x0]
0x101213514 <+468>: stp x14, x15, [x0, #0x10]
0x101213518 <+472>: subs x2, x2, #0x40
0x10121351c <+476>: b.ls 0x101213540 ; <+512>
0x101213520 <+480>: stp x8, x9, [x3]
0x101213524 <+484>: stp x10, x11, [x3, #0x10]
0x101213528 <+488>: add x3, x3, #0x20
0x10121352c <+492>: ldp x8, x9, [x1]
0x101213530 <+496>: ldp x10, x11, [x1, #0x10]
0x101213534 <+500>: add x1, x1, #0x20
0x101213538 <+504>: subs x2, x2, #0x20
0x10121353c <+508>: b.hi 0x101213520 ; <+480>
0x101213540 <+512>: add x1, x1, x2
0x101213544 <+516>: ldp x12, x13, [x1]
0x101213548 <+520>: ldp x14, x15, [x1, #0x10]
0x10121354c <+524>: stp x8, x9, [x3]
0x101213550 <+528>: stp x10, x11, [x3, #0x10]
0x101213554 <+532>: add x3, x3, x2
0x101213558 <+536>: stp x12, x13, [x3, #0x20]
0x10121355c <+540>: stp x14, x15, [x3, #0x30]
0x101213560 <+544>: ret
0x101213564 <+548>: ldr x6, [x1], #0x8
0x101213568 <+552>: str x6, [x3], #0x8
0x10121356c <+556>: subs x2, x2, #0x8
0x101213570 <+560>: b.hs 0x101213564 ; <+548>
0x101213574 <+564>: adds x2, x2, #0x8
0x101213578 <+568>: b.eq 0x10121358c ; <+588>
0x10121357c <+572>: ldrb w6, [x1], #0x1
0x101213580 <+576>: strb w6, [x3], #0x1
0x101213584 <+580>: subs x2, x2, #0x1
0x101213588 <+584>: b.ne 0x10121357c ; <+572>
0x10121358c <+588>: ret
0x101213590 <+592>: cbz x3, 0x1012136c4 ; <+900>
0x101213594 <+596>: add x4, x0, x2
0x101213598 <+600>: add x1, x1, x2
0x10121359c <+604>: cmp x2, #0x40
0x1012135a0 <+608>: b.lo 0x1012136a4 ; <+868>
0x1012135a4 <+612>: cmp x2, #0x4, lsl #12 ; =0x4000
0x1012135a8 <+616>: b.lo 0x101213624 ; <+740>
0x1012135ac <+620>: ldp x12, x13, [x1, #-0x10]
0x1012135b0 <+624>: ldp x14, x15, [x1, #-0x20]
0x1012135b4 <+628>: sub x3, x4, #0x1
0x1012135b8 <+632>: and x3, x3, #0xffffffffffffffe0
0x1012135bc <+636>: sub x5, x4, x3
0x1012135c0 <+640>: sub x1, x1, x5
0x1012135c4 <+644>: sub x2, x2, x5
0x1012135c8 <+648>: ldp x8, x9, [x1, #-0x10]
0x1012135cc <+652>: ldp x10, x11, [x1, #-0x20]
0x1012135d0 <+656>: stnp x12, x13, [x4, #-0x10]
0x1012135d4 <+660>: stnp x14, x15, [x4, #-0x20]
0x1012135d8 <+664>: sub x1, x1, #0x20
0x1012135dc <+668>: subs x2, x2, #0x40
0x1012135e0 <+672>: b.ls 0x101213604 ; <+708>
0x1012135e4 <+676>: stnp x8, x9, [x3, #-0x10]
0x1012135e8 <+680>: stnp x10, x11, [x3, #-0x20]
0x1012135ec <+684>: sub x3, x3, #0x20
0x1012135f0 <+688>: ldp x8, x9, [x1, #-0x10]
0x1012135f4 <+692>: ldp x10, x11, [x1, #-0x20]
0x1012135f8 <+696>: sub x1, x1, #0x20
0x1012135fc <+700>: subs x2, x2, #0x20
0x101213600 <+704>: b.hi 0x1012135e4 ; <+676>
0x101213604 <+708>: sub x1, x1, x2
0x101213608 <+712>: ldp x12, x13, [x1, #-0x10]
0x10121360c <+716>: ldp x14, x15, [x1, #-0x20]
0x101213610 <+720>: stnp x8, x9, [x3, #-0x10]
0x101213614 <+724>: stnp x10, x11, [x3, #-0x20]
0x101213618 <+728>: stnp x12, x13, [x0, #0x10]
0x10121361c <+732>: stnp x14, x15, [x0]
0x101213620 <+736>: ret
0x101213624 <+740>: ldp x12, x13, [x1, #-0x10]
0x101213628 <+744>: ldp x14, x15, [x1, #-0x20]
0x10121362c <+748>: sub x3, x4, #0x1
0x101213630 <+752>: and x3, x3, #0xffffffffffffffe0
0x101213634 <+756>: sub x5, x4, x3
0x101213638 <+760>: sub x1, x1, x5
0x10121363c <+764>: sub x2, x2, x5
0x101213640 <+768>: ldp x8, x9, [x1, #-0x10]
0x101213644 <+772>: ldp x10, x11, [x1, #-0x20]
0x101213648 <+776>: stp x12, x13, [x4, #-0x10]
0x10121364c <+780>: stp x14, x15, [x4, #-0x20]
0x101213650 <+784>: sub x1, x1, #0x20
0x101213654 <+788>: subs x2, x2, #0x40
0x101213658 <+792>: b.ls 0x10121367c ; <+828>
0x10121365c <+796>: stp x8, x9, [x3, #-0x10]
0x101213660 <+800>: stp x10, x11, [x3, #-0x20]
0x101213664 <+804>: sub x3, x3, #0x20
0x101213668 <+808>: ldp x8, x9, [x1, #-0x10]
0x10121366c <+812>: ldp x10, x11, [x1, #-0x20]
0x101213670 <+816>: sub x1, x1, #0x20
0x101213674 <+820>: subs x2, x2, #0x20
0x101213678 <+824>: b.hi 0x10121365c ; <+796>
0x10121367c <+828>: sub x1, x1, x2
0x101213680 <+832>: ldp x12, x13, [x1, #-0x10]
0x101213684 <+836>: ldp x14, x15, [x1, #-0x20]
0x101213688 <+840>: stp x8, x9, [x3, #-0x10]
0x10121368c <+844>: stp x10, x11, [x3, #-0x20]
0x101213690 <+848>: stp x12, x13, [x0, #0x10]
0x101213694 <+852>: stp x14, x15, [x0]
0x101213698 <+856>: ret
0x10121369c <+860>: ldr x6, [x1, #-0x8]!
0x1012136a0 <+864>: str x6, [x4, #-0x8]!
0x1012136a4 <+868>: subs x2, x2, #0x8
0x1012136a8 <+872>: b.hs 0x10121369c ; <+860>
0x1012136ac <+876>: adds x2, x2, #0x8
0x1012136b0 <+880>: b.eq 0x1012136c4 ; <+900>
0x1012136b4 <+884>: ldrb w6, [x1, #-0x1]!
0x1012136b8 <+888>: strb w6, [x4, #-0x1]!
0x1012136bc <+892>: subs x2, x2, #0x1
0x1012136c0 <+896>: b.ne 0x1012136b4 ; <+884>
0x1012136c4 <+900>: ret
0x1012136c8 <+904>: udf #0x0
0x1012136cc <+908>: udf #0x0
0x1012136d0 <+912>: udf #0x0
0x1012136d4 <+916>: udf #0x0
0x1012136d8 <+920>: udf #0x0
0x1012136dc <+924>: udf #0x0
To Reproduce
Steps to reproduce the behavior:
- Use one of the MS example projects
https://github.com/Azure-Samples/communication-services-ios-quickstarts/tree/main/add-video-calling
https://github.com/Azure-Samples/communication-services-ios-quickstarts/tree/main/join-room-call
-
with the AzureCommunicationCalling 2.11.0
-
Run Xcode simulator with iOS 17.4 / 17.5 (either Debug or Release)
Expected behavior
The remote video stream would be smoothly render as in iOS 17.2