com.googlecode.mp4parser.boxes.cenc
Class ProtectionSystemSpecificHeaderBox

java.lang.Object
  extended by com.googlecode.mp4parser.AbstractBox
      extended by com.googlecode.mp4parser.AbstractFullBox
          extended by com.googlecode.mp4parser.boxes.cenc.ProtectionSystemSpecificHeaderBox
All Implemented Interfaces:
Box, FullBox

public class ProtectionSystemSpecificHeaderBox
extends AbstractFullBox

This box contains information needed by a Content Protection System to play back the content. The data format is specified by the system identified by the ‘pssh’ parameter SystemID, and is considered opaque for the purposes of this specification.

The data encapsulated in the Data field may be read by the identified Content Protection System to enable decryption key acquisition and decryption of media data. For license/rights-based systems, the header information may include data such as the URL of license server(s) or rights issuer(s) used, embedded licenses/rights, and/or other protection system specific metadata.

A single file may be constructed to be playable by multiple key and digital rights management (DRM) systems, by including one Protection System-Specific Header box for each system supported. Readers that process such presentations must match the SystemID field in this box to the SystemID(s) of the DRM System(s) they support, and select or create the matching Protection System-Specific Header box(es) for storage and retrieval of Protection-Specific information interpreted or created by that DRM system.


Field Summary
static byte[] OMA2_SYSTEM_ID
           
static byte[] PLAYREADY_SYSTEM_ID
           
static String TYPE
           
 
Fields inherited from class com.googlecode.mp4parser.AbstractBox
type
 
Constructor Summary
ProtectionSystemSpecificHeaderBox()
           
 
Method Summary
protected  void _parseDetails(ByteBuffer content)
          Parse the box's fields and child boxes if any.
 byte[] getContent()
           
protected  void getContent(ByteBuffer byteBuffer)
          Write the box's content into the given ByteBuffer.
protected  long getContentSize()
          Get the box's content size without its header.
 byte[] getSystemId()
           
 void setContent(byte[] content)
           
 void setSystemId(byte[] systemId)
           
 
Methods inherited from class com.googlecode.mp4parser.AbstractFullBox
getFlags, getVersion, parseVersionAndFlags, setFlags, setVersion, writeVersionAndFlags
 
Methods inherited from class com.googlecode.mp4parser.AbstractBox
getBox, getIsoFile, getParent, getSize, getType, getUserType, isParsed, parse, setDeadBytes, setParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.coremedia.iso.boxes.Box
getBox, getParent, getSize, getType, parse, setParent
 

Field Detail

TYPE

public static final String TYPE
See Also:
Constant Field Values

OMA2_SYSTEM_ID

public static byte[] OMA2_SYSTEM_ID

PLAYREADY_SYSTEM_ID

public static byte[] PLAYREADY_SYSTEM_ID
Constructor Detail

ProtectionSystemSpecificHeaderBox

public ProtectionSystemSpecificHeaderBox()
Method Detail

getSystemId

public byte[] getSystemId()

setSystemId

public void setSystemId(byte[] systemId)

getContent

public byte[] getContent()

setContent

public void setContent(byte[] content)

getContentSize

protected long getContentSize()
Description copied from class: AbstractBox
Get the box's content size without its header. This must be the exact number of bytes that getContent(ByteBuffer) writes.

Specified by:
getContentSize in class AbstractBox
Returns:
Gets the box's content size in bytes
See Also:
AbstractBox.getContent(java.nio.ByteBuffer)

getContent

protected void getContent(ByteBuffer byteBuffer)
Description copied from class: AbstractBox
Write the box's content into the given ByteBuffer. This must include flags and version in case of a full box. byteBuffer has been initialized with getSize() bytes.

Specified by:
getContent in class AbstractBox
Parameters:
byteBuffer - the sink for the box's content

_parseDetails

protected void _parseDetails(ByteBuffer content)
Description copied from class: AbstractBox
Parse the box's fields and child boxes if any.

Specified by:
_parseDetails in class AbstractBox
Parameters:
content - the box's raw content beginning after the 4-cc field.


Copyright © 2012. All Rights Reserved.