使用OBS传输的双机AI 作弊行为检测思路
阿柴有点困
编辑于 2025年12月31日 21:57

一、背景说明

目前,使用 双机 AI 进行作弊,主流通常有以下两种方案:

A. OBS 传输方案(本文重点)

  • 使用 OBS 采集画面

  • 通过 FFmpeg / FFMPEG API 进行流式传输

  • 常见封装格式:MPJPEG

  • 传输协议多为:

    • 内网UDP

    • 内网TCP

B. 采集卡传输方案

本文将 重点放在 OBS + 流传输方案的行为检测思路 上。

二、OBS 流式传输的典型特征

A. 固定且“异常”的分辨率特征

作弊者为了 最大化 AI 推理效率与传输性能,通常只会传输一个 固定尺寸的画面,而不是完整屏幕。

常见分辨率包括:

  • 640 × 640

  • 416 × 416

  • 320 × 320

  • 256 × 256

这些尺寸通常与 目标检测模型输入尺寸 高度相关(如 YOLO 系列)。

B. 与正常 OBS 使用行为的差异

正常玩家使用 OBS 时,通常具备以下特征:

  • 不进行本地/内网流传输

  • 即使推流,也多为:

    • 全分辨率(1080p / 2K / 4K)

    • 面向公网平台(RTMP / HTTPS)

很少只推送一个 裁剪后的小尺寸画面

因此:

“小尺寸 + 内网流 + 高帧率” 本身就是一个异常组合特征

三、检测思路设计

A. 嗅探可疑流量(网络层)

重点关注以下特征组合:

  • 内网传输

    • 127.0.0.1

    • 192.168.x.x

    • 10.x.x.x

  • UDP / TCP 持续流

  • 高 PPS(Packets Per Second)

长时间保持稳定的数据发送速率

这类流量非常符合:

  • OBS → FFmpeg → AI 推理端 的典型数据路径

B. 流量解析与内容分析(媒体层)

对可疑流进行进一步解析:

方法一:直接解析流

  • 对嗅探到的 UDP / TCP 流:

    • 使用 ffprobe

    • 或 ffmpeg 解封装

  • 提取关键信息:

    • 视频编码(H264 / H265)

    • 分辨率(width / height)

    • 帧率

    • 码率

方法二:抓取流并转封装分析,也是本文作者在实际生产采用的方案

  • 抓取一小段流量

  • 使用 FFmpeg 进行处理:

    • 解码

    • 提取视频帧

  • 判断:

    • 是否为 AI 常见输入尺寸

    • 是否长时间保持固定分辨率

C. 核心判定逻辑

可以构建如下判定条件:

  • 内网 UDP/TCP 流

  • 持续高 PPS

  • 固定小尺寸视频流

  • 分辨率命中 AI 模型常用尺寸区间

当以上条件同时满足时,可判定为:

高度疑似 OBS 双机 AI 行为