Exemplo n.º 1
0
 private void ReleaseMediaDrm()
 {
     if (mediaDrm != null)
     {
         mediaDrm.Release();
         mediaDrm = null;
     }
 }
Exemplo n.º 2
0
        /// <summary>
        /// Builds the drm session manager.
        /// </summary>
        /// <returns>The drm session manager.</returns>
        /// <param name="uuid">UUID.</param>
        /// <param name="licenseUrl">License URL.</param>
        /// <param name="keyRequestProperties">Key request properties.</param>
        private IDrmSessionManager BuildDrmSessionManager(UUID uuid, string licenseUrl, Dictionary <string, string> keyRequestProperties)
        {
            if (Util.SdkInt < 18)
            {
                return(null);
            }

            HttpMediaDrmCallback drmCallback = new HttpMediaDrmCallback(licenseUrl,
                                                                        BuildHttpDataSourceFactory(false), keyRequestProperties);

            return(new DefaultDrmSessionManager(uuid,
                                                FrameworkMediaDrm.NewInstance(uuid), drmCallback, null, _mainHandler, _eventLogger));
        }
Exemplo n.º 3
0
        private IDrmSessionManager BuildDrmSessionManagerV18(UUID uuid, string licenseUrl, string[] keyRequestPropertiesArray)
        {
            HttpMediaDrmCallback drmCallback = new HttpMediaDrmCallback(licenseUrl,
                                                                        BuildHttpDataSourceFactory(false));

            if (keyRequestPropertiesArray != null)
            {
                for (int i = 0; i < keyRequestPropertiesArray.Length - 1; i += 2)
                {
                    drmCallback.SetKeyRequestProperty(keyRequestPropertiesArray[i],
                                                      keyRequestPropertiesArray[i + 1]);
                }
            }
            return(new DefaultDrmSessionManager(uuid, FrameworkMediaDrm.NewInstance(uuid), drmCallback,
                                                null, mainHandler, eventLogger));
        }
Exemplo n.º 4
0
        private DefaultDrmSessionManager BuildDrmSessionManagerV18(UUID uuid, string licenseUrl, string[] keyRequestPropertiesArray, bool multiSession)
        {
            IHttpDataSourceFactory licenseDataSourceFactory = ((DemoApplication)Application).BuildHttpDataSourceFactory(/* listener= */ null);
            HttpMediaDrmCallback   drmCallback =
                new HttpMediaDrmCallback(licenseUrl, licenseDataSourceFactory);

            if (keyRequestPropertiesArray != null)
            {
                for (int i = 0; i < keyRequestPropertiesArray.Length - 1; i += 2)
                {
                    drmCallback.SetKeyRequestProperty(keyRequestPropertiesArray[i],
                                                      keyRequestPropertiesArray[i + 1]);
                }
            }
            ReleaseMediaDrm();
            mediaDrm = FrameworkMediaDrm.NewInstance(uuid);
            //return new DefaultDrmSessionManager(uuid, mediaDrm, drmCallback, null, multiSession);

            //Todo: implement IAnalyticsListener
            return(new DefaultDrmSessionManager(uuid, FrameworkMediaDrm.NewInstance(uuid), drmCallback,
                                                null, mainHandler, eventLogger));
        }