Я пытался воспроизвести файл DRM, он не воспроизводит, показывает какую-то ошибку, можете ли вы предложить мне способ интеграции. Просто я хочу передать DRM Media URL и лицензию WideVine, показывающую продолжительность фильма, но контент не воспроизводится.
Используемая версия ExoPlayer
'Com.google.android.exoplayer: exoplayer: 2.7.3'
Примечание: нет конкретного устройства.
Интеграция с игроком
DefaultBandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
TrackSelection.Factory videoTrackSelectionFactory =
new AdaptiveTrackSelection.Factory(bandwidthMeter);
trackSelector = new
DefaultTrackSelector(videoTrackSelectionFactory);
int errorStringId = R.string.error_drm_unknown;
DefaultDrmSessionManager<FrameworkMediaCrypto> drmSessionManager = null;
try {
String drmSchemeExtra = DRM_SCHEME;
UUID drmSchemeUuid = Util.getDrmUuid(drmSchemeExtra);
if (drmSchemeUuid == null) {
errorStringId = R.string.error_drm_unsupported_scheme;
} else {
String[] keyRequestPropertiesArray = new String[]{};
drmSessionManager =
buildDrmSessionManagerV18(
drmSchemeUuid, movie.getDrmLicence(), keyRequestPropertiesArray,false);
}
} catch (UnsupportedDrmException e) {
errorStringId = e.reason == UnsupportedDrmException.REASON_UNSUPPORTED_SCHEME
? R.string.error_drm_unsupported_scheme : R.string.error_drm_unknown;
}
if (drmSessionManager == null) {
showToast(activity.getString(errorStringId));
//activity.finish();
return;
}
boolean preferExtensionDecoders = false;
@DefaultRenderersFactory.ExtensionRendererMode int extensionRendererMode =
((IdeaApplication) activity.getApplication()).useExtensionRenderers()
? (preferExtensionDecoders ? DefaultRenderersFactory.EXTENSION_RENDERER_MODE_PREFER
: DefaultRenderersFactory.EXTENSION_RENDERER_MODE_ON)
: DefaultRenderersFactory.EXTENSION_RENDERER_MODE_OFF;
DefaultRenderersFactory renderersFactory = new DefaultRenderersFactory(context, drmSessionManager,extensionRendererMode);
// Create a player instance.
player = ExoPlayerFactory.newSimpleInstance(context,trackSelector,new DefaultLoadControl(),drmSessionManager);
Тестирование DRM:
"uri": "https://storage.googleapis.com/wvmedia/cenc/h264/tears/tears.mpd",
"drm_scheme": "widevine",
"drm_license_url": "https://proxy.uat.widevine.com/proxy?video_id=0894c7c8719b28a0&provider=widevine_test"
для журналов ошибок, пожалуйста, проверьте ниже проблему, которая имеет сообщение об ошибке
https://github.com/google/ExoPlayer/issues/5359