Legacy Syntax Documentation
Parameters are entered in the query string, separated by semi-colons and ampersand characters.
This syntax was introduced in 2008 for PlayReady 1.0, extended in 2010 for PlayReady 2.0, extended in 2015 for PlayReady 3.0, and supports only a sub-set of the PlayReady 3.X features:
- Inherited from and compatible with the previous test server hosted on
http://playready.directtaps.net/rightsmanager.asmx
- The '&' character in the LA URL isn't well supported by XML parser, so for inclusion as a LA_URL value in a WRMHEADER (media file header or media stream header), you have to escape this character
- Example:
http://test.playready.microsoft.com/service/rightsmanager.asmx?PlayRight=1&UseSimpleNonPersistentLicense=1
- Limited possibilities (one license only)
- "US" date format: mm/dd/yyyy (example: 12/31/2017)
Examples
LAURL (http://test.playready.microsoft.com/service/) | Description |
---|---|
rightsmanager.asmx?PlayRight=1&UseSimpleNonPersistentLicense=1 |
Request a non-persistent license, with a Play right, and a minimum Security Level of 150. Handy for testing, as the client will have to trigger a new license acquisition every time it does a new playback or creates a new session |
rightsmanager.asmx?PlayRight=1&FirstPlayExpiration=60 |
Request a persistent license with a Play right and an expiration of 60 seconds after first playback, and a minimum Security Level of 150 |
rightsmanager.asmx?PlayRight=1&FirstPlayExpiration=60&UncompressedDigitalVideoOPL=270 |
Request a persistent license, expiring 60 seconds after first playback, with an uncompressed video Output Protection Level of 270 |
rightsmanager.asmx?PlayRight=1&UseSimpleNonPersistentLicense=1&UncompressedDigitalVideoOPL=300 &DigitalVideoOutputProtection={ABB2C6F1-E663-4625-A945-972D17B231E7};AAAAAQ== |
Request a non-persistent license with an Uncompressed Video Output Protection Level of 300 and requiring HDCP Type 1 (HDCP 2.1 or higher) if signal goes to HDMI |
Parameters
Parameter | Values | Comments, example, default value |
---|---|---|
SecurityLevel | 150, 2000 | Specifies the Minimum Security Level policy of the license |
PlayRight | 1 | Adds the Play right to the license if present |
UseSimpleNonPersistentLicense | 1 | Specifies the license is non pesistent (i.e. only stored in RAM) and attached to a player session. The client will need a new license every time a new playback session is started |
Expiration | mm/dd/yyyy [hh:mm:ss] | Specifies the expiration date of the license - Example: Expiration=12/01/2016 |
BeginDate | mm/dd/yyyy [hh:mm:ss] | Specifies the being date of when a license starts to be valid - Example: BeginDate=12/01/2015 |
GracePeriod | seconds | GracePeriod=360 - Specifies the Grace Period policy in seconds. |
FirstPlayExpiration | seconds | Specifies the expiration in seconds of the license after its first used - Example: FirstPlayExpiration=360 |
CopyRight | 1 | Adds the Copy right to the license if present. |
CopyCount | CopyCount | Usage:CopyCount=3 - Adds a Copy Count restriction if a Copy right is present. |
UseDomains | 1 | UseDomains=1 - License is bound to a domain certificate rather then a client or root certificate. |
UseMetering | 1 | Flags content with a Metering identifier. |
UplinkKey | string representation or base64 encoded | Specifies the Guid of a Root certificate to bind the license to. |
UseRootLicense | 1 | License returned with be designated a Root license. |
CompressedDigitalAudioOPL | int | Specifies the Output Protection Level for compressed digital audio content - Example: CompressedDigitalAudioOPL=300 |
UncompressedDigitalAudioOPL | int | Specifies the Output Protection Level for uncompressed digital audio content - Example: UncompressedDigitalAudioOPL=300 |
CompressedDigitalVideoOPL | int | Specifies the Output Protection Level for compressed digital video content - Example: CompressedDigitalVideoOPL=0 |
UncompressedDigitalVideoOPL | int | Specifies the Output Protection Level for uncompressed digital video content - Example: UncompressedDigitalVideoOPL=300 |
AnalogVideoOPL | int | Specifies the Output Protection Level for analog video content - Example: AnalogVideoOPL=150 |
AnalogVideoOutputProtection | guid; base64 integer | Specifies an Explicit Analog Video Output Protection - with the given GUID and integer configuration data - Example: AnalogVideoOutputProtection=C3FD11C6-F8B7-4D20-B008-1DB17D61F2DA;Aw== |
DigitalAudioOutputProtection | guid; base64 integer | Specifies an Explicit Digital Audio Output Protection - with the given GUID and integer configuration data - Example: DigitalAudioOutputProtection=6D5CFA59-C250-4426-930E-FAC72C8FCFA6;Aw== |
ExtendedRestriction | guid | ExtendedRestriction |
Restricted | 1 | Restricted |
SourceID | int | SourceID |
TransactionId | guid | TransactionId |
PlayEnablers | guid | Specifies a Play Enabler with the given GUID - Example: PlayEnablers=786627D8-C2A6-44BE-8F88-08AE255B01A7 |
ExplicitACP | guid | ExplicitACP |
ExecuteRight | 1 | Adds the Execute right to the license if present |
ContentKey | Base64 byte array | Uses the specified content key in the returned license. If not present, the server returns by default the content key derived from the server Test Key Seed and the KID provided in the challenge - Example: ContentKey=eNqVnXrElmo2NSsn7IXeEA== |
KeySeed | Base64 byte array | Uses the specified key seed to derive the content key from the KID provided in the challenge - Example: KeySeed=XVBovsmzhP9gRIZxWfFta3VVRPzVEWmJsazEJ46I |
The following parameters are supported only by PlayReady 3.0+ clients | ||
SecurityLevel | 150, 2000, 3000 | Specifies the Minimum Security Level policy of the license |
DigitalVideoOutputProtection | guid | Specifies HDCP Type 1 restriction - Example: DigitalVideoOutputProtection=;AAAAAQ== |
SecureStop | 1 | SecureStop |
RealTimeExpiration | 1 | Specifies the Real Time Expiration policy in the license. Time based policies will be enforced in real time during playback |
MaxResDecode | x | The first int defines the maximum frame width in pixels - the second int defines the maximum frame height in pixels - Example: MaxResDecode=1920x1080 |