长视频水印

长视频水印主要用于影视剧等高成本视频的版权保护、盗版溯源等场景,视觉质量极高(PSNR>48dB),鲁棒性极强,可抵抗各种几何攻击(缩放、旋转、裁剪等)和信号处理攻击(加噪、去噪、压缩等)。

当前支持在长视频上嵌入明水印和暗水印。

  • 如果嵌入的是明水印,可以直接在长视频上看到明水印信息,定位泄露人员。

  • 如果嵌入的是暗水印,无法通过肉眼直接看到暗水印信息,所以您需要在SASE控制台上提取暗水印信息,然后定位出泄露人员。要求用于嵌入和提取的视频时长大于6分钟(20分钟以上效果最佳)。

而大部分发生信息泄露或者版权纠纷等都是暗水印场景。

操作流程

image

前提条件

已购买视频水印服务。具体信息,请参见数字水印计费概述

在业务服务器上嵌入长视频水印SDK

已存在一台基于X86架构的Linux服务器。该服务器用于部署视频水印SDK。

本文以Ubuntu 24.04 64位的服务器为例。

步骤一:下载视频水印SDK

  1. 登录办公安全平台控制台

  2. 在左侧导航栏,选择数字水印服务 > 嵌入服务

  3. 嵌入服务页面,单击视频水印操作下载SDK

    将长视频水印压缩包下载到本地。当前只支持Java语言。

    下载的SDK压缩包中包含如下内容:

    watermark-purevideo-long-v1.0.0.jar:集成水印的SDK包,需要添加到Maven仓库。

    watermark-purevideo_long_demo:水印的Demo,您可以通过Demo进行体验。

  4. 单击AK/SK信息列的图标,复制AK和SK信息并保存到本地。

步骤二:集成SDK

  1. 添加jar包依赖(maven)。

    1. 添加watermark-purevideo-long-v1.0.0.jar依赖。

      mvn install:install-file  -Dfile=watermark-purevideo-long-v1.0.0.jar  -DgroupId=com.aliyun.security.sase -DartifactId=watermark-purevideo-long -Dversion=v1.0.0  -Dpackaging=jar
    2. 在pom.xml文件中添加以下依赖。

      <dependency>
        <groupId>com.aliyun.security.sase</groupId>
        <artifactId>watermark-purevideo-long</artifactId>
        <version>v1.0.0</version>
        <scope>compile</scope>
      </dependency>
  2. 调用长视频水印接口。

    1. 初始化AK、SK。

      /**
       * 初始化 ak sk
       * @param appKey 应用密钥Key
       * @param secret 应用密钥Secret
       * @param useLocalConfig 是否使用本地配置 0:远程配置(需要联网) 1:本地配置
       */
      WaterMarkLongVideoUtils.init(appKey, secret, useLocalConfig);
    2. 在长视频中添加数字水印。

      ParamsFile paramsFile = new ParamsFile();
      //支持视频格式mp4,mov,avi , ts, f4v,mkv
      paramsFile.setSrcFilePath("123.mp4");
      paramsFile.setDestFilePath("234.mp4");
      
      //明水印配置
      paramsFile.setText("你好123abcOK");
      // x,y是相对于视频左上角的偏移像素
      paramsFile.setText_x("100");
      paramsFile.setText_y("100");
      // 字体文件路径,SDK默认创建/tmp/AlibabaPuHuiTi-2-45-Light.ttf
      paramsFile.setFontfile("/tmp/AlibabaPuHuiTi-2-45-Light.ttf");
      // 字体大小
      paramsFile.setFontsize("48");
      // RGB颜色值
      paramsFile.setFontcolor("0xFF0000");
      //透明度,0~1
      paramsFile.setAlpha("0.5");
      //暗水印配置参数,长度为10进制字符串,大小为0-4294967295
      paramsFile.setWatermarkbitsStr("0123456789");
      // 切片长度/秒*/
      paramsFile.setChiplen("3");
      WaterMarkLongVideoUtils.waterMarkIntoVideoLong(paramsFile);

提取暗水印信息

已获取嵌入暗水印信息的外泄视频。

步骤一:创建提取任务

  1. 登录办公安全平台控制台

  2. 在左侧导航栏,选择数字水印服务 > 提取服务

  3. 提取服务页面,单击创建提取任务

  4. 创建提取服务面板,参考如下说明配置提取文件。

    配置项

    说明

    水印版本

    根据购买的水印版本选择。

    水印类型

    选择视频水印。

    嵌入水印信息位宽

    设置水印信息的位宽,位宽需要与透明水印底图的SDK位宽(默认为32位)保持一致。

    视频类型

    选择长视频。

    上传待提取水印文件

    根据界面提示,上传获取到的泄露文件。

  5. 单击确定

    创建成功后,会在提取服务页面显示创建的任务信息。

步骤二:查看提取结果

水印任务创建完成后,您需要等待提取成功后,查看提取结果,获取暗水印原文。

  1. 提取服务页面,单击提取信息展示

  2. 在展开的信息中,您可以提取到暗水印原文(十进制数字)。

    image

溯源泄露人员

将提取的暗水印原文和您业务中使用的映射服务或者自定义的映射表进行对应,从而定位出具体的泄露人员。

例如,您提取的暗水印原文是123456,映射表中123456对应的是张三,则定位出泄露人员是员工张三。

相关文档