Error Codes
The library follows hexadecimal error system. The least significant 16-bits (Bits 0-15) indicate a Component Error Code and the most significant 16-bits (Bits 16-31) indicate the Categories that the error falls into.
Error Category | Mask | Description |
---|---|---|
Network Error | 0x10000 | Indicates that the error occurrence is network. related |
Server Error | 0x20000 | Indicates a server response failure. |
Thirdparty Error | 0x40000 | Indicates a failure in thirdparty components such as External Player, Thirdparty Libraries etc., |
Reserved | 0x80000 | Reserved for future use. |
Reserved | 0x100000 | Reserved for future use. |
Reserved | 0x200000 | Reserved for future use. |
Playback Error | 0x400000 | Indicates that the error occurrence is during a Playback. |
Download Error | 0x800000 | Indicates that the error occurrence is during a Download. |
- 0x40* - Playback Error most probably due to player itself.
- 0x41* - Playback error due to Network failure.
- 0x42* - Playback error due to Server response failure.
- 0x80* - Download error most probably due to the downloader itself.
- 0x81* - Download error due to Network failure.
- 0x82* - Download error due to Server response failure.
Error Code | Hexadecimal value | Component Error Code | Description |
---|---|---|---|
MEDIA_SOURCE_FAILURE | 0x400201 | 0x201 | Indicates that an error has occurred while loading the MediaSource. |
MEDIA_SOURCE_TIMEOUT | 0x400202 | 0x202 | Indicates that Fetching of the Media Source from network timed-out. |
DRM_PROVISIONING_FAILURE | 0x400203 | 0x203 | Indicates that an error has occurred while Provisioning Model Certificates on the specific device. |
DRM_PROVISIONING_TIMEOUT | 0x400204 | 0x204 | Indicates that Fetching of DRM Provisioning Data from Network Timed-Out. |
DRM_LICENSE_FAILURE | 0x400205 | 0x205 | Indicates that an error has occurred while Loading DRM Keys for a particular content either from network (or) persistent storage. |
DRM_LICENSE_TIMEOUT | 0x400206 | 0x206 | Indicates that Fetching of DRM Keys from network timed-out. |
DRM_LICENSE_EXPIRED | 0x400207 | 0x207 | Indicates that Loaded DRM Keys are expired. |
MEDIA_PLAYBACK_FAILURE | 0x400208 | 0x208 | Indicates that rendering of media failed. |
MEDIA_PLAYBACK_STALE | 0x400209 | 0x209 | Indicates Player playback has stalled. |
IMA DAI Error Code
Error Code | Hexadecimal value | Component Error Code | Description |
---|---|---|---|
IMA_STREAM_MANAGER_INITIALIZATION_FAILURE | 0x41001 | 0x1001 | Indicates a failure when loading ads for IMA Server |
Error Object
The Error object returned by the library is a linked list that traces the error occurrence from an higer-level component, to the lower-level component where the error actually occurred.
The Player component can talk to an internal component that in turn talks to head-end server. If the server returns an error-ful response, the Error
object returned from the player component might have internalError
property set to the error thrown
by the internal component which might actually be a server error information.
The more deeper we go in the linked list , the more specific the
Error
would be. It's upto the application developers to utilize the depth ofError
information as they desire.