
This document will cover the SDK-specific error codes. The sources for these errors include:
- Player Javascript components, and loading of said components
- Native ExoPlayer provider and the exceptions it may throw
- Native features such as Picture-In-Picture
The error codes follow a specific schema:
| Name | Description |
|---|
| Severity | - Setup errors are delivered via a "setupError" event and are the most severe, these errors start with a 1.
- Fatal errors are delivered via "error" events, these errors start with a 2.
- Warning errors are delivered via "warning" events, these errors start with a 3.
|
Category
Sub-category | Categories include features, providers, and other logical groups or components of the player. |
| Type | Type of error identified by the last three digits of the error code. |
| Code | Identifier for the error
Error code descriptions are listed on this page. |
Use the sections below to help you troubleshoot and programmatically handle player-related issues.
| Code | Reason | Description | Displayed Message |
|---|
| 100000 | An unknown setup error occurred. | none | Sorry, the video player failed to load. |
| 100001 | Setup took longer than 60 seconds to complete. | Setup Timeout Error: Setup took longer than 30 seconds to complete. | Sorry, the video player failed to load. |
| 100011 | Missing license key: the key was not found in the setup config or the jwplayer.key global. | Error setting up player: Missing license key | Sorry, the video player failed to load. |
| 100012 | Invalid license key. | Error setting up player: Invalid license key | Sorry, the video player failed to load. |
| 100013 | Expired license key. | Error setting up player: Invalid license key | Sorry, the video player failed to load. |
| 100014 | License key is not supported in unlimited edition. | - | Sorry, the video player failed to load. |
The player can still emit loading errors when trying to load web player assets such as jwplayer.core.js and the codes and error messages for those events are documented here: Player errors reference.
| Code | Reason | Name | Displayed Message |
|---|
| 101134 | Native-playlistitem-callback.js failed to load | NATIVE_PLAYLISTITEM_CALLBACK_ERR_CODE | Sorry, the video player failed to load |
| 101136 | Jscontext.compatibility.js failed to load | CONTEXT_COMPATIBILITY_ERR_CODE | Failed to load a component of the player. |
| 101137 | Jscontext.polyfills.js failed to load | CONTEXT_POLYFILLS_ERR_CODE | Failed to load a component of the player. |
| 104163 | Html5_provider_mobile.js failed to load | HTML5_PROVIDER_ERR_CODE | Sorry, the video player failed to load |
| 104164 | Native_provider_pool.js failed to load | NATIVE_PROVIDER_POOL_ERR_CODE | Sorry, the video player failed to load |
These errors are generated due to ExoPlayer exceptions.
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 270000 | Thrown to indicate that a method has been passed an illegal or inappropriate argument | IllegalArgumentException | ILLEGAL_ARGUMENT_ERROR | This video file cannot be played. |
| 270001 | Signals that an I/O exception of some sort has occurred | IOException | IO_ERROR | This video file cannot be played. |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 270100 | Thrown when a non-recoverable playback failure occurs | ExoPlaybackException | GENERIC_PLAYBACK_ERROR | This video file cannot be played. |
| 270101 | Thrown when an attempt is made to seek to a position that does not exist in the player's Timeline | IllegalSeekPositionException | ILLEGAL_SEEK_POSITION_ERROR | This video file cannot be played. |
| 270102 | Thrown when an error occurs parsing media data and metadata | ParserException | PARSER_ERROR | This video file cannot be played. |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 271000 | Thrown when an error is encountered when trying to read from a HttpDataSource | HttpDataSourceException | GENERIC_HTTP_DATA_SOURCE_ERROR | This video file cannot be played. |
| 271010 | Thrown when cleartext HTTP traffic is not permitted | CleartextNotPermittedException | CLEARTEXT_NOT_ALLOWED_ERROR | This video file cannot be played. |
| 271020 | Thrown when the content type is invalid | InvalidContentTypeException | INVALID_CONTENT_TYPE_ERROR | This video file cannot be played. |
| 271XXX | Thrown when an attempt to open a connection results in a response code not in the 2xx range. Error code is generated by adding 271000+HttpStatusCode. HttpStatusCode is within the range of 400-599 | InvalidResponseCodeException | INVALID_RESPONSE_CODE_ERROR | This video file cannot be played |
| 271403 | Thrown when an attempt to access the requested resource is forbidden NOTE: The server throws code 271403 when the requested resource is restricted by JWX content protection. Content protection methods include:- Georestricting
- DRM
- URL signing
| InvalidResponseCodeException | INVALID_RESPONSE_CODE_ERROR | This video file cannot be played |
| 271710 | Thrown when an IOException is encountered reading a local asset. | AssetDataSourceException | ASSET_DATA_SOURCE_ERROR | This video file cannot be played. |
| 271720 | Thrown when an IOException is encountered reading from a content URI. | ContentDataSourceException | CONTENT_DATA_SOURCE_ERROR | This video file cannot be played. |
| 271730 | Thrown when a FileDataSource encounters an error reading a file. | FileDataSourceException | FILE_DATA_SOURCE_ERROR | This video file cannot be played. |
| 271740 | Thrown when an IOException is encountered reading from a raw resource. | RawResourceDataSourceException | RAW_DATA_SOURCE_ERROR | This video file cannot be played. |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 272000 | Thrown when a failure occurs in the decoder. | MediaCodecRenderer.DecoderException | GENERIC_DECODER_ERROR | This video file cannot be played. |
| 272001 | Thrown when a failure occurs instantiating a decoder. | MediaCodecRenderer.DecoderInitializationException | DECODER_INIT_ERROR | This video file cannot be played. |
| 272002 | Thrown when a failure occurs instantiating a decoder. | MediaCodecRenderer.DecoderInitializationException | DECODER_INIT_ERROR_UNSUPPORTED | This video file cannot be played. |
| 272003 | Thrown when an error occurs querying the device for its underlying media capabilities. | MediaCodecUtil.DecoderQueryException | DECODER_QUERY_ERROR | This video file cannot be played |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| Thrown when a ClippingMediaSource cannot clip its wrapped source. | ClippingMediaSource.IllegalClippingException | none | |
| 274000 | Thrown when a live playback falls behind the available media window. | BehindLiveWindowException | BEHIND_LIVE_WINDOW_ERROR | |
| 274001 | Thrown when a MergingMediaSource cannot merge its sources. | MergingMediaSource.IllegalMergeException | ILLEGAL_MERGE_ERROR | |
| 274002 | Thrown if the input format was not recognized. | UnrecognizedInputFormatException | INPUT_FORMAT_ERROR | |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 274100 | Thrown when an audio decoder error occurs. | AudioDecoderException | AUDIO_DECODER_ERROR | This video file cannot be played. |
| 274101 | Exception thrown when a processor can't be configured for a given input audio format. | AudioProcessor.UnhandledAudioFormatException | UNHANDLED_AUDIO_FORMAT_ERROR | |
| 274001 | Thrown when a MergingMediaSource cannot merge its sources. | MergingMediaSource.IllegalMergeException | ILLEGAL_MERGE_ERROR | This video file cannot be played. |
| 274102 | Thrown when a failure occurs configuring the sink. | AudioSink.ConfigurationException | AUDIOSINK_CONFIG_ERROR | This video file cannot be played. |
| 274103 | Thrown when a failure occurs initializing the sink. | AudioSink.InitializationException | AUDIOSINK_INIT_ERROR | This video file cannot be played. |
| 274104 | Thrown when a failure occurs writing to the sink. | AudioSink.WriteException | AUDIOSINK_WRITE_ERROR | This video file cannot be played. |
| 274105 | Thrown when the audio track has provided a spurious timestamp, if DefaultAudioSink.failOnSpuriousAudioTimestamp is set. | DefaultAudioSink.InvalidAudioTrackTimestampException | INVALID_AUDIO_TIMESTAMP_ERROR | This video file cannot be played. |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 274200 | Thrown when it is not possible to map a TrackGroup to a SampleQueue. | SampleQueueMappingException | SAMPLE_MAPPING_ERROR | |
| 274201 | Thrown when the media sequence of a new snapshot indicates the server has reset. | HlsPlaylistTracker.PlaylistResetException | HLS_PLAYLIST_RESET_ERROR | |
| 274202 | Thrown when a playlist is considered to be stuck due to a server side error. | HlsPlaylistTracker.PlaylistStuckException | HLS_PLAYLIST_STUCK_ERROR | |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 274300 | Thrown if a required field is missing. | SsManifestParser.MissingFieldException | SS_MISSING_FIELD_ERROR | |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 274600 | Thrown when a live playback's manifest is stale and a new manifest could not be loaded. | DashManifestStaleException | DASH_MANIFEST_STALE_ERROR | |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 276000 | Thrown when a non-platform component fails to decrypt data. | DecryptionException | DRM_DECRYPTION_ERROR | There was a problem providing access to protected content. |
| 276001 | Signals that the DrmInitData does not contain scheme data for the required UUID. | DefaultDrmSessionManager.MissingSchemeDataException | DRM_MISSING_SCHEME_DATA_ERROR | There was a problem providing access to protected content. |
| 276002 | Wraps the throwable which is the cause of the error state. | DrmSession.DrmSessionException | DRM_SESSION_ERROR | There was a problem providing access to protected content. |
| 276003 | Thrown when the DRM keys loaded into an open session expire. | KeysExpiredException | DRM_KEY_EXPIRED_ERROR | There was a problem providing access to protected content. |
| 276004 | Thrown when the requested DRM scheme is not supported. | UnsupportedDrmException | DRM_UNSUPPORTED_ERROR | There was a problem providing access to protected content. |
| 276005 | Thrown when a crypto error occurs while queueing a secure input buffer. | CryptoException | DRM_CRYPTO_ERROR | There was a problem providing access to protected content. |
| Code | Reason | Name | Displayed Message |
|---|
| 301138 | Mobile_workarounds.js failed to load | MOBILE_WORK_AROUND_ERR_CODE | Failed to load a component of the player |
| 304165 | Casting-provider-sdk.js failed to load | CASTING_PROVIDER_ERR_CODE | Failed to load a component of the player |
| 305010 | Casting-plugin-sdk.js failed to load | CASTING_PLUGIN_ERR_CODE | Failed to load a component of the player |
| 305011 | Dai-plugin-sdk.js failed to load | DAI_PLUGIN_ERR_CODE | Failed to load a component of the player |
| 305012 | Ima-plugin-sdk.js failed to load | IMA_PLUGIN_ERR_CODE | Failed to load a component of the player |
| 305013 | Related.js failed to load | RELATED_PLUGIN_ERR_CODE | Failed to load a component of the player |
| Code | Reason | Name | Displayed Message |
|---|
| 309100 | Default Pip unsupported error | ERROR_PIP_UNSUPPORTED | |
| 309101 | Warning for when PiP can't be registered due to low API level | ERROR_PIP_UNAVAILABLE_DUE_TO_API | |
| 309102 | PiP warning for when activity is not registered | ERROR_PIP_ACTIVITY_NOT_REGISTERED | Activity was not registered for picture in picture |
| 309103 | PiP warning for when entering PiP mode failed | ERROR_ENTERING_PIP_MODE_FAILED | There was an error entering picture in picture |
| 309104 | PiP warning for when the set aspect ratio is not within limits | ERROR_PIP_ASPECT_RATIO_OUTSIDE_LIMITS | The provided aspect ratio is too extreme and must be greater then 0.41. and less than 2.39. It will be replaced with the closest viable ratio |
| 309105 | PiP warning for when we attempt to enter PiP mode multiple times | ERROR_PIP_MODE_ALREADY_ENABLED | Attempting to enter PiP mode while PiP mode was already enabled. |
| Code | Reason | Exception | Name | Displayed Message |
|---|
| 373100 | Thrown when an error occurs decoding subtitle data. | SubtitleDecoderException | SUBTITLE_DECODE_ERROR | |