实时互动-工业能源版 工具使用

scp ubuntu@VM-253-114-ubuntu:trro-gateway-sdk-release/logs ./。

相关产品
实时互动-工业能源版 产品页,含版本规格、价格与购买入口。

一、使用 sz 工具

sudo apt-get install lrzsz

sz /path/to/your/file

二、v4l2-ctl 工具

1. 查看v4l2相机帧率及是否已经有数据了

v4l2-ctl -d /dev/video1 –set-fmt-video=width=1920,height=1080 –stream-mmap

2. 查看相机支持的格式和分辨率

v4l2-ctl –device=/dev/video0 –list-formats-ext

三、相机问题排查

1. 查看相机是否被占用

lsof /dev/video0

2. 使用 v4l2-ctl 查看一下相机支持的格式和分辨率

v4l2-ctl –device=/dev/video0 –list-formats-ext

3. 采集保存为 yuv 格式数据或者一张图片 png

·ffmpeg -f v4l2 -input_format yuyv422 -video_size 1920×1080 -framerate 30 -vsync 2 -i /dev/video0 -frames:v 5 output.yuv

·ffmpeg -f v4l2 -input_format yuyv422 -video_size 1920×1080 -framerate 30 -i /dev/video0 -frames:v 1 output.png

4. 播放显示

ffplay -f rawvideo -pixel_format yuyv422 -video_size 1920×1080 output.yuv

如果不能采集中报错、不能播放或显示照片,请排查相机问题。

四、iperf 打流使用

1. 安装 iperf

sudo apt-get install iperf3

2. 服务端 (默认监听5201端口)

iperf3 -s

3. 端侧

iperf3 -c 192.168.1.1 -u -b 10M -t 10

-u 表示使用 UDP、-b 10M 表示带宽 10 Mbps、-t 10 表示测试时长 10 秒

五、ASAN 工具

1. 编译的时候需要加新的编译选项

-fsanitize=address -g

例如:trro-test 编译

g++ trro_sample.cpp -o trro-test -I ./include -L ./sdk_lib/ -L ./sdk_lib/soft -ltrro_field -lrtc_media -lrtc_engine -pthread -ldl -Wl,–rpath-link=./sdk_lib/ffmpeg3 -fsanitize=address -g

2. 导入 libasan.so 链接库

export LD_PRELOAD=/usr/lib/gcc/aarch64-linux-gnu/11/libasan.so

查找 libasan.so

sudo find / -name "libasan.so*" ldconfig -p | grep libasan.so

3. 导 入 ASAN_OPTIONS 选项

export ASAN_OPTIONS=halt_on_error=0:detect_leaks=1:malloc_context_size=50:log_path=./asan/asan_%p.log

运行可执行文件

export LD_LIBRARY_PATH=./:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=./sdk_lib/ffmpeg3:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=./sdk_lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=./sdk_lib/nvidia:$LD_LIBRARY_PATH ./trro-test

六、tcpdump 抓包

1. 抓取经过 eth0 网卡,且与 IP 地址 120.53.67.39 通信的 HTTPS(端口443)流量,包括发往该 IP 的和从该 IP 发出的数据包

tcpdump -i eth0 host 120.53.67.39 and port 443

字段 说明
-i eth0 指定在网卡 eth0 上抓包。
host 120.53.67.39 抓取与 IP 地址 120.53.67.39 相关的所有数据包(无论是源地址还是目的地址)。
and port 443 只抓取端口号为 443(HTTPS 默认端口)的数据包。

2. 只抓取源 IP 是某地址的包

tcpdump -i eth0 src 192.168.1.100

3. 抓取目的端口是 22

tcpdump -i eth0 dst port 22

七、控制消息时延测试

100Hz,500字节回环测试,Windows 拉流版本

单击下载 控制消息时延测试包

单击 RepeatTest 进行控制消息发送测试,再次单击结束,时延报告生成。

八、GDB 调试

1. 修改run_loader.sh文件,直接在可执行文件 trro-test 前加入 gdb。

#!/bin/sh export LD_LIBRARY_PATH=./:$LD_LIBRARY_PATHexport LD_LIBRARY_PATH=./sdk_lib:$LD_LIBRARY_PATHexport LD_LIBRARY_PATH=./sdk_lib/ffmpeg3:$LD_LIBRARY_PATH while :do echo "Current DIR is " $PWD stillRunning=$(ps -ef |grep "$PWD/trro-test" |grep -v "grep") if [ "$stillRunning" ] ; then echo "TRRO service was already started by another way" echo "Kill it and then startup by this shell, other wise this shell will loop out this message annoyingly" killall $PWD/trro-test else echo "TRRO service was not started" echo "Starting service …" gdb $PWD/trro-test echo "TRRO service was exited!" fi sleep 3done

2. 导入环境变量后执行 trro-test。

export LD_LIBRARY_PATH=./:$LD_LIBRARY_PATHexport LD_LIBRARY_PATH=./sdk_lib:$LD_LIBRARY_PATHexport LD_LIBRARY_PATH=./sdk_lib/ffmpeg3:$LD_LIBRARY_PATHgdb trro-test

赞 (0)
上一篇 4天前
下一篇 4天前