160 likes | 344 Views
MPEG-2 Part 11: IPMP on MPEG-2 Systems. Presented by: Chun-Hsiang Huang DRM Study Group Meeting CSIE Building Room 519 2004/03/11 PM 6:30. Outline. Overview MPEG-2 IPMP Architecture MPEG-2 IPMP Data and Message Audio/video Watermarking Configuration and Notification
E N D
MPEG-2 Part 11: IPMP on MPEG-2 Systems Presented by: Chun-Hsiang Huang DRM Study Group Meeting CSIE Building Room 519 2004/03/11 PM 6:30
Outline • Overview • MPEG-2 IPMP Architecture • MPEG-2 IPMP Data and Message • Audio/video Watermarking Configuration and Notification • An Example of a Simple Use Case of MPEG-2 IPMP • List of Registration Authorities
Content Stream Audio ES Video ES IPMP ES PSI IPMP Control Information Table Tool List Tool Container Rights Container PMT IPMP Descriptor MPEG-2 IPMP Architecture MPEG-2 IPMP Terminal D E M U X Render Buffer Render MR-MR Messaging Interface Audio DB Audio Decode Inter-Device Transfer Video DB Video Decode Messages Router/ Tool Manager IPMP DB Embedded IPMP Tool A Tool Manager Interface MR-Tool Messaging Interface Obtain Missing Tools Missing Tool IPMP Tool B IPMP Tool C IPMP Tool D
PSI IPMP Control Information Table Tool List Tool Container Rights Container PMT IPMP Descriptor IPMP-related File Syntax MPEG-2 IPMP Terminal Content Stream Audio ES D E M U X Render Buffer Render MR-MR Messaging Interface Video ES Audio DB Audio Decode IPMP ES Inter-Device Transfer Video DB Video Decode IPMP Terminal IPMP DB Messages Router/Tool Manager Embedded IPMP Tool A Tool Manager Interface MR-Tool Messaging Interface Obtain Missing Tools Missing Tool IPMP Tool B IPMP Tool C IPMP Tool D
Structure of IPMP Protected MPEG-2 Content Tool IDs Parametric Description Alternative Tool IDs IPMP Tool List PSI Informative URL IPMP Control Information IPMP Tool Container IPMP Rights Container Rights Description of the Content PAT IPMP Protection Signaling PMT IPMP Descriptor(s) Program 1 ….. IPMP Data ES 1 ES 2 Content Stream ….. IPMP ES IPMP Information Tool ID IPMP Info Control Points
PSI (Packet Specific Information) • PSI consists of normative data which is necessary for the de-multiplexing of Transport Streams and the successful regeneration of programs. • PSI is classified into different table structures • Program Association Table • Program Map Table (IPMP descriptors included) • … • IPMP Control Information Table
IPMP Control Information • The table_id of IPMP Control Information Table is 0x07 • Various IPMP Control Information Classes are included
IPMP Descriptor • Defined in the Program Map Table of MPEG-2 Transport Stream • IPMP description can • Associate IPMP Tool with individual stream under its protection • Indicate the control points at which a specific IPMP tool should be running • IPMP Tool instantiations are initiated by IPMP Descriptors
IPMP Descriptor Details IPMP_descriptor() { descriptor_tag descriptor_length IPMP_Descriptor_ID IPMP_Tool_ID ControlPoint SequenceCode [IPMP Data] [Signature and certification data]} Unique ID, can also be used to refer to certain IPMP Tool instance Unique ID of the IPMP Tool that is protecting in this scope NO Control Point/ After TB/ Between DB and Decode/ Between Decode and Render Relationship between Multiple IPMP Tool at the same control point
IPMP Stream • A concatenation of IPMP_StreamDataUpdate • IPMP_StreamDataUpdate(){ IPMP_Descriptor_ID IPMP_Data_Length [IPMP Data] }
IPMP Information • IPMP information may be carried in MPEG-2 content, and then directed to a given IPMP • All IPMP information should be derived from IPMP_Data_BaseClass. Syntax and semantics are defined for carriage of opaque data, tool initialization… • IPMP Information can be carried in both IPMP Descriptors and IPMP Streams.
Messaging • Messaging architecture >> functional interface architecture • Messages are easier to protect in an open framework • Additional functions can be supported by simply adding required messages • Full interoperability with IPMP tools • All IPMP Tool interaction occur via the Terminal
Classification of Messages (1) • Bit-stream sourced or terminal/tool generated messages • IPMP_MessageFromBitstream • for IPMP Stream • IPMP_DescriptorFromBitstream • for IPMP Descriptor • IPMP_MessageFromTool • for Terminal/Tool generated message
Classification of Messages (2) • Mutual authentication related messages • IPMP_InitMutualAuthentication • IPMP_MutualAuthentication • IPMP_TrustSecurityMetadata • Certificates, credentials, or integrity verification information • IPMP_SecureContainer • To pass secure information
Classification of Messages (3) • IPMP Tool Connection and Disconnection • I PMP_GetTools/ IPMP_GetToolResponse • In order to instantiate IPMP Tools, request a list of tools first.. • IPMP_ToolParamCapabilitiesQuery/IPMP_ToolParamCapabilitiesResponse • Query an IPMP Tool as to its capabilities and functionality • IPMP_ConnectTool/IPMP_DisconnectTool • A Tool may request the connection/disconnection of another one • A connection may require the actual instantiation of a tool or accomplished through physical/electronic means
Classification of Messages (4) • Notification of IPMP Tool connection and discussion • IPMP_AddToolNotificationListener • IPMP_NotifyToolEvent