I'm evaluating Azure Media Services as a hosting platform for a solution that we're building. I have successfully set up dynamic encyption with DRM and content protection with our Azure AD. I have also checked the pricing, and I know that you have to pay for the encoding job (one-time), the streaming endpoint (this is based on how long the endpoint runs) and the licenses delivered.
These are the things I know; here's what I don't know: what constitutes exactly as one 'license delivery'? Is there a way to maybe query the number of licenses already delivered per streaming endpoint, so I could get notified when the number reaches a certain limit? Better yet, what are the best practices to set up the content key policies so that I can optimize the number of licenses delivered (Widewine and PlayReady) to keep the costs low?
Depends a lot on the type of license template you are using for your clients. If you are doing Rental periods (24 hours, 48 hours) then your clients should only be requesting the license once on first play and caching the license on the client side until it expires. You can likely log the license acquisition process on the client side to keep close records on the number of times the EME or the built in player (iOS or Android) is making the license request to the server as well.
If you are running a subscription service, you may not be checking the license as often. It depends on the licensing model and how long the client is able to store and cache a persistent license. There is also the option to deliver "offline" licenses for each of the major DRM systems.