Player Related iOS, tvOS and visionOS System Errors

This page contains a list of commonly seen error codes produced by frameworks from Apple's iOS, tvOS and visionOS SDKs when working with Bitmovin Player. These frameworks can be AVFoundation, CoreMedia, CFNetwork, AudioToolbox or other.

Apple's documentation regarding error codes can often be challenging to navigate, as it typically lacks comprehensive details. Frequently, errors are presented with the message, The operation couldn’t be completed. (CoreMediaErrorDomain error -16839), which does not provide much insight into the underlying issue. At Bitmovin, we recognize the challenges developers face when troubleshooting AVPlayer errors, and we are committed to reverse-engineering these errors and documenting our findings to facilitate a better debugging experience.

For Bitmovin Player SDK error codes (non-negative), please refer to the Bitmovin Player SDK Errors Overview.

System error codes

The table below lists the system error codes identified by Bitmovin that are relevant to media playback. We continuously monitor the most common error codes to investigate their root causes. As we uncover new error codes, this table will be updated to reflect those findings.

Error CodeMessage
-42803Apple FairPlay Streaming offline key is invalid.
-42800Apple FairPlay Streaming persistent key has expired. Request a new persistent key from the server.
-42799Apple FairPlay Streaming persistent key format is no longer supported due to security update. Request a new persistent key from the server.
-42783Apple FairPlay Streaming certificate is not valid and is possibly revoked.
-42681Apple FairPlay Streaming version list is not valid.
-42679Apple FairPlay Streaming certificate is not valid.
-42676An error occurred during Apple FairPlay Streaming Server Playback Context creation.
-42675Apple FairPlay Streaming assetID supplied is not valid.
-42674Apple FairPlay Streaming version list is not supplied.
-42673Apple FairPlay Streaming assetId is not supplied.
-42672Apple FairPlay Streaming certificate is not supplied.
-42668Apple FairPlay Streaming Content Key Context passed in for processing is not valid.
-42656Apple FairPlay Streaming lease duration has expired.
-16850Server error. HTTP status code 504: Gateway Timeout.
-16849Server error. HTTP status code 503: Service Unavailable.
-16848Server error. HTTP status code 502: Bad Gateway.
-16847Server error. HTTP status code 500: Internal Server Error.
-16846Server error. Received HTTP status code within 500-599.
-16845Networking error. Received HTTP status code within 400-499.
-16840Networking error. Received HTTP status code 401: Unauthorized.
-16839Manifest request timed out.
-15491Allocation of internal data structure failed.
-15490Invalid or NULL API parameter received.
-12971Failed to parse segment as either an MPEG-2 TS or an ES.
-12939Server misconfiguration or byte range length mismatch.
-12938Networking Error. Received HTTP status code 404: File Not Found.
-12937Authentication Error.
-12913Decoder temporarily unavailable.
-12911Decoder malfunction.
-12903CMSampleBufferRef decompression error.
-12889Segment request timed out.
-12875Request timed out. 1
-12848'moov' atom could not be parsed.
-12847Unsupported media format found.
-12667Networking Error. Received HTTP status code within 200-399.
-12666Unrecognized HTTP response.
-12661Server error. HTTP status code 503: Service Unavailable.
-12660Networking error. Received HTTP status code 403: Forbidden.
-12645Media request timed out.
-12642Playlist file unchanged for 2 consecutive reads.
-12641Invalid URL found in manifest.
-12640Variant URLs changed between consecutive manifest downloads. Consider adding a STABLE-VARIANT-ID tag to the renditions.
-12318Segment exceeds specified bandwidth for variant.
-12312Mismatch between playlists.
-11885The requested tone mapping failed. 1
-11884The system denied issuing the sandbox extension. 1
-11883The system couldn’t encode the media data. 1
-11882An AirPlay receiver is temporarily unavailable. 1
-11881The system can’t load the requested sample data. 1
-11880An invalid sample cursor produced an error. 1
-11879The app canceled a request to retrieve a content key. 1
-11878The asset handled a request to cancel loading a property value asynchronously. 1
-11877The system doesn’t have Rosetta installed and can’t perform the requested operation. 1
-11876The operation attempted to write a new MPEG-4 segment that didn’t start with a sync sample. 1
-11875The system is incorrectly configured for the requested operation. 1
-11873The capture session doesn’t support the camera device’s active format. 1
-11872The app requested too many camera hardware resources. 1
-11871The app attempted to perform an unsupported operation for the current preset. 1
-11870The current asset doesn’t support external playback. 1
-11869The asset doesn’t contain a source track. 1
-11868The system found no compatible external displays. 1
-11865The depth data isn’t properly structured. 1
-11864The current asset format isn’t supported. 1
-11863The captured content is unavailable. 1
-11862The requested operation isn’t allowed. 1
-11861The app requested unsupported output settings. 1
-11860The app couldn’t create a content key request. 1
-11859The app attempted to start recording a movie file while an existing recording is underway. 1
-11858The compositor couldn’t composite video frames. 1
-11857The AirPlay receiver requires an internet connection to function. 1
-11856The AirPlay controller requires an internet connection to function. 1
-11855The system couldn’t decode the media data. 1
-11850The configuration of the HTTP server that streams the media resource isn’t correct. 1
-11849The system can’t load the requested media data. 1
-11848The media can’t be displayed because the device isn’t capable of playing the content. 1
-11847An interruption occurred while performing a reading or writing operation. 1
-11846The specified torch level is valid but currently unavailable, possibly due to overheating. 1
-11845Screen capture failed because the display was inactive. 1
-11844An unexpected problem occurred that prevented screen capture. 1
-11843The path extension of the output URL is invalid. 1
-11842The current reference restrictions prevent the system from loading referenced media. 1
-11841Failed attempt to present an unsupported video composition. 1
-11840An appropriate encoder isn’t currently available. 1
-11839A suitable decoder for the media is temporarily available. 1
-11838The app attempted to perform an unsupported operation with the asset. 1
-11837Failed attempt to start a capture session in the background, which isn’t allowed in iOS. 1
-11836The app isn’t authorized to play media. Please ensure SourceConfig.drmConfig is set up correctly. 1
-11835The user isn’t authorized to play the media. Please ensure SourceConfig.drmConfig is set up correctly. 1
-11834The requested encoder isn’t found. 1
-11833The system can’t find a suitable decoder for the media. 1
-11832No image is available in the media at the indicated time. 1
-11831The app isn’t authorized to open the media. Please ensure SourceConfig.drmConfig is set up correctly. 1
-11830The app can’t take a photo because there are too many unfinished photo capture requests. 1
-11829The file is corrupt or in an unrecognized format. 1
-11828The system can’t open the file because it’s in an unrecognized format. 1
-11827Unable to add the source media because it has no duration. 1
-11826Unable to add the source media because its start time in the destination is invalid. 1
-11825Unable to add the source media because its duration in the destination is invalid. 1
-11824The composition can’t add the source media because it contains gaps. 1
-11823A file with the same name exists at the location and can’t be overwritten. 1
-11822The system couldn’t read the source media. 1
-11821The system failed to decode the media. 1
-11820The requested export operation failed. 1
-11819The system couldn’t perform the operation because media services were unavailable. 1
-11818The recording stopped because the system interrupted the audio session. 1
-11817The app can’t change device settings because another process currently controls the device. 1
-11815The app can’t access the device because another app is currently using it. 1
-11814The app can’t access the device because it isn’t connected. 1
-11813The recording stopped because it reached the file’s maximum number of samples. 1
-11812Recording stopped because there was an interruption in the input media. 1
-11811The recording stopped because it reached the file’s maximum size. 1
-11810The recording stopped because it reached the file’s maximum duration. 1
-11809Recording stopped because the format of the source media changed. 1
-11808A previously connected device is no longer accessible. 1
-11807Recording stopped because the disk is full. 1
-11806Recording stopped because the configuration of media sources and destinations changed. 1
-11805The recording failed because the system received no data. 1
-11804The app can’t access the device because another session is currently using it. 1
-11803The recording couldn’t start because the session isn’t running. 1
-11801The operation couldn’t finish because there isn’t enough memory available to process the media. 1
-1202The secure connection failed because the server’s certificate isn’t trusted. 1
-1102Networking error. Received HTTP status code 403: Forbidden. 1
-1100Networking error. Received HTTP status code 404: File Not Found. 1
-1013Networking error. Received HTTP status code 401: Unauthorized. 1
-1009The connection failed because the device isn’t connected to the internet. 1
-1008Networking error. The requested resource could not be loaded. 1
-1004The connection failed because a connection can’t be made to the host. 1
-1003The connection failed because the host couldn’t be found. 1
-1000The connection failed due to a malformed URL. 1
-50AVAudioSession property set to an illegal value. 1
560557684Unable to make nonmixable audio session active while the app was in the background. 1
1718449215The data format is not supported by the specified file type. 1
1852797029An illegal audio codec operation was attempted. 1, 2