Generally speaking, if the documentation for classes is not documented to be thread safe, you should not use an object of this class for multiple threads.
Moreover, although the advantage is to do less on the main thread, allocating AVPlayer , AVPlayerItem and AVURLAsset will never be a practical bottleneck that you need to worry about. Instead, you should run the tools and find real performance issues, and focus on them instead.
source share