ApsaraVideo for Live提供智能審核服務,來對直播內容的合規進行審核,包括視頻審核和語音審核的功能,配合直播流禁推功能,實現直播Alibaba Content Security Service。本文介紹智能審核的背景、介紹、使用方法、收費方式和禁推直播流的功能。
Alibaba Content Security Service機制是利用智能審核功能對直播內容進行審核,將審核結果返回給營運人員,由營運人員管理相應的直播流,可對直播流進行禁止推送的操作。ApsaraVideo for Live還提供了高頻率智能審核的方案供您參考,您可以參見高頻率智能審核解決方案。
使用限制
目前僅部分直播中心支援直播智能審核,具體支援該功能的直播中心,請參見服務地區。
智能審核
背景
主播推送的直播流可能有內容違規風險,ApsaraVideo for Live服務提供了可使用視訊、音訊智能審核,通過自動化、智能審核媒資庫資源,極大降低色情、暴恐、涉政等內容違規風險,降低人工審核成本。
介紹
智能審核服務基于海量標註資料和深度學習演算法實現,從語音、視覺等多維度精準識別直播流媒體資訊中包含的違禁內容,支援涉黃識別、暴恐涉政識別、廣告識別、無意義直播識別、音頻審核等多個功能模組。
視頻審核:採用截幀畫面進行審核,自動檢測ApsaraVideo for Live的內容是否涉嫌違規,違規的內容將會通過回調的方式返回給使用者,使用者可對違規內容進行處理。
語音審核:採用識別直播流中音頻流的內容,自動檢測語音內容是否涉嫌違規,違規的內容將會通過回調的方式返回給使用者,使用者可對違規內容進行處理。
具體功能如下:
功能名稱
Scene
描述
檢測結果分類
鑒黃識別
porn
識別直播中的與性相關的情況。
正常圖片、性感圖片、色情圖片
暴恐涉政識別
terrorism
識別直播中的暴恐涉政內容。
正常圖片、血腥、爆炸煙光、特殊裝束、特殊標識、武器、涉政、打鬥、聚眾、遊行、車禍現場、旗幟、地標、其他
圖文違規識別
ad
識別直播中的廣告資訊。
正常圖片、含其他廣告、含牛皮癬廣告、含二維碼、含小程式碼
不良情境識別
live
識別直播中出現的黑屏、黑邊、昏暗畫面,畫中畫,抽煙,打架等不良情境圖片。
正常圖片、無意義圖片、畫中畫、吸煙、車內直播
圖片logo識別
logo
識別直播中出現受管控的logo和商標。
正常圖片、含受管控的logo、含商標
語音審核
antispam
檢測音頻中是否包含垃圾資訊、廣告、涉政、暴恐、辱罵、色情、灌水、違規、無意義等內容。
正常文本、含垃圾資訊、廣告、涉政、暴恐、辱罵、色情、灌水、違禁、無意義、自訂(例如命中自訂關鍵詞)
使用方法
前置條件
需要開通直播服務,並配置一個有效直播網域名稱。
需要一個HTTP服務用於接收異常視頻或語音的回調資訊。
使用流程
添加智能審核配置。
配置回調地址。
完成配置後,推流即開啟語音審核。
說明審核只對於配置結束後的新推流生效,對於已有推流不會立刻生效。
控制台
視頻審核:支援配置視頻審核的審核模板和回調地址,具體操作,請參見組態稽核。
音頻審核:不支援。
API
視頻審核
介面
描述
參考文檔
AddLiveSnapshotDetectPornConfig
添加直播視頻審核配置。
DeleteLiveSnapshotDetectPornConfig
刪除直播視頻審核配置。
UpdateLiveSnapshotDetectPornConfig
更新直播視頻審核配置。
DescribeLiveSnapshotDetectPornConfig
查詢直播視頻審核配置。
AddLiveDetectNotifyConfig
添加直播視頻審核回調配置。
預設格式請參見視頻審核預設回調格式說明。
DeleteLiveDetectNotifyConfig
刪除直播視頻審核回調配置。
UpdateLiveDetectNotifyConfig
更新直播視頻審核回調配置。
DescribeLiveAudioAuditNotifyConfig
查詢直播視頻審核回調配置。
語音審核
介面
描述
參考文檔
AddLiveAudioAuditConfig
添加直播語音審核配置。
DeleteLiveAudioAuditConfig
刪除直播語音審核配置。
UpdateLiveAudioAuditConfig
更新直播語音審核配置。
DescribeLiveSnapshotDetectPornConfig
查詢直播語音審核配置。
AddLiveAudioAuditNotifyConfig
添加直播語音審核回調配置。使用者可以根據自己需求自訂回調JSON格式。
預設格式請參見語音審核預設回調格式說明。
DeleteLiveAudioAuditNotifyConfig
刪除直播語音審核回調配置。
UpdateLiveAudioAuditNotifyConfig
更新直播語音審核回調配置。
DescribeLiveAudioAuditNotifyConfig
查詢直播語音審核回調配置。
計費規則:智能審核包括直播圖片審核和直播語音審核,圖片審核以您使用審核服務的圖片掃描張數為結算標準,語音審核以您使用語音審核服務的總時間長度為結算標準。更多資訊,請參見智能審核費用。
禁推直播流
ApsaraVideo for Live提供了豐富的直播流管理功能,其中禁推直播流功能可協助您在遇到下列情況的時候,對某路直播推流進行禁止推流的操作。
鑒權推流地址暴露。
使用者惡意推流。
業務需求。
禁推直播流會讓直播流加入黑名單(一段時間內將不能再進行推流),若只是想對指定直播流進行中斷操作,請參見中斷直播流。
使用方法
控制台:ApsaraVideo for Live支援在控制台查看禁推流、設定禁推流和恢複禁推流。設定禁推流,請參見線上流管理。查看或恢複禁推流,請參見禁推流管理。
API
介面
描述
參考文檔
ForbidLiveStream
禁止某路流的推送。
可以配置是否只斷流不加入黑名單,預設某個時刻將流恢複。
說明禁止直播流的上限為10,000路,超出限制將禁用失敗。調用頻率限制為20次/秒。
ResumeLiveStream
恢複某路流的推送。
說明調用頻率限制為30次/秒。
java sdk設定禁推流的範例程式碼如下:
//需要<>內容替換成實際使用的值 DefaultProfile profile = DefaultProfile.getProfile("<regionId>", "<ALIBABA_CLOUD_ACCESS_KEY_ID>", "<ALIBABA_CLOUD_ACCESS_KEY_SECRET>"); IAcsClient client = new DefaultAcsClient(profile); ForbidLiveStreamRequest forbidLiveStreamRequest=new ForbidLiveStreamRequest(); forbidLiveStreamRequest.setDomainName("<DomainName>"); forbidLiveStreamRequest.setAppName("<AppName>"); forbidLiveStreamRequest.setStreamName("<StreamName>"); forbidLiveStreamRequest.setLiveStreamType("publisher"); try { ForbidLiveStreamResponse forbidLiveStreamResponse = client.getAcsResponse(forbidLiveStreamRequest); System.out.println(new Gson().toJson(forbidLiveStreamResponse)); // todo something. } catch (ServerException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ClientException e) { // TODO Auto-generated catch block e.printStackTrace(); }
說明以上範例程式碼表示對網域名稱<DomainName>,<AppName>下<StreamName>的主播推流(LiveStreamType=publisher)進行禁推設定,預設禁止時間為6個月。
LiveStreamType目前僅支援publisher。
使用JAVA SDK,具體請參見Java SDK使用說明。
視頻審核預設回調格式說明
只會對於有問題的視頻內容進行回調通知,通知內容包含問題視頻截圖的審核資訊和儲存資訊。
{
"DomainName": "example.com",
"AppName": "liveApp****",
"StreamName": "liveStream****",
"OssEndpoint": "oss-cn-hangzhou.aliyuncs.com",
"OssBucket": "liveBucket****",
"OssObject": "liveObject****.jpg",
"Result": [
{
"BizType": "example.com",
"Result": [
{"Label": "Porn", "Rate":11, "Suggestion": "review", "Scene":"porn", "Extent": {}},
{"Label": "Ad", "Rate":11, "Suggestion": "review", "Scene":"ad", "Extent": {}}
]
}
]
}
參數說明
參數 | 類型 | 描述 |
DomainName | String | 播流網域名稱。 |
AppName | String | 應用程式名稱。 |
StreamName | String | 流名稱。 |
OssEndpoint | String | 儲存物件Endpoint。 |
OssBucket | String | 儲存物件的Bucket。 |
OssObject | String | 儲存物件的檔案名稱。 |
Result | JSONArray | 檢測結果。請參見Result。 |
表 1. Result
參數 | 類型 | 描述 |
BizType | String | 業務類型。可用於選擇模型,預設值為網域名稱。 |
Scene | String | 檢測情境
|
Label | String | 檢測結果的分類。不同檢測情境的結果分類不同,具體如下:
|
Rate | Float | 信賴度分數。取值範圍:0(表示信賴度最低)~100(表示信賴度最高)。 說明 該值僅作為參考,強烈建議您不要在業務中使用。建議您參考Label結果用於內容違規判定。 |
Extent | JSONObject | 預留欄位。 |
預設新使用者將使用此版本,老使用者維持不變,如需使用此版本,請您提交工單。關於如何提交工單,請參見聯絡我們。
語音審核預設回調格式說明
只會對於有問題的音頻內容進行回調通知,通知內容包含問題語音的文本資訊以及最近一分鐘內的上下文資訊。
{
"domain": "example.com",
"app": "liveApp****",
"stream": "5d9747eba39b44769852d276f9ff****",
"timestamp": 1572248095,
"result": [
{
"scene": "antispam",
"label": "ad",
"suggestion": "block",
"rate": 99.91,
"details": [
{
"startTime": 1572248023,
"endTime": 1572248040,
"text": "大理隴川等酒店免費居住權120天居住權可與親友共用來雲棲社國際燒酒店接待中心地址芒市團結大街96號一一ktv旁諮詢熱線2285699",
"label": "ad"
},
{
"startTime": 1572248040,
"endTime": 1572248070,
"text": "典藏經典別墅尊享梁河金塔、旅遊小鎮二期濱湖苑地區11月2號盛大開盤天然龍窩、泉水入戶戶型多樣,設計經典價位超值,值得您擁有開盤當天還有超值優惠,歡迎您前來品鑒,憑藉地址,然和縣遮島鎮先鋒路229號分享熱線069269557776955777",
"label": "normal"
},
{
"startTime": 1572248072,
"endTime": 1572248077,
"text": "快樂的時光,有你相伴愜意的日子,格外輕鬆。",
"label": "normal"
},
{
"startTime": 1572248078,
"endTime": 1572248086,
"text": "fme043忙裡偷閒音樂時光有歌曲溫暖,有你想念影院。",
"label": "normal"
}
]
}
]
}
參數 | 類型 | 描述 |
domain | String | 播流網域名稱。 |
app | String | 應用程式名稱。 |
stream | String | 流名稱。 |
timestamp | Int | 回調時間戳記。單位:秒。 |
result | JSONArray | 檢測結果。請參見Result。 |
表 2. Result
參數 | 類型 | 描述 |
scene | String | 檢測情境。 |
label | String | 檢測結果的分類。取值:
|
suggestion | String | 處理建議。取值:
|
rate | Float | 信賴度分數。取值範圍:0(表示信賴度最低)~100(表示信賴度最高)。 說明 該值僅作為參考,強烈建議您不要在業務中使用。建議您參考Label結果用於內容違規判定。 |
details | JSONArray | 語音對應的文本詳情,每一句文本對應一個元素,可以包含一個或者多個元素。關於每個元素的結構描述,請參見Detail。 |
表 3. Detail
參數 | 類型 | 描述 |
startTime | Int | 句子開始的時間戳記,單位:秒。 |
endTime | Int | 句子結束的時間戳記,單位:秒。 |
text | String | 問題語音轉換成文本的結果。 |
label | String | 檢測結果的分類。取值:
|