简体   繁体   中英

How to add dash DRM license to m3u play list?

For the past few days we are trying to add DRM license key to our dash stream on m3u list. We can able to play this through shaka web player, but management need to play this through Android box with KODI/ any client app. Got few options but its not working with IPTV clients.

#KODIPROP:inputstream.adaptive.license_type=com.widevine.alpha
#KODIPROP:inputstream.adaptive.license_key=https://link.to.license.server.com
#EXTINF:-1,Office VOD 1
https://cdn.ouroffice.com/manifest.mpd

Tried above code with Kodi, and other available IPTV Apps, but no luck. Is there any way , we can pass DRM key through m3u list?

I think there are maybe a couple of different concepts getting mixed up for your example.

DASH and HLS are streaming protocols that essentially break a video up into chunks and provide an index into the chunks in a manifest file.

DASH uses '.mpd' as its manifest file type.

HLS uses '.m3u' as its manifest file type.

So first point is that if you are using an M3U file, it looks like you are using HLS rather than DASH.

Both DASH and HLS can support encrypted tracks and they can include information in the manifest that indicates the encryption schemes being used and in some cases how to access the key.

For DASH you can see an example here (from: https://dashif-documents.azurewebsites.net/Guidelines-Security/master/Guidelines-Security.html ):

<ContentProtection
  schemeIdUri="urn:uuid:d0ee2730-09b5-459f-8452-200e52b37567"
  value="FirstDRM 2.0">
  <cenc:pssh>YmFzZTY0IGVuY29kZWQgY29udGVudHMgb2YgkXBzc2iSIGJveCB3aXRoIHRoaXMgU3lzdGVtSUQ=</cenc:pssh>
  <dashif:authzurl>https://example.com/tenants/5341/authorize</dashif:authzurl>
  <dashif:laurl>https://example.com/AcquireLicense</dashif:laurl>
</ContentProtection>

The above is a fictional DRM - for widevine, for example, you would substitute the widevine schemeIdUri.

HLS DRM information looks like (from: https://tools.ietf.org/html/rfc8216 ):

 #EXTM3U
   #EXT-X-VERSION:3
   #EXT-X-MEDIA-SEQUENCE:7794
   #EXT-X-TARGETDURATION:15

   #EXT-X-KEY:METHOD=AES-128,URI="https://priv.example.com/key.php?r=52"

   #EXTINF:2.833,
   http://media.example.com/fileSequence52-A.ts
   #EXTINF:15.0,
   http://media.example.com/fileSequence52-B.ts
   #EXTINF:13.333,
   http://media.example.com/fileSequence52-C.ts

There are no absolute rules, but typically different DRM's are used on different app and devices. A rough guide:

  • Android devices - Widevine
  • Chrome browser on a PC or MAC - Widevine
  • iOS device - FairPlay
  • Safari browser - FairPlay
  • Internet Explorer browser - PlayReady

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM