媒体内容审核VCR

    音频审核接口

    音频审核接口

    提交音频审核

    用户提供音频路径,创建一次音频审核。

    • 音频路径支持BOS、VOD、URL路径;
    • 正在审核中的音频无法再次进行审核;
    • 已经审核过的音频(FINISHED/ERROR)可以重新进行审核;
    • 音频重新审核会覆盖上次审核结果。

    输入限制

    • 音频编码标准:MP1,MP2,MP3,AAC,AC-3,WMA,PCM,ADPCM,AMR,RealAudio,Vorbis,DSD等

    请求语法

    PUT /v<version>/audio HTTP/1.1
    host: vcr.bj.baidubce.com
    authorization: <bce-authorization-string>
    content-type: application/json

    请求头域

    除公共请求头外,无其他特殊头域。

    请求体

    参数 类型 描述 是否必须
    source String 音频路径
    auth String 音频路径鉴权参数,仅URL音频使用
    description String 音频描述,默认空字符串,不超过256字符
    preset String 审核模板名称,不填写使用默认模版
    notification String 通知名称

    说明:

    1. 对于 BOS 音频,source="bos://<bos-bucket>/<bos-object>”, 例如"bos://testbucket/dir/audio.wav",由客户保证 BOS 路径可访问。
    2. 对于 VOD 媒资原音频,source="vod://<vod-media-id>”,例如"vod://mda-fhepatsnpn4rk9z",VCR 会内部请求VOD获取原音频地址,需要确保媒资在VOD状态为PUBLISHED。
    3. 对于 VOD 媒资转码后音频,source="vod://<vod-media-id>-<preset>", 例如"vod://mda-fhepatsnpn4rk9z-wav",VCR 会内部请求VOD获取转码后音频地址,需要确保媒资在VOD状态为PUBLISHED,且模板存在。注意这里VOD媒资ID和模板名称的分隔符为"-"。VCR 会自动区分同一个媒资的原音频和转码后音频,几个音频可以同时发起审核,互不影响。
    4. 对于 URL 音频,source="<http(s)-url">,例如”http://video.domain.com/dir/audio.wav”;URL source中可以包含参数,例如”http://vod.domain.com/dir/audio?id=0308”,VCR 会主动拉取source对应的原音频进行审核,由客户保证音频可访问。
    5. 对于包含鉴权参数的 URL 音频,可以将鉴权参数(大多是临时参数,且在指定时间内有效)设置到auth中,auth="<key1>=<value1>&<key2>=<value2>",注意这里(和HTTP协议一致)使用&分隔多个参数,例如"token=abcxyz×tamp=1514993900"。VCR 会使用?&将source和auth拼接,得到完整的原音频URL后拉取进行审核,由客户保证实际拉取的URL可访问。区分sourceauth的好处是,客户在查询音频审核结果或处理回调时,仅需传入或解析source而可忽略鉴权参数auth

    请求示例

    示例一:审核 BOS 音频

    PUT /v2/audio HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>
    
    {
      "source": "bos://testbucket/dir/audio.wav",
      "preset": "audio_preset",
      "notification": "vcr_callback"
    }

    示例二:审核 VOD 媒资原音频

    PUT /v2/audio HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>
    
    {
      "source": "vod://mda-fhepatsnpn4rk9z",
      "notification": "vcr_callback"
    }

    示例三:审核 VOD 转码后音频

    PUT /v2/audio HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>
    
    {
      "source": "vod://mda-fhepatsnpn4rk9z-wav"
    }

    示例四:审核 URL 音频

    PUT /v2/audio HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>
    
    {
      "source": "http://test.domain.com/dir/audio.wav"
    }

    示例五:审核包含鉴权参数的 URL 音频

    PUT /v2/audio HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>
    
    {
      "source": "http://test.domain.com/dir/audio.wav",
      "auth": "token=abcxyz&timestamp=1514993900"
    }    

    响应体

    响应示例

    HTTP/1.1 200 OK

    查询音频审核结果

    根据音频路径查询审核结果。

    请求语法

    查询音频审核结果:

    GET /v<version>/audio?source={source} HTTP/1.1
    host: vcr.bj.baidubce.com
    authorization: <bce-authorization-string>
    content-type: application/json

    请求参数

    参数 类型 描述 参数位置 是否必须
    source String 音频路径,需要对source进行urlEncode。请参考提交音频审核说明部分。 query参数

    请求体

    请求示例

    示例一:查询 BOS 音频审核结果

    GET /v2/audio?source=bos%3a%2f%2ftestbucket%2fdir%2faudio.wav HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>

    示例二:查询 VOD 原音频审核结果

    GET /v2/audio?source=vod%3a%2f%2fmda-fhepatsnpn4rk9z HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>

    示例三:查询 VOD 转码后音频审核结果

    GET /v2/audio?source=vod%3a%2f%2fmda-fhepatsnpn4rk9z-mp4 HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>

    示例四:查询 URL 音频审核结果

    GET /v2/audio?source=http%3a%2f%2ftest.domain.com%2fdir%2faudio.mp4 HTTP/1.1
    host: vcr.bj.baidubce.com
    content-type: application/json
    authorization: <bce-authorization-string>

    如前所述,对于 URL 音频,如果在提交审核时指定了auth参数,在查询审核结果时是不需要指定的。

    响应体

    参数 类型 描述
    source String 音频路径
    mediaId String VOD媒资id,source为VOD路径时存在
    description String 音频描述
    preset String 审核模板名称
    status String 审核状态
    percent Number 审核进度,0 ~ 100整数;仅status=PROCESSING时存在
    notification String 通知名称
    createTime Date 审核创建时间
    finishTime Date 审核结束时间,仅当status=FINISHED/ERROR时存在
    label String 审核结果标记,仅当status=FINISHED时存在
    results Array 审核结果,仅当status=FINISHED且音频中有疑似涉黄/暴恐/涉政/广告/违禁成分时存在
    + type String 审核类型
    + items Array 审核结果项数组
    ++ subType String 审核项
    ++ target String 审核物料类型,可选值:audio, speech
    ++ startTimeInSeconds Number 物料在音频中的起始秒数
    ++ endTimeInSeconds Number 物料在音频中的结束秒数
    ++ confidence Double 该审核结果项的置信度,0~100的浮点数
    ++ label String 审核结果项标记
    ++ extra String 额外信息,如有;例如政治敏感人物识别出来的人名
    ++ evidence Object 审核证据
    +++ thumbnail String 缩略图URL
    +++ location Object 证据位置信息
    ++++ leftOffsetInPixel Number 左偏移
    ++++ topOffsetInPixel Number 上偏移
    ++++ widthInPixel Number 宽度
    ++++ heightInPixel Number 高度
    +++ text String 文本证据
    error Object 审核失败信息,仅当status=ERROR时存在
    + code String 错误码
    + message String 错误信息

    响应示例

    HTTP/1.1 200 OK
    {
        "source": "vod://mda-fhepatsnpn4rk9z",
        "status": "FINISHED",
        "createTime": "2017-03-22T12:00:00Z",
        "finishTime": "2017-03-22T12:06:48",
        "label": "REVIEW",
        "results": [{
            "type": "sexual_porn",
            "items": [{
                "subType": "behavior",
                "target": "audio",
                "startTimeInSeconds": 0,
                "confidence": 68,
                "label": "REVIEW"
            }]
        },
        {
            "type": "political_group",
            "items": [
                {
                    "confidence": 99.8,
                    "endTimeInSeconds": 4226,
                    "evidence": {
                        "text": "昆明市工商局的"
                    },
                    "extra": "工商局",
                    "label": "REJECT",
                    "startTimeInSeconds": 4225,
                    "subType": "political_group_positive",
                    "target": "speech"
                }]
        }]
    }

    审核结果说明

    音频审核状态和进度

    审核状态 状态名称 描述
    PROVISIONING 排队中 音频审核排队中
    PROCESSING 审核中 音频审核进行中
    FINISHED 审核完成 审核结束,可以查询审核结果
    ERROR 审核失败 审核失败,可以查询失败错误原因
    • 每一次提交审核后,VCR会根据其使用的审核模板在内部根据不同审核类型进行多项”子审核”。
    • 若任一子审核失败,本次审核就会失败。
    • 当每项子审核完成时,VCR 都会更新本次审核的审核进度。

    审核结果

    每个音频的审核结果格式为:

    参数 类型 描述
    label String 审核结果标记,可选值:NORMAL/REVIEW/REJECT
    results Array 审核结果
    + type String 审核类型
    + items Array 审核结果项数组

    审核标记

    审核结果标记label,简称审核标记,其可选值包括NORMAL/REVIEW/REJECT,分别表示正常/疑似违规/确认违规。

    审核标记是根据 VCR 审核结果的置信度和用户审核音频时指定的审核模板中疑似置信度阈值和确认置信度阈值生成的。

    举个例子,VCR在对音频进行审核时,判断某一段音频为涉黄场景下娇喘的置信度为C,用户使用的审核模板中配置的疑似置信度阈值和确认置信度阈值分别为T_ReviewT_Reject

    • C < T_Review,VCR忽视该音频的涉黄-色情审核结果;
    • T_Review <= C < T_Reject,VCR输出一个label=REVIEW的审核结果项;
    • T_Reject <= C,VCR会输出一个label=REJECT的审核结果项。

    音频的审核结果标记由各审核结果项(见下)汇总得到,汇总规则:

    • 审核结果数组为空,即没有审核结果项时音频label = NORMAL
    • 任一审核结果项label = REJECT时,音频label = REJECT
    • 其余情况下(所有审核结果项label = REVIEW)音频label = REVIEW

    审核物料

    VCR 会对音频中提取的不同审核物料进行审核。VCR 音频审核物料分为以下两种:

    • audio,声音物料,即音频;
    • speech,语音物料,即音频通过ASR技术获取的语音识别结果;

    审核类型

    审核结果中的type表示”审核类型”。每类审核场景下包含着多种审核类型,不同审核类型支持的审核物料也不一样。随着智能内容审核服务的迭代升级,会不断扩展审核场景和审核类型。

    审核类型列表

    审核场景 审核类型 描述 支持的审核物料类型
    涉黄审核 sexual_porn 色情审核 thumbnail,audio,character,speech
    涉黄审核 sexual_sexy 性感审核 thumbnail
    涉黄审核 sexual_intimacy 亲密行为审核 thumbnail
    涉黄审核 sexual_vulgar 低俗行为 thumbnail
    暴恐审核 terrorist_group 暴恐组织审核 thumbnail,speech,character
    暴恐审核 terrorist 暴恐人物审核 thumbnail,speech,character
    暴恐审核 terror_event 暴力事件审核 thumbnail,speech,character
    涉政审核 politician 涉政人物审核 thumbnail,character,speech
    涉政审核 political_event 涉政事件审核 character,speech
    涉政审核 political_group 涉政组织审核 thumbnail,character,speech
    广告审核 ad_brand 品牌广告审核 thumbnail,character,speech
    广告审核 ad_marketing 欺诈及营销广告审核 thumbnail,character,speech
    违禁审核 illegal_gamble 赌博审核 character,speech
    违禁审核 illegal_forgery 假冒伪劣及造假盗窃审核 character,speech
    违禁审核 illegal_trade 非法交易审核 character,speech
    违禁审核 illegal_privacy 非法获取私人信息审核 character,speech

    审核结果项

    在审核结果中,每个审核类型都对应一个items,表示该子审核的结果。数组中的元素称为审核结果项,其具体格式为:

    参数 类型 描述
    subType String 审核项
    target String 音频审核物料类型,可选值:audio, speech
    startTimeInSeconds Number 物料在音频中的起始秒数,和endTimeInSeconds同时存在,audio/speech审核物料有该属性
    endTimeInSeconds Number 物料在音频中的结束秒数,和startTimeInSeconds同时存在
    confidence Double 审核结果项的置信度,0~100的浮点数
    label String 审核结果项标记
    extra String 额外信息,如有;例如涉政人物审核出来的人名
    evidence Object 审核证据

    审核项

    审核结果中的subType表示”审核项”。每种审核类型下细分了不同审核项。

    审核项列表

    审核场景 审核类型 审核项 审核项描述
    涉黄审核 sexual_porn behavior,sm,products,children,art 性行为、露点及嫖娼,SM,性用品及性玩具,儿童色情,艺术品色情
    暴恐审核 terrorist_group terrorist_group 恐怖组织
    暴恐审核 terrorist terrorist 暴恐人物
    暴恐审核 terror_event blood,corpse,murder,explosion,riot,weapon,police,traffic 血腥,尸体,绑架及杀人,爆炸火灾,暴乱场面,军事武器,警察部队,车祸
    涉政审核 politician politician_positive, politician_negative 涉政正面人物,涉政负面人物
    涉政审核 political_event political_event_positive,political_event_negative 涉政正面事件,摄政负面事件
    涉政审核 political_group political_group_positive,political_group_negative 涉政正面组织,涉政负面组织
    广告审核 ad_brand brand 品牌标识
    广告审核 ad_marketing qrcode,contact,website,commercial 二维码,联系方式,网站,软文推广
    违禁审核 illegal_gamble gamble 赌博
    违禁审核 illegal_forgery forgery 假冒伪劣及造假盗窃
    违禁审核 illegal_trade trade 非法交易
    违禁审核 illegal_privacy privacy 非法获取私人信息

    审核证据

    根据不同的审核物料类型,审核证据也不相同。审核证据的格式为:

    参数 类型 描述
    text String 文本证据

    具体地说:

    • target=audio,暂无审核证据
    • target=speech,审核证据=text

    审核错误码列表

    音频审核失败时,查询音频审核结果会返回审核失败错误信息。目前VCR支持如下错误码:

    错误码 错误信息 备注
    InvalidAudio fetch audio failure URL音频拉取失败,请检查原音频
    InvalidAudio invalid audio: invalid audio or video 元信息中音频信息不合预期,请检查原音频
    InvalidAudio invalid audio: audio duration/resolution exceeds limit 音频时长不满足系统限制,请检查原音频
    InternalError create extract jobs error, please retry 系统内部错误,建议重试
    InternalError extract speech(asr) error, please retry 语音识别失败
    InternalError create check jobs error, please retry 系统内部错误,建议重试
    InternalError porn check error, please retry 涉黄审核失败
    InternalError politics check error, please retry 涉政审核失败
    InternalError ad check error, please retry 广告审核失败
    InternalError terrorism check error, please retry 暴恐审核失败
    InternalError speech text check error, please retry 对语音识别结果审核失败,建议重试
    InternalError character check error, please retry 对文字识别结果审核失败,建议重试
    InternalError service internal error, please retry 系统内部错误,建议重试
    TimeOut time out, please retry 审核超时,请先检查原音频,如音频正常则可以重试

    审核结果示例

    审核结果:

    {
        "label" : "REJECT",
        "results" : [{
            "type": "sexual_porn",
            "items": [{
                "subType": "behavior",
                "target": "audio",
                "confidence": 70,
                "startTimeInSeconds": 0,
                "label": "REVIEW"
            }
        },
        {
            "type": "political_group",
            "items": [
                {
                    "confidence": 99.8,
                    "endTimeInSeconds": 4226,
                    "evidence": {
                        "text": "昆明市工商局的"
                    },
                    "extra": "工商局",
                    "label": "REJECT",
                    "startTimeInSeconds": 4225,
                    "subType": "political_group_positive",
                    "target": "speech"
             }]
        }]
    }
    上一篇
    视频审核接口
    下一篇
    图片审核接口