Observing the same issue, while I click I am adding the new player once after removing all the observers, but still able to reproduce the same issue. This issue occurs only after 3-4 correct functioning. Thanks for the help.
0 CoreFoundation 0x00000001803f41fc __exceptionPreprocess + 236
1 libobjc.A.dylib 0x000000018016a438 objc_exception_throw + 56
2 AVFCore 0x00000001b58e98bc __32-[AVPlayerItem _attachToPlayer:]_block_invoke + 0
3 AVFCore 0x00000001b58cf274 -[AVPlayer _insertItem:afterItem:] + 56
4 SelfLearn 0x0000000100dead44 $s9SelfLearn0aB11VideoPlayerC18playerEndedPlaying33_783A90EB63367B572AA588642046C941LLyy10Foundation12NotificationVFyycfU_ + 988
5 SelfLearn 0x0000000100c06bd8 $sIeg_IeyB_TR + 52
6 libdispatch.dylib 0x000000010276f764 _dispatch_call_block_and_release + 24
7 libdispatch.dylib 0x0000000102770f34 _dispatch_client_callout + 16
8 libdispatch.dylib 0x000000010277f674 _dispatch_main_queue_callback_4CF + 1048
9 CoreFoundation 0x0000000180362ef4 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
10 CoreFoundation 0x000000018035d428 __CFRunLoopRun + 2444
11 CoreFoundation 0x000000018035c58c CFRunLoopRunSpecific + 572
12 GraphicsServices 0x000000018b634740 GSEventRunModal + 160
13 UIKitCore 0x00000001843c5cbc -[UIApplication _run] + 964
14 UIKitCore 0x00000001843caa9c UIApplicationMain + 112
15 libswiftUIKit.dylib 0x00000001b1d9a328 $s5UIKit17UIApplicationMainys5Int32VAD_SpySpys4Int8VGGSgSSSgAJtF + 100
16 SelfLearn 0x0000000100e1c9e0 $sSo21UIApplicationDelegateP5UIKitE4mainyyFZ + 120
17 SelfLearn 0x0000000100e1c958 $s9SelfLearn11AppDelegateC5$mainyyFZ + 48
18 SelfLearn 0x0000000100e1ca24 main + 32
19 libdyld.dylib 0x0000000180221cbc start + 4
)
libc++abi.dylib: terminating with uncaught exception of type NSException
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'An AVPlayerItem cannot be associated with more than one instance of AVPlayer'