Microsoft PlayReady Test Server
New PlayReady test site: http://test.playready.microsoft.com/
New PlayReady test service documentation: http://test.playready.microsoft.com/Home/Service
It is recommended that you switch to the new test service and stream vectors at https://test.playready.microsoft.com/Home/Content2X moving forward. The legacy server:http://playready.directtaps.net is still available but we will not be making any updates to the services.
For PlayReady tests,
http://playready.directtaps.net/pr/svc/rightsmanager.asmx can be used to provide your
client application or device with a PlayReady license with customizable rights
and right restrictions, by providing parameters as arguments to the license
server URL.
The detailed description of these rights and right restrictions is published in the PlayReady Compliance Rules (abbr. PR CR).
Examples
http://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=1&UseSimpleNonPersistentLicense=1 | simple non persistent license, perfectly fine for testing, as the license request will be done again every time the playback is started |
http://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=1&FirstPlayExpiration=60 | persistent license with right to Play and expiration 60 seconds after first playback |
http://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=1&FirstPlayExpiration=60&AnalogVideoOPL=200 |
persistent license with right to Play and expiration 60 seconds after first playback, with an analog video Output Protection Level of 200 (See the PlayReady Compliance Rules for details on OPL) |
Default values
KeySeed |
byte array version { 0x5D, 0x50, 0x68, 0xBE, 0xC9, 0xB3, 0x84, 0xFF, 0x60, 0x44, 0x86, 0x71, 0x59, 0xF1, 0x6D, 0x6B, 0x75, 0x55, 0x44, 0xFC, 0xD5, 0x11, 0x69, 0x89, 0xB1, 0xAC, 0xC4, 0x27, 0x8E, 0x88 }; base 64 armored string version XVBovsmzhP9gRIZxWfFta3VVRPzVEWmJsazEJ46I |
Full description of the parameters for reference
Parameter | Values | Description |
PlayRight | 1 |
PlayRight=1 Adds the Play right to the license if present |
CopyRight | 1 |
CopyRight=1 Adds the Copy right to the license if present |
CopyCount | integer |
CopyCount=3 Adds a Copy Count restriction if present |
UseDomains | 1 |
UseDomains=1 License bound to a predefined domain if present (versus bound to the client) |
UseMetering | 1 |
UseMetering=1 Flags content for metering if present |
UseSimpleNonPersistentLicense | 1 |
UseSimpleNonPersistentLicense=1 Delivers a non persistent license (also known as in-memory-only) license if present. If missing, the server delivers by default a persistent license |
BeginDate | mm/dd/yyyy [hh:mm:ss] |
BeginDate=26/02/2011 Sets an absolute date and time when the license becomes valid, if present. hh:mm:ss are optional |
Expiration | mm/dd/yyyy [hh:mm:ss] |
Expiration=12/01/2011 Sets an absolute date and time when the license expires, if present. hh:mm:ss are optional |
FirstPlayExpiration | integer (in seconds) |
FirstPlayExpiration=60 Adds a relative date and time restriction if present, expressed in seconds from the first playback |
GracePeriod | integer (in seconds) |
GracePeriod=5 Sets the grace period that specifies the period of time during which protected content can be played on a client after its clock becomes unset |
AnalogVideoOutputProtection | guid; base64 integer |
AnalogVideoOutputProtection=C3FD11C6-F8B7-4D20-B008-1DB17D61F2DA;Aw== Adds an Epxlicit Analog Video Output Protection if present, with the given GUID and integer configuration data. See PR CR section 6.5 |
DigitalAudioOutputProtection | guid; base 64 integer |
DigitalAudioOutputProtection=6D5CFA59-C250-4426-930E-FAC72C8FCFA6;Aw== Adds an Explicit Digital Audio Output Protection if present, with the given GUID and integer configuration data. See PR CR section 6.4 |
AnalogVideoOPL | integer |
AnalogVideoOPL=0 Sets the Minimum Analog Video Output Protection Level, if present. See PR CR section 6.6 |
CompressedDigitalAudioOPL | integer |
CompressedDigitalAudioOPL=0 Sets the Minimum Compressed Digital Audio Output Protection Level, if present. See PR CR section 6.6 |
CompressedDigitalVideoOPL | integer |
CompressedDigitalVideoOPL=0 Sets the Minimum Compressed Digital Video Output Protection Level, if present. See PR CR section 6.6 |
UncompressedDigitalAudioOPL | integer |
UncompressedDigitalAudioOPL=0 Sets the Minimum Uncompressed Digital Audio Output Protection Level, if present. See PR CR section 6.6 |
UncompressedDigitalVideoOPL | integer |
UncompressedDigitalVideoOPL=0 Sets the Minimum Uncompressed Digital Video Output Protection Level, if present. Typically controls HDCP. See PR CR section 6.6 |
ContentKey | base 64 armored string of byte array |
ContentKey=eNqVnXrElmo2NSsn7IXeEA== Use the specified content key in the returned license. If missing, the server returns by default the content key derived from the server default KeySeed and the KID provided in the challenge |