Android error codes meanings
This document describes possible error codes that may be thrown by VdoCipher Android SDK.
Internal System Error
Error Codes: 1201, 1202
These errors can be caused by devices that are configured with ADB debugging enabled.
Please make sure USB debugging is turned OFF. In "Settings > System > Advanced > Developer options > Turn off USB debugging".
Media3 Version Mismatch
Error Code: 1203 - Media3 Not Found or Version Mismatch
The Media3 library is either not found or there is a major or minor version mismatch between the one defined in the SDK and the one in use. Ensure the Media3 version used in the project matches the one required by the SDK. Update the dependency to the correct version if necessary.
Media Delivery Format Issues
Error Codes: 1222, 1223 - No Supported Download Media Delivery Format / Empty Media Tech
Unable to find a media delivery format to start playback, often because playback was attempted before the video finished processing. Please ensure that playback starts only after the video processing is complete.
Play Integrity Verification Failed
Error Code: 1270
The error is caused by a failed play integrity validation, so make sure you do the following:
- The device is not rooted
- Hardware information can be recognized
- The software is sane
- The device is not monitored
- The device is not infected with malicious apps
- The Device’s profile can be recognized
Offline Media Not Found
Error Code: 4102
The downloaded video specified by the mediaId was not found on the device.
Either it was never downloaded, or was deleted earlier.
Network Error, Invalid Request
Error Codes: 5112, 5132
Service denial is likely caused by invalid OTP or other restrictions. Please contact VdoCipher support.
Network Error, Server Error
Error Codes: 5113, 5123, 5133, 5152
Possible error with VdoCipher servers.
This should automatically resolve quickly. Please try playback again. If it doesn't resolve, please contact VdoCipher support.
Error Getting Meta, Invalid Request
Error Code: 5122
Seen on very old versions of the VdoCipher android SDK when the OTP is expired.
Kindly upgrade to the latest version of the VdoCipher Android SDK.
Error Getting Meta, Network IO Error
Error Codes: 5124, 5130
Network error most likely caused by dropped internet connection.
Please try playback on both cellular and WiFi. It should correct itself once the user tries again with a stable connection.
Parser Error
Error Code: 6130
The error can occur as a result of an error in parsing media data and metadata. Check your media data and metadata format. Contact VdoCipher support if it does not resolve.
Offline Source Error
Error Code: 5160
If someone tries to play offline media after deleting the source file, they may encounter this error. Make sure offline source files are not deleted from local storage.
Media Crypto Error, Insufficient Protection
Error Code: 6193
This indicates that the output protection levels supported by the device are not sufficient to meet the requirements set by the content owner in the license policy. Read more about it here
DRM State Reset Error
Error Codes: 6157, 6161
These errors are related to error occurring in the device's Widevine CDM (Content decryption module) responsible for secure playback.
These are often caused when more than one VdoPlayer instances are active at once. Please ensure only one player is embedded in a single page, and instances are properly released.
These often resolve automatically on killing and restarting the app.
If the error persists, please ask the user to try the following steps one by one, trying playback after each step:
- Exit the app and kill it (remove it from the Recent Apps screen), and open it again
- Re-install the app
- Reboot the device
- Install any pending system updates
- Clear Phone cache
- If possible, do a factory reset
Key Response Rejected For Secure Playback, Illegal State
Error Codes: 6172, 6177, 6181, 6190, 6196
These errors are related to error occurring in the device's Widevine CDM (Content decryption module) responsible for secure playback.
These often resolve automatically on killing and restarting the app.
If the error persists, please ask the user to try the following steps one by one, trying playback after each step:
- Exit the app and kill it (remove it from the Recent Apps screen), and open it again
- Re-install the app
- Reboot the device
- Install any pending system updates
- Clear Phone cache
- If possible, do a factory reset
OTP Time Expired
Error Code: 2013
It means the OTP expired by the time playback was initiated. One common reason is that suppose app is open but playback was not started, later after some minutes the user tried to play the video , then it will give this error as the OTP would have expired. But refreshing the app will play, thus user won't report it in most cases.
Internal Error
Error Code: 6101
These errors are related to failure in the device's secure decoder which is responsible for decoding and playing DRM protected video.
Often it can be related to a resource related issue (meaning more such failures when there is for e.g. high RAM or cpu usage) and is temporary.
It may be permanent in some rare cases too. However, since the error is in the device's internal secure video decoder, and is not controllable by the external resources, it is difficult to totally avoid such errors.
Only system/OS updates may fix the issue permanently. Also, just restarting the phone may help clean out resources or reconfigure settings and may fix it for many devices.
Such decoder related errors are also reported on the ExoPlayer library which our SDK uses for playback, but they also don't meet any resolution since it is related to the device's internal decoders. Most of these devices are a bit old (E.g Redmi 3S).
With updates to the library and OS in general, such errors will become less frequent and identify errors better (instead of failing inexplicably during decoding), but for now unfortunately it cannot be totally fixed in one go.
So, App restart, Phone restart, and OS update should be tried. If not resolved, then it can not be corrected currently.
Illegal Media DRM State
Error Codes: 2021 ,2022, 1220, 1250 , 1253 , 6155, 6156 ,6157, 6166 , 6178 , 6186,
Reason - Device says it can support Widevine DRM but while playing it does not support it. 2021 has occurred in some Redmi Note 8 Pro devices (not all).
Please ask the user to
- Reboot the device, and
- Install any pending system updates.
- Clear Phone cache
- If possible do a factory reset.
If above steps do not resolve, then it can not be corrected.
Init Params Invalid
Error Code: 4100 - Null Init Params
The initialization parameter (VdoInitParams) required to start playback is null.
Error Code: 4101
4101 error means OTP or playback info is not created correctly at your end, thus this error. Please check OTP and playback info creation at your end. Please read this doc for exact steps on OTP and playback info for correction - https://www.vdocipher.com/docs/server/playbackauth/otp/
If you feel it is fine, then you should send one sample OTP and playback info which has error to support@vdocipher.com, so that we can identify the issue.
OTP Issues / Playback Info Errors
Error Code: 4010, 4011, 4015, 4016, 4017
Issues with null or invalid OTPs, or playback information being null or in a bad format. Please ensure valid OTPs are provided and playback information is correctly formatted and not null.
Decoder Initialization Failed
Error Code: 6122
This can occur temporarily on some rare devices (also permanently on a few) due to memory or resource constraints required for video playback, and usually recovers automatically upon phone restart.
This can also happen if the video decoder on the device fails for some reason. Also, make sure you are not loading more than one VdoPlayer instance at any given time, as that would make this error much more common.
Network Error
Error Code: 5110, 5114
A probable use case and solution for this error- It means generic network error (most likely the device was having internet connection issues while playing the video)
- Please make sure online playback is not triggered when user selects an offline video in the app UI.
- The error code 5110 may also occur in offline playback if the downloaded files have been moved or deleted directly by the user, for e.g. by using a file manager app. Please make sure this is not the case. You can ask the user to delete and retry the same download, then turn off internet and play as soon as the status is complete, and check if it works then.
Renderer Error
Error Code: 6120
This can occur temporarily on some rare devices (also permanently on a few) due to memory or resource constraints required for video playback, and usually recovers automatically upon phone restart.
This can also happen if the video decoder on the device fails for some reason. Also, make sure you are not loading more than one VdoPlayer instance at any given time, as that would make this error much more common.