This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
question: why session ids nee not necessarily be supporte by content protection client? the client is CDM? ////////////First Change/////////////////////////////////////////////////////// 1.2.3. Session ID A session ID is an optional string ID used to associate calls related to a key/license lifetime, starting with the request. It is a local binding between a request and key/license. It does not associate keys or licenses for different streams (i.e. audio and video). If supported by the Key System, it is generated by the user agent/CDM and provided to the application in the keymessage event. (Session IDs need not necessarily be supported by the underlying content protection client or server.) ////Each successful call to createSession() generates a new Session ID.-deleted//// Applications should always provide the session ID from an event in subsequent calls for this key or license. (This is a best practice, even if the current Key System does not support session IDs.) This may mean that the application must associate a server response with the session ID and provide them both to addKey(). If Session IDs are supported, a new one will be created each time createSession() is ////successfully/// called. The user agent/CDM manage the lifetime of Session IDs. All Session IDs are cleared from the media element when a load occurs, although the CDM may retain them for longer. /////////////First Change end////////////////////////////////////////////////// session id can be generated by cdm or user agent, and it is "only" used by 1 MediaKeySession object but not objects. /////////////second change//////////////////////////////////////////////// The sessionId attribute is the Session ID for this ////objects->"ojbect"//// and the associated key(s) or license(s) Let the sessionId attribute be a unique Session ID string. It may be generated by cdm //// or user agent///// /////////// second change end///////////////////////////////////////////////
(In reply to comment #0) > question: why session ids nee not necessarily be supporte by content > protection client? See issue 17203. > the client is CDM? Yes, or the thing the CDM wraps. > ////////////First > Change/////////////////////////////////////////////////////// > 1.2.3. Session ID > > A session ID is an optional string ID used to associate calls related to a > key/license lifetime, starting with the request. It is a local binding > between a request and key/license. It does not associate keys or licenses > for different streams (i.e. audio and video). If supported by the Key > System, it is generated by the user agent/CDM and provided to the > application in the keymessage event. (Session IDs need not necessarily be > supported by the underlying content protection client or server.) > > ////Each successful call to createSession() generates a new Session > ID.-deleted//// Done > Applications should always provide the session ID from an event in > subsequent calls for this key or license. (This is a best practice, even if > the current Key System does not support session IDs.) This may mean that the > application must associate a server response with the session ID and provide > them both to addKey(). > > If Session IDs are supported, a new one will be created each time > createSession() is ////successfully/// called. The user agent/CDM manage the > lifetime of Session IDs. All Session IDs are cleared from the media element > when a load occurs, although the CDM may retain them for longer. Updated > /////////////First Change > end////////////////////////////////////////////////// > > session id can be generated by cdm or user agent, and it is "only" used by 1 > MediaKeySession object but not objects. > /////////////second change//////////////////////////////////////////////// > > The sessionId attribute is the Session ID for this ////objects->"ojbect"//// > and the associated key(s) or license(s) Done > Let the sessionId attribute be a unique Session ID string. It may be > generated by cdm //// or user agent///// User agent is implied since steps are performed by the user agent unless otherwise noted. This (now non-normative) text is just saying the CDM may or is allowed to be the entity that creates it. > /////////// second change end///////////////////////////////////////////////