Class ProtectionSystemSpecificHeaderBox
- java.lang.Object
-
- org.mp4parser.support.AbstractBox
-
- org.mp4parser.support.AbstractFullBox
-
- org.mp4parser.boxes.iso23001.part7.ProtectionSystemSpecificHeaderBox
-
- All Implemented Interfaces:
Box,FullBox,ParsableBox
public class ProtectionSystemSpecificHeaderBox extends AbstractFullBox
4cc = ""pssh""
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
Fields Modifier and Type Field Description static byte[]OMA2_SYSTEM_IDstatic byte[]PLAYREADY_SYSTEM_IDstatic StringTYPEstatic byte[]WIDEVINE-
Fields inherited from class org.mp4parser.support.AbstractBox
type
-
-
Constructor Summary
Constructors Constructor Description ProtectionSystemSpecificHeaderBox()ProtectionSystemSpecificHeaderBox(byte[] systemId, byte[] content)
-
Method Summary
Modifier and Type Method Description protected void_parseDetails(ByteBuffer content)Parse the box's fields and child boxes if any.byte[]getContent()protected voidgetContent(ByteBuffer byteBuffer)Write the box's content into the givenByteBuffer.protected longgetContentSize()Get the box's content size without its header.List<UUID>getKeyIds()byte[]getSystemId()voidsetContent(byte[] content)voidsetKeyIds(List<UUID> keyIds)voidsetSystemId(byte[] systemId)-
Methods inherited from class org.mp4parser.support.AbstractFullBox
getFlags, getVersion, parseVersionAndFlags, setFlags, setVersion, writeVersionAndFlags
-
Methods inherited from class org.mp4parser.support.AbstractBox
getBox, getSize, getType, getUserType, isParsed, parse, parseDetails
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.mp4parser.ParsableBox
parse
-
-
-
-
Field Detail
-
TYPE
public static final String TYPE
- See Also:
- Constant Field Values
-
OMA2_SYSTEM_ID
public static byte[] OMA2_SYSTEM_ID
-
WIDEVINE
public static byte[] WIDEVINE
-
PLAYREADY_SYSTEM_ID
public static byte[] PLAYREADY_SYSTEM_ID
-
-
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:AbstractBoxGet the box's content size without its header. This must be the exact number of bytes thatgetContent(ByteBuffer)writes.- Specified by:
getContentSizein classAbstractBox- 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:AbstractBoxWrite the box's content into the givenByteBuffer. This must include flags and version in case of a full box.byteBufferhas been initialized withgetSize()bytes.- Specified by:
getContentin classAbstractBox- Parameters:
byteBuffer- the sink for the box's content
-
_parseDetails
protected void _parseDetails(ByteBuffer content)
Description copied from class:AbstractBoxParse the box's fields and child boxes if any.- Specified by:
_parseDetailsin classAbstractBox- Parameters:
content- the box's raw content beginning after the 4-cc field.
-
-