Post

Replies

Boosts

Views

Activity

How many concurrent VTCompressionSession / VTDecompressionSession can an app run, and can the limit be queried?
I'm batch-transcoding a library of clips into downscaled editing proxies. If I kick off two hardware transcodes at once, the encoder reliably falls over, so right now I run everything serially: each clip gets fully decoded, encoded, and muxed before the next one starts. It works, but it's slow, and the decode and encode hardware are mostly idle waiting on each other. A few things I can't pin down from the docs: Is there an actual ceiling on how many VTCompressionSession / VTDecompressionSession instances can be live at once, and does it depend on the device, the codec, or the resolution? Can I query that ceiling at runtime? I'd rather size my concurrency up front than find it by crashing. Decode and encode are separate hardware blocks, so can I safely run a decode session for one clip while the previous clip is still encoding, or does VideoToolbox serialize them anyway? When I do go over the limit, what should I be checking so I can back off cleanly? Right now I just get a crash instead of an error I can catch. Anything that gets me off the fully-serial pipeline would help. Thank you
3
0
173
4h
iOS 15 / Xcode 13 slows app down because of UIFocusSystem?
I have attached an image of Time Profiler of areas where the app hangs for 5-6 seconds at a time. It happens in certain view controller (UIViewController) that has UICollectionView with UICollectionViewDiffableDataSource. Nothing else fancy going on here. Other view controllers with exact same or very similar set up in terms of layout and all are completely fine, but it's just this specific view controller always hangs whenever I tap on the collection view cell, invoking didSelectItemAt This issue happens with Xcode 13.0 and 13.1 RC. I have tried deleting all derived data/cached folder/ etc etc.
0
0
447
Oct ’21
How many concurrent VTCompressionSession / VTDecompressionSession can an app run, and can the limit be queried?
I'm batch-transcoding a library of clips into downscaled editing proxies. If I kick off two hardware transcodes at once, the encoder reliably falls over, so right now I run everything serially: each clip gets fully decoded, encoded, and muxed before the next one starts. It works, but it's slow, and the decode and encode hardware are mostly idle waiting on each other. A few things I can't pin down from the docs: Is there an actual ceiling on how many VTCompressionSession / VTDecompressionSession instances can be live at once, and does it depend on the device, the codec, or the resolution? Can I query that ceiling at runtime? I'd rather size my concurrency up front than find it by crashing. Decode and encode are separate hardware blocks, so can I safely run a decode session for one clip while the previous clip is still encoding, or does VideoToolbox serialize them anyway? When I do go over the limit, what should I be checking so I can back off cleanly? Right now I just get a crash instead of an error I can catch. Anything that gets me off the fully-serial pipeline would help. Thank you
Replies
3
Boosts
0
Views
173
Activity
4h
iOS 15 / Xcode 13 slows app down because of UIFocusSystem?
I have attached an image of Time Profiler of areas where the app hangs for 5-6 seconds at a time. It happens in certain view controller (UIViewController) that has UICollectionView with UICollectionViewDiffableDataSource. Nothing else fancy going on here. Other view controllers with exact same or very similar set up in terms of layout and all are completely fine, but it's just this specific view controller always hangs whenever I tap on the collection view cell, invoking didSelectItemAt This issue happens with Xcode 13.0 and 13.1 RC. I have tried deleting all derived data/cached folder/ etc etc.
Replies
0
Boosts
0
Views
447
Activity
Oct ’21