NetStream 類別的 DRM 相關成員和事件Flash Player 10.1 以及更新的版本,Adobe AIR 1.0 以及更新的版本 NetStream 類別將在 Flash Player 或 AIR 應用程式與 Flash Media Server 或本機檔案系統之間提供單向串流連線 (NetStream 類別也支援漸進式下載)。NetStream 物件是 NetConnection 物件內的通道。NetStream 類別會傳送四個 DRM 相關事件:
NetStream 類別包括下列 DRM 特有方法 (僅用於 AIR):
此外,在 AIR 中,於呼叫 preloadEmbeddedMetaData() 方法之後,NetStream 物件會呼叫 onDRMContentData() 和 onPlayStatus() 回呼函數。在媒體檔中找到 DRM 中繼資料時,便呼叫 onDRMContentData() 函數。剖析檔案之後,會呼叫 onPlayStatus() 函數。onDRMContentData() 和 onPlayStatus() 函數必須在指定給 NetStream 實體的 client 物件上定義。如果您使用相同的 NetStream 物件來預先載入憑證和播放內容,請先等待 preloadEmbeddedMetaData() 所產生的 onPlayStatus() 呼叫,再開始播放。 在 AIR 的下列程式碼中,會設定使用者名稱 ("administrator")、密碼 ("password") 和 "drm" 驗證類型,以進行使用者驗證。setDRMAuthenticationCredentials() 方法提供的憑證必須符合內容提供者已知且接受的憑證。這些憑證與允許使用者檢視內容的使用者憑證相同。此範例並未包含播放視訊及確認視訊串流連線成功的程式碼。 var connection:NetConnection = new NetConnection();
connection.connect(null);
var videoStream:NetStream = new NetStream(connection);
videoStream.addEventListener(DRMAuthenticateEvent.DRM_AUTHENTICATE,
drmAuthenticateEventHandler)
private function drmAuthenticateEventHandler(event:DRMAuthenticateEvent):void
{
videoStream.setDRMAuthenticationCredentials("administrator", "password", "drm");
}
|
|