truenas scale 25.04.0 安装 dg1 显卡支持 frigate 配置

本人配置

  1. h12ssl + 7352 +dg1
  2. esxi 8.0 直通truenas
关于如何点亮,这里就不另说了。 之前的dg1驱动,即便是编译好了,安装上了,运行起来也会有很多问题(时不时就死了),正好,现在truenas scale 25.04内核大于6.8了,可以用xe驱动凑活着用了。

开始操作

  1. esxi直通dg1。有两个,一个显卡,一个音频。(音频的可要可不要,也就是可以不加入到虚拟机中)
  2. 配置虚拟机直通,添加dg1到虚拟机,如图所示:
  3. 配置虚拟机参数:
    svga.present=FALSE  #禁用esxi自带的显卡,一定要关,否则dg1驱动不了
    pciPassthru.use64bitMMIO=TRUE
    pciPassthru.64bitMMIOSizeGB=8
    hypervisor.cpuid.v0=FALSE
    
  4. 配置truenas scale (一次性的配置):
    # 修改引导参数,强制启用dg1。我这里的是蓝戟半高款,其他型号自行提换
    midclt call system.advanced.update '{"kernel_extra_options": "xe.force_probe=4908 i915.force_probe=!4908"}'
    
    4 配置truenas scale (每次更新系统都要重新配置):
    # 进到你的一个目录
    cd /mnt/your_path
    # 下载最新的固件
    git clone https://github.com/intel-gpu/intel-gpu-firmware.git
    systemd-sysext unmerge
    # 不同的版本换成不同的目录
    zfs set readonly=off boot-pool/ROOT/25.04.0/usr
    mount -o remount,rw /
    sudo cp firmware/*.bin /lib/firmware/i915/
    sudo update-initramfs -u -k all
    systemd-sysext merge
    # 操作完后重启
    reboot
    

查看你的显卡有没有起来,以及系统是否报错

 lspci -v

这样算是成功了

没成功的话查看错误信息,根据报错咨询chatgpt之类的去解决吧。

 dmesg|grep xe

frigate 使用dg1的配置。(vaapi和openvino工作良好,确实省电)

mqtt:
  enabled: true
  host: 192.168.xxx.xxxx
  port: 1883
  topic_prefix: frigate
  client_id: frigate
  user: xxxxxxx
  password: xxxxxxx
  stats_interval: 60
# 录制配置
record:
  enabled: true
  sync_recordings: False
  retain: # 全部录像保留3天
    days: 30
    mode: all
  alerts:
    retain:
      days: 100
    pre_capture: 1
    post_capture: 3
  detections:
    retain:
      days: 100
    pre_capture: 1
    post_capture: 3
# 截图
snapshots:
  enabled: true
  retain:
    default: 200
detect:
  enabled: true
  width: 1280
  height: 720
  fps: 5

# 默认检测物体:人
objects:
  track:
    - person
    - face
####目标检测,使用显卡
detectors:
  ov_0:
    type: openvino
    device: GPU # CPU OR GPU
  ov_1:
    type: openvino
    device: GPU

## ssdlite_mobilenet_v2 openino专用模型
model:
  width: 300
  height: 300
  input_tensor: nhwc
  input_pixel_format: bgr
  path: /openvino-model/ssdlite_mobilenet_v2.xml
  labelmap_path: /openvino-model/coco_91cl_bkgr.txt

tls:
  enabled: False

ffmpeg:
  hwaccel_args: "auto" #  默认的"auto" 会自动选择硬件,留空则强制走cpu
  input_args: preset-rtsp-generic
  output_args:
    detect: -threads 2 -f rawvideo -pix_fmt yuv420p
    record: preset-record-generic-audio-aac

genai:
  enabled: True
  prompt: "分析包含 {label} 的图像序列。根据 {label} 的动作和运动,关注其可能的意图或行为,而不是描述其外观或周围环境。考虑一下 {label} 正在做什么,为什么,以及接下来可能会做什么。"
  object_prompts:
    person: "检查这些图像中的主要人物。他们在做什么,他们的行为可能表明他们的意图(例如,接近一扇门、离开一个区域、站着不动)?不要描述周围的环境或静态细节。"
  provider: gemini
  model: gemini-1.5-flash
  api_key: "xxxxxxxxxxxxxxxxx"

cameras:
  c6c:
    enabled: true
    ffmpeg:
      inputs:
        - path: rtsp://admin:[email protected]:554/h264/ch1/main/av_stream
          roles:
            - detect
  tp-link_camera:
    onvif:
      host: 192.168.xxx.xxx
      port: 2020
      user: admin
      password: xxxxxxx

    ffmpeg:
      inputs:
        - path: rtsp://admin:[email protected]:554/stream1
          roles:
            - detect
version: 0.15-1
semantic_search:
  enabled: true
  reindex: false
  model_size: small

已知问题

  1. plex无法硬解(辣鸡plex
  2. intel_gpu_top 工具不能识别xe驱动下的dg1参数,因此frigate上面无法采集gpu负载和使用率。只能用 intel_gpu_time -a命令去看gpu负载。
打赏
Bookmark the permalink.
0 0 投票数
文章评分
订阅评论
提醒
guest

0 评论
内联反馈
查看所有评论