Post

Replies

Boosts

Views

Activity

AVQueuePlayer unexpectedly performs network requests during offline HLS playback after several queued episode transitions
Hello, We are investigating an issue with offline HLS playback using AVQueuePlayer and would like to know whether anyone else has experienced similar behavior. Issue We download HLS content using AVAssetDownloadURLSession and play it offline using AVQueuePlayer. For some titles (but not all), after several consecutive episode transitions, the player unexpectedly attempts a network request while the next episode is already queued and the current episode has approximately 60 seconds remaining. If the device is offline, playback fails with: NSURLErrorDomain Code = -1009 and the next episode never starts. Characteristics The issue only affects certain titles. It is fully reproducible for affected titles. For example, if it occurs between Episodes 5 and 6 after starting playback from Episode 1, it always occurs at the same point when replaying from Episode 1. If playback starts directly from Episode 5, the issue does not occur. The issue only occurs when using AVQueuePlayer. Replacing the current item (removeAllItems() + replaceCurrentItem(with:)) avoids the issue, although this is unfortunately not a viable workaround because it breaks our Picture in Picture episode transition behavior. We compared the downloaded packages (boot.xml, Master Playlist, and Stream configuration) between affected and unaffected titles, but so far have not identified any meaningful structural differences that explain the behavior. Questions Has anyone experienced similar behavior with: offline HLS (.movpkg) AVQueuePlayer unexpected network requests during queued playback NSURLErrorDomain Code=-1009 even though the content is downloaded for offline playback If anyone has seen a similar issue or has any information, observations, or suggestions for further investigation, I would greatly appreciate hearing from you. For reference, I have already submitted this issue through Feedback Assistant. Feedback ID: FB23487817 Thank you in advance for any information.
2
0
457
Jul ’26
Creating AVAssetDownloadTask with URL received in `urlSession(_:assetDownloadTask:didFinishDownloadingTo:` failed
Hi, I have created an AVAssetDownloadTask and run resume() as in the title. As a result, urlSession(_:task:didCompleteWithError:) is called immediately and returns (domain=NSURLErrorDomain code=-1=NSURLErrorUnknown) as error. My understanding is that this URL is metadata that points to movpkg. By creating an AVAssetDownloadTask with this URL, we can resume the DL from the continuation of the previous download. In fact, there were times when it was possible. But during the development process, it started returning errors. Restarting the OS did not change the result. I read the description of NSURLErrorUnknown. This is the value returned when an unexpected event occurs. It is always recommended to contact Apple. Please, I would appreciate your advice on how to resolve this issue.
1
0
516
Jul ’23
Crash by CFNetwork -[__NSURLBackgroundSession _onqueue_AVAssetDownloadTaskForURLAsset:URL:destinationURL:assetTitle:assetArtworkData:options:downloadConfiguration:enableSPIDelegateCallbacks:]
About Calling makeAssetDownloadTask in AVAssetDownloadURLSession causes a low frequency crash. Description Our application has the feature to asynchronously download StreamingVideo in a background thread. When our application makes downloadTask, there is a low probability that it will crash. I don't know what caused this. Has anyone seen this before? I'm finding information for a solution. Thanks for your help. I did read Posting a Crash Report. Crash log Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Triggered by Thread: 3 Last Exception Backtrace: 0 CoreFoundation 0x1b9ab5e88 __exceptionPreprocess + 164 (NSException.m:202) 1 libobjc.A.dylib 0x1b2def8d8 objc_exception_throw + 60 (objc-exception.mm:356) 2 CFNetwork 0x1bad41038 -[__NSURLBackgroundSession _onqueue_AVAssetDownloadTaskForURLAsset:URL:destinationURL:assetTitle:assetArtworkData:options:downloadConfiguration:enableSPIDelegateCallbacks:] + 1624 (BackgroundSession.mm:1314) 3 CFNetwork 0x1bad409c4 __117-[__NSURLBackgroundSession AVAssetDownloadTaskForURLAsset:assetTitle:assetArtworkData:options:downloadConfiguration:]_block_invoke + 56 (BackgroundSession.mm:1198) 4 CFNetwork 0x1bac5aa5c __68-[__NSURLBackgroundSession performBlockOnQueueAndRethrowExceptions:]_block_invoke + 616 (BackgroundSession.mm:800) 5 libdispatch.dylib 0x1c1085fdc _dispatch_client_callout + 20 (object.m:560) 6 libdispatch.dylib 0x1c1095574 _dispatch_lane_barrier_sync_invoke_and_complete + 56 (queue.c:1023) 7 CFNetwork 0x1bac8679c -[__NSURLBackgroundSession performBlockOnQueueAndRethrowExceptions:] + 176 (BackgroundSession.mm:778) 8 CFNetwork 0x1bad4094c -[__NSURLBackgroundSession AVAssetDownloadTaskForURLAsset:assetTitle:assetArtworkData:options:downloadConfiguration:] + 172 (BackgroundSession.mm:1197) 9 OURAPP 0x104449f4c VideoDownloading.start(progressHandler:completion:) + 984 (VideoDownloading.swift:79) 10 OURAPP 0x104185410 closure #1 in closure #1 in DownloadVideoTask.execute() + 288 (DownloadVideoTask.swift:39) 11 libswift_Concurrency.dylib 0x1c3e29ce8 $ss31withCheckedThrowingContinuation8function_xSS_yScCyxs5Error_pGXEtYaKlFySccyxsAC_pGXEfU_TA + 164 (CheckedContinuation.swift:296) 12 libswift_Concurrency.dylib 0x1c3e29dfc $ss30withUnsafeThrowingContinuationyxySccyxs5Error_pGXEYaKlF + 228 (PartialAsyncTask.swift:284) 13 libswift_Concurrency.dylib 0x1c3e29b41 $ss31withCheckedThrowingContinuation8function_xSS_yScCyxs5Error_pGXEtYaKlFTQ0_ + 1 (CheckedContinuation.swift:295) 14 OURAPP 0x10418529d (1) await resume partial function for closure #1 in DownloadVideoTask.execute() + 1 (DownloadVideoTask.swift:38) 15 OURAPP 0x104185649 (1) await resume partial function for partial apply for closure #1 in DownloadVideoTask.execute() + 1 (<compiler-generated>:0) 16 libswift_Concurrency.dylib 0x1c3e3fec9 $ss27withTaskCancellationHandler9operation8onCancelxxyYaKXE_yyYbXEtYaKlFTQ1_ + 1 (TaskCancellation.swift:40) 17 OURAPP 0x104185095 (3) await resume partial function for DownloadVideoTask.execute() + 1 (DownloadVideoTask.swift:37) 18 OURAPP 0x1043da2bd (1) await resume partial function for closure #2 in closure #2 in SingleVideoDownloadImpl.start() + 1 (SingleVideoDownloadImpl.swift:115) 19 OURAPP 0x1043db00d (1) await resume partial function for partial apply for closure #2 in closure #2 in SingleVideoDownloadImpl.start() + 1 20 libswift_Concurrency.dylib 0x1c3e6c3a1 completeTaskWithClosure(swift::AsyncContext*, swift::SwiftError*) + 1 (Task.cpp:458) from xccrashpoint OS Ver iOS14 ~ iOS16 I don't see any particular bias. Devices iPhone8 ~ iPhone13 I don't see any particular bias. It hasn't happened yet on iPhone 14.
0
0
972
Dec ’22
Crash by AttributeGraph AG::precondition_failure(char const*, ...)
About AttributeGraph crashes at a fairly low frequency. We do not know where it occurs. Description A CRASH on our app has been reported. We even know that it is related to screen rendering. This only occurs with iOS14. So I suspect that there is a strong correlation with iOS14. After reading the useful information here, I tried enabling voiceOver, but the crash did not occur, so I think it is a different issue. I'm finding information for a solution. Thanks for your help. I did read Posting a Crash Report. Crash log 2022-12-08_21-53-22.8059_+0900 from xccrashpoint OS Ver iOS14 only Devices iPhoneSE 2nd ~ iPhone12 I don't see any particular bias.
0
0
961
Dec ’22
AVQueuePlayer unexpectedly performs network requests during offline HLS playback after several queued episode transitions
Hello, We are investigating an issue with offline HLS playback using AVQueuePlayer and would like to know whether anyone else has experienced similar behavior. Issue We download HLS content using AVAssetDownloadURLSession and play it offline using AVQueuePlayer. For some titles (but not all), after several consecutive episode transitions, the player unexpectedly attempts a network request while the next episode is already queued and the current episode has approximately 60 seconds remaining. If the device is offline, playback fails with: NSURLErrorDomain Code = -1009 and the next episode never starts. Characteristics The issue only affects certain titles. It is fully reproducible for affected titles. For example, if it occurs between Episodes 5 and 6 after starting playback from Episode 1, it always occurs at the same point when replaying from Episode 1. If playback starts directly from Episode 5, the issue does not occur. The issue only occurs when using AVQueuePlayer. Replacing the current item (removeAllItems() + replaceCurrentItem(with:)) avoids the issue, although this is unfortunately not a viable workaround because it breaks our Picture in Picture episode transition behavior. We compared the downloaded packages (boot.xml, Master Playlist, and Stream configuration) between affected and unaffected titles, but so far have not identified any meaningful structural differences that explain the behavior. Questions Has anyone experienced similar behavior with: offline HLS (.movpkg) AVQueuePlayer unexpected network requests during queued playback NSURLErrorDomain Code=-1009 even though the content is downloaded for offline playback If anyone has seen a similar issue or has any information, observations, or suggestions for further investigation, I would greatly appreciate hearing from you. For reference, I have already submitted this issue through Feedback Assistant. Feedback ID: FB23487817 Thank you in advance for any information.
Replies
2
Boosts
0
Views
457
Activity
Jul ’26
Creating AVAssetDownloadTask with URL received in `urlSession(_:assetDownloadTask:didFinishDownloadingTo:` failed
Hi, I have created an AVAssetDownloadTask and run resume() as in the title. As a result, urlSession(_:task:didCompleteWithError:) is called immediately and returns (domain=NSURLErrorDomain code=-1=NSURLErrorUnknown) as error. My understanding is that this URL is metadata that points to movpkg. By creating an AVAssetDownloadTask with this URL, we can resume the DL from the continuation of the previous download. In fact, there were times when it was possible. But during the development process, it started returning errors. Restarting the OS did not change the result. I read the description of NSURLErrorUnknown. This is the value returned when an unexpected event occurs. It is always recommended to contact Apple. Please, I would appreciate your advice on how to resolve this issue.
Replies
1
Boosts
0
Views
516
Activity
Jul ’23
When is contentKeySession(_:shouldRetry:reason:) called?
This is a question about AVContentKeySessionDelegate. I want contentKeySession(_:didProvide:) to be called only once. I thought I could control this with contentKeySession(_:shouldRetry:reason:), but this method is not called. How can contentKeySession(_:shouldRetry:reason:) be called? I would be happy to share your knowledge with you.
Replies
0
Boosts
0
Views
628
Activity
Mar ’23
Crash by CFNetwork -[__NSURLBackgroundSession _onqueue_AVAssetDownloadTaskForURLAsset:URL:destinationURL:assetTitle:assetArtworkData:options:downloadConfiguration:enableSPIDelegateCallbacks:]
About Calling makeAssetDownloadTask in AVAssetDownloadURLSession causes a low frequency crash. Description Our application has the feature to asynchronously download StreamingVideo in a background thread. When our application makes downloadTask, there is a low probability that it will crash. I don't know what caused this. Has anyone seen this before? I'm finding information for a solution. Thanks for your help. I did read Posting a Crash Report. Crash log Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Triggered by Thread: 3 Last Exception Backtrace: 0 CoreFoundation 0x1b9ab5e88 __exceptionPreprocess + 164 (NSException.m:202) 1 libobjc.A.dylib 0x1b2def8d8 objc_exception_throw + 60 (objc-exception.mm:356) 2 CFNetwork 0x1bad41038 -[__NSURLBackgroundSession _onqueue_AVAssetDownloadTaskForURLAsset:URL:destinationURL:assetTitle:assetArtworkData:options:downloadConfiguration:enableSPIDelegateCallbacks:] + 1624 (BackgroundSession.mm:1314) 3 CFNetwork 0x1bad409c4 __117-[__NSURLBackgroundSession AVAssetDownloadTaskForURLAsset:assetTitle:assetArtworkData:options:downloadConfiguration:]_block_invoke + 56 (BackgroundSession.mm:1198) 4 CFNetwork 0x1bac5aa5c __68-[__NSURLBackgroundSession performBlockOnQueueAndRethrowExceptions:]_block_invoke + 616 (BackgroundSession.mm:800) 5 libdispatch.dylib 0x1c1085fdc _dispatch_client_callout + 20 (object.m:560) 6 libdispatch.dylib 0x1c1095574 _dispatch_lane_barrier_sync_invoke_and_complete + 56 (queue.c:1023) 7 CFNetwork 0x1bac8679c -[__NSURLBackgroundSession performBlockOnQueueAndRethrowExceptions:] + 176 (BackgroundSession.mm:778) 8 CFNetwork 0x1bad4094c -[__NSURLBackgroundSession AVAssetDownloadTaskForURLAsset:assetTitle:assetArtworkData:options:downloadConfiguration:] + 172 (BackgroundSession.mm:1197) 9 OURAPP 0x104449f4c VideoDownloading.start(progressHandler:completion:) + 984 (VideoDownloading.swift:79) 10 OURAPP 0x104185410 closure #1 in closure #1 in DownloadVideoTask.execute() + 288 (DownloadVideoTask.swift:39) 11 libswift_Concurrency.dylib 0x1c3e29ce8 $ss31withCheckedThrowingContinuation8function_xSS_yScCyxs5Error_pGXEtYaKlFySccyxsAC_pGXEfU_TA + 164 (CheckedContinuation.swift:296) 12 libswift_Concurrency.dylib 0x1c3e29dfc $ss30withUnsafeThrowingContinuationyxySccyxs5Error_pGXEYaKlF + 228 (PartialAsyncTask.swift:284) 13 libswift_Concurrency.dylib 0x1c3e29b41 $ss31withCheckedThrowingContinuation8function_xSS_yScCyxs5Error_pGXEtYaKlFTQ0_ + 1 (CheckedContinuation.swift:295) 14 OURAPP 0x10418529d (1) await resume partial function for closure #1 in DownloadVideoTask.execute() + 1 (DownloadVideoTask.swift:38) 15 OURAPP 0x104185649 (1) await resume partial function for partial apply for closure #1 in DownloadVideoTask.execute() + 1 (<compiler-generated>:0) 16 libswift_Concurrency.dylib 0x1c3e3fec9 $ss27withTaskCancellationHandler9operation8onCancelxxyYaKXE_yyYbXEtYaKlFTQ1_ + 1 (TaskCancellation.swift:40) 17 OURAPP 0x104185095 (3) await resume partial function for DownloadVideoTask.execute() + 1 (DownloadVideoTask.swift:37) 18 OURAPP 0x1043da2bd (1) await resume partial function for closure #2 in closure #2 in SingleVideoDownloadImpl.start() + 1 (SingleVideoDownloadImpl.swift:115) 19 OURAPP 0x1043db00d (1) await resume partial function for partial apply for closure #2 in closure #2 in SingleVideoDownloadImpl.start() + 1 20 libswift_Concurrency.dylib 0x1c3e6c3a1 completeTaskWithClosure(swift::AsyncContext*, swift::SwiftError*) + 1 (Task.cpp:458) from xccrashpoint OS Ver iOS14 ~ iOS16 I don't see any particular bias. Devices iPhone8 ~ iPhone13 I don't see any particular bias. It hasn't happened yet on iPhone 14.
Replies
0
Boosts
0
Views
972
Activity
Dec ’22
Crash by AttributeGraph AG::precondition_failure(char const*, ...)
About AttributeGraph crashes at a fairly low frequency. We do not know where it occurs. Description A CRASH on our app has been reported. We even know that it is related to screen rendering. This only occurs with iOS14. So I suspect that there is a strong correlation with iOS14. After reading the useful information here, I tried enabling voiceOver, but the crash did not occur, so I think it is a different issue. I'm finding information for a solution. Thanks for your help. I did read Posting a Crash Report. Crash log 2022-12-08_21-53-22.8059_+0900 from xccrashpoint OS Ver iOS14 only Devices iPhoneSE 2nd ~ iPhone12 I don't see any particular bias.
Replies
0
Boosts
0
Views
961
Activity
Dec ’22