mirror of
https://github.com/samsonjs/media.git
synced 2026-03-28 09:55:48 +00:00
Changes --- - Added `removeOfflineLicense(byte[])` and `getOfflineLicenseKeySetIds` and consumed them in their implementations Background --- - These APIs will help in addressing an increasing amount of `java.lang.IllegalArgumentException: Failed to restore keys: BAD_VALUE` which is our top playback error in our app - Based on our discussion with Widevine team and [this exoplayer issue](https://github.com/google/ExoPlayer/issues/11202#issuecomment-1708792594) - TL;DR: The failure occurs on startup if the user has 200+ offline licenses, we would like to add the functionality to remove offline licenses **Note: Why we want these APIs in ExoMediaDrm and not in OfflineLicenseHelper** - As per the issue above, we would like to access these 2 public APIs in MediaDrm that don’t exist in `OfflineLicenseHelper` or `ExoMediaDrm` - APIs interested in: - [MediaDrm#removeOfflineLicense()](https://developer.android.com/reference/android/media/MediaDrm#removeOfflineLicense(byte%5B%5D)): To remove offline license - [MediaDrm#getOfflineLicenseKeySetIds()](https://developer.android.com/reference/android/media/MediaDrm#getOfflineLicenseKeySetIds()): To see number of offline licenses on startup - We use `OfflineLicenseHelper` to download license for L1 and we don't interact with `ExoMediaDrm` directly. But for the alternate Widevine integration, we directly depend on `ExoMediaDrm` APIs to override and call CDM Native APIs. - We would like to have the functionality of removing offline licenses for both integration which would need access to above APIs in `ExoMediaDrm`. Links --- - https://github.com/androidx/media/issues/659 |
||
|---|---|---|
| .. | ||
| cast | ||
| common | ||
| container | ||
| database | ||
| datasource | ||
| datasource_cronet | ||
| datasource_okhttp | ||
| datasource_rtmp | ||
| decoder | ||
| decoder_av1 | ||
| decoder_ffmpeg | ||
| decoder_flac | ||
| decoder_midi | ||
| decoder_opus | ||
| decoder_vp9 | ||
| effect | ||
| exoplayer | ||
| exoplayer_dash | ||
| exoplayer_hls | ||
| exoplayer_ima | ||
| exoplayer_rtsp | ||
| exoplayer_smoothstreaming | ||
| exoplayer_workmanager | ||
| extractor | ||
| muxer | ||
| session | ||
| test_data | ||
| test_exoplayer_playback | ||
| test_session_common | ||
| test_session_current | ||
| test_utils | ||
| test_utils_robolectric | ||
| transformer | ||
| ui | ||
| ui_leanback | ||