I reset the old player item(remove all observers also) and avplayercontroller then add a new avplayerviewcontroller instance and avplayer and player item on playing a new asset/stream etc. It works fine and no crash in tvos 14, 13 etc. But in tvos 15.2 and above i get the following stack trace.
Below are the details i could collect from firebase, please check if it could help you to infer the cause of the crash. Thanks!
Crashed: com.apple.main-thread
SIGSEGV 0x00000007f2e51110
Crashed: com.apple.main-thread
0 libobjc.A.dylib 0x7624 class_getMethodImplementation + 32
1 Foundation 0xa1f30 _NSKVONotifyingOriginalClassForIsa + 28
2 Foundation 0x9db38 _NSKeyValueObservationInfoGetObservances + 272
3 Foundation 0xa8c50 -[NSObject(NSKeyValueObservingPrivate) _changeValueForKeys:count:maybeOldValuesDict:maybeNewValuesDict:usingBlock:] + 244
4 Foundation 0xa9540 -[NSObject(NSKeyValueObservingPrivate) _changeValueForKey:key:key:usingBlock:] + 68
5 Foundation 0xa2080 _NSSetObjectValueAndNotify + 284
6 AVKit 0xe6b8 -[AVInterstitialController dealloc] + 32
7 AVKit 0x356e4 -[AVPlayerControllerTVExtras .cxx_destruct] + 144
8 libobjc.A.dylib 0x7d68 object_cxxDestructFromClass(objc_object*, objc_class*) + 112
9 libobjc.A.dylib 0x1dad0 objc_destructInstance + 88
10 libobjc.A.dylib 0x24f90 _objc_rootDealloc + 52
11 libsystem_blocks.dylib 0x37f8 _Block_release + 184
12 libdispatch.dylib 0x4f84 _dispatch_client_callout + 16
13 libdispatch.dylib 0x12164 _dispatch_main_queue_callback_4CF + 916
14 CoreFoundation 0x7a698 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
15 CoreFoundation 0x74b18 __CFRunLoopRun + 2528
16 CoreFoundation 0x73bf4 CFRunLoopRunSpecific + 572
17 GraphicsServices 0x6afc GSEventRunModal + 160
18 UIKitCore 0xa9ccd0 -[UIApplication _run] + 1080
19 UIKitCore 0xaa20cc UIApplicationMain + 164
20 XXXXXXX 0xc474 (Missing UUID xxxxxxxxx…)
21 ??? 0x1030e91d0 (Missing)